二維碼
工博士官方客服微信
聯(lián)系方式
聯(lián)系方式
電話:18964551752
服務(wù)時間 8:30~18:00
返回首頁
回到頂部
分享:ABB機(jī)器人編程基本知識匯總
2019-08-21 10:53:55
一、程序儲存器(Programmemory)的組成:
應(yīng)用程序(Program)
系統(tǒng)模塊(Systemmodules)
機(jī)器人程序儲存器中,只允許存在一個主程序;所有例行程序與數(shù)據(jù)無論存在于哪個模塊,全部被系統(tǒng)共享;所有例行程序與數(shù)據(jù)除特殊定義外,名稱必須是*的。
1、應(yīng)用程序(Program)的組成:
·主模塊(Mainmodule) 主程序(Mainroutine) 程序數(shù)據(jù)(Programdata) 例行程序(Routines)
·程序模塊(Programmodules) 程序數(shù)據(jù)(Programdata) 例行程序(Routines)
2、系統(tǒng)模塊(Systemmodules)的組成:
·系統(tǒng)數(shù)據(jù)(Systemdata)
·例行程序(Routines)
所有ABB機(jī)器人都自帶兩個系統(tǒng)模塊,USER模塊與BASE模塊,根據(jù)機(jī)器人應(yīng)用不同,有些機(jī)器人會配備相應(yīng)應(yīng)用的系統(tǒng)模塊。建議不要對任何自動生成的系統(tǒng)模塊進(jìn)行修改。
二、編程窗口:
1、菜單鍵File:
1、 Open:打開一個現(xiàn)有文件。(程序.prg或模塊.mod)
2、 New:新建一個程序。
3 、Saveprogram :存儲更改后的現(xiàn)有程序。
4 、Saveprogramas:存儲一個新程序。
5 、Print: 打印程序,現(xiàn)已經(jīng)不使用。
6、 Preferences:定義用戶化指令集。
7、 Checkprogram :檢驗(yàn)程序,光標(biāo)會提示錯誤。
8 、Close:在程序儲存器中關(guān)閉程序。
9、 Savemodule :存儲更改后的現(xiàn)有模塊。(只在Module窗口中存在)
10、 Savemoduleas : 存儲一個新模塊。(只在Module窗口中存在)
2、菜單鍵Edit:
1、 Cut:剪切,可能會丟失指令或數(shù)據(jù)。
2 、Copy :復(fù)制。
3 、Paste :粘貼,將剪切或復(fù)制的指令或數(shù)據(jù)粘貼到相應(yīng)位置。
4、 GotoTop:將光標(biāo)移至頂端。
5、 GotoBottom :將光標(biāo)移至底端。
6 、Mark :定義一塊,涂黑部分。
7、 ChangeSelected :修改指令中數(shù)據(jù),可直接將光標(biāo)移至相應(yīng)位置按回車鍵。
8 、Showvalue: 輸入數(shù)據(jù),可直接將光標(biāo)移至相應(yīng)數(shù)據(jù)按回車鍵。
9、 Modpos :修改機(jī)器人位置,功能鍵上有。
10、 Search:尋找指令,程序復(fù)雜時很有用。
11、功能鍵:Copy、Paste、Modpos在菜單鍵Edit中可以找到。
三、指令:
1、基本運(yùn)動指令:
MoveL:線性運(yùn)動 (Linear)
MoveJ:關(guān)節(jié)軸運(yùn)動 (Joint)
MoveC :圓周運(yùn)動 (Circular)
p1:目標(biāo)位置。(robtarget)
v100:運(yùn)行速度mm/s。(speeddata)
z10:轉(zhuǎn)彎區(qū)尺寸mm。(zonedata)
tool1:工具中心點(diǎn)TCP。(tooldata)
(1)速度選擇:mm/s
·將光標(biāo)移至速度數(shù)據(jù)處,按回車鍵,進(jìn)入選擇窗口,選擇所需速度。
·機(jī)器人運(yùn)行速度屬于數(shù)據(jù)類型speeddata。
·常用運(yùn)行速度在Base模塊中已經(jīng)定義。
·特殊速度可自行定義。
·max速度為v5000,Base模塊中定義*大速度為v7000,*大速度機(jī)器人未必能達(dá)到。
(2)轉(zhuǎn)彎區(qū)尺寸選擇:mm
·將光標(biāo)移至轉(zhuǎn)彎區(qū)尺寸數(shù)據(jù)處,按回車鍵,進(jìn)入選擇窗口,選擇所需轉(zhuǎn)彎區(qū)尺寸。
·機(jī)器人轉(zhuǎn)彎區(qū)尺寸屬于數(shù)據(jù)類型zonedata。
·常用轉(zhuǎn)彎區(qū)尺寸在Base模塊中已經(jīng)定義。
·特殊轉(zhuǎn)彎區(qū)尺寸可自行定義。
·fine指機(jī)器人TCP達(dá)到目標(biāo)點(diǎn),并在目標(biāo)點(diǎn)速度降為零,連續(xù)運(yùn)行時,機(jī)器人動作有停頓。
·zone指機(jī)器人TCP不達(dá)到目標(biāo)點(diǎn),連續(xù)運(yùn)行時,機(jī)器人動作圓滑、流暢。
·Base模塊中已經(jīng)定義的轉(zhuǎn)彎區(qū)尺寸*小為z1,*大為z200。
·盡量使用較大的轉(zhuǎn)彎區(qū)尺寸。
(3)參變量:
光標(biāo)指在當(dāng)前指令時,按功能鍵OptArg,可選擇參變量。
·[Conc](switch) 協(xié)作運(yùn)動。機(jī)器人未移動至目標(biāo)點(diǎn),已經(jīng)開始執(zhí)行下一個指令。
·[ToPoint](robtarget) 在采用新指令時,目標(biāo)點(diǎn)自動生成*。·[V](num) 定義速度mm/s。
·[T](num) 定義時間s。通過時間決定速度。
·[Z](num) 定義轉(zhuǎn)彎區(qū)尺寸mm。
·[Wobj](wobjdata) 采用工件系座標(biāo)系統(tǒng)。
(4)函數(shù)Offs:
MoveLp1,v100,…
MoveLp2v100,…
MoveLp3,v100,…
MoveLp4,v100,…
MoveLp1,v100,…
·為了精確確定p1、p2、p3、p4點(diǎn),可以使用函數(shù)Offs。
·Offs(p1,x,y,z)代表一個離p1點(diǎn)X軸偏差量為x,Y軸偏差量為y,Z軸量為z的點(diǎn)。
·將光標(biāo)移至目標(biāo)點(diǎn),按回車鍵,進(jìn)入目標(biāo)點(diǎn)選擇窗口,在功能鍵上選擇Func,采用切換選擇所用函數(shù)Offs。
MoveLp1,v100,…
MoveLOffs(p1,100,0,0),v100,…
MoveLOffs(p1,100,-50,0),v100,…
MoveLOffs(p1,0,-50,0),,v100,…
MoveLp1,v100,…
2、輸入輸出群指令:
·do指機(jī)器人輸出信號。
·di指輸入機(jī)器人信號。
·輸入輸出信號必須在系統(tǒng)參數(shù)中定義。
·輸入輸出信號有兩種狀態(tài),1(High)為接通,0(Low)為斷開。
(1)輸出信號指令:
A、輸出輸出信號指令:set dol do1:輸出信號名。(signaldo)將一個輸出信號賦值為1。
B、復(fù)位輸出信號指令:Reset do1 do1:輸出信號名。(signaldo)將一個輸出信號賦值為0。
C、輸出脈沖信號指令:PulseDOPLength:=0.2,do1 do1:輸出信號名。(signaldo)輸出一個脈沖信號,脈沖長度為0.2s。
參變量:
·[PLength](num) 脈沖長度,0.1s-32s。
(2)輸入信號指令:
WaitDI di1, 1
di1:輸入信號名。(signaldi)
3、參變量:
·[MaxTime](num)等待輸入信號*長時間s。
·[TimeFlag](bool)邏輯量,TRUE或FALSE。
如果只選用參變量[MaxTime],等待超過*長時間后,機(jī)器人停止運(yùn)行,并顯示相應(yīng)出錯信息。如果同時選用參變量[MaxTime]與參變量[TimeFlag],等待超過*長時間后,無論是滿足等待的狀態(tài),機(jī)器人將自動執(zhí)行下一句指令。如果在*長等待時間內(nèi)得到相應(yīng)信號,將邏輯量置為FALSE,如果超過*長等待時間,邏輯量置為TRUE。
4、通信指令(人機(jī)對話):
(1)清屏指令:TPErase
(2)寫屏指令:PWrite String tring:顯示的字符串。(string)在示教器顯示屏上顯示字符串?dāng)?shù)據(jù),也可以用"……"形式直接定義字符串,每一個寫屏指令*多顯示80個字符。
(3)功能鍵讀取指令:TPReadFK, Answer , Text , FK1 , FK2. FK3, FK4 , FK5 Answer:賦值數(shù)字變量。(num) Text:顯示屏顯示的字符串。(string) FK1:功能鍵1顯示的字符串。(string) FK2:功能鍵2顯示的字符串。(string) FK3:功能鍵3顯示的字符串。(string) FK4:功能鍵4顯示的字符串。(string) FK5:功能鍵5顯示的字符串。(string)
在示教器顯示屏上顯示字符串?dāng)?shù)據(jù),在功能鍵上顯示相應(yīng)字符串,選擇按相應(yīng)的功能鍵,機(jī)器人自動給數(shù)字變量賦于相應(yīng)數(shù)值1-5。
5、程序運(yùn)行停止指令:
(1)停止指令Stop:機(jī)器人停止運(yùn)行,軟停止指令(Soft Stop),直接在下一句指令啟動機(jī)器人。
(2)停止指令Exit:機(jī)器人停止運(yùn)行,并且復(fù)位整個運(yùn)行程序,將程序運(yùn)行指針移至主程序第一行。機(jī)器人程序必須從頭運(yùn)行。
(3)停止指令Break:機(jī)器人立刻停止運(yùn)行,有沖擊,直接在下一句指令啟動機(jī)器人。
6、計時指令:
(1)時鐘復(fù)位指令:ClKReset Clock Clock:機(jī)器人時鐘名稱。(clock)
(2)時鐘啟動指令:ClKStart Clock Clock:機(jī)器人時鐘名稱。(clock)
(3)時鐘停止指令:ClKStop Clock Clock:機(jī)器人時鐘名稱。(clock)
7、速度控制指令:VelSet , Override, Max
Override:機(jī)器人運(yùn)行速率%。(num)
Max:機(jī)器人*大速度mm/s。(num)
每個機(jī)器人運(yùn)動指令均有一個運(yùn)行速度,在執(zhí)行速度控制指令后,機(jī)器人實(shí)際運(yùn)行速度為運(yùn)動指令規(guī)定運(yùn)行速度乘以機(jī)器人運(yùn)行速率(Override),并且不超過機(jī)器人*大運(yùn)行速度(Max)。
8、等待指令:
WaitTime , Time
Time:機(jī)器人等待時間s。(num)
等待指令只是讓機(jī)器人程序運(yùn)行停頓片刻。
9、賦值指令:
Data:=Value
Data:被賦值的數(shù)據(jù)。(All)
Value:數(shù)據(jù)被賦予的值。
舉例:
ABB:=FALSE;(bool)
ABB:=reg1+reg3;(num)
ABB:="WELCOME";(string)
Home:=p1;(robotarget)
tool1.tframe.trans.x:=tool1.tframe.trans.x+20;(tooldata)
10、負(fù)載定義指令:
GripLoad Load
Load:機(jī)器人當(dāng)前負(fù)載,數(shù)據(jù)類型為Loaddata。
免責(zé)聲明:本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。