实现抓放

使用Mech-Vision案例工程获得纸箱的位姿后,接下来需搭建为Mech-Viz工程搭建工程,引导机器人循环抓放纸箱。

主要搭建流程如下图所示。

viz project workflow

配置机器人和场景

为了避免机器人抓放过程中与周围物体碰撞,需要在工程中添加末端工具模型、场景模型,用于碰撞检测。配置流程如下图所示。

viz project add model workflow

导入并配置末端工具模型

  • 末端工具指的是安装在机器人末端执行加工/抓取作业的装置。

  • 在本教程中,末端工具为包含一组吸盘的夹爪。

导入并配置末端工具的目的是在三维仿真空间中能够显示末端工具的模型,并用于碰撞检测。

导入末端工具模型

  1. 单击位于工程资源  模型库中的+

    viz project click add model

    工程资源指的是工程中的各种基础资源,包括:机器人、末端工具、工件、场景物体等。

  2. 在弹出的窗口中选择OBJ格式的碰撞模型文件,然后单击打开

    viz project select obj model
  3. 模型导入完成后,可在模型库中看到已导入的模型。

    viz project check obj model

配置末端工具

  1. 单击位于工程资源  末端工具中的+

    viz project click add end tool
  2. 在弹出的窗口中填写工具名称,并将导入好的末端工具模型文件作为碰撞模型和显示模型,最后单击确定

    viz project configurate add end tool
  3. 末端工具相关信息配置完成后,可在三维仿真空间中看到配置好的末端工具,如下图所示。

    viz project check end tool

调整末端工具

由上图可知,末端工具相对于机器人的位姿明显有误,需对末端工具的位姿进行调整。

  1. 双击模型库中的末端工具模型。

    viz project double click end tool
  2. 在弹出的模型配置窗口中调整TCP(工具中心点)。

    viz project adjust tcp

    TCP通常指的是位于末端工具尖端的点。在该教程中,TCP为吸盘的中心点。

  3. 调整前后的末端工具位姿如下图所示。

    viz project adjust tcp result

导入并配置场景模型

导入并配置场景的目的是还原真实现场场景,以此来辅助用户规划机器人运动路径。

导入场景模型

  1. 单击位于工程资源  模型库中的+

    viz project click add model 2
  2. 在弹出的窗口中选择场景物体模型文件,然后单击打开

    viz project select scenes model
  3. 模型导入完成后,可在模型库中看到已导入的模型。

    viz project check scenes model

配置场景模型

  1. 单击位于工程资源  场景物体中的+

    viz project click add scenes object
  2. 在弹出的窗口中填写物体名称,选择“外部模型”作为“场景模型”,并将导入好的场景物体模型文件作为碰撞模型和显示模型,最后单击确定

    viz project adjust scenes object
  3. 配置完成后,场景物体将显示在三维仿真空间中。

    viz project check scenes object interface

    为了更好的查看场景模型,可将地板进行隐藏。

    viz project close floor

以上模型配置完成后,单击工具栏同步机器人按钮,使虚拟机器人和真实机器人姿态保持一致。

搭建工作流程

在完成模型配置工作后,即可开始工作流程搭建。通过将步骤库中的步骤拖拽至工程编辑区,设置步骤的各项参数,并将步骤连线,来实现预设的程序功能。

  • 工作流程指的是在Mech-Viz中以流程图形式搭建的机器人运动控制程序。

  • 步骤即机器人编程功能模块。

工作流程搭建思路

工作流程搭建思路如下图所示。

viz project workflow idea

移动到“初始位”

初始位是机器人运动的起始点,同时初始位是一个安全位置,机器人在这一点时应远离待抓取物体及周边设备,且不遮挡相机视野。

移动机器人到达自定义的初始位后,在步骤库中选择定点移动,将其拖动至工程编辑区,并将其命名为“初始位”。然后单击工具栏的同步机器人,用来记录机器人此时所处的位姿。

viz project add move capture

触发图像采集和视觉处理

步骤

视觉识别

说明

启动Mech-Vision工程,获取视觉识别结果。

操作

在步骤库中找到“视觉识别”,将其拖拽至工程编辑区。

参数设置

服务名称下拉栏中选择Single_Case_Cartons

图示

viz project visual recongnize

在视觉识别步骤后,可添加检查视觉结果步骤确认是否有视觉结果。

步骤

检查视觉结果

说明

确认是否有视觉结果。

操作

在步骤库中找到“检查视觉结果”,将其拖拽至工程编辑区。

参数设置

保持默认即可。

移动到抓取接近路径点

当抓取纸箱时,如果机器人直接从初始位移动到抓取点,可能会与纸箱碰撞。因此,在获取视觉识别结果后,通过相对移动步骤移动机器人到接近路径点。

步骤

相对移动

说明

根据视觉识别结果移动。

操作

在步骤库中找到“相对移动”,将其拖拽至工程编辑区,命名为“接近路径点1”。

参数设置

移动相对于下拉栏中选择下一个路径点;将目标类型设置为工具,并设置Z轴坐标设置为合适的值,例如-300mm。

图示

viz project approach point 1

viz project approach point 2

抓取纸箱

机器人到达接近路径点后,即可控制机器人抓取,分以下两步。

  1. 第一步:使用视觉移动步骤,控制机器人到达纸箱抓取点。

  2. 第二步:使用设置DO步骤,控制机器人通过吸盘吸取纸箱。

具体说明如下。

步骤

视觉移动

说明

根据视觉识别结果移动。

操作

在步骤库中找到“视觉移动”,将其拖拽至工程编辑区。

参数设置

服务名称下拉栏中选择Single_Case_Cartons

图示

viz project visual recongnize

步骤

设置DO

说明

控制吸盘吸取纸箱。

操作

在步骤库中找到“设置DO”,将其拖拽至工程编辑区,命名为“吸取纸箱”。

参数设置

DO值DO端口设置为1。此处参数值仅供参考,请根据实际现场需求确定。

图示

viz project set do open

为了确保机器人在移动前吸盘能够吸牢纸箱,可以添加等待步骤。

步骤

等待

说明

防止机器人抓取纸箱失败。

操作

在步骤库中找到“等待”,将其拖拽至工程编辑区,命名为“抓取等待”。

参数设置

等待时间设置为1000ms

图示

viz project wait

移动到抓取离开路径点

机器人抓取纸箱后,为了防止纸箱与场景发生碰撞,需通过相对移动步骤控制机器人到达离开路径点。

步骤

相对移动

说明

根据视觉识别结果移动。

操作

在步骤库中找到“相对移动”,将其拖拽至工程编辑区,命名为“离开路径点”。

参数设置

移动相对于下拉栏中选择下一个路径点;将目标类型设置为工具,并设置Z轴坐标为大于纸箱高度的值。例如纸箱高度为500 mm,设置Z为-600mm。

图示

viz project approach point 1

viz project approach point 2

抓放路径优化

为了避免碰撞,可以通过定点移动步骤在离开路径点之后添加过渡点,用于优化抓放路径。

步骤

定点移动

说明

优化机器人抓放纸箱的路径

操作

在步骤库中找到“定点移动”,将其拖拽至工程编辑区,命名为“过渡点”。

参数设置

目标类型设置为关节角,并设置关节角

图示

viz project transition point 1

viz project transition point 2

移动到放置接近路径点

机器人放置纸箱前,为了防止纸箱与场景发生碰撞,需通过相对移动步骤控制机器人到达放置前的接近路径点。

步骤

相对移动

说明

根据视觉识别结果移动。

操作

在步骤库中找到“相对移动”,将其拖拽至工程编辑区,命名为“接近路径点2”。

参数设置

移动相对于下拉栏中选择下一个路径点;将目标类型设置为工具,并设置Z轴坐标为合适的值,例如-200mm

图示

viz project approach point2 1

viz project approach point2 2

放置纸箱

机器人到达放置前的接近路径点后,接下来即可放置纸箱,分以下两步。

  1. 第一步:使用定点移动步骤,控制机器人到达放置点。

  2. 第二步:使用设置DO步骤,控制机器人释放吸盘,放置纸箱。

具体说明如下。

步骤

定点移动

说明

控制机器人到达放置位置。

操作

在步骤库中找到“定点移动”,将其拖拽至工程编辑区,命名为“放置点”。

参数设置

调整合适的工具位姿作为放置点。

图示

viz project place point

步骤

设置DO

说明

控制释放吸盘,放置纸箱。

操作

在步骤库中找到“设置DO”,将其拖拽至工程编辑区,命名为“松开纸箱”。

参数设置

DO值设置为0DO端口设置为1。此处参数值仅供参考,请根据实际现场需求确定。

图示

viz project set do close

由于吸盘释放需要一定时间,所以需添加等待步骤,防止机器人放置纸箱失败。

步骤

等待

说明

防止机器人放置纸箱失败。

操作

在步骤库中找到“等待”,将其拖拽至工程编辑区,命名为“放置等待”。

参数设置

等待时间设置为1000ms

图示

viz project wait

连接步骤

以上步骤添加完成后,按顺序进行连接。为了实现机器人循环抓放纸箱,还需将“放置等待”的出口连接至“初始位”的入口。

仿真与运行

  1. 步骤连接完成后,单击工具栏中的仿真按钮,即可对搭建完成的Mech-Viz工程进行仿真。

    viz project viz simulation
  2. 如果仿真运行效果满足预期,单击Mech-Viz工具栏中的运行按钮运行真实机器人。

    viz project viz run rela robot

建议低速运行机器人,且需密切关注机器人移动轨迹,紧急情况及时按下急停键。