北京现代汽车有限公司 (以下简称北京现代) 是由北京汽车投资有限公司和韩国现代自动车株式会社共同出资设立,公司主要业务以全新车型引进、商品性改善与本地化研发为主。目前,整车年生产能力已达到 100 万台。
北京现代拥有3 座整车生产工厂、3 座发动机生产工厂和 1 座承担自主研发的技术中心。北京现代拥有近 300台机器人,分别应用在车身焊接、车身冲压、发动机组装、涂装等各种关键工位中。公司依靠先进的自动化制造装备,保障 100%焊接与运输自动化率,100%自动化冲压生产,确保车身焊接质量与车身强度。
在发动机生产工厂, 汽车发动机的缸体搬运工作是由韩国现代公司制造的机器人来进行。 在引导机器人进行缸体搬运时, 采用的是由韩方定制的工业相机+视觉软件的方式。 在生产过程中,遇到了棘手问题,主要是:相机拍照一次检测不成功,需要多次拍照才有可能检测成功,影响了工作效率。因此,北京现代决定进行技术改造,以实现机器人对缸体的高效精确抓取。
在改造时,这个问题一直困扰着北京现代的技术人员。在应用现场,缸体是码放在一层层的拖盘上,每隔一层缸体码放的方向不同(如图 1 所示) 。由于缸体只有一个抓取位置(如图2 所示) ,所以机器人在抓取时,会自动将爪具旋转 0 度、90 度、180 度或 270 度,然后根据每层托盘上每个缸体的大概位置去拍照抓取,同时相机也会跟着爪具进行旋转。这样,得到的图像都是一个方向的, 而相机却跟着机器人改变了拍照方向, 这直接影响了抓取的准确性。
图 1
图 2
因此,要成功实现技改,就要搬掉这个拦路虎,北京现代的技术人员详细分析了迫切需要解决的两个技术难点。
第一:机器人坐标系与图像坐标系的对应关系(N 点校准) 。
从理论上来说, 如果机器人旋转 0 度、 90 度、 180 度或 270 度时的旋转中心是一致的, 那么,就可以只针对 0 度时的坐标对应关系做 N 点Calibrate,其他三个角度时的坐标系对应只是象限不一样。
1)机器人坐标系与图像坐标系都是 0 度时,两个坐标系是重合的(如图 3 所示) 。这时,在做完 N 点 Calibrate 后,机器人坐标与图像坐标可直接一一对应。
2)机器人坐标分别旋转 90 度、180 度和 270 度时,图像坐标系虽然没有改变,但是却与机器人坐标系的其他象限有了对应关系(如图 4、图5、图 6 所示)。
3)如果机器人的旋转中心是一样的,就可以得到一个拟合圆(如图 7 所示) 。
图 3
图 4
图 5
图 6
图 7
需要注意的是: 机器人在抓取位置旋转四个方向拍照时, 必须是以同一固定点为圆心进行旋转,只有这样四个方向(象限)的点才能对应起来,这时只要在一个方向做 9点标定即可。否则,如果机器人在抓取位置旋转四个方向拍照时,不是以同一点为圆心进行旋转,那每个方向(象限)都要重新做 9点标定,因为每个方向的点是不能对应。
最终经过确认, 机器人夹具在旋转 0 度、 90 度、 180 度和 270 度时的旋转中心很难保持一致,所以只校准一次并对应象限的方法就不能使用了。这样,四个角度时都要分别做 N 点Calibrate。
第二:拍照后,必须确定图像特征的旋转中心的偏移量,图像特征旋转中心与偏移量的和,必须与机器人夹具的旋转中心保持一致,否则抓取时就会产生很大误差。
为解决技术改造中遇到的这些难点, 并选择一个令人信任的技术解决方案, 北京现代的技改部门在综合比较技术实力、产品性价比、售后服务能力和服务质量等多种考虑下,决定选择机器视觉领域内的领军企业——康耐视公司。
虽然康耐视 In-Sight 产品支持多种工业通讯协议, 但是在本次应用中与机器人只是采用最简单的 RS-232 串口通讯方式(见图 10) 。
图 8
在现场,机器人有两个位置比较重要,一个是拍照位置,另一个是抓取位置,这两个位置都有固定坐标。对关键的图像定位问题,康耐视 In-Sight 产品有其创新的解决方案。
1)得到基准模型图像。机器人由拍照位置走到抓取位置,然后把缸体移到夹具正好能够正确抓到的位置,这个位置就是抓取的基准位置。固定好缸体后,机器人从抓取位置回到照相位置,然后进行拍照,得到的这张图像就可以作为基准模型图像。
2)得到两张抓取位置旋转某个角度的图像。在得到基准模型图像后,机器人由拍照位置再走到抓取位置,抓住缸体逆时针或顺时针旋转某个角度(例如 CCW-10 度或 CW-10 度),然后松开缸体,再回到拍照位置进行拍照,得到第二张图像。同样再按此步骤操作得到第三张图像。
3)得到这三张图像后,就可以在这三张图像上用 PatMax 工具查找同一特征点,根据得到的三个点就可以拟合出一个圆,这个圆的圆心坐标就是机器人夹具的旋转中心。具体如图 9、图 10 所示。
图 9
图 10
In-Sight 相机与机器人实现了完美的无缝配合,具体工作过程如下。
1)工件分层码放在旁边,每次只将一层工件放到拍照与抓取位置(如图 11 所示) 。
图 11
2)机器人在拍照前会事先知道这一层是如何摆放的。每个工件的拍照位置都是在机器人程序中事先设置好的。例如:抓取工件(0 度)时,机器人不需要旋转,直接到拍照位置进行拍照后抓取。在抓取工件(180 度)时,机器人会自动旋转 180 度,然后再到拍照位置进行拍照后抓取。同理,下一层的工件是以 90 度和 270 度进行摆放的。
3)机器人到达拍照位置后,首先向相机发送 START1,让相机进行拍照检测。如果定位成功,相机给机器人返回 OK。机器人在收到 OK 后,再向相机发送 SHIFT8。相机再把定位坐标和角度返回给机器人。如果定位失败,相机给机器人返回 NG。机器人会自动微调当前位置,然后再次发送 START1,让相机重新拍照。直到检测成功。相机拍照后,会把工件的当前坐标与当初训练的基准抓取位置坐标相减, 然后把坐标差值和角度传送给机器人, 机器人以当初训练的基准抓取位置坐标为基础进行调整,然后再去抓取工件。
经过一系列的现场测试,北京现代采用康耐视的In-Sight 智能相机后,成功解决了令人挠头的技术难题。 “康耐视的 PatMax 工具提出了视觉行业最佳的定位算法,即使在比较复杂的情况下也能提供非常准确的定位。 而且还提供了非常丰富的通讯方式, 便于集成到现有系统中。 ”北京现代保全部的沈剑表示。
他对 In-Sight 智能相机的表现给出了极高的评价,“经过改造后,机器人工作很流畅,且抓取都很准确,几乎没有定位不到的情况。在调试过程中,PatMax 工具的优越性得到了淋漓尽致的体现,我们非常满意。 ”
沈剑最后表示,在现场还有四台现代机器人,情况与被改造工位很相似。 “在这台机器人调试完毕时,我们就已经开始准备改造其他四台机器人的视觉系统了。 ”
(转载)