本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注!

工业机器人机床上下料工作站示教编程相对来讲还是比较简单的,本质上就是机器人搬运的一个具体应用,无非就是把工件由上料位置搬运到数控机床上,再把加工完成的工件从数控机床上拆卸下来,然后搬运到工件下料位置,如此循环往复而已。

工艺说明

在虚拟仿真软件Robotstudio软件中,机器人示教编程有多种方式,你可以使用“路径编辑”功能选项卡中的相关功能进行示教编程;也可以使用虚拟示教器,按照机器人现场示教的方法进行示教编程;当然如果你对ABB机器人指令足够熟悉,你也可以使用Robotstudio软件自带的“RAPID”程序编辑器进行示教编程。无论使用哪一种方法进行示教编程,最终实现的都是工件加工工艺过程。

按照机器人机床上下料工艺,本例我们需要创建6条例行程序,分别是开始与结束位置的机器人Home点程序,自动给料装置A位置处的取料程序Pick_FA,自动给料装置B位置处的取料程序Pick_FB,数控机床上下料程序Machine_Drop_Pick,输送带放料程序Conveyor_Drop,以及机器人主程序Main。

Home点程序

机器人Home点程序是机器人加工开始的初始位置点程序,同时加工结束后机器人返回后的最终位置。ABB机器人Home点程序通常使用绝对位置运动指令MoveAbsJ,因为MoveAbsJ指令是使用的机器人6个运动轴的轴角度值来定义目标位置的,机器人执行此指令过程中不受空间姿态影响,直接运行到各轴指定的目标角度位置。将机器人手动运行到合适的位置处,为其示教当前点位置,作为机器人Home点程序,程序中机器人工具选择tool0。

示教完成的机器人Home程序如下所示:

 PROC Home()MoveAbsJ JointTarget_1,v500,fine,tool0\WObj:=wobj0;ENDPROC

给料装置取料与输送带放料程序编写

给料装置A取料程序是典型的机器人搬运程序,它属于搬运程序中的取料程序。这类程序有一个共同的特点,就是在可以使用较少的示教位置点实现复杂的机器人搬运程序,因为程序中大部分示教点可以被重复使用。最简洁的机器人取料程序,只需要示教两个机器人位置点即可实现,其中一个点用来调整机器人工具姿态,另一个点是机器人的工件取料位置点。比如我们本例中的这个机器人取料程序,只需要示教三个位置点即可,其中的Target_10是机器人工具姿态调整点,也就是把机器人工具调整到与工件垂直的姿态。Target_30是机器人抓取工件位置点,在这一点处机器人实现对工件的抓取。

Target_20是工件抓取上方位置点,这一点是机器人对工件抓取的位置调整点,在这一点处机器人工具要完全对准工件的抓取位置,然后使用线性运动指令MoveL,直接运行机器人准确到达工件抓取位置处,同时机器人抓取完工件后的返回过程中,为了避免工件与周边设备发生干涉,因此同样需要准确的向上运行到抓取上方位置处,然后再进行自由运动。所以,这里的工件抓取上方位置点我们重复使用了两次,示教编程过程中只需要复制粘贴即可,然后修改一下指令的运动类型。由于这一点是Target_30的垂直正上方位置点,因此这里我们完全可以使用ABB机器人的位置偏移功能Offs(),直接对Target_30在Z轴方向上偏移一个合适的距离,这样我们就不需要手动示教Target_20点位置了,此时的机器人抓取工件程序也就变成了最简洁的两点机器人搬运程序。

示教编程过程中,我们规定机器人工具的TCP1作为机器人从自动给料装置取料的TCP,而TCP2作为机器人从数控机床上取料的TCP,机器人例行程序如下图所示。

 PROC Pick_FA()MoveJ Target_10,v500,z100,TCP1\WObj:=wobj0;MoveJ Target_20,v500,z100,TCP1\WObj:=wobj0;MoveL Target_30,v500,fine,TCP1\WObj:=wobj0;MoveL Target_20,v500,z100,TCP1\WObj:=wobj0;MoveJ Target_10,v500,z100,TCP1\WObj:=wobj0;ENDPROC

给料装置B取料程序与给料装置A取料程序是一致的,由于机器人是对同一个给料装置进行取料,而这两个取料位置的所需的工具姿态又相同,所以给料装置B取料的机器人程序中可以与给料装置A取料程序共用一个机器人工具姿态调整点Target_10,示教时只需把Target_10点程序复制粘贴即可,完整机器人例行程序如下所示。

 PROC Pick_FB()MoveJ Target_10,v500,z100,TCP1\WObj:=wobj0;MoveJ Target_40,v500,fine,TCP1\WObj:=wobj0;MoveL Target_50,v500,fine,TCP1\WObj:=wobj0;MoveL Target_40,v500,fine,TCP1\WObj:=wobj0;MoveJ Target_10,v500,z100,TCP1\WObj:=wobj0;ENDPROC

输送带的放料程序的示教编程思想与机器人自动给料装置取料程序的编程思想类似,同样可以用三个机器人位置点完成示教编程,如下图中的Target_140、Target_150、Target_160所示,只是前者的目的是抓取工件,而后者的目的是放置工件,这里就不过多介绍了。

机器人输送带放料例行程序,如下图所示。

 PROC Conveyor_Drop()MoveJ Target_140,v500,fine,TCP2\WObj:=wobj0;MoveJ Target_150,v500,fine,TCP2\WObj:=wobj0;MoveL Target_160,v500,fine,TCP2\WObj:=wobj0;MoveL Target_150,v500,fine,TCP2\WObj:=wobj0;MoveJ Target_140,v500,fine,TCP2\WObj:=wobj0;ENDPROC

数控机床上下料编程

数控机床上下料机器人程序与自动给料装置取料程序、输送带放料程序不同。我们试想一下,机器人从自动给料装置上取来待加工工件,如果是工作站刚启动运行,那么此时数控机床上并没有加工完成的工件,所以此时机器人直接将取来的工件安装到数控机床上即可;但是如果工作站并不是刚启动运行,那么此时的数控机床上必定由加工工件,机器人在安装新的待加工工件之前,需要先把加工完成的工件取下来,然后再进行安装。这也就是机器人工具上有两个工作位置的原因。

示教数控机床上下料机器人程序时,我们暂时不用考虑第一次启动运行的情况,直接按照正常运行的情况进行示教。上面我们已经规定了机器人工具的TCP1作为机器人从自动给料装置取料的TCP,TCP2作为机器人从数控机床上取料的TCP。正常情况下需要先从数控机床上取下加工完成的工件,因此这里首先使用机器人TCP2进行示教编程。选择合适位置点Target_100进行示教,作为机器人机床上下料起始位置点。

Target_110~ Target_130点与自动给料装置抓取工件程序类似,Target_110是机器人工具姿态调整点。在Target_110点位置处,机器人工具旋转90°,因为机床上的工件是垂直状态安装的,工具旋转之后才能实现抓取拆除工作。Target_130点是机器人在数控机床上抓取已加工完成工件的位置点,Target_120点是抓取位置上方点。

Target_80、Target_90点是机器人放置待加工工件程序点,Target_90点是机器人在数控机床上安装工件的位置点,Target_80点是安装工件上方位置点,这与机器人输送带放料程序完全一致。同时,Target_80点位置与Target_120点相同,Target_90点位置与Target_130点相同,不同的是Target_80、Target_90点使用的是机器人工具的TCP1。机器人由Target_120点向Target_80点运行过程中实现工具工作位置的切换,即由TCP2转换为TCP1,以实现由抓取工件转换为放置工件。

完整的机器人机床上下料例行程序如下图所示。

    PROC Machine_Pick_Drop()MoveJ Target_100,v500,fine,TCP2\WObj:=wobj0;MoveJ Target_110,v500,fine,TCP2\WObj:=wobj0;MoveL Target_120,v500,fine,TCP2\WObj:=wobj0;MoveL Target_130,v500,fine,TCP2\WObj:=wobj0;MoveL Target_120,v500,fine,TCP2\WObj:=wobj0;MoveL Target_80,v500,fine,TCP1\WObj:=wobj0;MoveL Target_90,v500,fine,TCP1\WObj:=wobj0;MoveL Target_80,v500,fine,TCP1\WObj:=wobj0;MoveJ Target_110,v500,fine,TCP2\WObj:=wobj0;MoveJ Target_100,v500,fine,TCP2\WObj:=wobj0;ENDPROC

运行效果如下图。

除此之外还有主程序Main,它是用来编程机器人运行控制逻辑的,同时还有机器人抓取与放置工件的信号控制指令,这些内容都会在下一期介绍。

总结

通过上述机床上下料程序的示教,可以看出机器人搬运类程序的共有特点是,以机器人工作位置点(抓取点、放置点)为中心,工作点前后的程序点完全对称,示教编程时可以充分利用这一大特点,简化程序数量,降低示教编程工作量,提高编程效率。

The End


上一篇:Robotstudio软件:利用CAD图进行机器人工作站布局

Robotstudio软件:机床上下料工作站机器人示教编程相关推荐

  1. Robotstudio软件:机床上下料工作站机器人主逻辑编写与仿真运行

    本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 前一期介绍了机器人数控机床上下料例行程序的编写,但是,也只是编写了机器人的运动程序,并没有进行信号逻辑控制 ...

  2. 机器人softmove_ABB机器人机床上下料工作站——ABB机器人

    ABB机器人机床上下料工作站--ABB机器人 ABB机器人目前大量应用于多类工厂生产线之中,由于其具有的高效率性与高稳定性,能够给应用工厂带来极大的效率提升.(机床上下料ABB机器人可以完成加工中心. ...

  3. ROBOGUIDE软件机床上下料虚拟仿真:机器人机床上下料配置与编程

    目录 概述 数控机床属性配置 机器人仿真程序编写 机器人机床上下料示教编程 机器人生产线仿真运行 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 概述 机 ...

  4. ROBOGUIDE软件机床上下料仿真:数控铣床运动机构制作

    目录 概述 从模型库添加数控铣床 导入数控铣刀模型 数控铣床运动机构制作 机器人示教编程 仿真运行 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 概述 ...

  5. 机床上下料机器人、冲床上下料

    带你了解库卡上下料机器人生产中的应用特点 一台库卡上下料机器人,可以同时完成多个工人的全部作业任务.一般可在一年左右的时间,就可收回机器人投资,因而在生产工业中得到广泛应用.那你们知道库卡上下料机器人 ...

  6. PDPS软件:机器人示教编程与工作站仿真运行

    本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 上一期为大家介绍了在Process Simulate虚拟仿真软件中机器人焊接操作工艺设置.焊接操作添加到路 ...

  7. 西门子1200与国产机器人通讯/实现机床上下料加工,中文注释,博图V15.1

    西门子1200与国产机器人通讯/实现机床上下料加工,中文注释,博图V15.1 ID:696654563803114z***6

  8. 机器人机床上下料项目

    设备名称: XJY-WX1112 机器人机床上下料项目 设备简介: 该设备为机器人上下料项目,一个机器人负责4套车床上下料,采用ABB机器人,配合鑫金雨自制的机器人行走轨道,电控夹爪等配合生产,轨道负 ...

  9. 剪板机自动上下料_机器人联轴器,用于机器人自动化上下料

    关注· 点击蓝字,关注我吧 纤薄型机器人联轴器,可搬运重量范围从 1kg 至 1,000kg,用于高效机器人自动化机床上下料,多年来受到广泛认可.紧凑型微型联轴器适合于最近迅速发展的小型机器人应用领域 ...

最新文章

  1. 【干货下载】大数据分析的四个关键环节
  2. DevExpress控件之GridControl控件
  3. Linux系统之TroubleShooting(启动故障排除)
  4. shell函数可接受不同参数
  5. 最近总结了串口(COM)读写操作的三种方式
  6. mysql 性能统计_MySql 的统计查询性能问题
  7. Tp5获取文件,小文件可以获取,大文件获取失败
  8. c语言程序设计订餐系统,C语言订餐系统
  9. hp 126NW驱动安装
  10. Sql Server Express版本升级到企业版
  11. 操作系统实验: 进程管理
  12. RC并联电路传递函数用MATLAb,RC电路(一)RC串联、并联电路详解
  13. 【Python语音分析】从绘制好看的波形图和语谱图开始
  14. 网上发现的一个 《Flashflex大全》
  15. android 自动签名工具下载,安卓批量签名工具使用说明
  16. PHP单例模式的本质
  17. 逻辑英语结构【重点】
  18. 小米MIUI9关闭广告
  19. 有没有适合男的下班以后做的副业?
  20. Vivado 报错Error:‘launch_simulation‘failed due to earlier errors.

热门文章

  1. 【python】【matplotlib】plt.scatter颜色大全
  2. 高可用网站架构设计与实现
  3. 部署服务器一揽子操作记录
  4. Spark-Shell编程
  5. 川师计算机科学学院,喜迎川师萌新——记计算机科学学院2020级新生入学
  6. 充电倍率、温度对电池特性的影响
  7. idea使用Database连接数据库报错ssm证书验证失败无法建立安全连接
  8. shell脚本的俄罗斯方块 : )
  9. Mac安装微信支付安全控件问题
  10. 黑莓手机的一些小技巧