视觉工程配置

在使用本教程前,你已经在机器人通信配置章节中使用案例工程“有序工件上料”创建了方案。

在本教程中,你将先了解工程思路,然后通过调节步骤参数完成工程的部署,从而识别工件的位姿并输出视觉结果。

视频教程:视觉工程配置

工程思路介绍

在本教程中,你需要使用Mech-Vision软件进行视觉工程配置。视觉工程配置的流程如下图所示。

project workflow

视觉工程配置流程各个阶段说明如下。

阶段 使用软件 说明

连接相机并采集图像

Mech-Vision

通过Mech-Vision软件的“从相机获取图像”步骤连接相机,以实现图像采集目的。

识别工件

Mech-Vision

通过Mech-Vision软件的“3D工件识别”步骤对图像数据进行一系列视觉处理(点云预处理、3D匹配等),实现工件的快速识别。

调整位姿

Mech-Vision

通过Mech-Vision软件的“调整位姿V2”步骤对“3D工件识别”步骤输出的位姿进行坐标系转换、位姿调整、位姿排序,或位姿过滤等。

规划机器人路径

Mech-Vision

通过Mech-Vision软件的“路径规划”高级组件,将基于上一步调整后的工件位姿,动态规划出无碰撞的机器人移动路径。

输出规划路径

Mech-Vision

当接收到机器人(本教程使用)或PLC发送的标准接口指令,Mech-Vision的“输出”步骤返回规划的无碰撞的机器人移动路径。

在完成机器人通信配置以及Mech-Vision工程的配置后,Mech-Vision在每次运行后即可以输出规划的路径。

你需要机器人侧编写机器人程序,实现发送触发Mech-Vision工程运行以及获取Mech-Vision输出的规划路径的标准接口指令。具体请参考“实现抓放”章节中的说明。

步骤参数调节

在本节,你将通过调节各个步骤的参数来完成工程的部署。

本节中操作的工程为“有序工件上料”方案中的“Vis_Target_Objects_Recognition”工程。

从相机获取图像

步骤名称

从相机获取图像

所属阶段

连接相机并采集图像

图示

acquire images from camera

说明

需要连接真实相机,并配置相关参数,确保相机可以正常采集图像。

  1. 在Mech-Vision工程编辑区,选中从相机获取图像步骤,在界面右下角步骤参数选项卡中单击选择相机按钮。

    select camera
  2. 在弹出的选择相机及其标定参数组窗口中单击相机编号右侧的 image 图标。当该图标将变为 image 图标时,表明相机连接成功。

    connect camera

    连接相机后,单击选择参数组按钮,选择标定好的、带有ETH/EIH和日期的标定参数组。

    select calibration parameter group
    此处选择的标定参数组为完成手眼标定后生成的标定参数组。
  3. 连接相机并设置标定参数组后,相机标定参数组、IP地址和端口等参数将自动获取。请确认配置参数组已设置为“反光物体”。

    camera other parameters
    • 单击从相机获取图像步骤的单步运行按钮触发图像采集,双击步骤的“相机深度图”和“相机彩色图”数据流连线,并在调试输出窗口查看是否成功从相机获取到图像。

      double click data flow line

如果在调试输出窗口可以看到正常的深度图和彩色图,则表明Mech-Vision软件已成功连接真实相机,并可以正常采集图像。

3D工件识别

步骤名称

3D工件识别

所属阶段

识别工件

图示

target object recognition

说明

需要设置点云预处理参数、在工件库中制作工件模板并选择工件、设置识别参数、配置输出端口。

3D工件识别步骤提供了内置的可视化3D工件识别工具,通过配置向导,只需三步即可轻松实现工件位姿的识别。

overall recognition configuration process

你可以通过以下任一方法打开3D工件识别工具界面,开始参数调节。

  • 在工程编辑区单击步骤上的配置向导按钮。

  • 步骤参数选项卡中单击配置向导按钮。

点云预处理

点云预处理将采集到的图像数据转换为点云,进而设置有效的点云识别区,检测边缘点云,并过滤掉不符合规则的点云,提升后续的识别效率。

在本步骤,你需要设置有效的识别区,从而将干扰因素屏蔽在区域外,以提升识别效率。设置识别区时,其范围应包含托盘及托盘上的工件,可适当外扩20至30毫米,以包容托盘放置位置的小幅变动所产生的影响。

set 3d roi

通常,保留其他预处理参数的默认值即可。如果场景中存在较多杂点,可以尝试调整相关参数。详情请参考点云预处理

在完成参数调节后,可以在预览预处理结果区域单击运行步骤按钮,在可视化区域确认预处理效果满足预期。

工件选择与识别

  • 本案例使用3D匹配进行工件识别。3D匹配是将目标物体的模板点云拟合到场景中物体点云,以算出场景中物体的位姿的过程。在使用3D匹配进行识别时,需要先制作工件模板(也称作点云模板或点云匹配模板)。

  • 在完成参数调节后,可以在查看运行结果区域单击运行步骤按钮,在可视化区域确认识别效果满足预期。

制作工件模板

本教程中,请参考通过示教法设置抓取点,然后利用相机采集点云生成点云模板制作工件的点云匹配模板。

如果用户只进行仿真模拟,可以使用如下位姿作为通过示教法设置的抓取点的位姿:

  • 机器人法兰位姿:779.490mm, 123.010mm, 290.560mm, -17.63°, -0.29°, -179.54°

  • TCP:0.000mm, 0.000mm, 200.000mm, 0.000°, 0.000°, 0.000°

在设置抓取点的位姿时,选择“欧拉角”表示姿态。

注意事项:

  • 当使用示教法制作模板时,需要使输出的匹配位姿与模板角度偏差尽量较小。在工件库的3 编辑模板选项卡的点云模板配置区域,开启配置点云模板选项,并将避免误匹配参数设置为“自动计算可能匹配失败的位姿”。

    auto calculate failure poses

工件模板创建完成后,关闭工件库窗口返回3D工件识别工具界面,点击更新工件按钮。如果该方案工件库中只有一个工件模型,工具将自动选择该工件模型。如果该方案工件库中有多个工件模型,请选择需要使用的工件模型。

select object model

设置匹配参数

  1. 识别工件区域,匹配模式启用自动设置匹配模式选项。

  2. 启用高级模式,启用启用额外精匹配选项。

  3. 添加避免误匹配设置:将过滤范围设置为45°。删除模板角度偏差大于45°的匹配位姿。

  4. 修改置信度阈值。将置信度阈值设置为0.6,删除错误的匹配结果。

  5. 根据需要设置最大输出结果个数,例如10。在满足路径规划需求的前提下,尽量减少输出个数,减少匹配耗时。

    set matching parameters
配置输出端口

根据后续路径规划和碰撞检测的要求,选择如下输出端口:

  • 物体中心点相关端口

  • 工件标签

  • 预处理后的点云

set output ports

调整位姿V2

步骤名称

调整位姿V2

所属阶段

调整位姿

图示

adjust poses

说明

需要配置参数实现位姿变换、位姿调整、位姿排序以及位姿过滤。

得到工件位姿后,需要对位姿进行调整,处理流程如下。

adjust poses process

Mech-Vision内置位姿调整工具,你可使用该工具轻松实现物体位姿的调整及抓取顺序的优化。你可以通过以下任一方法打开位姿调整工具界面,开始参数调节。

  • 在工程编辑区单击步骤上的配置向导按钮。

  • 步骤参数选项卡中单击配置向导按钮。

请按照如下步骤调节参数:

  1. 位姿变换:在位姿调整选项卡中,将位姿从相机坐标系转换至机器人坐标系。

    adjust reference frame
  2. 位姿调整:在位姿调整选项卡中,将方向调整设置为“自动对齐”,选择Z轴对齐应用场景。该操作将位姿Z轴朝向尽量与机器人坐标系Z轴正方向朝向一致。

    adjust pose direction
  3. 位姿排序:在位姿规则选项卡中,选择“‘Z’形平面排序”排序类型。

    sort poses
  4. 角度过滤:在位姿规则选项卡中,根据位姿Z轴方向过滤明显不可抓取的位姿,减少“路径规划”高级组件路径规划的耗时。

    filter poses
  5. 过滤感兴趣区域外的位姿:在位姿规则选项卡中,设置目标区域(感兴趣区域),判断位姿是否在感兴趣区域内,并只保留感兴趣区域内的位姿。

    此处的目标区域(3d_roi)在机器人坐标系下。为避免出现错误过滤的问题,必须根据实际外参重新设置目标区域。
    set 3d roi

路径规划

本案例使用Mech-Vision“路径规划”高级组件获取规划路径。使用标准接口通信方式时,需要机器人侧配合实现3D视觉引导机器人抓取和放置流程。具体操作请参考“实现抓放”章节。

输出

步骤名称

输出

所属阶段

输出规划路径

图示

procedure out

说明

需要切换端口,输出机器人路径给机器人。

请将端口类型设置为“预定义(机器人路径)”。

set output to robot path

至此,你已完成视觉工程配置。

我们重视您的隐私

我们使用 cookie 为您在我们的网站上提供最佳体验。继续使用该网站即表示您同意使用 cookie。如果您拒绝,将使用一个单独的 cookie 来确保您在访问本网站时不会被跟踪或记住。