张 杨,何新君
(1.上海城建职业学院 机电工程与信息学院,上海 201415;2.上海发那科机器人有限公司 上海发那科技术学院,上海 201906)
工业机器人的机器视觉就能够为工作过程中的机器人获取并提供图像,便于分析生产流水线与环境,提高其自主性和稳定性,因此工业机器人的视觉跟踪控制系统成为了近些年的主要研究内容。
国内有学者作出一定的研究成果。如文献[1]中,为了解决焊接机器人在工作过程中受到弧光干扰的问题,引入了与焊缝相关的核滤波跟踪算法,在焊缝跟踪的过程中保证跟踪效果实时、精确、可靠。在设计过程中采用大量正负样本进行训练,完成高斯核函数空间的映射后进行计算,构建样本循环矩阵,通过傅里叶变换简化计算,并在系统中嵌入算法,提高焊接过程中的跟踪和纠偏的实时性。文献[2]中首先训练深度卷积神经网络,然后去计算视频图像中的每个传输图像,得到图像深度信息以及相关估计,完成机器人在工作区域中目标区域的识别,还能够对目标的运动跟踪方向完成标记。文献[3]中利用颜色特征确定圆形光点,在利用双目视觉获取靶点特征图像,并代入OpenCV技术函数库中,光流法进行函数匹配后,二值化阈值处理并分割背景与目标,实现了目标的视觉跟踪定位。以上用于工业机器人的视觉跟踪控制的系统都在实际应用中取得了良好的效果,但是这些跟踪控制系统在输入控制信号后存在滞后响应,由此导致的时间延迟会造成机器人在实际应用中抓取精度较低,因此本文设计一种基于时延补偿机理的工业机器人视觉跟踪控制系统。
对于工业机器人视觉跟踪控制系统来说,系统中所带有的摄像机视觉系统是重要的信息获取工具。通过摄像机采集到目标物体的运动信息,对于工业机器人的识别、抓取是重要的依据。因此在系统的硬件设计中对于摄像机的参数进行标定,能够给系统提供更可靠的目标信息,对于提高机器人的抓取成功率也有一定帮助[3]。本文的系统在硬件设计中,需要通过一系列的计算对摄像机的外部参数进行标定。标定的依据主要是依靠摄像机、工业机器人各自所在的坐标系之间存在的关系进行研究和确定,两坐标系之间的关系如下图所示。
在两个坐标系相互转换的过程中,涉及摄像机的内部参数,在忽略由于环境导致的摄像机畸变问题时,参数可以表示为:
上式中,M表示内部参数,u0、v0是图像中的中心坐标,ax是u方向上的尺度因子,ay是v方向上的尺度因子。在两坐标的转换过程中,经过旋转矩阵的计算,将两个坐标系的标记结果归一化[4],对于摄像机参数的标定有指导意义。至此完成系统中的硬件设计。
2.2.1 工业机器人运动建模
根据工业机器人的结构和参数,在连杆变化及其运动方程的基础上,构建机器人的参考坐标系及各关节的坐标系,而其自身具有的独立坐标轴运动的数量决定了机器人的运动自由度,通常工业机器人采用六个自由度,对精度、速度、稳定性等要求很高。工业机器人的转动关节和连杆在工作过程中,会涉及相对坐标的变换,例如平移、旋转、齐次变换等[5]。对于平移和旋转变换来说,是坐标的整体变换,在此不一一叙述。针对齐次变换来说,假设一组关节点p,且该点存在的直角坐标系中的位置描述写作下式:
在经过齐次变换后,得到的该关节在齐次坐标系中的坐标描述为:
上式中,a,b,c分别表示坐标系中三条坐标轴上的相应矢量,Trans表示的是坐标系之间的平移齐次变换。对于建立的工业机器人运动模型来说,需要表示出机械臂中运动连杆部分的运动机理以及内在联系,对于机械臂在运动过程中活动的连杆,其坐标系之间的变换可以视为齐次坐标变换[6],此时可以通过得到的齐次坐标变换矩阵进行描述。由此,通过一个4×4 的齐次变换矩阵描述了相邻的两个连杆之间的关系。
假设齐次坐标变换矩阵A1对工业机器人的第一个连杆进行描述,A2对工业机器人的第二个连杆进行描述,那么第二个连杆在基坐标系中的位姿就可以表示为:
同理,可以推出工业机器人若干个连杆位姿的表示公式,即工业机器人的正运动学公式为:
式中,ALi表示第i个连杆模块的输出坐标系相对输入坐标系的变换矩阵表示第i个关节模块的输出坐标系相对输入坐标系的旋转变换矩阵;表示第i个关节模块的输出坐标系相对输入坐标系的初始旋转变换矩阵;φi表示第i个关节在自身坐标系中的运动旋量;qi表示第i个关节模块输出坐标系相对输入坐标系的旋转角度。公式(6)主要描述了连杆和关节之间相对于极坐标系的位姿计算,根据各连杆模块和关节模块的矩阵连乘即可得到运动学正解的指数积公式。
2.2.2 引入时延补偿算法
通过上述构建了工业机器人的运动学模型,可通过双目视觉系统控制运动点的位移、速度和加速度,规划机器人的运动轨迹,实现工业机器人的作业控制。但在工业机器人视觉跟踪控制系统中,存在通信过程,不可避免会出现时延问题。网络时延是影响工业机器人在抓放作业、弧焊和曲面加工作业等方面成功率的主要影响因素。因此,本文提出引入时延补偿算法,补偿工业机器人关节控制时间,使关节在运动起点到终点的过程能够平滑过渡[7]。
在当前时刻k之前,工业机器人的关节控制共发生了n次网络时延,其中最大值和最小值为tmax和tmin,平均时延为,△t表示当前时刻时延tk与平均时延的差值,该差值的最大值和最小值分别为△tmax和△tmin。由此可以推算将区间均匀划分为l个子区间,将区间[△tmin,△tmax]均匀划分为m个子区间,经过模糊控制的工业机器人关节控制补偿输出为:
式中,A,B,C表示一定维数的常数矩阵,xk表示当前时刻关节状态变量,uk表示当前时刻关节控制输入变量,ri表示第i条模糊规则,i=1,2,…,lm。
该补偿算法对于工业机器人这种非线性时变的系统来说,更加适用。
2.2.3 视觉跟踪控制
在对工业机器人进行模糊时延补偿后,能够以较优越的实时性进行工业机器人控制信号传输,在接受控制信号后,需要对信号进行处理,实现机器人视觉跟踪的控制输出。
在工业机器人的模糊时延补偿中,模糊控制的结构主要是双输入单输出。对于输入变量来说,一个是参考信号,另一个是输出信号的变差变化情况。本文设计的工业机器人模糊控制示意图如图2所示。
对于偏差以及偏差的变量来说,可以利用其语言值的模糊子集进行表示[8],其子集为{NB,NM,Z,PM,PB},得到的工业机器人模糊判断的规则矩阵为:
在工业机器人视觉跟踪模糊控制中,为了简化过程,对于模糊控制器来说,得到模糊输出量,经过解模糊转化为清晰量,实现机器人视觉跟踪的控制输出。其中,输入端和输出端的增益量j设置为3 个,在系统的跟踪控制过程中,可以对这3 个增益量进行调节来控制隶属度函数,得到机器人视觉跟踪控制输出如下:
式中,wj表示各模糊子集组成元素的权重,w'表示模糊输出量。
为了验证本文设计的基于时延补偿机理的工业机器人视觉跟踪控制系统在实际应用过程中具有较好的性能,需要搭建合适的系统仿真测试环境,进行抓取试验验证。设计的机器人视觉跟踪控制系统的测试环境主要分为控制部分与交互部分。对于上位交互系统来说,系统架构中主要包括用户层、应用层和数据库,并通过不同的实现方式对不同的机器人作业请求进行处理,搭建的系统测试中上位交互结构如下图所示。
在性能测试实验中,主要是对机器人的视觉跟踪控制性能进行测试,跟踪控制性能可以依靠识别和抓取两部分进行评价。在识别过程中,主要是发现、识别、测距,设计的识别与定位的物体详细信息如表1所示:
表1 识别与定位目标信息描述
计算出Hu不变矩和相应的长轴,完成对运动物体的形状识别和姿态跟踪。
在以上的环境和数据参数下,首先进行数据预处理,利用帧间差分法检测运动物体。在整体的检测过程中,在识别、测量过程中对不同角度的图像进行处理。在抓取过程中,当目标运动物体移动出视觉范围,跟踪控制系统开始进行抓取,机器人在完成运动物体的测量之后,将得到的运行速度视为初始速度,并沿着相同方向运动,实时获取目标物体的质心位置与期望位置进行对比,控制工业机器人作出相应的动作,当到达期望图像的质心位置后进行抓取。为验证本文系统的性能,在相同实验环境下,选择无时延补偿的系统进行对比,将结果进行统计和分析。
在上述的实验环境下,对两种系统的抓取误差进行统计,随机选取相同时间下的两系统在不同方向上的抓取误差对比图,结果如图4所示。
图4中,图(a)为x方向上的实时误差,图(b)为y方向上的实时误差,为了保证实验的可靠性,两系统对不同的定位目标分别进行了1 000次抓取试验,得到的抓取成功次数结果如表2所示。
从表2的性能测试结果可知,本文提出的基于时延补偿机理的工业机器人视觉跟踪控制系统中,由于考虑到了时延补偿,因此在抓取过程中的成功率比较稳定,基本能够维持在910 次以上,但是无时延补偿的控制系统中,抓取成功的次数与本文系统相比较少,且性能不稳定。综上所述,本文设计的基于时延补偿机理的工业机器人视觉跟踪控制系统在提高抓取成功率方面具有一定有效性。
表2 抓取成功次数统计结果
为了解决工业机器人在实际工作过程中的延迟问题,提出了应用于工业机器人视觉跟踪控制系统的时延模糊补偿方法,并对时延补偿机理的工业机器人视觉跟踪控制系统进行了硬件和软件两方面的设计。硬件设计中主要通过摄像机与机械臂之间的坐标系关系标定摄像机的外部参数,软件设计中,对工业机器人的运动情况进行建模,机器人机械臂在运动过程中产生坐标系变换,利用齐次坐标变换矩阵描述机械臂连杆运动位姿,引入模糊时延补偿算法来提高控制精度。本文设计的系统取得了一定的研究进展,但是还有很多细节需要进行研究与探讨。