工業(yè)機(jī)器人搬運(yùn)工藝程序編寫(xiě)_第1頁(yè)
工業(yè)機(jī)器人搬運(yùn)工藝程序編寫(xiě)_第2頁(yè)
工業(yè)機(jī)器人搬運(yùn)工藝程序編寫(xiě)_第3頁(yè)
工業(yè)機(jī)器人搬運(yùn)工藝程序編寫(xiě)_第4頁(yè)
工業(yè)機(jī)器人搬運(yùn)工藝程序編寫(xiě)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

工業(yè)機(jī)器人搬運(yùn)工藝程序編寫(xiě)一、編寫(xiě)初始化程序二、編寫(xiě)動(dòng)作程序三、編寫(xiě)功能程序四、編寫(xiě)流程程序與主程序1/31一編寫(xiě)初始化程序工業(yè)機(jī)器人搬運(yùn)案例程序的初始條件包括:工業(yè)機(jī)器人運(yùn)行速度、加速度的初始化、工業(yè)機(jī)器人需要回到Home原點(diǎn)安全位姿、伺服滑臺(tái)需要回到原點(diǎn)、壓裝單元滑臺(tái)需要回到原點(diǎn),伺服滑臺(tái)速度初始化、復(fù)位伺服滑臺(tái)自動(dòng)/手動(dòng)模式切換信號(hào)、復(fù)位控制壓裝單元滑臺(tái)移動(dòng)到上料工位信號(hào)、定義動(dòng)作觸發(fā)指令的觸發(fā)事件、變量的初始化。2/31一初始化程序及功能注釋如下:PROCInitiallize()AccSet50,100;!將工業(yè)機(jī)器人加速度限制在最大值的50%VelSet70,800;!將工業(yè)機(jī)器人運(yùn)行速度控制為最大運(yùn)行速度的70%MoveAbsJHome\NoEOffs,v1000,fine,tool0;!移動(dòng)到起始安全點(diǎn)位

SetToPDigHome;!控制伺服滑臺(tái)回原點(diǎn)WaitTime1; WaitDIFrPDigServoArrive,1;!伺服滑臺(tái)回原點(diǎn)到位ResetToPDigHome; SetToPDigStepHome;!控制壓裝單元滑臺(tái)回原點(diǎn)WaitTime1;WaitDIFrPDigStepArrive,1;!壓裝單元滑臺(tái)回原點(diǎn)到位ResetToPDigStepHome; SetAOToPAnaVelocity,0;!設(shè)置伺服滑臺(tái)初始速度為0 ResetToPDigServoMode;!復(fù)位伺服滑自動(dòng)/手動(dòng)模式切換信號(hào)ResetToPDigHubSlide1;!復(fù)位控制壓裝單元滑臺(tái)移動(dòng)到上料工位信號(hào)

TriggIOQuickChangeMotion,10\DOp:=ToTDigQuickChange,1;!定義觸發(fā)事件,在距離指定目標(biāo)點(diǎn)前10mm處,觸發(fā)指定事件

NumPosition:=0; !為變量NumPosition賦初值ENDPROC

編寫(xiě)初始化程序3/31二編寫(xiě)動(dòng)作程序1.編寫(xiě)取工具程序MGetTool取、放工具程序都采用帶參數(shù)的例行程序的形式,在參數(shù)中輸入對(duì)應(yīng)工具架上的工具編號(hào)后,運(yùn)行程序即可以拾取或放置對(duì)應(yīng)編號(hào)的工具,編寫(xiě)具體步驟如下。(1)建立帶參數(shù)的例行程序MGetTool。4/31二編寫(xiě)動(dòng)作程序1.編寫(xiě)取工具程序MGetTool(2)添加工業(yè)機(jī)器人運(yùn)動(dòng)到原點(diǎn)安全點(diǎn)位程序段。(3)添加運(yùn)動(dòng)指令,工業(yè)機(jī)器人經(jīng)過(guò)渡點(diǎn)運(yùn)動(dòng)至取工具位上方50mm的位置。 5/31二編寫(xiě)動(dòng)作程序1.編寫(xiě)取工具程序MGetTool(4)利用TriggL指令使工業(yè)機(jī)器人在朝著工具位上方5mm位置處移動(dòng)的過(guò)程中,調(diào)用觸發(fā)事件QuickChangeMotion(見(jiàn)初始化程序),即在距離取工具位置上方15mm處就將工具快換裝置主端口的鋼珠縮回,準(zhǔn)備拾取工具。 6/31二編寫(xiě)動(dòng)作程序1.編寫(xiě)取工具程序MGetTool(5)添加指令語(yǔ)句,使工業(yè)機(jī)器人移動(dòng)至取工具位置,復(fù)位信號(hào)ToTDigQuickChange安裝工具,安裝完工具后向上抬起10mm。注意:在安裝工具過(guò)程中需要添加必要的等待時(shí)間,以確保安裝過(guò)程的順利進(jìn)行。

7/31二編寫(xiě)動(dòng)作程序1.編寫(xiě)取工具程序MGetTool(6)使用Test邏輯判斷指令,添加7種case情況,對(duì)應(yīng)于工業(yè)機(jī)器人取出工具架上7個(gè)不同工具編號(hào)的工具的路徑,路徑如圖所示。8/31二編寫(xiě)動(dòng)作程序1.編寫(xiě)取工具程序MGetTool(7)最后使工業(yè)機(jī)器人回到取工具前過(guò)渡點(diǎn)位,再回到工業(yè)機(jī)器人原點(diǎn)安全姿態(tài)。 9/31二編寫(xiě)動(dòng)作程序2.編寫(xiě)放工具程序MPutTool放工具程序的編程方法和取工具程序類(lèi)似,示例程序如下: PROCMPutTool(numa) MoveAbsJHome\NoEOffs,V800,fine,tool0;

!工業(yè)機(jī)器人運(yùn)動(dòng)到原點(diǎn)安全姿態(tài) MoveJArea0600R,V500,z20,tool0;

!工業(yè)機(jī)器人到達(dá)取放工具前過(guò)渡點(diǎn)位 TESTa CASE1:!放1號(hào)夾爪工具 MoveLOffs(ToolPoint{a},-100,70,30),V800,z10,tool0; MoveLOffs(ToolPoint{a},-100,70,10),v100,z10,tool0;MoveLOffs(ToolPoint{a},0,70,10),v100,z10,tool0;CASE2:!放2號(hào)吸盤(pán)工具 MoveLOffs(ToolPoint{a},-80,0,30),V800,z10,tool0; MoveLOffs(ToolPoint{a},-80,0,10),V800,z10,tool0;接下頁(yè)10/31二編寫(xiě)動(dòng)作程序2.編寫(xiě)放工具程序MPutToolCASE3:!放3號(hào)夾爪工具 MoveLOffs(ToolPoint{a},-80,0,30),V800,z10,tool0; MoveLOffs(ToolPoint{a},-80,0,10),V800,z10,tool0;CASE4:!放4號(hào)表面打磨工具 MoveLOffs(ToolPoint{a},-100,-70,30),V800,z10,tool0; MoveLOffs(ToolPoint{a},-100,-70,10),v100,z10,tool0; MoveLOffs(ToolPoint{a},0,-70,10),v100,z10,tool0;CASE5:!放5號(hào)輪輞內(nèi)圈夾爪工具 MoveLOffs(ToolPoint{a},75,0,30),v100,z10,tool0; MoveLOffs(ToolPoint{a},75,0,10),v100,z10,tool0;CASE6:!放6號(hào)側(cè)面打磨工具 MoveLOffs(ToolPoint{a},75,0,30),v100,z10,tool0; MoveLOffs(ToolPoint{a},75,0,10),v100,z10,tool0;接下頁(yè)接上頁(yè)11/31二編寫(xiě)動(dòng)作程序2.編寫(xiě)放工具程序MPutToolCASE7:!放7號(hào)吸盤(pán)工具 MoveLOffs(ToolPoint{a},75,0,30),v100,z10,tool0; MoveLOffs(ToolPoint{a},75,0,10),v100,z10,tool0;ENDTESTMoveLOffs(ToolPoint{a},0,0,10),v50,fine,tool0;MoveLToolPoint{a},v40,fine,tool0;!到達(dá)釋放工具的位置WaitTime0.5;SetToTDigQuickChange;!松開(kāi)工具WaitTime0.5;MoveLOffs(ToolPoint{a},0,0,30),v100,z20,tool0;!工業(yè)機(jī)器人放完工具抬起時(shí)的過(guò)渡點(diǎn)MoveLOffs(ToolPoint{a},0,0,50),V800,z20,tool0;MoveJOffs(ToolPoint{a},0,0,100),V800,z20,tool0;MoveJArea0600R,V500,z20,tool0;MoveAbsJHome\NoEOffs,V800,z10,tool0;!回到工業(yè)機(jī)器人原點(diǎn)安全姿態(tài)ENDPROC接上頁(yè)12/31二編寫(xiě)動(dòng)作程序3.編寫(xiě)取料倉(cāng)輪轂程序MGetHub取輪轂程序中,工業(yè)機(jī)器人會(huì)根據(jù)PLC反饋的已經(jīng)彈出料倉(cāng)到位信息,在伺服滑臺(tái)帶動(dòng)下移動(dòng)到伺服導(dǎo)軌相應(yīng)的料倉(cāng)取料位置,然后拾取對(duì)應(yīng)料倉(cāng)中的輪轂,料倉(cāng)取輪轂程序的編程步驟如下:(1)建立料倉(cāng)取輪轂例行程序MGetHub。13/31二編寫(xiě)動(dòng)作程序(2)添加IF…ELSEIF的條件分支判斷語(yǔ)句,實(shí)現(xiàn)工業(yè)機(jī)器人對(duì)PLC端發(fā)送的關(guān)于已彈出料倉(cāng)信息的判斷,根據(jù)判斷結(jié)果,決定取輪轂倉(cāng)位。以接收到1號(hào)料倉(cāng)彈出信號(hào)為例,講解工業(yè)機(jī)器人料倉(cāng)取輪轂程序的編寫(xiě)。當(dāng)FrPDigStorage1Out信號(hào)值為1時(shí),表示1號(hào)料倉(cāng)已彈出??刂扑欧_(tái)移動(dòng)到690mm位置處,工業(yè)機(jī)器人運(yùn)動(dòng)到原點(diǎn)右側(cè)安全姿態(tài)。3.編寫(xiě)取料倉(cāng)輪轂程序MGetHub14/31二編寫(xiě)動(dòng)作程序再移動(dòng)到取料的過(guò)渡點(diǎn),確保夾爪處于松開(kāi)狀態(tài),工業(yè)機(jī)器人移動(dòng)到1號(hào)料倉(cāng)取料位置,控制夾爪工具夾取輪轂。添加指令操縱工業(yè)機(jī)器人經(jīng)過(guò)渡點(diǎn)運(yùn)動(dòng)到遠(yuǎn)離倉(cāng)位的位置,以避免與料倉(cāng)發(fā)生碰撞。 3.編寫(xiě)取料倉(cāng)輪轂程序MGetHub15/31二編寫(xiě)動(dòng)作程序(3)置位料倉(cāng)取/放輪轂完成信號(hào),通過(guò)PLC1間接控制料倉(cāng)縮回;添加運(yùn)動(dòng)指令使工業(yè)機(jī)器人運(yùn)動(dòng)到取1號(hào)料倉(cāng)輪轂的過(guò)渡點(diǎn)位。參照以上方法,完成其余2~6號(hào)料倉(cāng)取輪轂程序段的編寫(xiě)。 (4)復(fù)位料倉(cāng)取/放輪轂完成信號(hào),使工業(yè)機(jī)器人回到原點(diǎn)安全姿態(tài)。3.編寫(xiě)取料倉(cāng)輪轂程序MGetHub16/31二編寫(xiě)動(dòng)作程序4.編寫(xiě)壓裝單元上料程序MPutToPressUnit壓裝單元上料程序可實(shí)現(xiàn)工業(yè)機(jī)器人將料倉(cāng)中已取出的輪轂放置到壓裝單元上料工位處。具體程序如下:PROCMPutToPressUnit()MoveAbsJHomeLeft\NoEOffs,V800,fine,tool0;!工業(yè)機(jī)器人回到原點(diǎn)左側(cè)安全姿態(tài)MoveJOffs(Area0301W,0,0,100),V800,z20,tool0;!工業(yè)機(jī)器人放置輪轂前過(guò)渡點(diǎn)MoveLOffs(Area0301W,0,0,50),V800,z20,tool0;MoveLOffs(Area0301W,0,0,10),v100,z20,tool0;MoveLArea0301W,v40,fine,tool0;!工業(yè)機(jī)器人將輪轂放置到壓裝單元的上料位置上WaitTime0.5;SetToTDigGrip;!松開(kāi)1號(hào)夾爪工具,釋放輪轂接下頁(yè)17/31二編寫(xiě)動(dòng)作程序4.編寫(xiě)壓裝單元上料程序MPutToPressUnitWaitTime0.5;MoveLOffs(Area0301W,0,0,10),v50,z10,tool0;!工業(yè)機(jī)器人放置輪轂后的過(guò)渡點(diǎn)MoveLOffs(Area0301W,0,0,50),V800,z20,tool0;MoveJOffs(Area0301W,0,0,100),V800,z20,tool0;MoveAbsJHomeLeft\NoEOffs,V800,fine,tool0;ENDPROC接上頁(yè)18/31三編寫(xiě)功能程序1.編寫(xiě)伺服滑臺(tái)移動(dòng)程序FRobotSlide伺服滑臺(tái)移動(dòng)程序是一個(gè)帶參數(shù)的例行程序,包含2個(gè)參數(shù),位置和速度,參數(shù)分別命名為Position和Velocity。伺服滑臺(tái)的移動(dòng)范圍為0-760mm,滑臺(tái)移動(dòng)的速度范圍為0-25mm/s。案例中使用8個(gè)數(shù)字量輸出信號(hào)組成一個(gè)組信號(hào)ToPGroPosition(組信號(hào)值范圍0到255),用于向PLC3發(fā)送滑臺(tái)移動(dòng)位置數(shù)據(jù)從而控制伺服滑臺(tái)的移動(dòng)范圍,此時(shí)伺服滑臺(tái)移動(dòng)的范圍只能在0-255之間。為了使伺服滑臺(tái)滿足移動(dòng)距離范圍在0-760mm,在PLC程序中會(huì)對(duì)工業(yè)機(jī)器人實(shí)際傳遞過(guò)去的組信號(hào)ToPGroPosition的值進(jìn)行乘3處理;在工業(yè)機(jī)器人編程中應(yīng)當(dāng)設(shè)置位置參數(shù)輸入?yún)^(qū)間,避免輸入超行程的運(yùn)動(dòng)位置。19/31三編寫(xiě)功能程序1.編寫(xiě)伺服滑臺(tái)移動(dòng)程序FRobotSlide為保證程序控制時(shí)位置參數(shù)輸入的直觀性,工業(yè)機(jī)器人編程時(shí)在Position參數(shù)輸入實(shí)際位置值,然后在程序中對(duì)輸入?yún)?shù)值進(jìn)行除以3操作并保存在中間變量NumPosition中,再將中間變量NumPosition賦值給位置組信號(hào)ToPGroPosition并發(fā)送至PLC。注意:采用以上方案編寫(xiě)程序時(shí),為保證移動(dòng)距離的準(zhǔn)確性,需保證點(diǎn)位示教位置處滑臺(tái)移動(dòng)距離可被3整除。速度參數(shù)可直接賦值到模擬量輸出信號(hào)ToPAnaVelocity并發(fā)送到PLC。20/31三編寫(xiě)功能程序工業(yè)機(jī)器人伺服滑臺(tái)移動(dòng)程序的編寫(xiě)步驟如下:(1)建立帶參數(shù)的例行程序FRobotSlide(numPosition,numVelocity)。1.編寫(xiě)伺服滑臺(tái)移動(dòng)程序FRobotSlide21/31三編寫(xiě)功能程序(2)使用“IF”條件判斷指令,判定輸入的位置值是否在滑臺(tái)行程范圍之內(nèi)。如果在行程范圍之內(nèi),將該位置值除以3,將結(jié)果賦值給中間變量NumPosition。1.編寫(xiě)伺服滑臺(tái)移動(dòng)程序FRobotSlide22/31三編寫(xiě)功能程序(3)將模擬量輸出信號(hào)“ToPAnaVelocity”的值設(shè)置為“Velocity”中的輸入數(shù)值,將組輸出信號(hào)“ToPGroPosition”的值設(shè)置為“NumPosition”中的數(shù)值。然后置位滑臺(tái)運(yùn)動(dòng)模式切換信號(hào),控制滑臺(tái)按照設(shè)定速度移動(dòng)到指定位置。1.編寫(xiě)伺服滑臺(tái)移動(dòng)程序FRobotSlide23/31三編寫(xiě)功能程序(4)添加等待指令,等待滑臺(tái)到位的反饋信號(hào)。注意:等待之前需要添加等待時(shí)間,補(bǔ)償系統(tǒng)響應(yīng)時(shí)間(5)復(fù)位伺服運(yùn)動(dòng)模式信號(hào),執(zhí)行該指令后,滑臺(tái)恢復(fù)至手動(dòng)模式。1.編寫(xiě)伺服滑臺(tái)移動(dòng)程序FRobotSlide24/31三編寫(xiě)功能程序2.編寫(xiě)壓裝單元滑臺(tái)移動(dòng)程序FHubSlide壓裝單元滑臺(tái)移動(dòng)程序采用帶參數(shù)的例行程序形式,通過(guò)輸入?yún)?shù)號(hào)1或2,可以實(shí)現(xiàn)控制壓裝單元滑臺(tái)移動(dòng)到輪轂上、下料工位或者壓車(chē)標(biāo)工位,壓裝單元滑臺(tái)移動(dòng)程序的編程步驟如下:(1)建立控制壓裝單元滑臺(tái)移動(dòng)的帶參數(shù)例行程序FHubSlide。25/31三編寫(xiě)功能程序(2)使用Test邏輯判斷指令,對(duì)2種case情況進(jìn)行判斷:第一種對(duì)應(yīng)于控制壓裝單元的滑臺(tái)移動(dòng)到輪轂的上下料位置;第二種情況對(duì)應(yīng)于控制壓裝單元的滑臺(tái)移動(dòng)到壓車(chē)標(biāo)位置。2.編寫(xiě)壓裝單元滑臺(tái)移動(dòng)程序FHubSlide26/31三編寫(xiě)功能程序(3)置位控制壓裝單元滑臺(tái)移動(dòng)到上下料工位的信號(hào)ToPDigHubSlide1,等待滑臺(tái)到達(dá)上料位置后,復(fù)位該信號(hào),注意添加必要的等待時(shí)間。2.編寫(xiě)壓

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論