这一篇勇哥来谈一谈验证视觉取放料准不准如何来判定的问题。
机器在客户工厂试产阶段,会暴露出整机定位精度不准的问题,这时候机构会甩锅给视觉这边,如何反驳呢?
首先,我们视觉这边必须要有数据证明视觉取放精度是满足要求的.
这一点之前的贴子中勇哥讲了许多.
主要方法有两种:
一是在标定完成后,在视野的最大范围内确定一批像素点, 转为机械人坐标后走过去戳下去, 看准不准.
二是取实际的物料, 然后放置回视野内的一个固定位置, 变化量是每次取的物料位置与角度都会不同. 做几十组数据观察放置的位置偏差有多少.
方法一是看机器人标定后, 按像素坐标转机器人坐标时机器人能不能走准的最佳方法.
方法二是属于实际取放物料的重复性测试, 这个测试包含了视觉取放误差和机构本身的取放误差, 是包含了多种误差在内的一种测试.
方法二中, 我们放置电池时应该在视野范围的上/中/下三路 的范围内放置, 而不应该在一条线上放置电池, 这样可以更客观的反映出视觉的取放精度.
关于这个问题勇哥以上几篇都提到过.
另外, 你应该先让机器人在低速状态下温柔的做一组数据, 然后切换到全功率全速状态再做一组数据.
这两者数据如果有差别而还蛮大的话, 大概率要恭喜机构工程师了, 他们的麻烦来了.
接下来我们验证实际带料取放的误差
这个过程就是实际用物料来跑, 用勇哥手里这个项目来说明一下:
勇哥这台机是拉带上料, 视觉负责取电池到转盘机上, 转盘机是多工位的, 其中有一个工位是切极耳, 整机出料后, 客户可以用测量设备验证极耳到电顶峰边的距离, 如果不在他们的公差范围内的话, 就会置疑设备的精度.
我们多跑几组电池, 统计这个切极耳的数据, 观察它的极差, 如果普通超出客户的公差, 则需要研究为什么.
这个测试完成后, 最先置疑视觉精度的一定是我们的机构工程师而不是客户, 如果我们拿出之前验证取放精度的数据报告给机构工程师看, 他一定会说"机构应该没有问题啊".
这个是机构工程师最爱说的一句精典台词.
最后分析实际物料取放时的精度误差来源
按上面所说的, 我们让机器人在低速度与高速度两种状态下取两组数据对比一下. 这样有一个初步的判断.
接下来我们找取放时误差的来源, 通常用下面的办法:
(1) 肉眼观察
人眼观察取料与放料时电池有没有明显偏位
用卡尺测量电池放置于转盘上同一个治具上时候, 极耳到治具顶边的距离
观察机器人高速度运动时吸盘下的电池是不是被甩动了?
观察机器人吸盘的真空是否有异常?
观察放电池到转盘治具上时, 负责压电池的摆臂压下去时, 电池是否有偏移?
观察拉带上取电池时, 拉带是否呈凹面, 造成电池移位?
观察机器全速度运行时机身抖动厉害吗? 光源和镜头抖动厉害吗?
肉眼区分0.3mm的变化可能都困难, 如果观察到肉眼明显看到的变化就已经说明偏差很大了.
(2) 单步方式验证机器人重复取放动作验证精度
在机器人吸嘴上吸一块电池, 调整位置让视野内CCD可以看见.
然后我们分别做四组实验:
(A) 机器人走到等待位, 然后回到固定的拍照位
(B) 机器人走到放料位, 但是不放, 然后回到固定拍照位
(C) 机器人走到放料位, Z轴下压3mm, 但是不打气缸
(D) 机器人走到放料位, 打下气缸, Z轴下压3mm
其中A, B, C, D 连在一起做, 实际上就是一次完整的放料动作. 我们只不过是把它拆分为单步动作, 以验证是哪一步发生了问题.
另外, 由于这个实验都是在走固定点, 视觉只是记录回到拍照位的像素转机器人的坐标 (转换坐标的误差已经在实验A中有结论), 所以基本上可以看成是验证机械误差的实验.
以上四组数据如下, 它们都是机器人100%的速度下高速跑出来的结果.
(A)的数据如下:
-223.269 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.268 | 266.161 | 90.057 |
-223.268 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.268 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
-223.268 | 266.161 | 90.057 |
-223.269 | 266.161 | 90.057 |
0.001 | 0 | 0 |
这组数据包含有像素转机器人坐标的误差和机器人本身的误差.
(B)的数据如下:
-223.126 | 266.065 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.126 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.102 | 266.067 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.099 | 266.067 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.098 | 266.067 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.102 | 266.067 | 89.541 |
-223.098 | 266.067 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.1 | 266.067 | 89.541 |
-223.099 | 266.067 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.127 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.122 | 266.065 | 89.541 |
-223.099 | 266.067 | 89.541 |
-223.085 | 266.068 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.124 | 266.065 | 89.541 |
-223.085 | 266.068 | 89.541 |
-223.127 | 266.065 | 89.541 |
0.042 | 0.003 | 0 |
这组数据包含有像素转机器人坐标的误差和机器人本身的误差.
(C)的数据如下:
-223.311 | 266.136 | 90.114 |
-223.312 | 266.136 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.29 | 266.124 | 90.057 |
-223.311 | 266.136 | 90.114 |
-223.312 | 266.137 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.29 | 266.124 | 90.057 |
-223.29 | 266.124 | 90.057 |
-223.109 | 266.028 | 89.541 |
-223.311 | 266.136 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.29 | 266.124 | 90.057 |
-223.312 | 266.138 | 90.114 |
-223.066 | 265.993 | 89.541 |
-223.311 | 266.136 | 90.114 |
-223.109 | 266.028 | 89.541 |
-223.311 | 266.136 | 90.114 |
-223.311 | 266.136 | 90.114 |
-223.29 | 266.124 | 90.057 |
-223.29 | 266.124 | 90.057 |
-223.29 | 266.124 | 90.057 |
-223.29 | 266.124 | 90.057 |
-223.311 | 266.136 | 90.114 |
-223.29 | 266.124 | 90.057 |
-223.29 | 266.124 | 90.057 |
-223.066 | 266.138 | 90.114 |
-223.312 | 265.993 | 89.541 |
0.246 | 0.145 | 0.573 |
这组数据包含有像素转机器人坐标的误差和机器人本身的误差, 还有机构的误差.
(D)的数据如下:
-223.44 | 266.134 | 90.114 |
-223.395 | 266.122 | 90.057 |
-223.257 | 265.987 | 89.541 |
-223.235 | 265.989 | 89.541 |
-223.257 | 265.987 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.395 | 266.122 | 90.057 |
-223.216 | 265.989 | 89.541 |
-223.216 | 265.989 | 89.541 |
-223.216 | 265.989 | 89.541 |
-223.216 | 265.989 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.395 | 266.122 | 90.057 |
-223.216 | 265.989 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.21 | 265.99 | 89.541 |
-223.216 | 265.989 | 89.541 |
-223.21 | 266.134 | 90.114 |
-223.44 | 265.987 | 89.541 |
0.23 | 0.147 | 0.573 |
由以上数据可以发现, 精度丢失发生在Z轴压下的时候, 打不打下气缸效果貌似差不多.
而且要特别注意的是, 以上结果基本上可以看成是不考虑视觉原因, 机构本身产生的误差!
由于机构安装, 气缸本身会有精度偏差等等原因, 会造成悬在半空中和压下去效果是不同的.
这台机器客户指定的精度是+-0.2um, 由上面的单步结果可以看到机构本身已经产生的0.2mm的误差, 留给视觉的误差就极小了.
有了这个结论, 就可以放心的去怼机构工程师了.
---------------------
作者:hackpig
来源:www.skcircle.com
版权声明:本文为博主原创文章,转载请附上博文链接!

