Eye in Hand场景下的自动标定(四轴机器人)

本操作指南介绍如何完成四轴机器人在eye in hand (EIH)场景下的自动标定。

标定前准备

在进行手眼标定前,你先需要完成如下准备工作:

完成视觉系统的搭建

请参照视觉系统硬件搭建章节完成梅卡曼德视觉系统的搭建。

手眼标定需要使用Mech-Eye Viewer、Mech-Vision和Mech-Viz软件。请确保上述软件已经安装并更新到最新版本。

完成机器人通信配置

如果机器人使用标准接口方式与视觉系统通信,请完成机器人的标准接口通信配置。详情请参考 标准接口通信 章节的相关内容。

如果机器人使用主控方式与视觉系统通信,请完成机器人的主控通信配置。详情请参考 主控通信 章节的相关内容。

准备标定所需物料

EIH场景下的自动标定需要使用标定板。

请按照如下要求准备标定板:

  • 请确保标定板上圆清晰,没有明显刮花痕迹,标定板没有明显弯曲变形。

  • 在EIH场景下,请将标定板平放在工作平面的中心位置。

检查标定板点云质量(可选)

标定板的点云质量会影响手眼标定结果的精度。检查标定板的点云质量,用于确保标定结果的准确性和可靠性。标定流程中包含了检查标定板点云质量的操作。你也可以在标定前提前检查标定板点云质量,从而节省标定流程所需时间。
  1. 将标定板放置在相机视野下工作平面的中心。

  2. 打开Mech-Eye Viewer软件,选择项目使用的相机,并调整相机参数

  3. 调整2D参数,使2D图中标定整体亮度不宜过暗,每个标定圆清晰可见。

  4. 调整3D参数,使标定板上每个标定圆完整可见。

    若现场环境光较复杂,建议通过遮补光来降低环境光对2D图和点云的影响。

  5. 通过完成以上步骤来确保标定板点云质量满足要求。

    正常 过曝 欠曝

    2D图

    normal-2d

    overexposure-2d

    underexposure-2d

    点云

    normal-3d

    overexposure-3d

    underexposure-3d

完成标定前检查工作

请参考标定前检查工作,完成如下检查:

  • 确认机器人底座已牢固安装。

  • 确认相机支架及相机已牢固安装。

  • 确认标定板已牢固安装于机器人末端(ETH)。

  • 确认机器人绝对精度满足使用要求。

  • 校验机器人模型参数准确性。

  • 确认已进行相机预热暖机。

标定预配置

  1. 打开Mech-Vision软件,在工具栏上单击相机标定按钮。标定预配置窗口将弹出。

  2. 确定已完成标定前检查工作后,单击确认检查按钮按钮,然后单击下一步按钮。

    calib preset confirm checks
  3. 选择如何标定窗口,选择开始新的标定单选框,然后单击下一步按钮。

    calib preset new
  4. 选择标定任务窗口,从下拉列表框中选择品牌机器人的手眼标定,单击选择机器人型号按钮以选择项目使用的机器人型号,然后单击下一步按钮。

    calib preset auto select robot
  5. 选择相机安装方式窗口,选择Eye in hand单选框,然后单击下一步按钮。

    calib preset eih
  6. 标定方法及机器人控制方式窗口,选择自动标定标准接口, 然后单击开始标定按钮。标定(Eye in Hand)窗口将弹出。

    calib preset auto select communication

    如果使用主控方式与机器人进行通信,选择自动标定主控

至此,标定预配置已完成,将进入正式标定流程。

标定流程

连接相机

  1. 连接相机步骤,在相机编号列表中选中需要连接的相机,然后单击 connect camera icon 即可连接相机,或者直接双击需要连接的相机。

    calib connect camera
  2. 连接相机后,可以选择连续采集或者单次采集按钮。

    calib image capture
  3. 图像视图面板中,确定相机能够正常采集图像,然后在底部栏单击下一步按钮。

安装标定板并检查内参

  1. 安装标定板并检查内参步骤,在1 选择标定板区域,根据标定板的型号标签设置标准标定板型号参数。

    calib select calib board
  2. 2 检查标定板位置及点云质量区域,请仔细了解标定板位置和点云质量检查标准,然后单击连续采集按钮。连续采集按钮将会变为停止采集并检测位置按钮。

  3. 控制机器人携带标定板移动到合适的位置,确保标定板完整出现在红框内,并且标定板与相机之间的距离尽可能接近推荐值。

    calib install calib board
    如果标定时采用标准接口通信方式,请在标定程序中修改标定起始点。
  4. 确认标定板的2D图和深度图满足检查标准,然后单击停止采集并检测位置按钮。

    如果采集的图像不符合标准,单击打开Mech-Eye Viewer按钮打开Mech-Eye Viewer软件,调整相机的2D和3D曝光参数,并重新进行采集。注意先将参数组切换为“calib”后再调节参数。

  5. 3 检查相机内参区域单击检查内参按钮。

  6. 确认相机内参检查结果。

    • 如果相机内参检查成功,在弹出的窗口单击确定按钮,然后在底部栏单击下一步按钮。

      calib check intri pass
    • 如果相机内参检查失败,通过画辅助圆或者手动编辑标定圆检测参数,然后单击重新检查内参按钮。

画辅助圆

  1. 若选择画辅助圆,单击开始画辅助圆按钮。

  2. 在右侧图像视图面板,右键单击标定板图像,取消勾选适应窗口复选框,然后按住Ctrl键并拖动滚轴将图片调整到合适的大小。

  3. 将鼠标指针移动到标定圆十字中线点,按下鼠标左键然后使辅助圆完全包括标定圆然后松开。

    calib adjust blob
  4. 单击重新检查内参按钮,并确认相机内参检查是否通过。

手动调整检测参数

若选择手动调整检测参数,单击标定圆检测参数(高级),更改检测参数值后单击重新检查内参按钮,并确认相机内参检查是否通过。

倘若仍检测不到标定圆,需根据现场作业条件调节相机相关参数,相机参数调节参考 参数调节

连接机器人

如果标定时采用了标准接口通信方式,请参考连接机器人(标准接口)

如果标定时采用了主控通信方式,请参考连接机器人(主控)

连接机器人(标准接口)

  1. (可选)在 连接机器人步骤,点击启动接口服务按钮。该按钮将变为等待机器人连接中…。如果之前工具栏上的标准接口通信选项已启用,则不需执行该操作。

    calib connect robot standard interface
  2. 在机器人的示教器上,选择自动标定程序,示教标定起始点并运行标定程序。不同机器人的标定操作流程,请参见 标准接口通信 章节。程序启动成功后,日志栏中将打印“进入标定流程,请在Mech-Vision中启动标定”日志。

  3. 返回Mech-Vision软件,确认在连接机器人区域显示“已连接”状态信息后,然后在底部栏单击下一步按钮。

连接机器人(主控)

  1. 在机器人的示教器上,选择并运行主控程序。关于不同机器的操作方法,请参见 主控通信 章节。

  2. 返回Mech-Vision软件,在连接机器人步骤,设置参数机器人IP地址

    calib connect robot master control
  3. 连接机器人区域单击连接机器人按钮。按钮将变为等待机器人连接中…

  4. 等待在连接机器人区域显示“已连接”状态信息,然后在底部栏单击下一步按钮。

    calib connect robot master control connected

设置移动路径

  1. 设置移动路径步骤,在1 确定标定范围区域,设置高度范围参数。

    calib set robot path eih

    高度范围参数应根据相机的推荐工作距离范围和机器人的工作空间大小设置。

  2. 单击自动生成按钮,在自动将机器人路径对齐至相机坐标系弹窗中点击确定按钮。

    calib confirm path parameters
    该操作将轻微移动机器人并采集图像,整个过程将占用10至15秒。请确保移动路径安全。如果遇到紧急情况请按机器人示教器上的急停按钮。
  3. 在弹出的标定窗口,点击确定按钮。

    calib confirm pose
  4. 在右侧场景视图面板中,确认各路径点位置合理且不会发生与周边环境的碰撞。

    calib view path eih
  5. 点击根据参数生成路径按钮,然后在底部栏单击下一步按钮。

获取图像和位姿

如果机器人使用主控方式与视觉系统通信,从真实机器人获取位姿复选框默认勾选(推荐勾选),并根据需要调整机器人位姿类型参数。如不需要与真实机器人同步可取消勾选。
  1. 获取图像和位姿步骤,单击开始标定按钮。

    calib add image pose
  2. 仔细阅读弹窗中的机器人运动安全提示,然后单击确定按钮。

    calib safety tips
  3. 等待机器人按照设定路径移动到各标定点以及相机完成各标定点的图像采集。弹窗将会显示移动到标定点进展。

    机器人移动时请远离机器人工作区域,以免机器伤人。
  4. 当弹窗中显示“移动到全部标定点成功,标定结束”时,单击确定按钮。

    calib capture finished
  5. 确认当前采集标定数据满足数据需求,然后在底部栏单击下一步按钮。

    calib data requirements

    若不满足,你需要手动移动机器人后(可以选择使用示教器移动或者通过Mech-Viz移动),在3 辅助工具区域启用手动添加更多图像选项,单击添加图像并记录法兰位姿按钮,添加标定板图像,并输入机器人法兰位姿。

计算外参

  1. 计算外参步骤,单击1 计算外参并查看结果区域的计算外参按钮。

    calib calculate extri randompose 4 axis
  1. 在弹出的标定成功对话框中单击确定按钮。

  2. 参考2 辅助工具区域中修正外参Z值操作指导计算外参Z值补偿值

    因四轴机器人缺少旋转自由度,标定过程中采集图像缺少旋转量。在标定完成后,需要修正外参Z值。
  3. 在底部栏单击保存按钮,在弹出的保存标定文件对话框,单击确定按钮。相机标定结果将自动保存到工程的“calibration”目录下。

    calib save calib result

至此,标定流程完成。

验证标定结果

本节提供快速验证标定结果的方法。

在点云视图中查看误差点云

在计算出相机外参后,执行如下操作:

  1. 标定结果计算完成后,在计算外参步骤的点云视图面板查看误差点云。

    误差点云用于显示每个标定位姿上标定板圆点真实值与计算值之间的偏差。详细说明,请参考误差点云说明
  2. 确认标定精度满足项目精度要求。查找占比为100%的误差值,即可粗略确定标定的精度。

例如,下图的标定精度为±2.5 mm之内(使用标定板多个随机位姿方法采集标定数据)。

check error point cloud randompose

在场景视图中查看机器人的点云与机器人模型的重合度

在计算出相机外参后,执行如下操作:

  1. 将机器人末端移动到相机可以拍到基座的位置。

  2. 计算外参步骤中,单击2 辅助工具区域中的相机采集按钮。该操作将触发相机拍照。

  3. 在右侧场景视图,通过目测检查真实机器人点云与机器人模型的重合程度。

    如机器人的点云与机器人模型大致重合,则说明标定结果可用。

    check coincidence degree base
如果因机器人自由度或工作空间限制导致相机无法拍基座,可以使用在场景视图中查看标定板点云相对于固定点的偏移量替代该方法。

使用外参精度验证工具验证外参

对于精度要求较高的场景(±2mm以内),需要使用该方法全面验证外参。

在标定流程计算外参步骤中,单击外参精度验证工具可以打开该工具。请参照工具的操作指导来验证外参精度,最终生成评估报告。

如果标定精度不满足要求,可以单击查看外参标定报告按钮查看标定数据欧拉角类型检查、相机精度检查、机器人绝对精度检查的结果。

eih calib auto extri calib report
  • 如果外参标定报告中相机精度不满足要求,请参照建议排查导致相机精度误差的原因。

  • 如需对机器人绝对精度和外参精度进行评估,可在2 辅助工具区域单击机器人绝对精度检查外参精度验证工具

  • 如果参考外参标定报告中建议排查问题后标定结果仍不能满足精度要求,请参考标定结果分析小节提升标定精度。

切换外参文件

如果之前Mech-Vision工程已经使用相机的外参文件,在完成手眼标定后,需要将Mech-Vision工程使用的外参文件切换为新的外参文件。

  1. 选择从相机获取图像步骤。

    change calibration parameter group
  2. 步骤参数面板中,单击相机标定参数组change calibration parameter group icon,选择新标定的外参文件。

标定相关的状态码

在进行手眼标定时,如果机器人与视觉系统使用标准接口方式通信,视觉系统返回的数据中包含状态码,指示该指令的执行情况。状态码包括正常执行完成情况和异常报警情况,你可以根据状态码进行错误处理。

标定相关的错误状态码

错误状态码 含义

7001

标定:参数错误

7002

标定:Mech-Vision未提供标定法兰位姿

7003

标定:Mech-Vision未提供标定关节角

7004

标定:机器人到达标定点失败

标定相关的正常状态码

正常状态码 含义

7100

标定:机器人成功到达标定点

7101

标定:成功从Mech-Vision获取位姿

我们重视您的隐私

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