愛普生4軸機(jī)器人培訓(xùn).ppt_第1頁(yè)
愛普生4軸機(jī)器人培訓(xùn).ppt_第2頁(yè)
愛普生4軸機(jī)器人培訓(xùn).ppt_第3頁(yè)
愛普生4軸機(jī)器人培訓(xùn).ppt_第4頁(yè)
愛普生4軸機(jī)器人培訓(xùn).ppt_第5頁(yè)
已閱讀5頁(yè),還剩64頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、EPSON 機(jī)械手培訓(xùn),上海波創(chuàng)電氣有限公司 2014-may,一、關(guān)于機(jī)械手的基礎(chǔ)知識(shí) 二、硬件概要 三、EPSON RC+ 用戶界面 四、RC+5.4.3軟件操作 五、SPEL+語言 六、動(dòng)作指令 七、I/O 八、Pallet 九、!.! 并列處理 十、多任務(wù)處理 十一、循環(huán)控制指令 十二、程序?qū)嵗?1、機(jī)械手坐標(biāo)系,1.1 SCARA機(jī)械手坐標(biāo)系,XY方向坐標(biāo)(前后左右),Z方向坐標(biāo)(上下),U方向坐標(biāo)(旋轉(zhuǎn)),2. 機(jī)械手的手臂姿勢(shì) 在使用機(jī)械手作業(yè)時(shí),有必要使其用示教時(shí)的手臂姿勢(shì)在指定的點(diǎn)上動(dòng)作。如果不這樣做,根據(jù)手臂姿勢(shì)的不同,會(huì)產(chǎn)生輕微的位置偏移,或朝著意想不到的路徑動(dòng)作的結(jié)果,

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

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

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

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

6、作任務(wù)1 : 重復(fù)P1P4的Jump動(dòng)作 任務(wù)2 : 每5秒打開/關(guān)閉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 功能:條件一致或不一致時(shí)反復(fù)執(zhí)行Do . Loop直接的程序,直到條件一致為止 格式1:Do while |until條件式 語句】 Exit Do 語句 Loop 格式2:Do 語句】 Exit Do 語句 Loopwhi

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

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

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

10、增值值,計(jì)數(shù)器每1增減。 然后計(jì)數(shù)器變量(變量名) 與最終值比較。計(jì)數(shù)器比最終值小或相同時(shí), For 命令的下一個(gè)語句被再次執(zhí)行。計(jì)數(shù)器變量(變量名)大于最終值時(shí)在For.Next循環(huán)以外分支,在Next 命令的下一個(gè)命令上繼續(xù)。 在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命令是將程序控制轉(zhuǎn)移至指定的行或標(biāo)簽 格式:GoTo 行編號(hào) | 標(biāo)簽 說明:GoTo 命

11、令將程序控制轉(zhuǎn)移至指定的語句行或標(biāo)簽。程序執(zhí)行轉(zhuǎn)移目標(biāo)的語句行,并執(zhí)行以下的行 NOTE:在1 個(gè)程序中,如果過多使用GoTo命令,程序就會(huì)變得難懂,請(qǐng)注意。通常盡量不要使用GoTo命令。實(shí)際上,有時(shí)不得不使用GoTo,但是像GoTo 語句將源代碼到處轉(zhuǎn)移的使用會(huì)造成錯(cuò)誤或引起其他問題。 示例: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 功能:將函數(shù)作為子程序調(diào)出 格式1:Call 函數(shù)名 ( 自變量列表) . 說明:通過Call 命令,F(xiàn)unction.Fend 將程序控制移至定義的函數(shù)。通過Call 命令,程序的執(zhí)行從當(dāng)前的函數(shù)移至Call 命令指定的函數(shù)。程序一直用調(diào)出的函數(shù)繼續(xù),直到找開Exit Function 或Fend。接著用Call 命令的下一個(gè)語句返回原來的函數(shù)控制。 示例: 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 功能:條件成立期間,執(zhí)行While. Wend 之間的指定的語句。 格式1:While 條件式 語句 Wend . 說明:指定While條件。如果條件成立,在WhileWend 間的語句被執(zhí)行,再一次確認(rèn)While條件。 While條件成立期間,重復(fù)WhileWend 間的語句的執(zhí)行與While條件的確認(rèn)。如果While 條件不成立,程序控制移至Wend的下一個(gè)命令。如果

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

15、一致的,則執(zhí)行Case 語句后的語 句群。執(zhí)行后,程序控制移至Send語句上連接的語句。 2)Case 語句的項(xiàng)目中如果沒有與Select 語句的表達(dá)式結(jié)果一致的,則執(zhí)行Default語句,程 序控制移至Send語句上連接的語句。 3)Case 語句的項(xiàng)目中如果沒有與Select 語句的表達(dá)式結(jié)果一致的,且Default被省略,不執(zhí) 行任何語句,程序控制移至Send語句的下一個(gè)語句。 4)Select 語句的表達(dá)式與CASE 語句的項(xiàng)目中可以指定使用常數(shù)、變量、And Or Xor 等 的邏輯算符。 5)1 個(gè)Select 命令上最多可以創(chuàng)建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 功能:發(fā)生錯(cuò)誤時(shí),在錯(cuò)誤處理子程序上設(shè)定使控制分支的中斷。使用記可以進(jìn)行錯(cuò)誤處理。 格式1: OnErr GoTo 標(biāo)簽 | 行編號(hào) | 0 . 說明:1)通過OnErr 用戶可以進(jìn)行錯(cuò)誤處理。如果沒有使用OnErr,發(fā)生錯(cuò)誤時(shí)任務(wù)被中止,顯示 錯(cuò) 誤。但是,如果使用OnErr,為做到自動(dòng)地從錯(cuò)誤中恢復(fù),可以將控制移至錯(cuò)誤處理子 程序?;謴?fù)錯(cuò)誤后,控制移至用OnErr 命令指定的行編號(hào)。這樣,即使發(fā)生錯(cuò)誤,也不會(huì) 中斷任務(wù)的執(zhí)行,且可

17、以自動(dòng)進(jìn)行錯(cuò)誤處理。另外,容易變得復(fù)雜的問題也可以用同樣的 方法自動(dòng)處理,所以可以明顯地提高工作效率。 2)OnErr 命令在指定參數(shù)0后被設(shè)定時(shí),清除當(dāng)前的OnErr 設(shè)定。 OnErr 0執(zhí)行后,如 果發(fā)生錯(cuò)誤,程序的執(zhí)行會(huì)立即停止。 示例: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、以下程序?yàn)橐粋€(gè)分揀演示程序,先通過EPSON視覺照相獲取模版位置,然后 將不同的料排列到不同矩陣盤,然后再?gòu)木仃嚤P就料取出隨意放入料盤, 如此往復(fù)運(yùn)行。 Integer num, num1 定義全局整形變量 *主函數(shù)* Function main Call InitRobot 調(diào)用初始化子函數(shù) Jump daiji 移動(dòng)到待

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

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

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

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論