一种视觉机器人作业路径规划系统研究

时间:2011-08-24

  摘要:本文针对工业机器人的弧焊、切割和涂胶等应用,对视觉工业机器人作业路径规划系统作出了介绍。描述了摄像机坐标标定方法,采用图像采集技术获取环境信息,运用图像处理技术对采集的信号进行处理,实现了机器人实时控制和离线编程。经过实践证明,这个系统重复高,能够满足弧焊、切割和涂胶的要求,比较好的适合工业生产需求。

  机器人学的一个终目标是能制造出自治型机器人,如果将机器人看作是一种能够扩展人类工作能力的有效工具,那么人类在认识和改造世界的过程中就不能没有机器人。工业机器人是机器人家族中的一个重要分支,是机器人领域的重要研究发展方向。因此,对工业机器人运动路径规划的研究,一直受到人们的普遍关注。 基于少时间、少能量和避障等的不同目标,许多研究学者对路径规划问题进行了探索。本文针对近年来在工业机器人路径规划的热点问题-机器人作业中避障的快速性与路径的性-进行了系统而深入的研究。前者由于机器人构型空间的复杂性与机器人作业的快速性要求,而使路径规划问题具有极大的挑战性;后者则因为机器人作业的性要求,所以从此角度对路径的性进行了探索与研究。

  1 系统构成及工作原理

  机器人作业路径规划系统是在Motoman UP6工业机器人系统上做二次开发的。 CCD摄像机采集到外部环境的图像信息,系统通过采集卡实现对图像的获取,获取图像后,通过图像的增强、滤波、边缘检测、细化等处理技术对图像信息进行分析处理和重建。系统对这些处理后得到的数据进行实时计算,计算出图像中作业对象的特征点的位置信息。对获取的特征点信息,系统有两种功能,一是通过Motocom32的库函数与机器人通信,实现对机器人的实时控制,完成指定作业;另一功能是快速生成机器人控制文件,并可对文件编辑修改,当把这些文件导入机器人控制柜后,则可控制机器人完成指定作业。

  2 系统软硬件组成

  整个系统由2个子系统组成,一个为工业机器人系统,另一个为机器视觉系统。2个子系统通过软件平台进行通信。具体构成如图1所示。

  2.1 工业机器人系统

  工业机器人系统包括有Motoman UP6工业机器人本体、YASNAC- XRC- UP6机器人控制柜、示教编程器和相关的外部设备以及与计算机进行数据通信的软件Motocom32。其中,机器人本体具有6个自由度,各个关节均为旋转关节,各自由度由交流伺服电机驱动,其重复定位可达0.08 mm。

  2.2  机器视觉系统

  机器视觉系统主要设备有M0814-MP镜头、CV-A11摄像机、PC2-Vision图像采集卡以及计算机等。

  (1)CV-A11摄像机及镜头

  选择的摄像机是丹麦AVI公司生产的CV-A11摄像机。摄像机线扫描频率为37.5 kHz,其CCD总像素为659 ×494,摄像机信噪比大于56 dB,工作电压为12V± 10%,外形尺寸为29mm×44mm×66mm,镜头接口为 C-mount接口。镜头为日本computar公司的M0814-MP镜头,镜头焦距为f=8 mm,焦点手动控制, 成像适合设计的要求。

  (2)图像采集卡

  图像采集卡选用加拿大CORECO公司生产的PC2-Vision图像采集卡。该图像采集卡自带8 MB存储器用于图像序列的存储,通过高速PCI总线可实现直接采集图像到VGA显存或主机系统的内存,兼容RGB、RS-170/CCIR等视频格式,可采集标准彩色复合视频和RGB分量,能够同时采集6个黑白摄像头、2个RGB摄像头或2个双通道模拟摄像头图像;支持外部事件出发输入,支持显示分辨率2 048×2 048,具有3个8位40 MHz A/D转换器

  3  系统的软件实现

  根据系统的功能要求,本文应用VC++6.0编制了系统实现的软件程序,程序设计采用模块化设计方式。系统在完成硬件检测、系统初始化等工作后实现机器人路径规划,整个系统可分为摄像机标定、图像获取与图像处理、机器人运行控制等功能模块。软件实现基本流程如图2所示。

  3.1  摄像机的标定

  在系统进行坐标提取前,必须对摄像机进行标定,以建立摄像机与实际空间点的对应关系。在基于机器视觉的机器人路径规划系统中,存在着3个坐标系:机器人坐标系、平台坐标系和图像坐标系。其中图像坐标系是以图像左上角为原点,以像素为单位的直角坐标系,x、y轴分别表示该像素在数字图像中的行数与列数。为了在视觉系统中建立统一的坐标,确定图像上某轮廓点与实际图形点的对应关系,就需要建立图像坐标系与机器人坐标系、平台坐标系与机器人坐标系两者之间坐标转换关系,终将平台坐标和图像坐标统一在机器人坐标系下。图像像素坐标系中的点到世界坐标系的变换可用矩阵表示为:

  3.2  图像采集

  计算机调用图像采集卡的动态链接库函数VnImgCon.dll中相应的控制函数,来控制图像采集卡对摄像机摄取的视频信号进行数据采集,以BMP格式存储在计算机内。通过调用采集卡自带库函数采集一帧图像到内存,然后回显到屏幕。在程序中调用了以下函数:

  GetSrc:得到指向被用作连接图像源对象的指针。

  IfxCreateCaptureModule:创建一个图像捕捉的对象。

  GetCam:使摄像机对象指针为指定端口。

  GetAttr:返回摄像机基本采集参数。

  IfxWriteImgFile:保存图像文件。

  3.3  图像处理

  系统摄像机所采集的图像为BMP格式的位图文件,为了在图像处理部分中能将注意力集中在图像处理的算法实现上,而不被DIB的显示与操作等底层处理所干扰,建立一个比较完整的DIB类库,主要实现三大功能:位图操作的基本函数,包括对像素点的操作、位图相关的信息和位图占据内存空间的信息。在进行图像处理编程时,只需在文档类的头文件中加入CDib类的定义,通过该类提供的公有型(public)接口函数调用,即可实现与之相关的功能。在此类库的基础上,对图像进行处理,包括图像的平滑和去除噪声等图像预处理,选定灰度阈值对图像进行二值化处理,对图像进行细化,计算图像中的特征量,实现空间定位。图像处理的函数主要有以下几个:

  图像二值化处理:

  WindowTrans(lpDIBBits,::DIBWidth(lpDIB),::DIBHeight(lpDIB) ,m_bLow)

  调用函数进行细化:

  ThiningDIB(lpDIBBitsWIDTHBYTES(::DIBWidth(lpDIB)*8), ::DIBHeight(lpDIB))

  求坐标:

  PointDIB(lpDIBBits, ::DIBWidth(lpDIB), ::DIBHeight(lpDIB), point,dian,mm);

  程序进一步对图像进行处理,得到图像的边缘特征,处理后的图像如图3所示,终求得图形位置坐标。

  3.4  机器人运行控制

  当系统获取机器人坐标点后,计算机根据坐标点信息,进行运算,产生相应的机器人运动控制指令,并通过Motocom32软件提供的库函数对机器人进行远程控制,实现对特征点的自动定位,控制机器人进行相应的操作,完成作业轨迹。机器人实时控制的流程图如图4所示。

  视觉机器人作业路径规划系统把CCD获取的作业路径图像信息转化为机器人运动的控制指令,使机器人完成作业任务。为验证这一“转化”,以机器人的连续切割作业为例,将其付诸实施。具体实施方案如下:以平板玻璃台面作为切割对象,以白板笔当作割枪,以机器人绘制曲线的过程来模拟实际切割作业过程。实验结果如图5所示。

  由图5可以看出,该方案重复高,误差较小,能够满足生产的需求,同时也提高了系统自动化程度,节省了人力物力。



  
上一篇:降低噪音,美化环境
下一篇:浅谈CDMA路由器(RC10)

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料