ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:18.51KB ,
资源ID:2419766      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-2419766.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ABB机器人编程程序解析汇报.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

ABB机器人编程程序解析汇报.docx

1、ABB机器人编程程序解析汇报ABB机器人编程1程序解析:1、此程序是典型的ABB机器人官方编程思路与方法,分为主程序,初始化例行程序和轨迹程序。2、思路清晰,结构编排明确,方便使用者阅读。%VERSION:1LANGUAGE:ENGLISH%MODULE MainModulePERS tooldata tGripper:=TRUE,0,0,100,1,0,0,0,25,0,0,10,1,0,0,0,0,0,0;PERS wobjdata WobBox:=FALSE,TRUE,1,1,1,0,0,0,0,0,0,0,1,0,0,0;CONST robtarget pPointA:=1,1,1,1

2、,1,1,1,-1,0,0,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONST robtarget pPointB:=1,1,1,1,1,1,1,-1,0,0,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONST robtarget PHome:=1,1,1,1,1,1,1,-1,0,0,0,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;PERS loaddata load_Empty:=1,0,0,0,1,0,0,0,0,0,0;PERS loaddata load_Box:=20,0,0,0,1

3、,0,0,0,0,0,0;以上是固定的数据存放位置。PROC main()主程序,是一个程序的开始rInitial;Accset 60,60;此部分其实可放入到rInitial中去,这样管理起来更方便velset 100,100;此部分其实可放入到rInitial中去,这样管理起来更方便WHILE TRUE DOrBox;在此指令后插入0.3秒的等待指令,防止CPU过负荷的情况出现。ENDWHILEENDPROCPROC rInitial()SetDo DOGrip,0;WaitDI DIGripReleased,1;MoveJ pHome, v300, z50, tGripper;ENDPR

4、OCPROC rBox()MoveJ offs(pPointA,0,200,500), v1500, z100,tGripper;MoveJ offs(pPointA,0,200,0), v1500, z50,tGripper;A:TPErase;IF DIAllowPick=1THENWaitTime 0;ELSEIF DIAllowPick=0 THENTPWrite Signal of AllowPick no ready,Please Check!;GOTO A;ENDIFMoveL pPointA,v800, fine, tGripper;SetDo DOGrip,1;WaitDI

5、DIGripPicked,1;Gripload load_Box;这一句很重要的,设定机器人的实际负荷情况,有利于机器人伺服控制的优化MoveJ offs(pPointA,0,0,500), v1000, z100, tGripper;MoveJ offs(pPointB,0,0,200), v1000, z50, tGripperWObj:=WobBox;MoveL pPointB, v1000, fine, tGripperWObj:=WobBox;SetDo DOGrip,0;WaitDI DIGripReleased,1;Gripload load_Empty;MoveL offs(p

6、PointB,0,200,0), v800, z50, tGripperWObj:=WobBox;MoveJ offs(pPointB,0,200,500), v1500, z100, tGripperWObj:=WobBox;ENDPROCENDMODULEABB机器人编程02程序解析:1、此程序编写的思路是完全按照比赛题目中的要求的进行,就是按步就班式的2、思路清晰,结构编排明确,方便使用者阅读。3、有相应的写屏信息提示,方便操作员对机器人运行状态的了解。4、有一点小问题,就是缺少初始化的部分。MODULEMainModuleCONSTrobtargetPHOME:=1149.87,13.

7、55,451.35,0.729477,0.0748599,0.679603,0.0199765,0,0,0,1,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONSTrobtargetPA:=250.14,-652.34,650.90,0.429093,0.468557,-0.496153,0.591749,-1,0,-2,1,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONSTrobtargetP20:=250.14,-652.35,828.56,0.429091,0.468538,-0.496163,0.591756,-1,0,-3

8、,1,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONSTrobtargetP30:=695.24,18.14,826.55,0.0377066,-0.677588,0.0913591,-0.728771,0,0,-2,1,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONSTrobtargetP40:=1227.51,18.14,826.55,0.0377092,-0.677583,0.0913642,-0.728774,0,0,-3,1,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;CONSTrobtarg

9、etPB:=1227.52,18.15,424.02,0.0377092,-0.677591,0.0913577,-0.728767,0,0,-2,1,9E+09,9E+09,9E+09,9E+09,9E+09,9E+09;PROCmain()在主程序里,过于臃肿,将具体功能尽量细分到例行程序TPErase;MoveJPHOME,v1000,z50,tool0;OpenGripper;WaitTime5;WHILEtrueDOIFPLC=1THENTPErase;TPWriteWarning! Begin to move the new staff.;WaitTime1;ClkResetclo

10、ck1;ClkStartclock1;MovFromAtoB;ClkStopclock1;reg1:=ClkRead(clock1);TPErase;TPWriteGoods handling in place, it take (time in second): Num:=reg1;运行时间的显示WaitTime5;ELSETPErase;TPWriteWaiting for new goods.;运行状态的提醒WaitDIPLC,1;ENDIFENDWHILEENDPROCPROCOpenGripper()将对夹具的控制做在一个例行程序里,方便管理SetG0;ResetG1;ENDPROC

11、PROCCloseGripper()将对夹具的控制做在一个例行程序里,方便管理SetG1;ResetG0;ENDPROCPROCMovFromAtoB()MoveJP30,v1000,z50,tool0;MoveJP20,v1000,z50,tool0;MoveLPA,v50,fine,tool0;WaitTime1;CloseGripper;WaitTime1;MoveJP20,v50,z50,tool0;MoveJP30,v1000,z50,tool0;MoveJP40,v1000,z50,tool0;MoveLPB,v50,fine,tool0;WaitTime1;OpenGripper

12、;WaitTime1;MoveLP40,v50,z50,tool0;MoveJP30,v1000,z50,tool0;MoveJPHOME,v1000,z50,tool0;ENDPROCENDMODULEABB机器人编程03程序解析:1、此程序是典型的ABB机器人官方编程思路与方法,分为主程序,初始化例行程序和轨迹程序。2、思路清晰,结构编排明确,方便使用者阅读。3、但有点要注意的初始化例行程序只在开始时,执行一次,正常运行时,不再执行。但此程序是每个循环都会进行一次初始化,是有点问题的。PROC main()InitAll;此初始化程序应与循环执行的程序隔离开,使用WHILE指令Circle

13、;WaitTime 0.5;ENDPROCPROC InitAll()Reset Do_fixOn;WaitDIOnConfJOn;ConfLOn;VelSet 80, 1000;AccSet 70,70;MoveJ PHome, v150, fine, Tool0WObj:=Wobj2;RETURN;ENDPROCPROC Circle()MoveJ Home, v60, z0, Tool0WObj:=Wobj2;waitDI;work;reset waitDIMoveJ Home, v150, fine, Tool0WObj:=Wobj2;ENDPROCPROC fixopen()Set

14、Do_fixopen;ENDPROCPROC fixclose()Reset Do_fixclose;ENDPROCPROC Work()MOVEJ A0v150, z10, Tool0WObj:=Wobj2;fixopen;waittime 2;MOVEL A1v30, fine,Tool0WObj:=Wobj2;fixclose;waittime 2;MOVEJ B0v150, z10, Tool0WObj:=Wobj2;MOVEj B1v30, fine,Tool0WObj:=Wobj2;fixopen;waittime 2;MoveJ PHome, v150, fine, Tool0W

15、Obj:=Wobj2;ENDPROCABB机器人编程04程序解析:1、此程序是典型的ABB机器人官方编程思路与方法。2、思路清晰,结构编排明确,方便使用者阅读。3、此程序有一个亮点,就是有一个回等待点的例行程序rMoveHome,这个好处在于可以在手动状态下,就能方便的回到机器人的等待位置。4、有足够的写屏信息,很好地提示运行状态。PROC Main()rInitial;rMoveHome;While True DoVelset 100,3000;AccSet 70, 70;rpickworkpiece;rplaceworkpiece;endwhileproc rpickworkpiece;i

16、f workpiece=falseMoveJ pickup, v2000, z5, too10;A:TPErase;IF DI10_pickup=1THEN(pickup为PLC发来拾取信号)WaitTime 0;ELSEIF DI10_pickup=0 THENTPWrite PLC-pickup signal no ready.;GOTO A;ENDIFMoveJ Offs(pickup,0,0,300), v500, z200, too10;SetDo DO10_pickup1,1;wait time1;workpiece=tureendifendprocproc rplaceworkp

17、iece;if workpiece=tureMoveJ placemiddle, v2000, z5, too10;MoveJ placeworkpiece, v2000, z5, too10;MoveJ Offs(placeworkpiece,0,0,300), v500, z200, too10;SetDo DO10_pickup1,0;A:TPErase;IF DI10_pickon=1THEN(pickon为PLC检测已放好信号)WaitTime 0;ELSEIF DI10_pickup=0 THENTPWrite PLC-pickON signal no ready.;GOTO A;

18、workpiece=falseENDIFendprocPROC rInitial()TpReadFk nInput,Is the pack_machine ready,No,Yes;(机器是否准备好)If nInput=4 ThenbReady:=False;stop;ElseIF nInput=5 thenbReady:=True;ENDIFbFirstPickBoard:=True;TpReadFk nInput,Do you want to place workpiece,No,Yes;(机器人抓头是否工件)If nInput=4 Thenworkpiece:=False;ElseIF

19、nInput=5 thenworkpiece:=True;ENDPROC PROC rMoveHome()(定义原点)此例行程序可以方便地回到等待位置MoveJ pHome, v500, z50, tGripper;ENDPROCABB机器人编程05程序解析:1、此程序是典型的ABB机器人官方编程思路与方法。2、思路清晰,结构编排明确,方便使用者阅读。3、此程序共分了3个程序模块,清楚地将不同用途的语句分开,方便阅读,这种编程在进行一些复杂系统的编程是非常有用的。4、里面编程中运用了很多编程技巧,节省了机器人示教的时间,如使用OFFS功能。5、在写屏信息提示方面也非常丰富。6、此程序非常适合大

20、家的参考与提高。7、有一个小问题,缺少搬运重要的负荷重量设定数据。MODULE Data此模块专门用于存放程序数据的!targetCONST jointtarget home_pos := 0, 0, 0, 0, 90, 0, 9E9, 9E9, 9E9, 9E9, 9E9, 9E9 ;CONST jointtarget delta_pos := 2, 2, 2, 2, 2, 2, 9E9, 9E9, 9E9, 9E9, 9E9, 9E9 ;CONST jointtarget jhome := 0, 0, 0, 0, 90, 0, 9E9, 9E9, 9E9, 9E9, 9E9, 9E9 ;P

21、ERS robtarget roFetch:=2000,0,233.483269239532,0,0,1,0,0,0,0,0,9E9,9E9,9E9,9E9,9E9,9E9;PERS robtarget roDeFetch:=2000,1000,233.483269239532,0,0,1,0,0,0,0,0,9E9,9E9,9E9,9E9,9E9,9E9;VAR wzstationary home;VAR shapedata joint_space;VAR num nu_inhome;VAR bool flag1:=FALSE;ENDMODULE%VERSION: 1LANGUAGE: EN

22、GLISH%MODULE CalibData此模块用于存放需要设定的程序数据TASK PERS tooldata Tooldata_1:=TRUE,0,0,1000,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0;TASK PERS wobjdata Workobject_1:=FALSE,TRUE,0,0,0,1,0,0,0,0,0,0,1,0,0,0;ENDMODULEMODULE MainModulePROC main()CheckHome;CheckGriper;Production;ENDPROCPROC CheckHome()IF DOutput(do_inhome)

23、= 1 THENnu_inhome := 1;ELSEnu_inhome :=0;ENDIFTEST nu_inhomeCASE 0 :GoHome;CASE 1 :RETURN;DEFAULT :TPWrite error;Stop;ENDTESTENDPROCPROC CheckGriper()IF di_griperclosed = 1 THENControlGriper;ELSERETURN;ENDIFENDPROCPROC Production()WHILE TRUE DOWaitUntil di_plc=1;MoveL Offs(roFetch,0,0,500),v1000,z10

24、0,Tooldata_1WObj:=Workobject_1;利用OFFS此功能,减少示教MoveL roFetch,v1000,fine,Tooldata_1WObj:=Workobject_1;CloseGriper;MoveL Offs(roFetch,0,0,500),v1000,z100,Tooldata_1WObj:=Workobject_1;MoveL Offs(roDeFetch,0,0,500),v1000,z100,Tooldata_1WObj:=Workobject_1;MoveL roDeFetch,v1000,fine,Tooldata_1WObj:=Workobje

25、ct_1;OpenGriper;MoveL Offs(roDeFetch,0,0,500),v1000,z100,Tooldata_1WObj:=Workobject_1;ENDWHILEENDPROCPROC CloseGriper()flag1:=FALSE;Reset do_opengriper;Set do_closegriper;WaitDI di_griperclosed, 1MaxTime:=3TimeFlag:=flag1;WHILE flag1=TRUE DOTPWriteCANNT CLOSE GRIPER;StopNoRegain;ENDWHILEENDPROCPROC OpenGriper()flag1:=

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2