搭建 Mech-Viz 工程

本节介绍 Mech-Viz 曲轴上料工程的搭建。

工程搭建思路

曲轴上料工程的 Mech-Viz 工程搭建思路如下。

../../../../_images/viz_project_framework.png
  1. 工具和工件配置。为了在三维仿真空间中能够显示末端执行器的模型,并使末端执行器能够参与碰撞检测,需进行工具配置。同时还需配置工件,用于抓取工件时的机器人运动轨迹规划。

  2. 场景配置。为了还原真实现场场景,以辅助用户规划机器人运动路径,需进行场景配置。

  3. 工作流程配置。工作流程的配置是 Mech-Viz 工程的核心,通过将任务库中的任务拖拽到工程编辑区,设置任务的各项参数,并将任务连线,来实现预设的程序功能。

  4. 碰撞检测配置。为了防止机器人与料筐或其他障碍物的碰撞,保证程序不间断地运行,用户需要完成碰撞检测配置。

  5. 仿真工程。完成上述所有配置后,接下来需仿真运行工程,查看工程运行效果。

工具和工件配置

配置机器人模型后,需完成工具和工件的配置,即添加碰撞模型和末端执行器,并调整末端工具中心点。

添加并调整碰撞模型

  1. 在工具和工件选项卡下依次单击 碰撞模型 ‣ 添加 ,在弹出的文件选择窗口中选择准备的碰撞模型。

    ../../../../_images/add_model_1.png
    ../../../../_images/add_model_2.png

    注意

    关于碰撞模型相关内容,可参考 简化工具和场景模型

  2. 选中添加好的碰撞模型,该模型将在三维仿真空间中显示。

    ../../../../_images/add_model_3.png
    ../../../../_images/add_model_4.png

    如上图所示,碰撞模型位置正确。有时会存在碰撞模型位置有误且需要调整的情况,需调整碰撞模型位置。

添加末端工具

操作说明

图示

1-2 单击 末端执行器 后单击 添加

../../../../_images/add_end_model_1.png

3-4 自定义末端工具名称(此例中命名为 tcp),选择添加的碰撞模型。

../../../../_images/add_end_model_2.png

5 单击 OK 保存设置。

../../../../_images/add_end_model_3.png

设置完成后,末端执行器列表中将显示添加后的模型名称。

../../../../_images/add_end_model_4.png

调整末端工具中心点

工具中心点由拖拽器(机器人模型末端的坐标球)中心点表示,如下图所示。

../../../../_images/adjust_tcp_0.png

在工程中工具中心点应位于末端工具的末端,调整完成后,拖拽器中心点位置如下图所示。

../../../../_images/adjust_tcp.png

工件配置

../../../../_images/workobjects_configure.png
  • 旋转对称:由于曲轴工件没有对称性,所以选择 无 X/Y 轴对称

  • 抓取裕度:由于曲轴工件的表面为曲面,所以需设置一定的抓取裕度:选择 X 轴裕度 ,X 轴步长为 ,尝试范围为 ±30°

  • 最优抓取选解策略:对于曲轴抓取,选择 默认或全局转动最小 即可,可以避免机器人在抓取曲轴后无意义地转动,避免曲轴掉落。

场景配置

如需添加场景来辅助规划机器人运动路径,可参考 地板场景物体 还原真实现场场景。

工作流程配置

../../../../_images/workflow_configuration_0.png

此部分内容是 Mech-Viz 工程的核心,通过将任务库中的任务拖拽到工程编辑区,设置任务的各项参数,并将任务连线,来实现预设的程序功能。

完整的工作流程如下图所示:

../../../../_images/motion_trajectory_optimization_all.png

定义 “Home 点”

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

移动 可用来设定机器人运动路径中的一个目标位姿和运动到该位姿的方式,故使用 移动 来设置 Home 点。

  1. 单击工具栏的 同步机器人 ,机器人模型将同步真实机器人状态。

  2. 使用示教器移动真实机器人到用户自定义的 Home 点,并确认机器人模型也移动到对应位置。

  3. 在步骤库中找到 基本运动 ‣ 移动,将其拖拽到工程编辑区。 此移动任务将记录机器人当前位姿

  4. 将此步骤的名称重命名为 Home。

../../../../_images/motion_trajectory_planning_movehome.png

添加“拍照点”

“Home点 - 抓取点”之间增加 拍照点

  1. 使用示教器移动机器人到达用户自定义的拍照点后,添加一个 移动 任务来记录机器人此时所处的位姿。

  2. 注意机器人所处的位置不能遮挡相机视野,使用 Mech-Eye Viewer 采集图片,来验证有无遮挡视野。

  3. 更改名称为“拍照点” 。

  4. 将“拍照点”的入口与“Home 点”连接,出口与“视觉识别_1”连接。

定义“抓取点”

“抓取点”应为被抓物体的位姿,故使用 视觉识别视觉移动 任务。

任务

视觉识别

说明

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

操作

在任务库中找到 视觉 ‣ 视觉识别 ,将其拖拽到工程编辑区,将“Home 点”的出口连接到“视觉识别”的入口。

参数设置

服务名称 下拉栏中选择之前创建的 Mech-Vision 工程。

图示

../../../../_images/motion_trajectory_select_vision.png

任务

视觉移动

说明

根据视觉识别结果移动。

操作

在任务库中找到 视觉 ‣ 视觉移动 ,将其拖拽到工程编辑区,将“视觉识别”的出口连接到“视觉移动”的入口。

参数设置

服务名称 下拉栏中选择之前创建的 Mech-Vision 工程。

图示

../../../../_images/motion_trajectory_select_vision.png

机器人到达抓取点后,需要开夹具来抓取物体。

使用 设置 DO 来控制夹具。

任务

设置 DO

说明

用来指定机器人端口信号,控制机器人末端工具的开与闭。

操作

在任务库中找到 DI/DO ‣ 设置 DO,将其拖拽到工程编辑区,将“视觉移动”的出口连接到“设置 DO”的入口。

参数设置

名称改为 “设置DO_开” 并勾选 DO 值 (勾选后,软件运行时发出控制信号,使夹具“开”)。

图示

../../../../_images/motion_trajectory_planning_pick.png

DO 值与实际末端工具的开与闭对应关系如下表。

../../../../_images/motion_trajectory_uncheckdo.png ../../../../_images/motion_trajectory_checkdo.png
../../../../_images/motion_trajectory_uncheck.png ../../../../_images/motion_trajectory_check.png

定义“抓取等待”

在夹具抓取物体后,等待一段时间,使夹具能够牢固抓取物体。

任务

等待

目的

借助 等待 任务,使机器人运行到此任务时,等待指定时间,单位:毫秒(ms)。

操作

在任务库中找到 工具 ‣ 等待 ,将其拖拽到工程编辑区。参数使用默认值即可。

连线

将“等待_1”的入口与“设置DO_开”连接,出口与“相对移动_2”连接。

定义“抓取相对移动点”

合理的抓取动作应为:吸盘垂直向下移动到抓取点,吸取物体后垂直向上移动。使用 相对移动 来达到这一目的。

  1. 假设吸盘由距离抓取点 Z 向的 200mm 处,垂直向下移动。

    任务

    相对移动

    操作

    在任务库中找到:基本运动 ‣ 相对移动 ,将其拖拽到工程编辑区(相对移动_1)。

    连线

    “相对移动_1”的入口与“视觉识别_1”连接,出口与“视觉移动_1”连接。

    参数设置

    相对于(移动任务)勾选 下一个 ;坐标系Z值设值为 -200 。

    图示

    ../../../../_images/motion_trajectory_optimization_dropdown.png
  2. 吸盘吸取物体后,垂直向上移动 200mm。

    任务

    相对移动

    操作

    在任务库中找到:基本运动 ‣ 相对移动 ,将其拖拽到工程编辑区(相对移动_2)。

    连线

    “相对移动_2”的入口与“设置DO_开”连接。

    参数设置

    相对于(移动任务)勾选 当前 ;坐标系 Z 值设值为 -200 。

    图示

    ../../../../_images/motion_trajectory_optimization_pickup.png

定义“放置点”

机器人抓取物体后,运动到用户自定义的放置点后释放物体。

  1. 使用示教器移动真实机器人到用户自定义的放置点,同步机器人后,拖拽一个 移动 任务到工程编辑区,使其记录当前位姿。修改任务名称为“放置点” 。

  2. 然后将“设置DO_开”的出口连接到“放置点”的入口。

机器人移动到放置点后,关吸盘来释放物体。使用 设置 DO 来控制吸盘。

任务

设置 DO

说明

用来指定机器人端口信号,控制机器人末端工具的开与闭。

操作

在任务库中找到 DI/DO ‣ 设置 DO,将其拖拽到工程编辑区,将“放置点”的出口连接到“设置 DO”的入口。

参数设置

名称改为 “设置DO_关” 并取消勾选 DO 值 (取消勾选后,软件运行时发出控制信号,使吸盘“关”)。

图示

../../../../_images/motion_trajectory_planning_drop.png

定义“放置等待”

夹具释放物体后,等待一段时间,使夹具能够完全释放物体。

参考上述操作,将“等待_2”的入口与“设置DO_关”连接,出口与“相对移动_4”连接。

定义“放置相对移动点”

参考“抓取相对移动点”设置,在“放置点”前后各增加 1 个相对移动任务。

  1. 吸盘由距离放置点 Z 正方向的 200mm 处,垂直向下移动。

    操作

    在任务库中找到:基本运动 ‣ 相对移动 ,将其拖拽到工程编辑区(相对移动_3)。

    连线

    “相对移动_3”的入口与“相对移动_2”连接,出口与“放置点”连接。

    参数设置

    相对于(移动任务)勾选 下一个 ,坐标系 Z 值设值为 -200。

  2. 吸盘释放物体后, 垂直向上移动 200mm。

    操作

    在任务库中找到:基本运动 ‣ 相对移动 ,将其拖拽到工程编辑区(相对移动_4)。

    连线

    “相对移动_4”的入口与“设置DO_关”的出口连接,出口与“Home 点”连接。

    参数设置

    相对于(移动任务)勾选 当前 ,坐标系 Z 值设值为 -200。

返回 “Home 点”

释放物体后,机器人需返回 Home 点。

可以通过增加循环的方式,使机器人回到 “Home 点”,并循环执行任务。

../../../../_images/motion_trajectory_planning_back.png

提示

在工程编辑区,右击弹出菜单,单击 自动排布 可自动调整排布方式。

仿真

单击 仿真 开始对机器人的运动路径进行仿真。

碰撞检测配置

为了防止机器人与料筐或其他障碍物发生碰撞,保证程序不间断地运行,用户需要完成碰撞检测配置,可参考 碰撞检测

仿真运行

完成以上操作后,即可单击 仿真 开始仿真运行 Mech-Viz 工程。

注意

运行 Mech-Viz 工程前,需打开 Mech-Center,用于 Mech-Vision 与 Mech-Viz 之间的通信,使 Mech-Viz 获取到 Mech-Vision 采集的场景点云。