回复:机器人的Tool坐标系如何简单理解

已锁定

看雪001

  • 帖子

    2417
  • 精华

    87
  • 被关注

    232

论坛等级:至圣

注册时间:2012-04-25

钻石 钻石 如何晋级?

发布于 2022-01-19 17:33:12

3楼


起初,我以为是我没能理解Tool坐标系的定义,即“工件”坐标相对于U轴中心@U=0°时的偏移。关于工件坐标系,我并不是从上面这张图去理解的,而是读完一楼的工具坐标系校准标准程序,它其实是将机器人U轴停留在任意角度时,根据相机视觉软件提供的工件坐标,用反三角和三角函数,反推工件相对于U轴在0°时的偏移量。那么,如果理解正确的话,我可以将机器人的U轴直接停在0°,或者90、180、270°这一类特定角度上,避免复杂计算。

这样一想,我就有了重构相机系统和机器人拍照程序的思路。

原来的相机系统设计为单个工件校准,同轴光源只略比单个工件面积大,不足以照射到三个工件;而且,相机的镜头选的是8mm焦距,视角虽大,视距却小,在整个视场中,边缘的畸变率也是比较大的。首先就是将8mm镜头更换为16mm镜头,把40mm*40mm同轴光源也换成80*80mm同轴光源。

一番捣腾安装之后,下对位相机采集到的3个工件图片是这样的:


3个工件所涵盖的面积,正好铺满相机视野的约2/3,且3个工件的反射面都具有典型特征值(明显的亮度区别),这就不需要再做图像增强处理,直接抓取特征值即可

圆形查找的半径125像素(工件物理直径7mm),圆形拟合误差0.45像素,相机视觉软件返回的结果是令人满意的。

做到这一步的时候,虽然机器人动作尚未编写,我其实已经知道方案是正确的,忽然就有一种“提刀而立,为之四顾,为之欣悦”的感觉,手动将机器人移动到相机中心,看到3个工件位于相机中的位置,它仿佛就是君临天下了,所谓王者之荣耀,不过尔尔!

机器人的动作终于是要编写出来的,在这之前,还要把相机视觉采集到的位置信息做个编码打包发送:

格式化通信编码的规则:第一位2100代表信道,表示发送给1#机器人;第二、三、四位数据分别表示3个工件识别结果,如果任意一个为0,机器人就要卸载掉工件,重新抓取一个工件再次拍照;第四位开始是3个工件的XY像素坐标值。位之间用逗号分隔。

接下来就是机器人的工件校准程序了,我为机器人设计了拍照时的pose,让U轴停留在180°,不需要使用三角函数去计算:


三个工件只需要运行一次校准程序,由于程序过于简单,都不需要写注释。

实际运行的结果:


说明机器人已经成功校准了3个工件,只待一声令下。

大道至简,知易行难
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

谈天说地

共有13245条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。