ABB機器人編程與測試
發(fā)布日期:2012-06-07 蘭生客服中心 瀏覽:17966
一、程序儲存器(Programmemory)的組成:
應(yīng)用程序(Program)
系統(tǒng)模塊(Systemmodules)
機器人程序儲存器中,只允許存在一個主程序;所有例行程序與數(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機器人都自帶兩個系統(tǒng)模塊,USER模塊與BASE模塊,根據(jù)機器人應(yīng)用不同,有些機器人會配備相應(yīng)應(yīng)用的系統(tǒng)模塊。建議不要對任何自動生成的系統(tǒng)模塊進行修改。
二、編程窗口:
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 :檢驗程序,光標會提示錯誤。
8 、Close:在程序儲存器中關(guān)閉程序。
9、 Savemodule :存儲更改后的現(xiàn)有模塊。(只在Module窗口中存在)
0、 Savemoduleas : 存儲一個新模塊。(只在Module窗口中存在)
2、菜單鍵Edit:
1、 Cut:剪切,可能會丟失指令或數(shù)據(jù)。
2 、Copy :復(fù)制。
3 、Paste :粘貼,將剪切或復(fù)制的指令或數(shù)據(jù)粘貼到相應(yīng)位置。
4、 GotoTop:將光標移至頂端。
5、 GotoBottom :將光標移至底端。
6 、Mark :定義一塊,涂黑部分。
7、 ChangeSelected :修改指令中數(shù)據(jù),可直接將光標移至相應(yīng)位置按回車鍵。
8 、Showvalue: 輸入數(shù)據(jù),可直接將光標移至相應(yīng)數(shù)據(jù)按回車鍵。
9、 Modpos :修改機器人位置,功能鍵上有。
0、 Search:尋找指令,程序復(fù)雜時很有用。
3、菜單鍵IPL1與IPL2:
IPL1與IPL2為指令目錄。
其中IPL2有Mostcommt1、Mostcommt2、Mostcommt3為用戶化定義指令目錄,可在菜單鍵File中Preference定義。
4、功能鍵:
Copy、Paste、Modpos在菜單鍵Edit中可以找到。
Test為編程窗口與測試窗口切換鍵。
三、指令:
1、基本運動指令:
MoveL:線性運動 (Linear)
MoveJ:關(guān)節(jié)軸運動 (Joint)
MoveC :圓周運動 (Circular)
p1:目標位置。(robtarget)
v100:運行速度mm/s。(speeddata)
z10:轉(zhuǎn)彎區(qū)尺寸mm。(zonedata)
tool1:工具中心點TCP。(tooldata)
(1)速度選擇:mm/s
·將光標移至速度數(shù)據(jù)處,按回車鍵,進入選擇窗口,選擇所需速度。
·機器人運行速度屬于數(shù)據(jù)類型speeddata。
·常用運行速度在Base模塊中已經(jīng)定義。
·特殊速度可自行定義。
·max速度為v5000,Base模塊中定義最大速度為v7000,最大速度機器人未必能達到。
(2)轉(zhuǎn)彎區(qū)尺寸選擇:mm
·將光標移至轉(zhuǎn)彎區(qū)尺寸數(shù)據(jù)處,按回車鍵,進入選擇窗口,選擇所需轉(zhuǎn)彎區(qū)尺寸。
·機器人轉(zhuǎn)彎區(qū)尺寸屬于數(shù)據(jù)類型zonedata。
·常用轉(zhuǎn)彎區(qū)尺寸在Base模塊中已經(jīng)定義。
·特殊轉(zhuǎn)彎區(qū)尺寸可自行定義。
·fine指機器人TCP達到目標點,并在目標點速度降為零,連續(xù)運行時,機器人動作有停頓。
·zone指機器人TCP不達到目標點,連續(xù)運行時,機器人動作圓滑、流暢。
·Base模塊中已經(jīng)定義的轉(zhuǎn)彎區(qū)尺寸最小為z1,最大為z200。
·盡量使用較大的轉(zhuǎn)彎區(qū)尺寸。
(3)參變量:
光標指在當前指令時,按功能鍵OptArg,可選擇參變量。
·[\Conc](switch)
協(xié)作運動。機器人未移動至目標點,已經(jīng)開始執(zhí)行下一個指令。
·[ToPoint](robtarget)
在采用新指令時,目標點自動生成*。
·[\V](num)
定義速度mm/s。
·[\T](num)
定義時間s。通過時間決定速度。
·[\Z](num)
定義轉(zhuǎn)彎區(qū)尺寸mm。
·[\Wobj](wobjdata)
采用工件系座標系統(tǒng)。
(4)函數(shù)Offs():
MoveLp1,v100,…
MoveLp2v100,…
MoveLp3,v100,…
MoveLp4,v100,…
MoveLp1,v100,…
·為了精確確定p1、p2、p3、p4點,可以使用函數(shù)Offs()。
·Offs(p1,x,y,z)代表一個離p1點X軸偏差量為x,Y軸偏差量為y,Z軸量為z的點。
·將光標移至目標點,按回車鍵,進入目標點選擇窗口,在功能鍵上選擇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、轉(zhuǎn)軸運動指令:
MoveAbsJ, jpos1, v100, z10, tool1
jpos1:目標位置。(jointtarget)
v100:運行速度mm/s。(speeddata)
z10:轉(zhuǎn)彎區(qū)尺寸mm。(zonedata)
tool1:工具中心點TCP。(tooldata)
3、輸入輸出群指令:
·do指機器人輸出信號。
·di指輸入機器人信號。
·輸入輸出信號必須在系統(tǒng)參數(shù)中定義。
·輸入輸出信號有兩種狀態(tài),1(High)為接通,0(Low)為斷開。
(1)輸出信號指令:
A、輸出輸出信號指令:set dol
do1:輸出信號名。(signaldo)將一個輸出信號賦值為1。
B、復(fù)位輸出信號指令:Reset do1
do1:輸出信號名。(signaldo)將一個輸出信號賦值為0。
C、輸出脈沖信號指令:ulseDO do1
do1:輸出信號名。(signaldo)輸出一個脈沖信號,脈沖長度為0.2s。
參變量:
·[\PLength](num) 脈沖長度,0.1s-32s。
(2)輸入信號指令:
WaitDI di1, 1
di1:輸入信號名。(signaldi)
1:狀態(tài)。(dionum)
參變量:
·[\MaxTime](num)等待輸入信號最長時間s。
·[\TimeFlag](bool)邏輯量,TRUE或FALSE。
如果只選用參變量[\MaxTime],等待超過最長時間后,機器人停止運行,并顯示相應(yīng)出錯信息。如果同時選用參變量[\MaxTime]與參變量[\TimeFlag],等待超過最長時間后,無論是滿足等待的狀態(tài),機器人將自動執(zhí)行下一句指令。如果在最長等待時間內(nèi)得到相應(yīng)信號,將邏輯量置為FALSE,如果超過最長等待時間,邏輯量置為TRUE。
4、通信指令(人機對話):
(1)清屏指令:TPErase
(2)寫屏指令:PWrite String
tring:顯示的字符串。(string)在示教器顯示屏上顯示字符串數(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)
在示教器顯示屏上顯示字符串數(shù)據(jù),在功能鍵上顯示相應(yīng)字符串,選擇按相應(yīng)的功能鍵,機器人自動給數(shù)字變量賦于相應(yīng)數(shù)值1-5。
5、程序流程指令:
(1)判斷執(zhí)行指令I(lǐng)F:
“Yes-part” 執(zhí)行“Yes-part”指令。
ENDIF
ELSE 不符合
“Not-part” 執(zhí)行“Not-part”指令。
“Yes-part2” 執(zhí)行“Yes-part2”指令。
ELSE 不符合
“Not-part” 執(zhí)行“Not-part”指令。
ENDIF
(2)循環(huán)執(zhí)行指令WHILE:
WHILEreg1<5DO 循環(huán)至不符合條件reg1<5,
reg1:=reg1+1;(Incrreg1;) 才執(zhí)行ENDWHILE后指令。ENDWHILE
循環(huán)指令WHILE運行時,機器人循環(huán)至不滿足判斷條件后,才跳出循環(huán)指令,執(zhí)行ENDWHILE后運行指令。循環(huán)指令WHILE運行時,存在死循環(huán),在編寫相應(yīng)機器人程序時必須注意。
6、程序運行停止指令:
(1)停止指令Stop:
機器人停止運行,軟停止指令(Soft Stop),直接在下一句指令啟動機器人。
(2)停止指令Exit:
機器人停止運行,并且復(fù)位整個運行程序,將程序運行指針移至主程序第一行。機器人程序必須從頭運行。
(3)停止指令Break:
機器人立刻停止運行,有沖擊,直接在下一句指令啟動機器人。
7、計時指令:
(1)時鐘復(fù)位指令:ClKReset Clock
Clock:機器人時鐘名稱。(clock)
(2)時鐘啟動指令:ClKStart Clock
Clock:機器人時鐘名稱。(clock)
(3)時鐘停止指令:ClKStop Clock
Clock:機器人時鐘名稱。(clock)
8、速度控制指令:
VelSet , Override, Max
Override:機器人運行速率%。(num)
Max:機器人最大速度mm/s。(num)
每個機器人運動指令均有一個運行速度,在執(zhí)行速度控制指令后,機器人實際運行速度為運動指令規(guī)定運行速度乘以機器人運行速率(Override),并且不超過機器人最大運行速度(Max)。
9、等待指令:
WaitTime , Time
Time:機器人等待時間s。(num)
等待指令只是讓機器人程序運行停頓片刻。
10、賦值指令:
Data:= , Value
Data:被賦值的數(shù)據(jù)。(All)
Value:數(shù)據(jù)被賦予的值。(SameasData)
舉例:
ABB:=FALSE;(bool)
ABB:=reg1+reg3;(num)
ABB:=“WELCOME”;(string)
Home:=p1;(robotarget)
tool1.tframe.trans.x:=tool1.tframe.trans.x+20;(tooldata)
11、負載定義指令:
GripLoad , Load
Load:機器人當前負載。(loaddata)
四、例行程序(Routine):
首先,機器人從進料運輸帶(Infeeder)抓取工件,放至機器(Machine)中加工,加工完成后,機器人再從機器中將工件取出,放至出料運輸帶上,完成一個循環(huán)。
1、建立新例行程序:
--->菜單鍵View--->2Routine--->功能鍵New
·Name例行程序名稱。
最長16個字符,第一位必須為字母。
·Type例行程序類型。共有3種類型。
ROC-普通例行程序
FUNC-函數(shù)例行程序
TRAP-中斷例行程序
·InModule當前例行程序所屬模塊名稱。
·Datatype數(shù)據(jù)類型,函數(shù)例行程序?qū)S谩?/P>
2、例行程序參數(shù)設(shè)置:
每個例行程序可以自帶多個變量,即參數(shù)。建立一個新例行程序后或重定義例行程序(Dupl)后,顯示屏?xí)@示以上窗口。通過功能鍵New增加參數(shù),使用切換鍵將光標移動至相應(yīng)參數(shù),進行修改和定義。
·Name參數(shù)名稱。
光標指向參數(shù)名稱時,功能鍵出現(xiàn)Text,用來更改參數(shù)名稱。最長16個字符,第一位必須為字母。
·Datatype數(shù)據(jù)類型。
光標指向數(shù)據(jù)類型時,功能鍵出現(xiàn)Chang…,用來更改例行程序參數(shù)數(shù)據(jù)類型。
·Required必需性選擇。
光標指向必需性選擇時,功能鍵出現(xiàn)Yes與No選項,選擇Yes,會出現(xiàn)確認符*。
·Alt分批輸入?yún)?shù)選項。
使用此項功能,必須是非必需參數(shù)。光標指向分批輸入?yún)?shù)選項時,功能鍵出現(xiàn)First與Tail選項。
First-開始使用的參數(shù)。
Tail-結(jié)尾使用的參數(shù)。
·Mode數(shù)據(jù)模式。
光標指向必需性選擇時,功能鍵出現(xiàn)In與Inout選項。In-參數(shù)使用時,只能讀取。Inout-參數(shù)使用時,可以讀寫。
五、機器人的測試:
1、檢查程序語法:
--->菜單鍵File--->7CheckProgram
2、編程窗口(Test):
--->菜單鍵View--->5Test
(1)功能鍵:
tart:啟動程序,機器人按程序連續(xù)運行。
FWD:機器人程序向前單步運行。
WD:機器人程序向后單步運行。
ModPos:修正機器人運行位置。
Instr:切換至指令窗口。
(2)運行模式選擇:
在測試窗口按切換鍵,并且將光標移至運動模式選擇(Running),此時,功能鍵顯示Cont與Cycle選項。
·Cont連續(xù)運行模式,程序自動循環(huán)執(zhí)行。
·Cycle單循環(huán)模式,程序運行完自動停止。
(3)運行速率選擇:
在測試窗口按切換鍵,并且將光標移至運動速率選擇(Speed),此時,功能鍵顯示-%、+%、25%與100%選項,使用功能鍵確定運行速率。
·機器人實際運行速度為程序運動指令定義速度乘以相應(yīng)百分比,最大不超過250mm/s。
·-%與+%在1%至5%之間將以1%遞增或遞減,-%與+%在5%至100%之間將以5%遞增或遞減。
·25%與100%是將機器人運行速率快捷的切換至25%與100%。
·運行速度調(diào)整可在程序運行時同步進行。
·在焊接程序中,運行速度選擇只改變空行程速度,焊接速度不變。
(4)、程序運行指針(》):
·程序運行指針(簡稱PP)至關(guān)重要,它指示出一旦啟動程序,程序?qū)哪睦锲饒?zhí)行。
·程序運行指針與光標必須指向同一行指令,機器人才能正常啟動。
·使用菜單鍵Special可以更改程序運行指針位置,選擇執(zhí)行的指令。
1、MoveCursortoPP:將光標移至PP位置。
2、MovePPtoCursor:將PP移至光標位置。
3、MovePPtoMain將PP:移至主程序第一行。
4、MovePPtoRoutine:將PP移至相應(yīng)例行程序。
3、刪除指令:
將光標移至所要刪除的指令行,按刪除鍵,用功能鍵OK確認。
4、增加指令:
在測試窗口按功能鍵Instr->進入指令窗口,選擇增加指令,被選擇的指令將生成在光標所指指令行的下一行。如果光標在程序第一行,會出現(xiàn)一個提示窗口選擇新指令生成在程序第一行(選擇功能鍵Yes)或下一行(選擇功能鍵No),然后用功能鍵OK確認。
5、修正工作點:
·將機器人移動至需要記錄的工作點。
·將光標移動到需要修正的運動指令,按功能鍵ModPos修正工作點。
·注意此時操作窗口所選擇的Tool與Wobj必須與運動指令所使用的一致。
6、停止:
按S-Stop鍵停止測試,盡量避免直接放開使能器( Enabling device )。
上一篇:ABB機器人輸入輸出信號
下一篇:ABB機器人自動生產(chǎn)
-
FANUC機器人示教
一、安全操作規(guī)程1、示教和手動機器人(1)請不要帶者手套操作示教盤和操作盤。 (2)在點動操作機器人時要采用較低的倍率速度以增加對機器人的控制機會。 (3)在按下示教盤上的點動鍵之前要考慮到機器人的運動趨勢。 (4)要預(yù)先考慮好避讓機
2012-06-11 -
FANUC機器人的執(zhí)行程序
一、程序中斷和恢復(fù)程序中斷由以下兩種情況引起:■ 程序運行中遇到報警■ 操作人員停止程序運行 程序的中斷狀態(tài)有兩種類型: 有意中斷程序運行的方法:■ 按下TP或操作箱上的急停按鈕,還有可以輸入外部E-STOP信號。 輸入UI[1] *
2012-06-11 -
FANUC機器人程序結(jié)構(gòu)
一、運動指令運動指令已經(jīng)在編程一章中講過,在這里我們重點討論弧焊指令,寄存器指令,I/O指令,分支指令,等待指令,偏置指令,程序控制指令和其他常用的指令。這些指令都是通過程序編輯畫面中的[INST]進入的(見圖1) 注意:不同的軟件,
2012-06-11 -
FANUC機器人FRAMES的設(shè)置
一、坐標系的分類(見表1) 表1 World Frame(通用坐標系) 是一個不可設(shè)置的缺省坐標系。其原點是用戶坐標系和點動坐標系的參考位置,位于機器人內(nèi)預(yù)先定義的位置。 ToolFrame(工具坐標
2012-06-11