




已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
大 連 民 族 學 院 機 械 專 業(yè) 綜 合 課 程 設 計 說 明 書產品碼垛作業(yè)工業(yè)機器人離線編程與虛擬仿真學 院(系): 機電信息工程學院 專 業(yè): 機械 學 生 姓 名: 李多文 學 號: 2013022209 指 導 教 師: 馮長健 完 成 日 期: 12月25日 大連民族學院1拆垛機器人工作站構成自動化物流系統(tǒng)中,與碼垛應用相對應的為拆跺應用, 即把成垛的產品依次搬運至流水線上,例如煙草物流系統(tǒng)中出人智能倉庫時的碼垛拆垛、 袋裝原材料拆垛并開袋、汽車零部件的拆垛上料等應用。本工作站為箱類產品拆垛應用,成垛的原料擺放在枝板上,隨枝板流動至枝板輸送鏈拆垛工位處,利用ABB公司的 IRB6700機器人將產品從枝板上搬運至產品輸送鏈上,以便流至下 工位進行處理,如圖 6一l所示。I )枝板輸送鏈 載有產品的枝板經由左側的進料輸送鏈流轉至末端拆垛工位,并且對未端設有至lj位檢測傳感器, 當機器人完成該校板的拆垛任務后,空枝板經由右側輸出線傳至下一士位,便于空枝板的回收,之后進料輸送鏈傳送下一個載有產品的枝板,依次循 環(huán) 2) 吸盤工具 機器人末端法蘭盤裝有吸盤工具( 圖 6-3),利用真空發(fā)生器產生真空,對產品進行拾取處理,機器人利用輸出信號控制真空的產生與關閉,從而實現產品盒的拾取與釋放,該工具采用16個吸盤,氣路分為4蹈,利用機器人4路數字輸出端口分別進行控制,3 )產品輸送鏈I機器人將拆垛產品按照指定的方式放置在產品輸送鏈前端,經由該輸送鏈傳送至下 工位;在該輸送鏈前端設有傳感器, 用于槍測當前位置是否有物料,當沒有物料時才允許機器人執(zhí)行下一個物料的放置, 如圖6-5所示。2、信號組的設置與用法3、數組的應用在定義程序數據時, 可以將同種類型、 同種用途的數值存放在同一個數據中, 當調用該數據時需要寫明索引號來指定我們調用的是該數據中的哪個數值, 這就是所謂的數組。 在RAPID申可以定義維數組、二維數組以及三維數組。 4、寫屏指令的運用在編寫例行程序時, 將該程序中的某些數據設置為參數, 這樣在調用該程序時輸入不同的參數數據,貝lj可對應執(zhí)行在當前數據值情況下機器人對應執(zhí)行的任務。例如, 在切割應用中, 頻繁使用切割正方形的程序, 切割正方形的指令及算法是 致的, 只是正方形的頂點位置、 邊長不一致, 這樣可以將這兩個變量設為參數。PROC rSquare(robtarget pBase, num nSideSize)MoveLpBase, v I 000, fine, tool I WObj :=wobjO;MoveLOffs(pBase, nSideSize,0,0), v I 000, fine, tool I WObj :=wobjO;MoveLOffs(pBase, nSideSize, nSideSize,的,v 1000, fine, tool I WObj :=wobjO;MoveLOffs(pBase, 0, nSideSi罰,0), v I 000, fine, tool I WObj :=wobjO;MoveLpBase, v I 000, fine, tool I WObj :=wobjO;ENDPROCPROC MAIN()rSquarep I, I 00;rSquarep2,200;ENDPROC在調用該切割正方形的程序時, 再指定當前正方形的頂點以及邊長即可在對應位置切割對應邊長大小的正方形。上述程序中,機器人先后切割了2個正方形,以pl為頂點、100為邊長的正方形, 以p2為頂點、 200為邊長的正方形。在機器人應用過程中,節(jié)拍經常是我們關注的一個焦點, 在RAPID中有專門用于計時的時鐘數據以及一系列的計時指令和函數。5、記時指令的應用ClkStart.開始計時,ClkStop.停止計時,ClkReset.時鐘復位,ClkRead. 讀取時鐘數值。案例:VAR clock clock I;PERS num CycleT1me;PROC rMove()MoveL pl,vlOO,fi時,tooJO,ClkReset clock I ClkStart clock I,MoveL p2,v I 00,fine,toolO;ClkStop clock l噸Cycle Time =ClkRead(clock I),ENDPROC上述案例中,機器人到達pl點后開始計時,至lj達p2點后停止計時,之后利用ClkRead i賣取當前時鐘數值, 并將其賦值給數值型變量CycleTime,貝!J當前CycleTime 的值即為機器人從pl點至lj p2點的運動時間。6、拆垛程序編寫MODULE MainMoudle PERS tooldata tVacuum:=TRUE,0,0,200, 1,0,0,0),30,0,0, 130, 1,0,0,0,0,0,0); l定義工具坐標系數據tVacuumPERS robtarget pPickBase:=1520.639271586,310.000414148,-49.999926686),-0_000000328,0,1,-0.000000068,0,-1,0,0) ,(9E9,9E9, 9E9,9E9,9E9,9E9;l定義拆垛工位拾取基準點, 以6.4.4節(jié)中所描述的第2種拾取情況為準PERS robtargetpP!aceType1:=353.779984371,1371.090215836,498_624386673),0_707 I 06815,0_000000588,0.707106747 ,0.000000435),1,-1, 1,0),9E9,9E9,9E9,9E9,9E9,9E9),定義在產品結上放置產品的位置, 第l種情況00543,0.00000072,1,-0.000000 I27),(0,0,0,0),(9E9,9E9,9E9,9E9,9E9,9E9);定義在產品線上放置產品的位置,第2種情況PERS robtargetpPlaceType3:=(654.92,1393 .5 7,999.29),(3.86561 E-07,0.706048,-0.708164,-3.24774E-07),0,0,- I ,0),9E+O9,9E +09,9E +09, 9E+09, 9E +09,9E+09);1定義在產品線上放置 產品的位置,第3種情況PERS robtargetpHo me:=(96l .98463257,0,1800,-0.000000365,0,l ,0,0,0,0,0,9E9,9E9,9E9,9E9,9E9,9E9;l定義機器人工作原點PERS robtargetpPick:=(l 515.64,310,950),(-3.2807,0, 1,-6.8巳08,0,-l ,0,0),9E+09,9E+09,9E+09,9E+09,9E+09,9E+09)定義機器人拾取位置, 此位置以pPickBase為基準計算得出PERS robtargetpPickAfter:= 1015.64,810, l 600,-3.28E-07,0,1,-6.8巳08),(0,-l ,0,0,(9E+09,9E+09,9E+09, 9E+09,9E+09,9E+09);定義機器人拾取產品后的抬高位置PERS speeddata MinSpeed:=500, I 00,5000, I 000);PERS speeddata M idSpeed:=1500,200,5000, I 000);PERS speeddata MaxSpeed:=(3000,300,5000, 1000);!定義不同的速度數據, 用于不同的運動過程PERS loaddata LoadEmpty:=(O.O 1,(0,0,1,1,0,0,0,0兒。;1定義機器人空負載時的有效載荷數據, 重量設為O.Olkg , 可將其視為空載荷PERS loaddata LoadSingle:=20,0,0,150,1,0,0,0,0,0,0; 定義機器人拾取l個產品時的負載數據PERS loaddata LoadDouble:=40,(0,0,500),(1,0,0,0)夕,0,0); 1定義機器人拾取2個產品時的負載數據PERS num nCounter:=1;定義拆垛計數器PERS num nCycleTime:=6.848, l定義數值型數據, 用于表示節(jié)拍時間VAR clock Timer; 1定義時鐘數據, 用于計算節(jié)拍PERS num nPos 10,4 :=310,0, 1300, I ),(310,-610, 1300, I ,-5,0,1000,3),(-5,-620,1000,3),(605,0,1000,2),(605,-610,1000,2),0,0,0,2),(0,-610,0,2),615,0,0,3),(615,-620,0,3);1定義位置數組,第一維 為10, 依次對應產品垛中的l 0個拾取位置l第二維為 4, 分別對應單個拾取位置中的四項屬性值, 依次為X偏移值、 Y偏移值、 Z偏移值、 拾取情況種類, 拾取位置以示教的第2種情況中的拾取位置 為基準, 結合該數組申的位置偏移量, 最終計算出每次拾取產品時的具體位置, 從而依次完成各產品的拾取1最上面一層的兩個拾取位置 l、 2, 如圖6-34所示中間 層的4個拾取位置 3 4、 5 6, 如圖6-35所示最下面一層的4個拾取位置7、 8、 9、 10, 如圖6 36所示, 其中7是拾取基準點, 其他位置均PROC Main()1聲明主程序rlnitAll程序起始位置調用初始化程序, 用于復位機器人位置、 信號、 數據等WHILETRUEDO1采用WHILE TRUE DO無限循環(huán)結構, 將機器人需要重復運行的動作與初始化程序隔離開rPick;調用拾取產品的程序rPlace;調用放置產品的程序ENDWHILEENDPROCPROC rlnitAll() 1聲明初始化程序rMoveHome調用回工作原點HOME的程序SetGO goGrip,O;1復位所有吸盤真空1前面加上英文字符感嘆號“!”貝IJ表示當前行為注釋行, 此處是用于比較單端口的數字輸出信號與信號組在使用上面的差別, 此處使用信號組較為方便nCounter:= I復位計數器ENDPROCPROC rPick()聲明拾取產品程序ClkReset Timer;復位計時器ClkStart Timer;l開始計時WaitDI diPalletlnPos I1拆垛工位處的到位檢測信號,等待產品垛到位, 否則一直等待pPick:=Offs(pPickBase,nPos nCounter, I ,nPos nCounter,2 ,nPos nCounter,3 );l利用Offs函數以及位置數據計算當前計數器值下的拾取位置pPickA仇er.trans.x :=pPick. trans.x-5 00;mm pPickA仇er.trans. y :=pPick. trans. y+500,計算拾取后的中間過渡位置, 其Y值相對于pPick來說沿著工件坐標系Y正方向偏移500mmpPickA仇er.trans.z:= 1600; 1計算拾取后的申間過渡位置,其Z值為固定值1600mmMoveJ Offs(pPick,0,0,500),MaxSpeed,z50,t Vacuum WObj :=wobjO;!利用MoveJ移動至當前拾取位置正上方500mm處MoveL pPick,MinSpeed, tine,tVacuum WObj :=wobjO;l利用MoveL直線移動至當前拾取位置SetGO goGrip,15;置位吸盤動作, 所有吸盤全部建立真空 注釋, 不被執(zhí)行WaitTime 0.3:1等待0.3s, 保證產品已被拾取IF nPosnCounter,4=1 THEN判斷當前拾取類型,若為情況l貝ljGripLoad LoadSingle;加載單個產品的負載數據ELSEGripLoad LoadDouble; l其他情況即情況2、 3,貝lj加載兩個產品的負載數據END IFMovL Offs(pPick,0,0,200),M inSpeed,z50,tVacuum WObj :=wobjO;利用MoveL直線移動至拾取位置上方200mm處MoveL pPickAfter,MidSpeed,z I 00,tVacuum WObj :=wobjO,1利用MoveL移動至拾取后中間過渡點IF nCounter=I 0 PulseDO doPalletOut判斷當前計數是否大于等于10, 即是否全部完成了當前枝板的拆垛任務,若滿足條件則發(fā)出移除當前枝板信號,將空枝板移走,并移入下一個載有產品的校板, 此處為簡化版的IF用法, 該指令只適用于判斷一種條件, 條件滿足時只執(zhí)行一旬指令的特殊情況ENDPROCPROC rPlace()聲明放置程序TEST nPosnCounter,4判斷當前是哪種情況CASE I rPlaceType I;1若是情況l,貝lj調用放置程序lCASE 3: rPlaceType3;若是情況3,貝lj調用放置程序3DEFAULT:TPErase;TPWrite飛he value of type is eor,please check it!”,Stop;!若不為上述三種情況,貝lj清屏并寫屏顯示相關錯誤信號,并停止程序運行ENOTE STIF nCounter I0 THEN判斷當前計數是否大于10, 每個錢板上共拾取放置10次MoveJ pHome,MidSpeed, fine,tVacuumWObj:=wobjO; l若滿足條件則移動至HOME位置nCounter:= I; !計數器復位“ENDIFClkStop Timer;停止計時nCycleTime:=ClkRead(Timer);讀取當前計時器中的數值,并將其賦值給nCycleTimeTPErase,人畫析機精用 業(yè)工應TPWrite“Last cycletime is:”Num:=nCycleTtme;清屏,并寫屏顯示上次拾取放置的節(jié)拍是多少ENDPROCPROC rPlaceType I()l聲明放置程序l型 WaitDI diltemlnPos,O;典 !等待產品線前端放置位置處己沒有產品,防止在放置過程中產品之間發(fā)生碰撞穰 MoveJ Offs(pPlaceType 1,0,0, I 000),M idSpeed,z I 00,tVacuumWObj :=wobjO;包 !移動至第l種情況下放置位置上方IOOOmm處踴 MoveL Offs(pPlaceType1,0,0, I OO),MidSpeed,z20,tVacuumWObj :=wobjO;嚴 移動至第l種情況下放置位置上方lOOmm處MoveL pPlaceType l ,MinSpeed,fine,tVacuum WObj :=wobjO;第l種情況下放置位置處SetGO goGrip,0;1復位吸盤工具真空! Reset doGrip I; !Reset doGrip2; !Reset doGrip3; !Reset doGrip4;l注釋, 不被執(zhí)行WaitTime 0.3;!Reset doGrip I, Reset doGrip2, !Reset doGrip3; !Reset doGrip4, 1注釋行, 不被執(zhí)行WaitTime 0.3,!等待0.3sGripLoad LoadEmpty,1加載空載荷數據MoveL Offs(pPlaceType2,-3 I1移動至第2個產品放置位0,0, I 00),MinSpeed,z20,tVacuum WObj :=wobjO;置上方lOOmm處MoveL Offs(pPlaceType2,-3 I 0,0,600),MidSpeed,z I 00,tYacuum WObj:=wobjO;1移動至第2個產品放置位置上方600mm處nCounter:=nCounter+ I,1計數器累計加!ENDPROCPROC rPlaceType3()聲明放置程序3WaitDI diltemlnPos O等待產品線前端放置位置處己沒有產品,防止在放置過程中產品之間發(fā)出碰撞 MoveJ Offs(pPlaceType3,0噸。,600),MidSpeed,z I 00,tYacuum WObj :=wobjO;移動至第3種情況下放置位置上方600mm處MoveL Offs(pPlaceType3,0,0, I 00),MidSpeed,z20,tYacuum WObj :=wobjO; 移動至第3種情況下放置位置上方lOOmm處MoveL pPlaceType3,M inSpeed,fine,t Vacuum WObj :=wobjO;移動至第3種情況下放置位置處 SetGO goGrip, IO; !將吸盤工具信號組置位為l0, 復位l、 3號吸盤, 放量第l個產品 !Reset doGripl ;Set doGrip2;!Reset doGrip3; ! Set doGrip4;l注釋行,不被執(zhí)行WaitTime 0.31等待0.3s,保證產品被完成釋放GripLoad LoadSingle;加載單產品的載荷數據MoveL Offs(pPlaceType3,0,0,200),M i nSpeed,z20,tYacuum WObj :=wobjO;移動至放置位置上方200mm處WaitDI diltemlnPos,O,等待產品結前端沒有產品,即等待剛剛放量的產品已離開該放置區(qū)域MoveJ Offs(pPlaceType3310,0,20圳、MidSpeed,z50,t Vacuum WObj :=wobjO,!移動至第2個產品的放置位置上面, 兩個產品之間的間隔為310mm MoveL Offs(pPlaceType3,-310,0,町,Min Speed, fine,! VacuumWObj :=wobjO,! 移動至第2個產品的放置位置SetGO goGrip,O,復位真空吸盤信號姐, 放置第2個產品! Reset doGrip I,! Reset doGrip2; Reset doGrip3;! Reset doGrip4;1注釋行, 不被執(zhí)行WaitTime 0.3;l等待0.3s, 保證產品被完全釋放GripLoad LoadEmpty;l力口載空載荷數據MoveL Ofs(pPlaceType3, 310,0, I 00),M inSpeed,z20,tVacuum WObj :=wobjO,1移動至當前放置位置上方lOOmm處MoveL Offs(pPlaceType3,-3 I 0,0,600),M idSpeed,z I 00,tYacuum WObj :=wobjO;1移動至當前放置位置上方600mm處nCounter:=nCounter+ I;l計數器累計加lENDPROCPROC rMo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025學年小學四年級英語聽力故事理解測評卷:冒險故事解析
- A-LevelFurtherMath2024-2025年度考試試題:矩陣行列式計算與復數級數求解
- 肝膽護理情景模擬
- 2025年小學語文畢業(yè)升學考試全真模擬卷(語文知識趣味競賽)備考策略分享
- 2025年廣告設計師專業(yè)知識考核試卷:平面廣告設計原理試題
- 高頻考點2025年考研中國古代文論核心100題試卷(含名詞解釋)
- 貴州省黔西一中2011屆高三上學期第三次月考試題(物理)
- 2025年學校教職工黨支部建設實施辦法:強化黨員教育管理提高黨員素質
- 【《污水處理廠的儲泥池、污泥脫水間及高程的計算設計綜述》2200字】
- 【《光明乳業(yè)基于近年數據的財務比率研究》5700字】
- 環(huán)保管家服務投標方案(技術標)
- 樁頂地系梁專項施工方案
- 電氣工程概論-肖登明
- 民間個人借款還清證明范本
- 膠粘劑制造業(yè)行業(yè)營銷方案
- 【江淮汽車公司財務現狀及其盈利能力問題分析(10000字論文)】
- Sibelius使用教程教材說明
- 柔力球-華中師范大學中國大學mooc課后章節(jié)答案期末考試題庫2023年
- 學會寬容快樂生活主題班會課件
- ASME-B31.3-2008-工藝管道壁厚計算
- (完整版)培訓學校衛(wèi)生管理制度
評論
0/150
提交評論