KUKA机器人视觉2

上回说到机器人视觉,2D视觉系统的应用,其中最关键的我们拿到相机数据怎么处理

为了能很好的说明我们先看下图

红色圈起来的是相机采集的特征点,相机采集的。如果这张图是标定时相机用来做学习的照片,那么再次拍照,这个位置的理论值XYA都应该是0.

这是两此拍照的照片重回在一起,第一张为相机学习的照片,第二张则为产生偏移的照片,两张照片放在一起可以发现,第二次的照片相对于基准(相机学习照片)产生了很明显的角度变化,并且旋转中心为上方的一个孔,此时相机会给出{x 0,y 0,a 30}

如果我们把这个值直接加在抓取点上那肯定是不能准确抓取的,因为机器人是沿着tcp点进行A角度变化的,除非我们把工具的tcp建立在这个位置上,当然理论上可以建立,但实际没法操作。

不过base可以

我们可以在这个点上建立base坐标系,然后把相机给的数据加在base上。这样我们就可以实现抓取了。

下面看下原理:

+机base1建立在相机拍照的特征点上

此时把相机发来的数据加在base上(注意base_data[1]的数值),会产生base的偏移,而p1点是建立在base1上。那么base偏移后抓取点仍然是参考base的坐标

有角度也是一样的

我们把base的原点建立在相机拍照的特征点上,在标定,那么相机会建立一个坐标系与机器人的base重合,而此点必须为相机给出数据的旋转中心。

此时我们只需要将相机发来的数据加在base上就完成了位置偏移

分割线-----------------------------------------

总结一下

2D相机的视觉系统和机器人连接步骤

1建立网络连接;配置总线,将相机与机器人实现通信

2选取产品特征点,并且与相机调试人员确定特征点上的旋转中心。

3建立工具坐标系

4建立基座标系;必须建立在与相机调试人员协商的旋转中心上,方向建议与世界坐标一致

5标定、相机做特征点。

6在刚刚建立的base上示教抓取点

7测试抓取

分割线-----------------------------------

怎么样现在了解了2D相机偏移量数据怎么实现抓取了吧。

那3D相机又会有所不同。

3D相机往往是标定工具的,因此相机给出的位置信息对于机器人来说相当于绝对坐标值,就是说相机给了这个产品的位置信息,机器人拿到就直接执行这个位置就可以了。

然而相机厂商往往只给出产品的位置,其中如何到达这个位置它就不管了。

那对于一些夹爪上有定位销,或者有深入到产品里面的结构,我们只有这个信息是不够的,需要我们自己计算过度点的。

下图这样的抓取结构中“101”零件是必须沿着刚体方向直线深入刚体内部的,所以我们必须通过计算,算出到达相机给的位置之前的一个点,这个点必须让工具方向和刚体方向一致。

那么怎么计算呢?始终垂直的还好,如果产品产生了角度变化怎么计算?

今天先到这,3D的抓取我们下回分解。

长按二维码关注我,机器人小农。。。大家可以用微信关注这个公众号

个人的手机号不敢公布啊,怕被骚扰。还是发微信公众号吧,哈哈哈哈。经常会发技术文出来,大家共勉啊!!!

要买KUKA机器人也可以找我啊。。。我会转发给内部销售的。。。

猜你喜欢

转载自blog.csdn.net/xm10282010/article/details/107558341