版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、EPSON 机械手培训,深圳市长荣科机电设备有限公司 2014-may,一、关于机械手的基础知识 二、硬件概要 三、EPSON RC+ 用户界面 四、RC+软件操作 五、SPEL+语言 六、动作指令 七、I/O 八、Pallet 九、!.! 并列处理 十、多任务处理 十一、循环控制指令 十二、程序实例,1、机械手坐标系,1.1 SCARA机械手坐标系,XY方向坐标(前后左右),Z方向坐标(上下),U方向坐标(旋转),2. 机械手的手臂姿势 在使用机械手作业时,有必要使其用示教时的手臂姿势在指定的点上动作。如果不这样做,根据手臂姿势的不同,会产生轻微的位置偏移,或朝着意想不到的路径动作的结果,有
2、干涉周边设备的危险。为了避免这种情况,在点数据中必须事先指定使其在此点上动作时的手臂姿势(如下图)。此信息也也可以从程序中变更(L或者R)。,2.1 SCARA机械手的手臂姿势图,系统构成,NPN接法,PNP接法,NPN接法(出厂默认),PNP接法,1、动作执行序列的时序(msec),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 | NoEmgAb
6、ort 动作任务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 语句 Lo
7、opwhile |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、I
8、f . Then . 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.E
9、lse 语句的程序段,嵌套最多可以有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 行编号 | 标签 说明:G
11、oTo 命令将程序控制转移至指定的语句行或标签。程序执行转移目标的语句行,并执行以下的行 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, cyc
12、le aborted! 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 savRob
13、ot savRobot = 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 语句。 示例:Sel
16、ect I 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 numbe
18、r P, 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 Visi
20、on1 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 E
21、ndIf 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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年武汉车都建设投资有限公司招聘笔试参考题库含答案解析
- 2025年度电子产品分期购买与售后服务合同
- 2025年度人事代理与员工薪酬福利调整服务协议3篇
- 2025年高新技术企业授权合同签订委托书规范3篇
- 2025版新能源汽车租赁与智能交通控制系统合作框架协议3篇
- 2025年全球及中国垂直旋转模块行业头部企业市场占有率及排名调研报告
- 2025年全球及中国TGV玻璃芯基材行业头部企业市场占有率及排名调研报告
- 2025版城市更新项目土地使用权作价出资合作协议3篇
- 二零二五年度成都市二手房交易合同范本 正版官方规范修订3篇
- 二零二五年度车队运输保险合作协议3篇
- 小学六年级数学100道题解分数方程
- 部编版五年级语文下册第七单元大单元教学设计
- 社区获得性肺炎护理查房内科
- 浅谈提高中学生历史学习兴趣的策略
- 药品储存养护知识大全
- 新版药品批发企业质量管理体系文件大全
- 项目管理实施规划-无锡万象城
- 浙大一院之江院区就诊指南
- 离婚协议书电子版下载
- 相似三角形判定专项练习30题(有答案)
- 2023学年完整公开课版mydreamjob作文教学
评论
0/150
提交评论