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

概述

近几年来机器视觉技术在工业生产中得到了广泛的应用,在工业机器人应用领域中,机器视觉被广泛应用于工件的特征检测,以及机器人的位姿引导。市面上大部分的机器人厂商也都在机器人控制器中开放了视觉集成接口,以便于机器人能够直接与智能相机进行数据交互。除了现实的机器视觉应用以外,在机器人仿真过程中也需要对机器视觉进行仿真。本期,就来为大家介绍一下,Robotstudio软件中使用机器视觉实现机器人位姿引导的操作方法。

机器人与视觉系统创建

在上一期创建的工件位置随机生成仿真环境中,添加一台IRB2600机器人,机器人工具与相机分别使用Robotstudio软件设备库中自带的焊枪AW_Gun_PSF_25、Integrated Vision camera Cam00X。同时使用“建模”菜单中的“圆锥体”建模工具创建一个圆锥体,并修改圆锥体透明度,作为相机光源。

将焊枪安装到机器人上,相机、相机光源分别放置到合适位置处,并创建机器人控制系统,机器人与视觉系统创建完成后,如下图所示。

机器人工件坐标系添加

对于机器人位置与姿态的视觉引导,大多数品牌的机器人都是基于工件坐标系实现的,ABB机器人也不例外,因此这里也需要添加一个工件坐标系。

“基本”菜单栏下,“其他”命令按钮的下拉菜单中,点击“创建工件坐标”,在弹出的创建工件坐标中,用户坐标框架下使用“取点创建框架”中的“三点”法,在工作台面中心点位置处,创建一个工件坐标系,坐标轴方向与大地坐标系保持一致。

工件坐标系创建完成后,使用“同步”功能将在仿真环境中创建的工件坐标系以及工具坐标系同步到机器人控制器中,同步时二者所属的模块均选择“Module1”。

机器人位置与姿态变量声明

在Robotstudio软件的“RAPID”菜单栏下,打开机器人程序模块Module1,然后在程序代码编辑窗口中声明机器人在X、Y轴上的位置偏移变量PosXY以及在Z轴上的旋转变量OrientRz,如下图所示。

完整变量声明代码如下。

    PERS pos PosXY:=[0,0,0];!声明机器人在X、Y轴上的位置偏移变量PERS orient OrientRz:=[0,0,0,0];!声明机器人在Z轴上的旋转变量

机器人视觉引导Smart组件创建

在上一期创建的工件位置随机生成仿真环境中的Smart组件中,添加2个RapidVariable子对象组件,其中一个用于向机器人发送视觉检测到的工件位置偏移数据、另一个用于向机器人发送视觉检测到的工件姿态偏移数据。

对两个RapidVariable子对象组件进行属性配置,以实现将视觉检测到的工件偏移数据分别发送到在机器人程序中声明的数据变量PosXY、OrientRz中。

对于相机的控制,这里使用2个LogicGate子对象组件、1个Show子对象组件、1个Hide子对象组件。

使用Show与Hide子对象组件对相机光源进行显示/隐藏操作,实现相机光源的闪烁仿真效果,二者属性参数配置如下。

用2个LogicGate子对象组件作为延时继电器,控制相机光源实现时间间隔为1s的闪烁,二者属性参数配置如下。

在Smart组件中删除之前创建的定时器子对象组件,添加1个脉冲信号输出子对象组件LogicSplit。然后再分别创建1个数字量输入信号di1与1个数字量输出信号do1,用来作为视觉引导Smart组件的控制与反馈信号。

对修改后的视觉引导Smart组件属性传递关系与信号控制逻辑分别进行设置,设置完成后,如下图所示。

机器人示教编程

在机器人控制器中分别创建1个数字量输入信号di1与1个数字量输出信号do1,可以是物理信号,也可以是虚拟信号,用于与Smart组件中的控制、反馈信号进行连接。

在Robotstudio软件的仿真环境中对机器人进行示教编程,机器人运行轨迹如下图所示,示教编程过程中除了Target10点以外,其他工作点全部使用创建的工件坐标系Workobject_1,工具全部使用焊枪工具。

将在仿真环境中示教完成的机器人程序同步到机器人控制器中,然后在“RAPID”菜单栏中将其打开,完整的程序代码如下图所示。

完整的程序代码如下所示。

MODULE Module1PERS tooldata AW_Gun:=[TRUE,[[119.5,0,352],[0.890213743,0,0.455543074,0]],[1,[0,0,100],[1,0,0,0],0,0,0]];TASK PERS wobjdata Workobject_1:=[FALSE,TRUE,"",[[935,0,830],[1,0,0,0]],[[-40.5511,-0.650765,0],[0.970459,0,0,0.241266]]];PERS pos PosXY:=[0,0,0];!声明机器人在X、Y轴上的位置偏移变量PERS orient OrientRz:=[0,0,0,0];!声明机器人在Z轴上的旋转变量CONST robtarget Target_10:=[[689.999962519,0,1034.999958384],[0.050592966,0,0.998719356,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtarget Target_20:=[[-50.000031446,0,69.999996546],[0.050592981,0,0.998719355,0],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtarget Target_30:=[[-50.000039757,-49.999997088,9.999981609],[0.050593041,-0.000000002,0.998719352,0],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtarget Target_40:=[[49.999986089,-49.999997513,9.999975834],[0.050593071,-0.000000005,0.998719351,-0.000000003],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtarget Target_50:=[[49.99998634,49.999993971,9.999986546],[0.050593101,-0.000000004,0.998719349,-0.000000008],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];CONST robtarget Target_60:=[[-50.000051431,49.999995421,9.999995587],[0.050593133,-0.000000004,0.998719347,-0.000000011],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];PROC main()MoveJ Target_10,v500,fine,AW_Gun\WObj:=wobj0;!机器人Home点WaitTime 1;!等待1sPulseDO\PLength:=0.2,do1;!向机器视觉引导Smart组件发送200ms的控制脉冲信号,启动视觉检测功能WaitDI di1,1;!等待视觉检测完成反馈信号WaitTime 2;!等待2sWorkobject_1.oframe.trans:=PosXY;!更新工件坐标系Workobject_1的位置数据Workobject_1.oframe.rot:=OrientRz;!更新工件坐标系Workobject_1的姿态数据MoveJ Target_20,v500,fine,AW_Gun\WObj:=Workobject_1;!机器人工作点程序MoveL Target_30,v500,fine,AW_Gun\WObj:=Workobject_1;MoveL Target_40,v500,fine,AW_Gun\WObj:=Workobject_1;MoveL Target_50,v500,fine,AW_Gun\WObj:=Workobject_1;MoveL Target_60,v500,fine,AW_Gun\WObj:=Workobject_1;MoveJ Target_20,v500,fine,AW_Gun\WObj:=Workobject_1;WaitTime 0.5;!等待0.5sMoveJ Target_10,v500,fine,AW_Gun\WObj:=wobj0;ENDPROC
ENDMODULE

机器人视觉引导工作站仿真运行

在“工作站逻辑”中,将视觉引导Smart组件的控制、反馈信号与机器人控制器的数字量输出信号、数字量输入信号互相连接。

在“仿真设定”中,同时勾选“视觉引导”smart组件、机器人控制器,并将机器人“运行模式”设置为“连续”。

对视觉引导机器人仿真工作站进行仿真运行,可以看到工件在工作台面上随机改变位姿,相机对工件拍照检测后,机器人按照引导数据移动到工件位置,对工件进行加工操作,仿真效果如下图所示。

The End


上一篇:Robotstudio软件:基于Random组件的工件位置随机生成

Robotstudio软件:ABB机器人机器视觉位姿引导虚拟仿真相关推荐

  1. 自动开料机器人_ROBOGUIDE软件:机器人输送带上下料虚拟仿真操作方法

    概述 在机器人生产线上,机器人不只是作为上料设备,还可以作为下料设备.除了各种机床的上下料以外,输送带上下料也是非常常见的.机床上下料应用中通常都是一台机器人完成上下料任务,而输送带上下料通常为多台机 ...

  2. ROBOGUIDE软件:机器人输送带上下料虚拟仿真操作方法

    目录 概述 添加机器人 添加物料托盘 输送带属性配置 上下料机器人I/O信号连接 机器人示教编程 仿真运行 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! ...

  3. PDPS软件:机器人搬运工艺应用虚拟仿真操作方法

    目录 概述 搬运机器人工作站创建 机器人搬运辅助坐标系添加 搬运机器人示教编程 搬运机器人仿真运行 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 概述 ...

  4. RobotStudio软件:机器人仿真视频录制功能使用方法

    目录 功能介绍 屏幕录像机设置 仿真视频录制命令介绍 仿真视频录制操作 仿真视频查看方法 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 功能介绍 Rob ...

  5. RobotStudio软件:机器人自定义行走轴配置与仿真

    目录 概述 行走轴模型拆分 行走轴模型导入仿真软件 创建行走轴机械装置 外部轴配置向导插件安装 虚拟机器人系统创建 行走轴系统配置 机器人安装到行走轴 行走轴运动控制 本文已经首发在个人微信公众号:工 ...

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

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

  7. ABB机器人二次开发:使用Web网页读取机器人系统信息的操作方法

    本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSim),欢迎关注! 概述 对于ABB机器人进行远程监控,除了使用PC SDK二次开发后生成远程监控程序以外,还可以使用ABB机 ...

  8. PDPS软件:机器人行走轴虚拟仿真操作方法,即外部轴添加与配置

    目录 概述 机器人行走轴模型运动机构分析及导入 机器人安装到行走轴 机器人外部轴添加与配置 机器人行走轴示教编程 仿真运行 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号:IndRobSi ...

  9. PDPS软件:机器人固定点焊虚拟仿真操作方法

    目录 概述 固定点焊焊枪运动机构介绍 固定点焊焊枪模型导入 机器人点焊数据导入 固定点焊焊接操作定义 机器人固定点焊焊接示教编程 仿真运行 本文已经首发在个人微信公众号:工业机器人仿真与编程(微信号: ...

最新文章

  1. case when里的like功能 ////// 截取(substr)
  2. codeforces 665B Shopping
  3. MySQL中的时间函数用法集合
  4. 计算机网络实验(思科模拟器Cisco Packet Tracer)——交换机配置以及虚拟局域网VLAN
  5. 南京打造大数据创新孵化平台
  6. linux的/etc/passwd、/etc/shadow、/etc/group和/etc/gshadow
  7. php token 表单重复提交,PHP生成token防止表单重复提交2个例子
  8. linux eclipse stm32,在ubuntu下利用eclipse搭建stm32开发环境和st-link调试
  9. 【Kafka】Failed to send data to Kafka: Expiring 30 record(s) for xxx 732453 ms has passed since last a
  10. 删除进程id_Mysql新增删除数据失败,提示锁表
  11. Java SE 疑难点记录
  12. 蓝桥杯 ALGO-120 算法训练 学做菜
  13. 图相处理自学(一):数字图像基本概念
  14. java循环写出多个jlabel_java – 允许多个JLabel中的文本重叠
  15. Mujoco平面双足机器人模拟
  16. 光纤传输技术——光器件(三)
  17. 2. Vue prevent修饰符
  18. 19.首页异步数据的获取
  19. signature=5a522a8356f9906b0b775bdada02a4c6,合肥2016年4月29日至2016年5月12日交通违章查询...
  20. Windows Phone : 三屏一云战略的新里程碑

热门文章

  1. 《围城》读后感:你的心是一座城,愿你城中有幸福
  2. picker 监听确定和取消事件
  3. Mysql中使用count加条件统计
  4. Qt(C++)入门学习
  5. mysql注入转义绕过_SQL注入防御绕过——宽字节注入
  6. 不只是coding_不只是外表
  7. Proteus8.9 VSM Studio WINAVR编译器仿真ATmega16系列a09_扩展内存
  8. 电影院移动端电影分区发行致力于开拓海外市场
  9. 2019年,为大家推荐9个高质量公众号
  10. 打瓶颈,破性能,性能大牛教你怎么玩转性能测试