《FOXBOT编程手册》由会员分享,可在线阅读,更多相关《FOXBOT编程手册(78页珍藏版)》请在金锄头文库上搜索。
1、.富士康工業機器人 FOXBOT編程手冊 ( Ver. 2007.1 ) 簡 介FOXBOT的編程手冊由FOXBOT指令手冊和Cypress Enable編輯器語言參考手冊組成。FOXBOT指令手冊主要用于機器人的運動控制指令;Cypress Enable 主要用于程序的變量命名流程控制子程序等。程序編輯界面是Cypress Enable編輯器程序中的語句語法要求應符合Cypress Enable的要求。FOXBOT 指令手冊 .目 錄ACCEL1CURPOS1DECEL1DEFIO1DEFPOS2DELAY2DEFJNT2DIST2DRIVE3DRIVEA3FIG3GOHOME3HOME4I
2、N4J2P5MOVE5OUT6POSRX7POSRY7POSRZ7POSX7POSY8POSZ8RESETIO8ROBOTSTOP8ROTATE9SETIO9SPEED10WAIT10附錄10ACCEL功能:指定內部加速度比例 格式:ACCEL 範例:ACCEL 50CURPOS功能:取得目前的位置 (type P格式)格式:Position type 變數 = CURPOS說明:範例:DEFPOS lp1lp1=CURPOSMSGBOX POSX(lp1) & chr(13) & chr(10) &_POSY(lp1) & chr(13) & chr(10) &_POSZ(lp1) & ch
3、r(13) & chr(10) &_POSRX(lp1) & chr(13) & chr(10)&_POSRY(lp1) & chr(13) & chr(10)&_POSRZ(lp1) & chr(13) & chr(10)&_FIG(lp1)DECEL功能:指定內部減速度比例格式:DECEL 說明:範例:DECEL 50DEFIO功能:聲明IO變數格式:DEFIO = , 說明:通過變量名聲明指定變量作為一個IO變量 選擇 IO變量的類型。IO變量的類型包括BIT(1位)BYTE(8位)INTEGER(16位)端口地址指定輸入輸出IO的開始號相關指令IN OUT SET RESET範例:Di
4、m a AS IntegerDEFIO samp1= INTEGER,0聲明一個來自端口15的IO字類型變量。Sampl返回值是16位的來自從0到15端口整型IN a=samp1Msgbox Notes:對于字或整型,使用MSB作為一個信號位。Byte允許數字值范圍MSB端口號:開始端口地址7Integer允許數字值范圍MSB端口號:開始端口地址15DEFPOS功能聲明一個位置類型變量格式DEFPOS 舉例DEFPOS lpx 聲明lpx作為位置類型變量注意一個語句只能聲明一個位置變量類型相關指令 poseP格式Dim lpx as posePDELAY功能暫停程序處理,延時一個指定的周期時間
5、,格式DELAY 說明程序處理停止直到暫停時間到。單位:ms舉例DIM li1 As Integer Delay 100 延時100ms(0.1s)Delay li1+10延時li1+10msDEFJNT功能聲明一個關節類型變量格式DEFJNT舉例DEFJNT ljx 聲明ljx作為一個關節類型變量DIST功能返回兩點之間的距離格式DIST (,)說明獲得位置1 和位置2之間的距離舉例Dim lf1 AS SingleDEFPOS lp1DEFPOS lp2lp1=CURPOSlp1.x=lp2.x+10lp1.y=lp2.y+10lp1.z=lp2.z+10lp1.rx=lp2.rx+10l
6、p1.ry=lp2.ry+10lp1.rz=lp2.r2+10lf1=DIST(lp1,lp2) lf1等于lp1和lp2之間的距離MSGBOX lf1DRIVE功能:執行每個軸的相對運動格式:DRIVE ()說明移動指定軸移動量用角度來表示,角度的正負表示移動的方向。舉例 DRIVE 1,30 移動1軸30度。DRIVEA功能執行每個軸的絕對運動格式DRIVEA 說明移動指定軸到指定角度舉例DRIVEA 1,-30移動1軸到-30度。FIG功能提取一個形態。格式FIG(位置類型變量)說明:從位置數據提取一個形態舉例DIM lp1 AS posePli1=FIG(lp1) 指定一個lp1的形態
7、給li1GOHOME功能移動到HOME語句定義的坐標位置格式: GOHOME說明:移動機器人使用PTP控制從當前位置到HOME位置使用HOME語句聲明一個原點位置如果沒有設置HOME執行這個語句將會出現錯誤。舉例GOHOME 機器人從當前位置移動到原點位置HOME功能聲明任意位置為原點位置格式HOME 說明聲明任意的位置類型的坐標作為原點位置舉例Dim JJ As poseJSpeed 30JJ.J5 = 20 賦值20度給JJ.J5,其他JJ的組成是0Home JJ 設置JJ作為原點位置GoHome 移動到原點位置EndIN功能IO變量值賦給指定變量格式IN IO變量舉例!TITLE EXA
8、MPLE_INDim li1 As Integer Declare li1 and li2 as IntegerDim li2 As Integer Declare samp1 as Type IO variable,DEFIO samp1 = Integer, 48 length is 16 (integer), starting from IO(48) Get the current IO status defined in samp1 into integer format and assign it to li1In li1 = samp1 Get IO status starting
9、 from 56 into an integer and assign it to li2In li2 = IO(56) Show li1 and li2 (if only IO(56) is on, li1 = 256 meaning 100000000 in binary starting from port 48 and li2 = 1)MsgBox li1 = & li1 & Chr(13) & Chr(10) _& li2 = & li2J2P功能關節類型變量轉換成位置類型變量。格式J2P,舉例Dim lj1 as poseJDim lp1 as posePlj1.j1=0lj1.j
10、2=0lj1.j3=0lj1.j4=0lj1.j5=0lj1.j6=0J2P lj1,lp1Msgbox lp1.x & “ ”lp1.y& “ ”lp1.z_ lp1.rx & “ ”lp1.ry& “ ”lp1.rzMOVE功能移動機器人末端操作器到指定坐標。格式MOVE, , ,說明移動機器人從當前位置到指定的目標位置。對于位置類型,關節類型可以使用。插補方法說 明P(PTP)PTP(點到點)運動從一個點到另一個點機器人移動的路徑依賴機器人的姿態不是一條直線。 運動路徑可以不是一條直線LCP控制,到達目標位置的路徑是一條直線AB運動路徑是一條直線機器人手臂從一個運動到另一個運動有三種方法
11、確定第一個運動的完成。0:運動位置到達目標位置就算到達。P:實際位置到達目標位置附近即算到達,且不減速而往下一位置。E:編碼器值核實點, 實際位置到達目標位置,停下來檢查編碼器的值是否在一定時間內不超出一定範圍才算到達。下面的例子都是機器人從當前位置P1經過P2經過運動(P)P1P2P3到達P3PROGRAM PASS_MOVETAKEARM MOVE P, P , P(2) ,S=10MOVE P, 0 , P(3) ,S=10END伺服偏離(0)P1P2P3PROGRAM END_MOVETAKEARMMOVE L, 0 , P(2),S=10MOVE L, 0 , P(3),S=10EN
12、D編碼器值檢查運動(E)P1P2P3PROGRAM ENCODER_MOVETAKEARMMOVE L,E, P(2),S=10MOVE L,0, P(3),S=10ENDOUT功能給輸出IO變量賦值格式OUT =舉例!TITLE EXAMPLE_OUTDim li1 As Integer Declare li1 as Integer Declare samp1 as Type IO variable, length is 16 (integer), starting from IO(30)DEFIO samp1 = Integer, 30 assign 25-1 = 31 (11111 in Hex value) to li1li1 = 25-1 Output the li1 data