基于视觉的机器人采摘实验平台设计与实现

2020-01-13 07:48杜文龙徐雪峰
智能计算机与应用 2020年1期
关键词:数学公式运动学工件

杜文龙, 徐雪峰

(淮安信息职业技术学院, 江苏 淮安 223003)

0 引 言

机器人通常采用视觉伺服控制,自主地抓取和操纵各种感兴趣的物体[1-2]。现代视觉伺服控制方案可以分为基于图像的、基于位置的和先进的方法。这些视觉伺服方案往往需要推导一个机器人—目标交互矩阵之间的图像特征和机器人运动学。然而,推导相互作用矩阵并不是一个简单的问题,特别是对于一个未标定的视觉伺服系统。此外,交互矩阵与每个图像特征点相对于摄像机帧的深度值有关,这在单目视觉系统中很难测量。因此,许多先进的视觉伺服方案都需要使用一个估计过程来估计当前相机目标配置的每个视觉特征或交互矩阵的深度值。这一要求对视觉伺服控制系统的视觉和估计设计提出了更高的要求。本文提出了一种视觉伺服系统,将基于图像和位置的视觉伺服系统集成到一个可变结构框架中,无需使用交互矩阵、模糊建模或模糊规则库。

1 机器人采摘系统

1.1 采摘机器人概述

近年来,由于出生率下降和农民老龄化的影响,农业劳动力短缺问题日益严重。为解决这一问题,可利用采摘机器人,进行快速的农产品采摘并保持高品质。采摘机器人在水果识别、切割系统、移动系统等方面存在一定的困难。利用摄像机对水果进行图像处理,是一种新的水果识别方法[3-5]。为此,研究了农产品采摘机器人系统。本文针对采摘机器人应用常用的图像处理技术进行了开发和可行性研究,构建了采摘物及其位置的识别系统、切茎摄像定位系统和使用这些系统的采摘机器人。

1.2 采摘机器人结构分层

机器人采摘系统采用分核控制的方式,如图1所示,将独立的功能模块绑定到单独的CPU上,对于每个核可以单独设置最大的负荷、时基以及可能的周期时间;各独立模块间通过共享数据、系统文件及网络通讯等方式进行数据交互,实现功能的完全解耦。IV型控制器采用分核控制的方式,将独立的功能模块绑定到单独的CPU上,对于实时内核环境使用的每个核,可以单独设置最大的负荷、时基以及可能的周期时间;各独立模块间通过共享数据、系统文件、网络通讯等方式进行数据交互,实现功能的完全解耦。这里,对其中各分层的设计功能解析可阐释如下。

(1)RSP层:将原有独立的导航算法和手臂控制算法统一整理到通用算法库,并结合系统管理和总线功能,向上提供机器人系统所需的基本功能。

(2)通用平台层:在RSP层的基础上,调用不同的算法和总线协议接口,重新构建不同方向的机器人平台。

(3)信息数据交互层:负责跟手臂平台的示教盒、移动平台的PAD和车队管理系统进行数据通信。车队管理系统负责整个复合机器人的:车队编队、地图编辑和手臂任务触发。

图1 软件系统结构

整个机器人控制软件系统包括机器人控制器软件和上位机调度软件。研究可得各部分的设计阐述如下。

(1)操作系统:采用风河实时操作系统。

(2)基础函数库:为机器人系统提供基础功能函数。包括:

① 机器人服务平台,将机器人系统与操作系统隔离,并实现基本的总线协议栈和数据工具;

② 机器人算法库,实现机器人手臂、底盘相关算法功能。

(3)机器人基础系统:整个机器人系统由3个单独的进程构成。包括:

① 机械臂平台进程,用于控制复合机器人的机械臂,实现模型正反解、轨迹规划及位置插补等功能;

② 移动平台进程,用于控制复合机器人的底盘,实现底盘在二维激光传感器下的地图创建、实时定位、轨迹规划、运动控制及安全保护等,对于不同的移动底盘,可以开启不同的移动平台进程;

③ 协调进程,用于控制整个复合机器人系统,包括系统的上下电、手臂底盘的任务协调等。

2 机器人运动控制

对串联机器人逆运动学问题的研究已有几十年的历史。因其在机械手的控制中是必需的。求解逆运动学在计算上是可拓的,在机械手的实时控制中通常需要很长时间。图2为斯坦福机械手的关节轴和尺度分配﹐就既能帮助渡过运动不确定位置﹐又能增加最大启动牵引力。机械手执行的任务是在直角坐标系中进行的,而执行机构是在关节空间中进行的。笛卡尔空间包括方向矩阵和位置向量。然而,关节空间由关节角表示。将机械手末端执行器的位置和姿态由笛卡尔空间转换为关节空间,称为逆运动学问题。解析地推导逆运动学解有2种解法,即几何解法和代数解法。这里采用几何方法。

图2 机械手的关节轴和尺度分配

2.1 运动学正解

机器人正运动学是为了解决末端位置的求解问题,已知关节轴的转角,通过运动学正解即可求解末端姿态和位置。矩阵T为2个坐标系相互之间的对应关系,矩阵绕各个轴的相对关系如下:

(1)

根据机械构型,求得各连杆变换矩阵如下:

(2)

(3)

其中,di为连杆位置偏距。推导过程:c23与s23分别为θ2与θ3之和的c(θ2+θ3)余弦与s(θ2+θ3)正弦。即:

(4)

最后,得到6个连杆坐标变换矩阵的乘积:

(5)

其中,rii为旋转关系元素;pi为空间位置。

研究可得,位置末端的数学公式可写为如下形式:

(6)

研究可得,工具末端的数学公式可写为如下形式:

(7)

2.2 运动学反解

(8)

(9)

(10)

(1)解析第一轴。利用上面公式,计算求得第一关节的角度θ1。运算时用到如下数学公式:

0⟹sin(φ-θ1)=

(11)

(2)解析第三轴。计算求得第三关节的角度θ3。运算时需用到如下数学公式:

(12)

将上式分别平方后相加,得:

d2d3cos(θ23-θ2)+d2d4sin(θ23-θ2)=

[(c1px+s1py-d1)2+pz2-d22-d32-d42]/2

sin(φ+θ3)=[(c1px+s1py-d1)2+pz2-

d22-d32-d42]/(2ρ)=k;

(13)

(3)解析第二轴。计算求得第二、三关节的角度之和θ23,进而求得第二关节角度θ2。运算时需用到如下数学公式:

(14)

令式两边元素(1,4)和元素(2,4)相等得到:

(15)

θ23=atan2(s23,c23)⟹θ2=θ23-θ3.

分析可知,θ2有4个值。

(4)解析第四轴。计算求得第四关节的角度θ4。运算时需用到如下数学公式:

(16)

当关节5不处于零位,由元素(1,3)和元素(3,3)以求得关节4的值:

(17)

θ4=atan2(s1r13-c1r23,c1c23r13+s1c23r23+s23r33),

(18)

θ5=0时,操作臂处于奇异位形,此时关节轴4和关节轴6成一条直线,机器人末端连杆的运动只有一种,在这种情况下,所有结果都是θ4和θ6的和或差,这种情况可以通过检查θ4的反正切的2个变量是否趋近于零来判断。如果都趋近于零,则θ4可以任意选取,之后选取θ6时,可以参照θ4进行选取。

(5)解析第六轴。计算求得第六关节的角度θ6。可以求得关节6的值。运算时需用到如下数学公式:

(19)

θ6=atan2(c1s23r12+s1s23r22-c23r32,-c1s23r11-s1s23r21+c23r31),

(20)

(6)解析第五轴。计算求得第五关节的角度θ5。可以求得关节5的值。运算时需用到如下数学公式:

(21)

(22)

(23)

θ5=atan2(s5,c5),

(24)

由于操作臂腕关节“翻转“可以得到另外4个解,即:

(25)

综上研究汇总后,可得整体涉及的数学公式详见如下:

(26)

3 机器视觉伺服

3.1 视觉伺服系统

本次研究中,图像处理系统由两台彩色CCD摄像机、一块采集板和图像处理应用程序组成。图像处理系统配置的相机是RF系统的高成像质量CCD相机,规格为68万像素1/4英寸CCD, 450电视线分辨率。图像采集板为Leutron PicPort,图像处理应用为MVTec HALCON。将两台摄像机并联放置,用立体视觉法检测待采摘物的位置。相机的定位系统如图3所示,在该定位系统中,摄像机可以在水平方向、垂直方向和深度方向上跟随待采摘物进行定位。定位系统各尺寸均有滑轨、正时带和直流电机。所有电机均由DSP控制器控制。图像处理系统将位置信息提供给控制器。定位系统根据这些信息控制摄像机的位置。

图3 采摘机器人视觉机构框图

3.2 图像处理

本次研究是开发一种能够识别待采摘物的位置的采摘机器人,可以切下甜椒茎,作为农民将采摘物放入容器中。该拾取机器人所需的主要功能如图4所示。故而,这既是一种识别技术,也是一种采摘技术,一种移动技术。为了实现这些功能,采摘机器人具有平行立体视觉的图像处理系统、通过视觉反馈控制跟踪被识别甜椒的定位系统和切割装置。摘选机器人大约有1 000 mm宽,550 mm深,1 400 mm高。当车轮不动时,工作范围水平方向230 mm,垂直方向180 mm,深度方向180 mm。在此范围内,采摘装置固定在安装2个摄像头的机架上。启动后,可向前移动80 mm,并用修枝机将被识别的甜椒的茎部剪掉。

图4 图像处理系统

工件识别只解决了搬运哪个工件的问题,至于要搬的工件在哪,还需要对工件进行准确的定位。如本文开篇所述,工件定位包括工件的位置定位和工件的姿态定位,位置定位是依据中心定位实现的,姿态定位是通过确定工件长轴的朝向实现的。

在图像经平滑、二值化、多目标分块处理一系列过程后,各工件就被分割成独立的区域,利用图像的几何不变矩特征求取区域的质心,对于二值图像来说,该区域的质心也就是工件的中心。

图像的几何不变矩特征主要表现了图像区域的几何特征,又称为几何矩,由于其具有旋转、平移、尺度等特性的不变特征,所以又称其为不变矩。具体地对于区域大小为M×N的数字图像f(x,y),其(p+q)阶矩定义为:

(27)

其中,f(x,y)相当于一个像素的质量;Mpq为不同p、q值下的图像的矩。零阶矩M00是区域密度的总和,即:

(28)

一阶矩M10为图像对y轴的惯性矩;M01为图像对x轴的惯性矩。

(29)

在采摘机器人目标抓取时,计算的中心在图像中的坐标代入摄像机标定的关系矩阵,可得工件表面中心在机器人坐标系中的位置,即可获取抓取的位置中心。

4 系统实验

4.1 抓取实验的设置

本文采摘针对的是蔬菜采摘,不存在遮挡问题,同时要求机器人抓取和搬运速度快,时间复杂度小。结合上述分析,本文采用基于位置的视觉控制方式的单目Eye-to-Hand方案,即将单目摄像机固定在操作台上方,通过对工件图像处理进行工件识别,并确定工件相对于机器人坐标系的位置,从而生成控制信号,完成机器人对蔬菜采摘搬运操作。工件识别与定位是机器人采摘工件的前提和基础,其识别的结果正确与否和定位的精度直接影响到机器人操作结果的准确性。蔬菜采摘识别是依赖于机器视觉的图像匹配过程,是通过比较工件图像与模板图像来实现的。研究得到的抓取训练耗时的实验结果见表1。

表1 抓取训练耗时

4.2 机械臂控制实验

为了验证机器人抓紧过程准确率,共进行了200次的实验过程,结果见表2。

表2 采摘任务的结果

从测试结果看,视觉识别的准确率为94.5%,从结果看基本达到要求。

5 结束语

本文视觉伺服系统控制器利用基于图像的视觉伺服来抓取附近感兴趣的对象,对摄像机标定误差和图像噪声具有较强的鲁棒性。其次对采摘机器人进行了运动学正反关系的建模,同时进行了机器人抓手控制。再次,对采摘机器人的图像处理部分进行了详细的分析,提出了一种系统量化的不确定性,对期望的末端执行器速度的定位误差也做了研究测试。该控制器利用基于图像的视觉伺服来抓取附近感兴趣的对象,对摄像机标定误差和图像噪声具有较强的鲁棒性。这种基于反应的方法简化了视觉伺服系统的设计,提高了可靠性和适用性。最后将所提到的方法应用到智能采摘系统的实验中,证明了运动学和图像处理算法的有效性,验证了该视觉伺服控制方法在实际场景中对采摘物识别效率。

猜你喜欢
数学公式运动学工件
轿车前后悬架运动学仿真分析
带服务器的具有固定序列的平行专用机排序
带冲突约束两台平行专用机排序的一个改进算法
形神兼备,聚焦小学数学公式定律教学策略
基于MATLAB的工业机器人运动学分析与仿真
工业机器人视觉引导抓取工件的研究
两台等级平行机上部分处理时间已知的半在线调度∗
速度轮滑直道双蹬技术的运动学特征
基于支持向量机的数学公式识别
“必修1”专题复习与训练