EIH系统漂移自校正

本节将对“EIH系统漂移自校正”的功能、适用场景、部署流程进行说明。

系统漂移指视觉系统精度漂移,即视觉系统的精度随着时间的推移逐渐降低,通常是由外部环境的变化、视觉系统内部的不稳定性等因素引起的。

功能简介

在视觉系统运行过程中,下列问题影响着系统稳定性及后期的维护成本。

  • 现场昼夜温差大,可能引起抓取精度波动。

  • 视觉系统长期运行,可能导致抓取精度变差。

为了解决上述问题,针对 Eye in Hand 相机安装方式的视觉系统,精度误差分析工具中内置了“EIH系统漂移自校正”功能,自动校正系统漂移。

function index

适用场景

“EIH系统漂移自校正”功能适用于以下场景。

  • 相机安装方式为 Eye in Hand 的场景。

  • 对视觉系统的长期稳定性要求较高的场景。

部署流程

该功能部署流程仅限中国地区使用,如需在海外地区项目中进行部署,请联系梅卡曼德产品工程师。

该功能的部署流程如下图所示。

overall workflow
  1. 准备工作:部署前,需检查机器人重复精度并确保正常,然后按要求准备标定板和标定球。

  2. 工位信息采集:采集不同抓取层的标定板位姿,用于后续自动计算所需的标定球拍照点。

  3. 布置标定球:通过定位标定板获得推荐的标定球拍照点,然后在该拍照点连续采集标定球图像,自动生成标定球固定位置。

  4. 创建标定球拍照点:根据推荐的标定球位置信息,自动创建出标定球拍照点,然后需框选标定球,对标定球进行定位。

  5. 采集基准数据:采集标定球位姿数据,统计标定球位姿的重复精度,作为系统漂移校正时的基准数据。

  6. 查看部署结果:查看上述部署得到的拍照点相关信息。

  7. 编写机器人程序:编写机器人程序,在实际生产时控制机器人采集标定球位姿数据,作为系统漂移校正时的现场数据。

  8. 部署视觉工程:添加“EIH系统漂移校正”步骤组合,用于自动校正系统漂移。

  9. EIH系统漂移校正:完成上述部署后,实际生产时将自动校正系统漂移。

准备工作

部署前,需完成若干准备工作,具体说明如下。

检查机器人重复精度

为了确保部署过程中机器人重复精度正常,需在部署前检查机器人重复精度。具体操作可参考机器人重复精度检查

准备标定板

支持 CGB、BDB 所有型号的标定板,可联系梅卡曼德工程师获取。

准备标定球

漂移校正过程中需使用到三个标定球,可按如下要求进行准备。

  • 使用梅卡曼德提供的标定球

    梅卡曼德提供直径 60 mm 的哑光铁球,可联系梅卡曼德工程师获取。

    梅卡曼德仅提供标定球,其他配件需自行准备。关于标定球及其他配件的具体介绍可参考标定球

  • 自行准备标定球

    如使用其他标定球,可按如下要求自行准备。

    材质 直径 球形度 球完整度

    点云质量好。如哑光铁球、陶瓷球等。

    • 如果标定球到相机的距离为 0.5m~2m,可选择直径约 60 mm 的标定球。

    • (不常见)如果标定球到相机的距离小于 0.5 m,可选择直径约 30 mm 或 40 mm 的标定球。

    • (不常见)如果标定球到相机的距离大于 2 m,可选择直径约 100 mm 的标定球。

    球形度需接近 1,不能使用椭球。

    可切掉球的一部分,形成切面后便于标定球安装,但至少需确保五分之四的球完整度。


完成以上准备工作后,单击该功能首页右下角的开始部署按钮,即可进入部署向导。

  • 部署前,需检查方案是否有效,即确保方案已打开,方案内的工程中含有“从相机获取图像”步骤,且已选择相机标定参数组。

  • 部署时,请勿修改相机相关信息、打开/关闭方案,需保持方案信息不变。

工位信息采集

连接相机

  1. 关联工程。

    选择一个当前已打开方案中的工程,用于自动获取工程中的相机信息。

  2. 自动获取 IP 地址和相机标定参数组。

    相机连接成功后,该功能将自动获取相机的 IP 地址和相机标定参数组。

    auto obtain camera info

设置相机参数组

连接相机后,需从“相机参数组”下拉列表中设置相机参数组。

确认现场情况

完成相机相关设置后,需根据现场实际情况选择标定球布置情况。

定位标定板

完成上述步骤后,接下来请按如下图示和要求定位标定板,采集工位上各个抓取层的标定板位姿。

locate calibration board

为使标定板定位准确,需保证相机视野中仅有一个标定板。

  1. 将标定板放置在最高层工件所在高度的视野中心位置。

    对于较大尺寸的工件,需将标定板放置于工件的特征部位,即用于点云模板匹配的部位。

  2. 将机器人移动到抓取层上方的拍照点,该拍照点必须和实际生产时的拍照点保持一致。

    move robot to layer
  3. 单击+新增,新增抓取层。

  4. 单击定位,对当前抓取层的标定板进行拍照。

    • 定位成功后,将提示定位成功,可单击查看快照,查看定位成功的标定板,如下图所示。

      view calibration board snapshot
    • 如定位失败,将提示定位失败,可单击框选标定板,在弹出的窗口中对标定板进行框选,或调整相机参数组后重试。

  5. 重复以上步骤,直至所有抓取层信息采集完毕。

    all picking layer

工位信息采集完成后,单击下一步,布置标定球。

布置标定球

通过定位标定板,以及机器人法兰位姿,获得拍摄标定球的机器人位姿,在该位姿下开启相机,可获取标定球的推荐位置,然后即可固定标定球。

布置标定板

  1. 布置标定板。

    标定板正面朝上,在地面上水平放置,且标定板四周应为放置标定球留出余地。标定板下方一般需要类似木板的物体支撑,保证标定板高度与标定球球心高度一致

    place calibration board
  2. 定位标定板。

    移动机器人,将相机调整至合适高度,确保在相机视野内可拍到清晰的标定板,并且标定板位于相机视野正中心,然后单击定位

    • 定位成功后,定位按钮左侧将提示定位成功,并显示标定板快照。此时需将当前机器人法兰位姿输入到界面上。

      locate calibration board for capture point

      需注意检查机器人欧拉角类型,确保欧拉角类型选择正确。

    • 如定位失败,定位按钮左侧将提示定位失败,可单击框选标定板,在弹出的窗口中对标定板进行框选。

  3. 计算拍照点。

    标定板定位成功后,单击下方计算拍照点,自动计算标定球拍照点,即拍照时的机器人法兰位姿。

布置标定球

若在“工位信息采集”步骤中确认现场已固定了标定球,则在此步骤中只需设置标定球直径。

  1. 了解标定球布置规则。

    将机器人移动至推荐拍照点后,标定球所在平面尽量垂直于相机光轴。

  1. 查看推荐的法兰位姿。

    “布置标定板”步骤获取到若干机器人法兰位姿后,当前页面将显示离标定球最近的一个机器人法兰位姿,作为推荐值。此时需将机器人移动至该推荐位姿。

    移动机器人时,需确保机器人不会发生碰撞。推荐先手动将机器人低速移至目标位姿,时刻观察机器人是否会发生碰撞。

    如果机器人在路径中有可能发生碰撞,可适当抬升标定球拍照点,但需保证拍照点抬升范围在 100 mm 以内。如果超过 100 mm,则需为标定球增加底座。

    view recommend pose
  2. 选择标定球直径。

    根据实际准备的标定球,选择标定球直径。

    select spheres diameter
  3. 放置并固定标定球。

    单击连续采集,按显示的推荐位置(绿色圆点处)布置并固定标定球。

    obtain recommend spheres location
    1. 将标定球牢固安装在地面上。需注意实际生产时,应避免误碰标定球。

    2. 使用记号笔在标定球和球座之间划线作为记号,以检查标定球与球座的相对位置是否发生改变。

    3. 固定完成后,单击确认固定

      关于更多标定球安装与维护相关的要求可参考标定球安装与维护

标定球固定后,单击下一步,创建标定球拍照点。

创建标定球拍照点

拍照点信息保存

拍照点相关信息将存储至显示的路径下。

拍照点管理

当前默认显示推荐的拍照点。如需增加拍照点,可单击+新增;如需删除拍照点,可单击 delete image capturing point icon

  • 对于默认的拍照点,需先移动机器人到拍照点,然后单击框选,为每个拍照点框选标定球。

    move robot to capture point

    移动机器人时,需确保机器人不会发生碰撞。推荐先手动将机器人低速移至目标位姿,时刻观察机器人是否会发生碰撞。

    如果机器人在路径中有可能发生碰撞,可适当抬升标定球拍照点,但需保证拍照点抬升范围在 100 mm 以内。如果超过 100 mm,则需为标定球增加底座。

    框选框需完全覆盖标定球,且标定球上下左右方向上各留有一个标定球直径的余量。若框选后提示“定位失败”,可尝试适当扩大框选范围,重新框选标定球。

    outline spheres
  • 对于新增的自定义拍照点,需单击 edit image capturing point icon ,然后输入机器人法兰位姿。

标定球拍照点创建完成后,单击下一步,采集基准数据。

采集基准数据

在顶部的下拉列表中选择拍照点,然后将机器人移动到拍照点对应的机器人法兰位姿处,最后单击右上角验证,对各个拍照点进行验证,统计标定球位姿的重复精度。

collect reference data
  • 切换拍照点后,须将机器人移动到对应的拍照点处,然后对拍照点进行验证。

  • 若标定球重复精度有问题,需检查部署向导中各个步骤的操作和数据填写是否存在问题。

至此,已完成了部署向导,单击保存对已部署的内容进行保存。

保存部署内容后,Mech-Vision工程列表中将自动创建漂移校正工程(每个拍照点对应一个漂移校正工程),用于校正 EIH 视觉系统的漂移。

查看部署结果

完成部署向导并保存后,可单击底部的查看部署,查看部署结果。

如下图所示,部署结果中展示了拍照点相关信息,包括各拍照点对应的漂移校正工程名称和机器人法兰位姿。

check deployment result

编写机器人程序

在实际生产过程中,需编写机器人程序,令机器人定期移动到对应的拍照点,对标定球进行拍照,采集标定球位姿数据,并根据标定球基准位姿数据,生成系统漂移校正信息。

check deployment result

为了方便快速编写机器人程序,以川崎机器人为例,梅卡曼德提供了机器人样例程序,如下所示。

以两个拍照点为例,运行该样例程序后,机器人将移动到对应的拍照点,触发Mech-Vision工程运行,对标定球进行拍照,采集标定球位姿数据。

.PROGRAM Calib_Move()
    ACCURACY 1 ALWAYS
    SPEED 100 MM/S ALWAYS
    JMOVE STAND_BY
    ;layer 1
    LMOVE CALIB[1]
    BREAK
    CALL MM_START_VIS(1,0,1,.#start_vis)
    TWAIT 3
    ;layer 2
    LMOVE CALIB[2]
    BREAK
    CALL MM_START_VIS(2,0,1,.#start_vis)
    TWAIT 3
    JMOVE STAND_BY
.END

样例程序中各步骤说明如下表所示。

序号 步骤 程序 说明

1

定义程序名称

.PROGRAM Calib_Move()

该步骤定义了名为“Calib_Move”的程序。

2

设置机器人移动相关的参数

ACCURACY 1 ALWAYS
SPEED 100 MM/S ALWAYS

该步骤定义了机器人的移动精度为 1,移动速度为 100 mm/s。

3

移动到拍照点 1,采集标定球位姿数据。

LMOVE CALIB[1]
BREAK
CALL MM_START_VIS(1,0,1,.#start_vis)
TWAIT 3

该步骤令机器人移动到拍照点 1,触发Mech-Vision工程 1 运行,对标定球进行拍照,计算标定球位姿。

4

移动到拍照点 2,采集标定球位姿数据。

LMOVE CALIB[2] ;move to calib point #2
BREAK
CALL MM_START_VIS(2,0,1,.#start_vis)
TWAIT 3

该步骤令机器人移动到拍照点 2,触发Mech-Vision工程 2 运行,对标定球进行拍照,计算标定球位姿。

部署视觉工程

机器人程序编写完成后,还需部署视觉工程,用于在实际生产过程中校正系统漂移。具体说明如下。

在视觉工程中添加“EIH系统漂移校正”步骤组合,该步骤组合前接“3D工件识别”或其他匹配类步骤,并保证位姿和点云输入端口存在输入,后接位姿调整类步骤。

“EIH系统漂移校正”步骤的点云输入端口可连接任意输出相机坐标系下场景点云的输出端口,不一定必须连接匹配类步骤的点云输出端口。

add eih procedure

至此,已完成了部署流程,EIH 视觉系统实际运行时,即可对系统漂移进行校正。

EIH系统漂移校正

完成上述部署后,实际生产过程中,“EIH系统漂移校正”步骤组合将自动读取已生成的系统漂移校正信息,对系统漂移进行校正,输出准确的工件抓取点。

如下图所示,左图表示相机采集到的标定球漂移前后的位姿,用于生成校正信息。右图表示“EIH系统漂移校正”步骤组合根据校正信息来校正系统漂移。

eih drift correction example image

监测数据

完成部署后,实际生产过程中,还可进行系统漂移数据监测,了解系统漂移校正情况。

单击“EIH 系统漂移自校正”功能首页右上角的监测数据按钮,进入监测数据看板,可在看板中查看数据校正报表。

白色数据表示正常范围内的系统漂移量,红色数据表示经过漂移校正但仍超出警戒阈值的系统漂移量。

monitoring data dashboard

对报表中数据的解释:

  • △X 表示三个标定球位姿 X 值在相机坐标系下最大波动值,△Y、△Z 同理。

  • 括号外的数值表示漂移校正前的数据,括号内的数据表示漂移校正后的数据。

当系统漂移量超过设定的警戒阈值后,将影响漂移校正效果,需检查相机内参机器人精度相机外参是否存在问题,或根据部署向导重新采集基准数据。

我们重视您的隐私

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