愛普生4軸機器人培訓.ppt_第1頁
愛普生4軸機器人培訓.ppt_第2頁
愛普生4軸機器人培訓.ppt_第3頁
愛普生4軸機器人培訓.ppt_第4頁
愛普生4軸機器人培訓.ppt_第5頁
已閱讀5頁,還剩64頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、EPSON 機械手培訓,上海波創電氣有限公司 2014-may,一、關于機械手的基礎知識 二、硬件概要 三、EPSON RC+ 用戶界面 四、RC+5.4.3軟件操作 五、SPEL+語言 六、動作指令 七、I/O 八、Pallet 九、!.! 并列處理 十、多任務處理 十一、循環控制指令 十二、程序實例,1、機械手坐標系,1.1 SCARA機械手坐標系,XY方向坐標(前后左右),Z方向坐標(上下),U方向坐標(旋轉),2. 機械手的手臂姿勢 在使用機械手作業時,有必要使其用示教時的手臂姿勢在指定的點上動作。如果不這樣做,根據手臂姿勢的不同,會產生輕微的位置偏移,或朝著意想不到的路徑動作的結果,

2、有干涉周邊設備的危險。為了避免這種情況,在點數據中必須事先指定使其在此點上動作時的手臂姿勢(如下圖)。此信息也也可以從程序中變更(L或者R)。,2.1 SCARA機械手的手臂姿勢圖,系統構成,NPN接法,PNP接法,NPN接法(出廠默認),PNP接法,1、動作執行序列的時序,2、緊急停止序列的時序,3、程序執行序列的時序,4、安全門輸入序列的時序,不外接急停時接線:1,9,14短接 ; 2,3短接;15,16短接;4,11短接; 17,12短接;24,8,21,19短接; 22,7,20,18短接 .,1. 軟件IP設置(使用以太網連接時用) 配置與控制器的通信,從設置菜單中選擇電腦與控制器通

3、信。將打開如 下所示的對話框: 設置新增以太網連接名稱及IP地址 :點擊增加-選擇通過以太網連接控制器-確定-填寫控制器IP地址。,(2)控制器出廠默認控制器IP設置如右下圖所示 設置好IP后單擊應用,如果控制器IP忘記了,可以先用USB線連接控制器然后在 “設置”|控制器|配置里可以查看控制器IP,電腦IP的前三位要與控制 器的前三位相同,例如“192.168.0.10”,2.控制器設置 (1)單擊設置” “控制器”進入控制器設置畫面,然后單擊“配置” 設置控制的IP地址及控制方式,當要使用外部I/O控制時須將“控制設備”改為 遠程I/O,然后單擊“應用”,再單擊關閉,等待控制器重啟完畢后,

4、按“F5”, 單擊“激活遠程I/O”后關閉軟件即可使用外部I/O控制控制器。,3. 示教畫面 打開Jog On 1; D50; Off 1! Fend 2) 將并列處理連同Jump 命令一起使用。第3 關節上升移動結束,第1、第2、第4 關節各自完成到P1 的移動的 10%的階段打開輸出位5,0.5 秒后關閉輸出位5。 Function test2 Jump P1 !D10; On 5; Wait 0.5; Off 5! Fend 注意: 所有I/O 命令結束前動作結束的情況下 即使結束特定動作命令的動作所有的并列處理語句的執行也沒有結束時,等全部結束以后執行下一個程 序。這種狀況在必須并列處

5、理多個I/O 命令的短距離移動動作時特別要注意 用停止手臂的Till 語句中途結束動作時,并聯I/O 的執行 如果移動的中途停止手臂的Till 語句被使用,動作語句執行的下一個語句等待至全部并列處理語句執行結 束后執行。,多重任務是多個作業同時執行,可以大幅度縮短任務時間(作業時間)。也可以同時控制周邊設備,這樣系統整體效率提高生產性也會提高。作業分為各個任務后,程序會變得易懂,且維修也可以對各任務分別進行,要新增作業時只需添加任務就可以了。可以同時執行的任務最多可以是16 個。 格式:Xqt 任務編號, 函數名(自變量一覽表) ,Normal | NoPause | NoEmgAbort 動

6、作任務1 : 重復P1P4的Jump動作 任務2 : 每5秒打開/關閉1次I/O。 程序: Function test9 Integer i Xqt IO Do For i= 1 To 4 Jump P(i) Next Loop FEND FUNCTION IO Do On 1; Wait 0.5 Off 1; Wait 0.5 Loop Fend,1、Do . Loop 功能:條件一致或不一致時反復執行Do . Loop直接的程序,直到條件一致為止 格式1:Do while |until條件式 語句】 Exit Do 語句 Loop 格式2:Do 語句】 Exit Do 語句 Loopwhi

7、le |until條件式 說明:當條件式省略時,且Do . Loop循環中沒有Eixt Do語句則為一個無限循環。當條件式成立時退出循環。退出Do.Loop的另一個方法是可以在Do.Loop中的任何位置,插入任意個Exit Do語句。Exit Do經常使用在對If.Then 等幾個條件進行評價之后。在If.Then 上使用Exit Do語句后,將控制Loop移至下一個語句。 示例:Do While Sw(8) =On 當輸入8為ON時一直執行Do . Loop之間語句 Go p1 移動到P1位置 On 8 打開輸入8 Go p2 移動P2位置 Off 8 關閉輸入8 Loop,2、If . T

8、hen . Elseif . Endif 功能:根據指定條件分歧執行命令 格式1:If 條件式 Then 語句 T1 . . Elseif 條件式 Then 語句 T1 . . Else 語句 F1 . . Endif 格式2:If 條件式 Then 語句T1 ;語句T2. Else 語句 F1 ;語句 F2. 說明:If . Then . Else 在滿足條件時執行語句T1以后部分,不滿足條件時執行F1以后部分,Else部分可省略,不滿足條件時就執行 Endif 以后部分。按照格式1編輯程序時必須以Endif結束,按照格式2將語句編輯到同一行時可省略 Endif,If.Then.Else 語

9、句的程序段,嵌套最多可以有20段 示例: If SW(8)=ON then 當輸入8接通時移動到P1 Go P1 Endif,3、 For . Next 功能:For . Next 之間一連串的語句執行指定次數 格式1:For 變量名=初始值 To 結束值 Step 增值 語句 . Next 變量名 說明: 初始值的數值為計數器最初的值。如果正確設定了結束值變量與增值,就可以設定負的數值。結束值為計數器的最終值。到達此值后循環立即結束,程序控制移至Next 命令的下一個命令。 For 語句的下一個語句被執行至到達Next 命令為止。計數器變量(變量名)根據增值參數,只增值指定的值。如果沒有設定

10、增值值,計數器每1增減。 然后計數器變量(變量名) 與最終值比較。計數器比最終值小或相同時, For 命令的下一個語句被再次執行。計數器變量(變量名)大于最終值時在For.Next循環以外分支,在Next 命令的下一個命令上繼續。 在For. Next間再次使用For.Next語句叫做嵌套。嵌套最高可以到16段 。 示例: For ctr = 1 to 10 Go Pctr Next ctr For ctr = 10 to 1 Step -1 Go Pctr Next ctr,4、Goto 功能:GoTo命令是將程序控制轉移至指定的行或標簽 格式:GoTo 行編號 | 標簽 說明:GoTo 命

11、令將程序控制轉移至指定的語句行或標簽。程序執行轉移目標的語句行,并執行以下的行 NOTE:在1 個程序中,如果過多使用GoTo命令,程序就會變得難懂,請注意。通常盡量不要使用GoTo命令。實際上,有時不得不使用GoTo,但是像GoTo 語句將源代碼到處轉移的使用會造成錯誤或引起其他問題。 示例:Function main If Sw(1) = Off Then GoTo mainAbort EndIf Print Input 1 was On, continuing cycle . Exit Function mainAbort: Print Input 1 was OFF, cycle ab

12、orted! Fend,5、Call 功能:將函數作為子程序調出 格式1:Call 函數名 ( 自變量列表) . 說明:通過Call 命令,Function.Fend 將程序控制移至定義的函數。通過Call 命令,程序的執行從當前的函數移至Call 命令指定的函數。程序一直用調出的函數繼續,直到找開Exit Function 或Fend。接著用Call 命令的下一個語句返回原來的函數控制。 示例: Function main Call InitRobot(1) Fend Function InitRobot(robotNumber As Integer) Integer savRobot sa

13、vRobot = Robot Robot robotNumber Motor On If Not MCalComplete Then MCal End If Robot savRobot Fend,6、While. Wend 功能:條件成立期間,執行While. Wend 之間的指定的語句。 格式1:While 條件式 語句 Wend . 說明:指定While條件。如果條件成立,在WhileWend 間的語句被執行,再一次確認While條件。 While條件成立期間,重復WhileWend 間的語句的執行與While條件的確認。如果While 條件不成立,程序控制移至Wend的下一個命令。如果

14、第1 次確認后While條件不成立, WhileWend 間的語句一次都不被執行。 NOTE:在一個While.Wend 循環中可嵌套的While.Wend循環最多為16段。 示例: Long i i = 1 While i 60 Execute statements between While/Wend if i 60 . i = i + 2 Wend,7、Select. Send 功能:根據表達式的值將控制移至幾個語句中的任意一個上。 格式1:Select 表達式 Case項目 語句 Default 語句 Send . 說明:1)Case 語句的項目中如果有與Select 語句的表達式結果

15、一致的,則執行Case 語句后的語 句群。執行后,程序控制移至Send語句上連接的語句。 2)Case 語句的項目中如果沒有與Select 語句的表達式結果一致的,則執行Default語句,程 序控制移至Send語句上連接的語句。 3)Case 語句的項目中如果沒有與Select 語句的表達式結果一致的,且Default被省略,不執 行任何語句,程序控制移至Send語句的下一個語句。 4)Select 語句的表達式與CASE 語句的項目中可以指定使用常數、變量、And Or Xor 等 的邏輯算符。 5)1 個Select 命令上最多可以創建250 段的Case 語句。 示例:Select I

16、 Case 0 Off 1;On 2;Jump P1 Case 3 On 1;Off 2 Jump P2;Move P3;On 3 Case 7,8、OnErr 功能:發生錯誤時,在錯誤處理子程序上設定使控制分支的中斷。使用記可以進行錯誤處理。 格式1: OnErr GoTo 標簽 | 行編號 | 0 . 說明:1)通過OnErr 用戶可以進行錯誤處理。如果沒有使用OnErr,發生錯誤時任務被中止,顯示 錯 誤。但是,如果使用OnErr,為做到自動地從錯誤中恢復,可以將控制移至錯誤處理子 程序。恢復錯誤后,控制移至用OnErr 命令指定的行編號。這樣,即使發生錯誤,也不會 中斷任務的執行,且可

17、以自動進行錯誤處理。另外,容易變得復雜的問題也可以用同樣的 方法自動處理,所以可以明顯地提高工作效率。 2)OnErr 命令在指定參數0后被設定時,清除當前的OnErr 設定。 OnErr 0執行后,如 果發生錯誤,程序的執行會立即停止。 示例:Function errDemo Integer i, errNum OnErr GoTo errHandler For i = 0 To 399 temp = CX(P(i) Next i Exit Function errHandler: errNum = Err If errNum = 78 Then Print Point number P,

18、i, is undefined! Else Print ERROR: Error number , errNum, occurred while Print trying to process point P, i, ! EndIf EResume Next Fend,1、以下程序為一個分揀演示程序,先通過EPSON視覺照相獲取模版位置,然后 將不同的料排列到不同矩陣盤,然后再從矩陣盤就料取出隨意放入料盤, 如此往復運行。 Integer num, num1 定義全局整形變量 *主函數* Function main Call InitRobot 調用初始化子函數 Jump daiji 移動到待

19、機位置 Do Call Robot1 調用Robot1子函數 Loop Fend *初始化子函數* Function InitRobot If Motor = Off Then 當馬達伺服未上時使伺服ON Motor On 開伺服 EndIf Power High 運行功率為高功率 Speed 10 定義PTP速度 Accel 80, 80 定義加減速 Off 8 關閉輸出8 Pallet 1, y1, y2, y3, 3, 2 定義一個三列二行矩陣1 Pallet 2, y10, y11, y12, 3, 2 定義一個三列二行矩陣2 Fend,*視覺子程序* Function Vision1

20、 Integer i, j 定義整形變量 Real X(50), Y(50), Z, U(50) 定義二個實形變量 Z = -100 給Z賦值 VRun seq1 運行seq1序列 VGet seq1 .Geom03.NumberFound, num 獲取模版Geom03個數 If num 0 Then For i = 1 To num VGet seq1.Geom03.RobotXYU(i), found1(i), X(i), Y(i), U(i) 獲取模版Geom03坐標 P(i) = XY(X(i), Y(i), Z, 0) /L 將模版Geom03坐標賦值給P(i) Next EndI

21、f VGet seq1.Geom02.NumberFound, num1 獲取模版Geom02個數 Print num1 打印搜索到模版個數 If num1 0 Then For j = 1 To num1 VGet seq1.Geom02.RobotXYU(j), found1(j + 10), X(j + 10), Y(j + 10), U(j + 10) 獲取模版 Geom02坐標 P(j + 100) = XY(X(j + 10) - 0.2, Y(j + 10) - 0.2, Z, U(j + 10) /L 將模版Geom02坐標賦值給P(j+100) Next EndIf Fend,*機器人動作程序* Function Robot1 Integer i, k, j, k1 定義整形變量 Tool 0 使用Tool 0 LimZ -30.00 設定Z軸極限 Jump P(35) 移動到P35點 Call Vision1 調用視覺子程序 If num 0 Then For i = 1 To num Tool 6 使用Tool 6 Jump P(i) +Z(10) C1 移動到P(i)點上方相距10mm Move P(i) 移動到P(i)點 On 8 打開真空 Wait 0.5 等待0.5s Jump Pallet(1, i) +Z(10) C

溫馨提示

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

評論

0/150

提交評論