ABB工業(yè)機器人編程基礎(chǔ)操作.ppt_第1頁
ABB工業(yè)機器人編程基礎(chǔ)操作.ppt_第2頁
ABB工業(yè)機器人編程基礎(chǔ)操作.ppt_第3頁
ABB工業(yè)機器人編程基礎(chǔ)操作.ppt_第4頁
ABB工業(yè)機器人編程基礎(chǔ)操作.ppt_第5頁
已閱讀5頁,還剩73頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、5.1.2建立RAPID程序,5.2基本RAPID程序指令,ABB工業(yè)機器人提供了多種編程指令可以完成工業(yè)機器人在焊接、碼垛、搬運等各種應(yīng)用。下面將從最常用的指令開始學(xué)習(xí)RAPID編程。,5.2.1 賦值指令,賦值指令是用于對編程時的程序數(shù)據(jù)進行賦值,符號 “:=”,賦值對象是常量或數(shù)學(xué)表達式。 常量賦值:reg1:=17; 數(shù)學(xué)表達式賦值:reg2:=reg1+8;,添加常量賦值指令的操作如下,(2)添加帶數(shù)學(xué)表達式的賦值指令的操作,5.2.2工業(yè)機器人常用運動指令,工業(yè)機器人在空間中常用運動指令主要有關(guān)節(jié)運動(MoveJ)、線性運動(MoveL)、圓弧運動(MoveC)和絕對位置運動Mov

2、eAbsJ)四種方式。,1絕對位置運動指令 絕對位置運動指令是機器人的運動使用六個軸和外軸的角度值來定義目標(biāo)位置數(shù)據(jù)。 操作步驟如下:,MoveAbsJ jpos10 NoEOffs, v1000, z50,tool1Wobj:=wobj1;,MoveAbsJ指令解析,2關(guān)節(jié)運動指令 關(guān)節(jié)運動指令是對路徑精度要求不高的情況下,工業(yè)機器人的工具中心點TCP從一個位置移動到另一個位置,兩個位置之間的路徑不一定是直線。,關(guān)節(jié)運動,MoveJ p10, v1000, z50, tool1Wobj:=wobj1;,關(guān)節(jié)運動適合機器人大范圍運動時使用,不容易在運動過程中出現(xiàn)關(guān)節(jié)軸進入機械死點的問題。目標(biāo)點

3、位置數(shù)據(jù)定義機器人TCP點的運動目標(biāo),可以在示教器中單擊“修改位置”進行修改。運動速度數(shù)據(jù)定義速度(mm/s),轉(zhuǎn)彎區(qū)數(shù)據(jù)定義轉(zhuǎn)變區(qū)的大小mm,工具坐標(biāo)數(shù)據(jù)定義當(dāng)前指令使用的工具,工件坐標(biāo)數(shù)據(jù)定義當(dāng)前指令使用的工件坐標(biāo)。,3線性運動指令 線性運動是機器人的TCP從起點到終點之間的路徑始終保持為直線。一般如焊接、涂膠等應(yīng)用對路徑要求高的場合使用此指令。,線性運動,4圓弧運動指令 圓弧路徑是在機器人可到達的控件范圍內(nèi)定義三個位置點,第一個點是圓弧的起點,第二個點用于圓弧的曲率,第三個點是圓弧的終點,MoveL p10, v1000, fine, tool1Wobj:=wobj1; MoveC p3

4、0, p40, v1000, z1, tool1Wobj:=wobj1;,MoveC指令解析,5.2.3 運動指令的使用示例,運動速度一般最高為50000mm/s,在手動限速狀態(tài)下,所有的運動速度被限速在250mm/s。fine指機器人TCP達到目標(biāo)點,在目標(biāo)點速度降為零。工業(yè)機器人動作有所停頓然后再向下運動,如果是一段路徑的最后一個點,一定要為fine。轉(zhuǎn)彎區(qū)數(shù)值越大,機器人的動作路徑就越圓滑與流暢。,5.2.4 I/O控制指令,I/O控制指令用于控制I/O信號,以達到與機器人周邊設(shè)備進行通信的目的。 1Set數(shù)字信號置位指令 Set數(shù)字信號置位指令用于將數(shù)字輸出(Digital Outpu

5、t)置位為“1”, do1數(shù)字輸出信號。 Set do1; 2Reset數(shù)字信號復(fù)位指令 Reset數(shù)字信號復(fù)位指令用于將數(shù)字輸出(Digital Output)置位為“0”。 如果在Set、Reset指令前有運動指令MoveJ、MoveL、MoveC、MoveAbsJ的轉(zhuǎn)彎區(qū)數(shù)據(jù),必須使用fine才可以準(zhǔn)確地輸出I/O信號狀態(tài)的變化。 Reset do1;,3WaitDI數(shù)字輸入信號判斷指令 WaitDI數(shù)字輸入信號判斷指令用于判斷數(shù)字輸入信號的值是否與目標(biāo)一致,di1數(shù)字輸入信號。 WaitDI di1, 1; 程序執(zhí)行此指令時,等待di1的值為1。如果di1為1,則程序繼續(xù)往下執(zhí)行;如果

6、到達最大等待時間300s(此時間可根據(jù)實際進行設(shè)定)以后,di1的值還不為1,則機器人報警或進入出錯處理程序。 4WaitDO數(shù)字輸出信號判斷指令 WaitDO數(shù)字輸出信號判斷指令用于判斷數(shù)字輸出信號的值是否與目標(biāo)一致。 WaitDO do1, 1; 參數(shù)以及說明同WaitDi指令。,5WaitUntil信號判斷指令 WaitUntil信號判斷指令可用于布爾量、數(shù)字量和I/O信號值的判斷,如果條件到達指令中的設(shè)定值,程序繼續(xù)往下執(zhí)行,否則就一直等待,除非設(shè)定了最大等待時間。flag1為布爾量型數(shù)據(jù),num1數(shù)字型數(shù)據(jù)。 WaitUntil di1 = 1; WaitUntil do1 = 0;

7、 WaitUntil flag = TRUE; WaitUntil num1 = 8;,5.2.5 條件邏輯判斷指令,條件邏輯判斷指令用于對條件進行判斷后,執(zhí)行相應(yīng)的操作,是RAPID中重要的組成部分。 1.Compact IF緊湊型條件判斷指令 Compact IF緊湊型條件判斷指令用于當(dāng)一個條件滿足了以后,就執(zhí)行一句指令。 IF flag1 = TRUE Set do1; 如果flag1的狀態(tài)為TRUE,則do1被置位為1。,2.IF條件判斷指令 IF條件判斷指令,就是根據(jù)不同的條件去執(zhí)行不同的指令。 指令解析: IF num1=1 THEN flag:=TRUE; ELSEIF num1

8、=2 THEN flag1:=FALSE; ELSE Set do1; ENDIF 如果num1為1,則flag1會賦值為TRUE。如果num1為2,則flag1會賦值為FALSE。除了以上兩種條件之外,則執(zhí)行do1置位為1。條件判定的條件數(shù)量可以根據(jù)實際情況進行增加與減少。,3.FOR重復(fù)執(zhí)行判斷指令 FOR重復(fù)執(zhí)行判斷指令,是用于一個或多個指令需要重復(fù)執(zhí)行次數(shù)的情況 FOR i FROM 1 TO 6 DO Routine1; ENDFOR 例行程序Routine1,重復(fù)執(zhí)行6次。 4.WHILE條件判斷指令 WHILE條件判斷指令,用于在給定條件滿足的情況下,一直重復(fù)執(zhí)行對應(yīng)的指令。 W

9、HILE num1num2 DO num1:=num1-1; ENDWHILE 當(dāng)num1num2的條件滿足的情況下,就一直執(zhí)行num1:=num1-1的操作。,5.2.6其他的常用指令,1.ProcCall調(diào)用例行程序指令 通過使用此指令在指定的位置調(diào)用例行程序。,2.RETURN返回例行程序指令 RETURN返回例行程序指令,當(dāng)此指令被執(zhí)行時,則馬上結(jié)束本例行程序的執(zhí)行,返回程序指針到調(diào)用此例行程序的位置。,當(dāng)di1=1時,執(zhí)行RETURN指令,程序指針返回到調(diào)用Routine2的位置并繼續(xù)向下執(zhí)行Set do1這個指令。 3. WaitTime時間等待指令 WaitTime時間等待指令,

10、用于程序在等待一個指定的時間以后,再繼續(xù)向下執(zhí)行 WaitTime 4; Reset do1; 等待4s以后,程序向下執(zhí)行Reset do1指令。,5.3 建立一個可運行的基本RAPID程序,編制基本RAPID程序流程如下: 1)確定需要多少個程序模塊。多少個程序模塊是由應(yīng)用的復(fù)雜性所決定的,比如可以將位置計算、程序數(shù)據(jù)、邏輯控制等分配到不同的程序模塊,方便管理。 2)確定各個程序模塊中要建立的例行程序,不同的功能就放到不同的程序模塊中去,如夾具打開、夾具關(guān)閉這樣的功能就可以分別建立成例行程序,方便調(diào)用與管理。,1建立RAPID程序?qū)嵗ㄊ虑皽?zhǔn)備建立board10和di1),2.對RAPID程

11、序進行調(diào)試pHome,程序編輯后,接下來要對程序進行調(diào)試,調(diào)試的目的是檢查程序的位置點是否正確和檢查邏輯控制是否有不完美的地方。,程序調(diào)試步驟如下:,3.對RAPID程序進行調(diào)試rMoveRoutine,4.對RAPID程序進行調(diào)試main主程序,5.RAPID程序自動運行的操作,在手動狀態(tài)下,完成了調(diào)試確認(rèn)運動與邏輯控制正確之后,就可以將機器人系統(tǒng)投入自動運行狀態(tài),以下就RAPID程序自動運行的操作:,6.RAPID程序模塊的保存,5.4 RAPID編程詳解,5.4.1 自定義功能,ABB工業(yè)機器人編程中的功能與指令相似,在執(zhí)行完功能指令后返回一個數(shù)值。使用功能可以有效地提高編程以及程序執(zhí)行

12、效率。下面主要介紹功能指令A(yù)bs、Offs的操作方法。 Abs操作步驟如下:,功能Offs的作用是基于目標(biāo)點在XYZ方向的偏移。 如:“P40:=OFFS(P30,150,230,300)”是指p40相對于p30點在X方向偏移150mm,Y方向偏移230 mm,Z方向偏移300 mm。 Offs操作步驟如下:,5.4.2 中斷程序,在工業(yè)機器人工作過程中,常會有一些緊急需要處理,這時要求工業(yè)機器人會中斷當(dāng)前的執(zhí)行,程序指針PP馬上跳轉(zhuǎn)到專門的程序中對緊急的情況進行相應(yīng)的處理,處理結(jié)束后程序指針PP返回到原來被中斷的地方,繼續(xù)往下執(zhí)行程序。這種專門用來處理緊急情況的專門程序,稱作中斷程序(TRA

13、P)。中斷程序經(jīng)常會用于出錯處理、外部信號的響應(yīng)這種實時響應(yīng)要求高的場合。 現(xiàn)以傳感器的信號進行實時監(jiān)控為例編寫一個中斷程序: 1、在正常情況下,di1的信號為0. 2、如果di1的信號從0變成1,就對reg1數(shù)據(jù)進行加1的操作。 操作步驟如下:,程序舉例,程序開始運行時,機器人末端工具以500mm/s的速度移至phome點位置待機; 待機狀態(tài)下,當(dāng)信號di1由0變?yōu)?時,機器人開始運動,末端工具運動速度為1000mm/s,運動軌跡為畫一個以p10點為圓形,半徑為200mm的圓,運動完成后,機器人末端工具以500mm/s的速度返回phome點位置待機。,PROC main() rIniAll ; WHILE TRUE DO MoveJ phome , v500 , z50, tool1WObj:=wobj1; ENDWHILE ENDPROC PROC rIniAll() MoveJ phome, v500, z50, tool1WObj:=wobj1; IDelete intno1 ; CONNECT intno1 WITH tMonitorDI1 ; ISignalDI di1, 1 , intno1; ENDPROC TRAP tMonitorDI1 MoveJ Offs(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論