苑 葵,李素静
(唐山科技职业技术学院,河北 唐山 063001)
我国是农业大国,各类农业果实采摘工作繁重,尤其在农忙季节采摘成为最耗时耗力的环节[1-2]。目前,我国的农业机械化水平较低,果实采摘采用的方式仍然以人工为主,劳动强度大,采摘效率较低,且容易造成果实的损坏。因此,提高我国工业果实采摘的机械化和智能化水平,对于提高采摘效率、降低农民劳动强度及促进农业的发展具有非常重要的意义[3-4]。
采摘机器人主要包括机械手、中央控制系统及行走机构等部分。其中,机械手作为采摘机器人的工序执行机构,为了能够适用于不同种类的果实,其结构非常复杂、造价较高。采摘机器人的作业环境具有复杂性、随机性和多约束性的特点,其作业过程包括机器人从起点行进至目标果实区域,直至顺利采摘的过程。机械手很容易与环境中的树干、台阶等发生碰撞造成损坏,因此需要对采摘机器人进行路径避障的研究,以起到保护机械手、提高机械手智能性及提高工作效率的作用。
传统的采摘机器人操控系统采用单片机或者嵌入式控制器进行控制。单片机对于操控人员的专业素养要求较高,而采摘机器人一般由农民进行操作,文化水平相对较低,因此不适用。嵌入式控制器操控的机械手运动轨迹规划存在震动和漂移的现象,而且操控过程耗时较多。PLC控制系统具有工作稳定、可以自动获取数据及工作效率高的特点,为了提高采集机器人的工作稳定性和采摘精度,笔者将PLC应用于采摘机器人的作业路径避障分析系统,并对该系统进行了设计。
采摘机器人的控制系统主要由信息获取系统、工控机主程序、运动执行系统等组成,如图1所示。
信息获取系统用于获取果实采摘所需要的位置和图像等信息。其中,图像采集卡与导航摄像机、左右摄像机和二次定位摄像机连接,用于获取待采摘果实的远近位置和到达该位置的路面信息,并通过计算得到该果实的坐标。假设待采摘果实为球形,根据摄像机上多个位置点的三维信息重建果实模型,利用最小二乘法[5]计算其之心的位置坐标。果实球模型可表示为
(x-m)2+(y-n)2+(z-p)2=R2
其中,(m、n、p)为果实球心在摄像机坐标系的位置坐标。
上式还可表示为
2mx+2ny+2pz+R2-(m2+n2+p2)
=x2+y2+z2
针对有n个待采摘果实,该式可以用矩阵进行描述,即
简化该式得到
At=B
求解得到
t=(ATA)-1ATB
由此可得到待采摘果实的质心坐标。
数据采集卡与机器人机械手的视觉传感器、压力传感器、位置传感器和碰撞传感器连接,各传感器的位置布置图如图2所示。
图2 各传感器位置布置图
位置传感器用于检测果实与机械手的实时相对位置,保证果实能够准确夹持。在视觉传感器的引导下,机械手逐渐伸向果实,当碰触到果实时,机械臂速度减慢;当抓取到果实时,机械臂停止运动,此时压力传感器用于测量机械手抓取果实所受到的压力,防止果实在抓取和后续移动过程中被损坏。碰撞传感器用于感知机械手周围的障碍物信息,防止机械手抓取到果实后的移动过程中触碰到树干等障碍物,造成果实的磕碰伤。
工控机主程序是采摘机器人控制系统的核心模块,用于控制机械人行驶路径、果实抓取、采摘和运输过程。图像采集卡将果实的位置信息传递给PLC控制器,导航控制程序规划机器人的形式路径,驱动机器人到达果实区域。数据采集卡将采集到信息数据传输给PLC,采摘控制程序负责执行采摘过程,电源向PLC控制器提供能量,采摘情况通过提示灯查看。为方便工作人员对机器人的控制,还设置了按键。
运动执行系统的采摘控制程序通过控制机械臂的各电机实现果实的抓取和运输,导航控制程序负责规划最佳路径,车轮电机驱动器控制车轮,使机器人行驶至待采摘果实区域。
路径规划问题是采摘机器人的研究重点,采摘时选择一条最优路径可以有效提高果实的采摘效率,降低失误率。由于果实采摘环境的不确定性,避障路径规划则显得更为重要。蚁群算法具有很好的鲁棒性,易与其他算法相结合,因此作为路径规划的首选算法。但是,该算法在每个节点的路径选择方面最优路径的规划的选择较少,因此在基本蚁群算法的基础上改进规划采摘机器人的避障路径。该算法的基本流程如图3所示。
图3 改进的蚁群算法流程图
1)节点位置的选择。利用Dijkstra算法规划一条从起始点A到待采摘果实点B的初始路径,该路径的中间节点分别为d1、d2、d3、…、dn。通过调整各节点位置,得到最优避障路径。
由于采摘机器人的机械手活动空间为凸多边形,因此初始路径上的各节点可以在AB路径各节点链接线任意滑动而不会触碰到障碍物,并可以通过初始路径上的节点di-1和di+1的位置坐标计算di节点的位置。di节点所在链接线的方程为
则di可在链接线上选择的最大点di4和di3坐标可通过下式求出,即
此时,di节点的坐标表示为
2)启发信息的选择。启发信息一般可以看作是机器人从一个节点运动到下一个节点的期望值[6-7],蚁群算法无法快速更新启发信息。为使采摘机器人能够快速到达各节点位置,提高采摘效率,对启发信息选择的算法进行了改进。
启发信息的选择主要由以下两个因素决定:一是节点在空间中受到的势力场的大小;二是机器人移动路线与起始点和目标点连线的夹角。在第1个因素中,机器人受到的目标节点的毅力和障碍物斥力的合力F共同决定了机器人运动方向,其受力图如图4所示。
图4 采摘机器人受力分析
此时,目标节点的启发信息为
其中,D(di,T)为当前节点和目标位置的距离,θ为两节点连线与起始点和目标点连线的夹角。
结合两个因素,可以得到启发信息为
3)信息素更新。在蚁群算法初始化时,路径的信息素自动初始化为τ0。每当路径查询进行1次,则路径上的信息素自动清理,并乘以1个常量。信息素蒸发是为了防止某个路径上的信息素过多,对后续最优路径的寻找造成干扰[8]。为了加快最优路径寻找效率,采用局部更新和全局更新的方法对信息素进行更新。
局部更新是指每进行1次路径查询,则信息素自动更新1次。此时,更新的信息素τ(t+1)为
τ(t+1)=(1-ε)τ(t)+ετ0
其中,ε为可调参数,且0<ε<1;t为更新次数。当遍历所有目标点后,选取最短路径,更新该路径的信息素,这就是全局更新。为提高全局性,引入了启发因子ρ对信息素进行自适应调节。启发因子的表达式为
ρ(t)=0.95ρ(t-1)≥ρmin
当为其他情况时,ρ(t)取ρmin。通过此方法,保证了全局搜索的能力。
为验证该采摘机器人的性能,在温室进行采摘试验。由于系统在设计时假设果实为球形,因此选择接近球形的苹果作为采摘对象。试验每次挑选30个苹果,为保证试验结果的准确性,共进行5次。试验环境为:苹果零散地分布在温室,高度均处在1~1.4m范围内。试验过程中,实时记录采摘状况。采摘路径避障试验结果如表1所示。
表1 苹果采摘路径避障试验结果
由表1可知:采摘机器人能够快速地完成对苹果的定位,平均每个苹果的定位时间均小于10s,定位成功率达到了90%以上,实现了路径避障。定位成功后,机械手可以完成苹果的采摘,成功率达到了100%。在定位和采摘过程中,采摘机器人各模块均运行正常。
1)本文主要针对采摘机器人的作业路径避障系统进行设计,系统主要组成为信息获取系统、工控机主程序、运动执行系统等部件。
2)该采摘机器人的作业路径避障系统采用蚁群算法进行计算,并通过对节点位置选择、启发信息和信息素更新的算法进行改进,可以有效提高最优路径的规划效率。
3)对该系统进行采摘试验,结果表明:该采摘机器人实现了采摘前的路径避障的目的,并且工作性能稳定,能够满足农户对于采摘机器人的使用要求。