谭晨佼,李轶林,王东飞,毛文菊,杨福增
(1.西北农林科技大学 机械与电子工程学院,陕西 杨凌 712100;2.农业农村部北方农业装备科学实验观测站,陕西 杨凌 712100;3.农业农村部苹果全程机械化科研基地,陕西 杨凌 712100)
随着科学技术的不断发展,我国农业正朝着以提高农业资源利用率、保护农业生态环境为核心的“精准农业”方向发展[1],而精准农业的发展也带动着农业机械向着自动化、智能化的方向发展。与此同时,随着我国人民生活水平的不断提高,人们对农产品的需求也在成倍地增长,但由于工业对于劳动力的吸引及人口老龄化等原因,农村劳动力正不断下降,不可避免地要求提高我国农业机械的智能化水平。智能化农业机械能够降低劳动强度、解放劳动力、提高生产效率、降低生产成本及增强操作舒适性,而农业机械的自动导航技术作为农业机械智能化技术中的一项关键技术,广泛应用于耕种[2-5]、除草[6-7]、施肥[8-9]、施药[10-12]、收获[13-14]等农业生产中。所谓自动导航,就是农业机械利用自身携带的传感器感知周围环境和车体的信息,通过对获取信息处理并进行导航决策和控制,从而完成相应的农业生产任务。
本文介绍了现代农业机械自动导航系统的典型结构,针对环境感知技术和导航控制策略的国内外研究现状进行了详细综述,分析了目前常用的环境感知技术的优缺点,并探讨了农业机械自动导航技术的未来发展趋势。
农业机械自动导航系统主要包括环境感知单元、控制单元和执行单元三部分,如图1所示。环境感知单元是利用传感器对农业机械进行实时定位及对周围障碍物进行检测;控制单元负责对导航路径进行跟踪,并输出相应的控制信号;执行单元根据控制信号控制车辆的转向,从而使车辆沿着导航路径行走。
图1 现代农业机械自动导航系统的典型结构
环境感知技术主要兼用传感器收集农业机械作业时周围的环境物体信息和车体状态信息,如位置、航向及速度等。
全球导航卫星系统简称GNSS(Global Navigation Satellite System),主要包括美国的GPS(Global Positioning System),俄罗斯的GLONASS,欧盟的GALILEO和中国的BDS(BeiDou Navigation Satellite System)。目前,农业机械导航系统中普遍使用具有厘米级定位精度的RTK-GPS(real-time kinematic GPS)[1]。O’Connor[15]最早将RTK-GPS运用到拖拉机自动导航上,其研发的导航系统直线跟踪误差小于2.5cm,航向精度小于1°。Ünal等[16]利用RTK-GPS设计了具有自动导航功能的残茬测量机器人,导航精度小于12cm。张智刚等[17]以久保田插秧机为研究平台,利用Trimble4700 RTK-DGPS和HMR3000电子罗盘设计开发了自动导航控制系统,在行进速度0.75m/s时,直线跟踪的平均跟踪误差为4cm,最大跟踪误差0.13m;在行进速度0.33m/s时,圆曲线跟踪的平均跟踪误差为4cm,最大跟踪误差8.7cm。黎永键等[18]基于RTK-DGPS设计了东方红X-804型拖拉机的自动导航系统,路径跟踪误差平均值小于1.9cm,标准差不超过4.1cm,角度跟踪误差平均值为0.43°。刘明阳[19]基于RTK-GPS和IMU设计了郁闭果园机器人,该机器人能够按照设定的目标路径实现郁闭果园内的自主行走。刘兆朋等[20]基于RTK-GNSS设计了雷沃ZP9500 高地隙喷雾机的自动导航作业系统,分别在水泥路面、旱地和水田进行了测试,该系统的直线路径跟踪横向位置偏差最大值分别为3.9、9.8、17.5cm,平均值分别为0.15、1.3、2.2cm,标准差分别为1.0、3.3、4.4cm。试验结果表明:该系统具有较好的控制精度,如图2所示。
图2 雷沃ZP9500喷雾机自动导航作业系统
目前,GNSS导航应用广泛且技术成熟,其中RTK-GPS的定位精度可达厘米级,在大田等开阔环境下具有广阔应用前景;但在设施农业和枝叶茂密的郁闭果园内,GNSS信号容易被遮挡,易造成定位结果的不准确。
机器视觉由于其获取的环境信息丰富、目标信息完整、经济性好,近年来在农业机械导航中应用广泛。Wang等[21]利用阈值分割和形态学算法提取作物行,从而生成导航线,实现了基于单目视觉的拖拉机自动导航。Hiremath等[22]提出了基于粒子滤波的视觉导航算法,并与现有的下采样、超格林滤波和阈值分割等算法进行了对比,证明该算法的鲁棒性较好,能够准确地指导机器人在玉米地行走。English等[23]提出了一种基于视觉纹理跟踪的方法,主要提取和跟踪占主导地位的平行纹理的方向和横向偏移量,从而抽象出特定作物的细节,如颜色、株距等,并在白天和夜晚进行了试验,试验结果表明:该方法能够自动引导机器人沿着作物行行走。Radcliffe等[24]利用多光谱摄像机采集果园图像,结合树冠与天空背景信息,提取出树行中心的路径。在桃园的实地试验结果表明:该导航系统的均方误差为2.13cm,如图3所示。
图3 Radcliffe研制的视觉导航平台
孟庆宽等[25]利用K-means聚类算法将绿色作物从土壤背景中分离出来,并通过形态学滤波去除杂草等干扰信息,最后利用粒子群算法快速准确地提取出导航路径。其研发的导航系统最大横向偏差小于15cm,能够满足农业机械自主导航作业的要求,算法抗干扰性强、复杂度低。翟志强等[26]提出一种基于Census变换的双目视觉作物行识别算法,运用主成分分析法拟合作物行中心线。试验表明:作物行中心线的正确识别率不小于92.58%,平均偏差角度不大于1.166°,图像处理时间平均值不大于0.293s。马志艳等[27]提出了一种基于视觉的茶作物行间行走路径规划方法,在垄间利用漫水填充法分离垄沟,然后利用最小二乘法提取导航线,对于垄头,先分离出转弯一侧的作物,采用圆形模型拟合垄头处轮廓,通过拟合的圆规划出转弯时路径,垄间算法处理平均耗时172ms,垄头算法处理平均耗时141ms,具有较好的实时性。
由于视觉传感器价格便宜且获取的环境信息丰富,基于机器视觉的自动导航方法目前研究较多。但是,在设施农业、果园等复杂的环境中,图像处理算法易受光照、阴影的影响,还需要针对这类环境进行算法优化,增强鲁棒性和实时性。
激光雷达利用光的反射对周围环境进行扫描,测距精度高,能够可靠地提供周围物体的方位和深度信息[28]。Hiremath等[29]提出了一种激光雷达的概率传感器模型,利用该传感器模型开发了一种基于粒子滤波的导航算法。试验结果表明:其航向均方误差为2.4°,横向偏差的均方误差为4cm,能够很好地适应玉米地的自动导航。Kurashiki等[30]利用激光测距仪和地图匹配,实现了自动驾驶车辆在果园中的自我定位。果园实地试验的结果表明:横向方向上的平均误差约为20cm,如图4所示。戚树腾等[31]利用激光雷达扫描果树树干得到果树的位置信息,然后用霍夫变换实现果树行直线的提取,并在模拟果园环境下进行了试验,结果表明:机器人在0.14m/s行驶40m后,最大横向偏差为26cm,能够适用于果园作业。周俊等[32]利用激光雷达实时检测果树树干中心点,并与先前记录的中心点进行匹配,利用匹配的结果校正根据里程计数据计算出的机器人位置和航向,实现在密植果园内的准确定位。10次重复实验表明:x和y方向上定位误差的标准差都约为8cm,精度能够满足密植果园作业机器人的需求,如图5所示。
图4 Kurashiki研制的导航平台
由于需要固定反射光线的目标,激光雷达在玉米地、果园这类容易反射激光的环境下应用广泛。目前,常通过激光雷达扫描植株、树干位置信息作为导航信息,实现农业机械的自动导航。不足之处:二维激光雷达视角小,对较小物体检测效果不佳,且对作物行、树行的对称性也有较高要求;三维激光雷达成本较高,且数据量大,对处理算法提出了较高要求。
图5 密植果园作业机器人
惯性测量单元是利用陀螺仪和加速度计检测物体姿态角和加速度的装置,能够不依赖外界环境进行导航。由于低成本的惯性测量单元的误差易随时间的增加而累加,因此一般不单独使用而是融合其他传感器使用。Takai等[33]利用RTK-GPS和IMU(Inertial Measurement Unit)开发了自动导航履带式机器人,并设计了地头转向的“钥匙孔”算法,试验表明:该机器人的横向跟踪误差小于5cm。Yang等[34]利用RTK-GPS和IMU开发了能够自动导航的轮式拖拉机以降低劳动成本,并在耕地、喷药和除草等田间作业中试验,结果表明:均方误差均小于5cm,满足劳动生产的需要,如图6所示。张京等[35]提出了一种以GNSS信号品质和航向角变化幅度信息为指导的INS/GNSS航向信息融合策略,并通过仿真和实际应用测试了航向信息的融合效果。试验结果表明:较单独使用INS或GNSS,其融合后的航向明显提升了精度。赵书尚等[36]选用RTK-GPS和IMU组合导航的方式,重点对GPS因地形倾斜和土质硬度不均匀引起的误差进行校正,构建了卡尔曼滤波器,校正了因GPS倾斜带来的定位误差,减少了拖拉机运动轨迹的波动。
惯性测量单元不依赖外界环境工作,能够在短时间内提供较为精确的位置信息和航向信息,但长时间的导航会产生位置误差积累,在实际使用中,常与其他传感器互相融合来修正惯性导航的误差积累,从而实现在各种环境下的精确导航。
图6 轮式拖拉机自动导航系统
超声波传感器是利用超声波回波测距原理对周围环境进行感知,具有结构简单、不受光线影响、成本低等特点,但其定位精度较低。王盟[37]利用三球定位技术,设计了基于DSP(Digital Signal Processing)和超声波传感器的全局定位系统,并利用模糊推理方法,实现了机器人的避障和路径规划功能。机械传感器具有机构简单、可靠性高和成本低的优点。陈刚等[38]研制了一种用于玉米自动对行作业的机械接触式导航控制系统,试验结果表明:在转向轮偏转角度为0.115rad、转向轮转动速度为0.357rad/s、作业速度为4km/h时,自动对行作业稳定性最好。
结合相关文献[39-41],对比了4种常用农业机械环境感知传感器的性能,如表1所示。
表1 4种常用农业机械环境感知传感器性能对比
各个传感器均有各自的优缺点,因此适用的场合也不同,GNSS、IMU在不良天气和照度的环境下表现更加优秀,机器视觉和激光雷达获取的环境信息更加丰富,GNSS和激光雷达的定位精度优秀,机器视觉和IMU则在成本方面更具优势。
PID是比例、积分、微分的简称,适用于线性且动态特性不随时间变化的系统[42]。典型的PID控制系统结构如图7所示。
图7 PID控制结构图
PID控制算法不依赖数学模型,鲁棒性较强,稳态误差小,在农业机械导航控制方面应用广泛。合适的比例系数、积分系数、微分系数决定着系统的精度,但这3个参数的调整常依赖工程经验,因此优化PID控制有一定难度。
模糊控制是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的控制方式,不需要对被控对象建立完整的数学模型,特别适用于非线性、时变、模型不完全的系统[49]。典型的模糊控制结构如图8所示。
图8 模糊控制结构图
目前,采用模糊控制的农业机械导航中常以当前位置与目标路径之间的横向偏差、航向偏差作为模糊控制器的输入,以轮速差或期望转向角为输出。模糊控制规则的设计一般依靠专家的经验和知识,能快速调节系统误差并保持较好的稳定性,但在零位附近跟踪误差一般较大,难以快速修正。
神经网络控制是指在控制系统中利用神经网络对非线性对象进行建模,克服受控对象的不确定性、迟滞等动态影响,从而实现精确控制[55]。Jodas等[56]开发了一种通过人工林特征来控制移动机器人的导航系统,比较了支持向量机和人工神经网络,并找出最合适路线的效果。试验结果表明:支持向量机和人工神经网络的准确率分别为93%和90%。Eski等[57]采用PID控制器和基于模型的神经网络PID控制系统分别对无人农用车辆进行了控制为了测试所开发的控制结构的性能,使用了3种不同的输入信号,结果表明:当两种控制结构的结果都以瞬态响应(如上升时间、沉降时间、峰值时间、峰值、沉降时间)和稳态响应的方式进行检验时,所设计的控制系统均取得了良好的效果。陈军等[58]以当前车辆与目标路径的距离、横摆角、转向角和转向角变化量为输入,下一个采样点与目标路径的距离、横摆角和转向角为输出,构建了4-4-4-3的BP神经网络算法。试验结果表明:车辆沿直线路径行驶时,95%的变差绝对值小于5cm。唐晶磊等[59]根据预视导航参数、当前导航参数和反馈导航参数,训练了BP神经网络。试验结果表明:农业机器人实际行走路线与理想路线横坐标的最大反馈位置偏差为-6.9cm,最大预视位置偏差为-4.3cm,最大反馈角度偏差为-3.5°,最大预视角度偏差为-2°,能够获取精度较高的导航参数。袁铸等[60]为了优化农业机器人的轨迹精度,在控制算法中引入了BP神经网络与计算力矩法结合的自动控制器,通过BP神经网络对不确定动力学因素进行判断,并提出解决该因素的自适应学习法。仿真结果表明:该优化算法能有效优化机器人运动路径,提高了机器人整体作业效率。
神经网络控制不需要精确的数学模型,有很强的非线性拟合能力,易于计算机实现。在农业机械导航控制中,常利用偏差作为输入,期望转向角作为输出来训练神经网络,或利用神经网络学习优化PID控制中的比例、积分、微分系数,来改善PID控制的精度。其缺点是训练神经网络需要大量的样本,且神经网络的输出具有不确定性。
基于模型的控制主要是利用农机运动学和动力学模型,实现对农机的路径跟踪控制。Backman等[61]利用GPS、IMU和2D激光雷达设计了一种拖拉机-拖车导航系统,使用了非线性模型控制拖车的路径跟踪。试验结果表明:横向偏差小于10cm,且在弯曲路径的行驶速度能达到12km/h。Bao等[62]建立了车辆的动力学模型,利用拓展卡尔曼滤波实现了对车辆的状态估计。白晓平等[63]针对运动学模型中的近似条件对模型控制方法曲线路径跟踪精度的影响,提出了一种农机导航自校正模型控制方法,采用模型控制方法设计控制律,并采用模糊控制方法自适应地在线调节模型控制律的控制量。试验结果表明:当速度为1.0m/s时,直线跟踪最大横向偏差小于6.49cm,曲线路径跟踪的最大横向偏差小于18.57cm。张闻宇等[64]为了解决油菜直播机组导航作业中田头换行、转弯等直线跟踪之间的衔接控制问题,提出了一种双切圆寻线模型的控制方法,并对初始偏差较大时拖拉机的寻线路径进行了定量分析,获得最优寻线路径的几何关系,构建了控制决策方法,同时计算得到前轮转角以实现导航控制。田间和路面的试验结果表明:当行驶速度为0.7m/s、拖拉机与目标直线初始横向偏差为7m、初始航向偏角为90°时,控制器横向偏差响应的超调量不超过3%,上升时间小于14s,调节时间小于19s。
运动学模型的控制常将农业机械抽象成二轮车模型,根据位置、航向从而确定农业机械的转向角度,实现轨迹的跟踪控制。由于运动学模型鲁棒性较差,控制精度难以取得较好的效果。动力学模型由于体现了农机内在力与运动之间的关系,因此基于动力学模型的控制精度更高,但动力学模型的精确构建较为复杂。
农业机械自动导航系统主要包括环境感知、控制决策和转向执行3部分:环境感知负责实时定位和对周围障碍物的检测,控制决策负责对导航路径进行跟踪,转向执行负责执行控制决策单元的控制指令。
GNSS导航使用广泛,精度高,能够全天候工作;但其信号容易受到干扰。机器视觉采集的信息丰富;但其易受光照、阴影等自然环境的干扰。激光雷达测距精确,探测距离远;但视角相对较小,且成本较高。惯性测量单元能够不依赖外界环境,在短时间内提供较为精确的位置信息;但长时间的导航会产生误差积累,位置精度大大降低。
PID控制算法不依赖数学模型,鲁棒性较强,应用广泛;但比例、积分、微分的系数常依赖工程经验,优化PID控制算法具有一定难度。模糊控制能快速调节系统误差并保持较好的稳定性;但在零位附近跟踪误差一般较大,难以快速修正。神经网络控制不需要精确的数学模型,有很强的非线性拟合能力,易于计算机实现;缺点是训练神经网络需要大量的样本,且神经网络输出具有不确定性。运动学模型的控制常将农业机械抽象成二轮车模型,由于运动学模型鲁棒性较差,控制精度难以取得较好的效果;动力学模型由于体现了农机内在力与运动之间的关系,因此基于动力学模型的控制精度更高,但动力学模型的精确构建较为复杂。
随着自动导航技术的不断发展,研究基于深度学习的障碍物检测技术与智能避障策略,进一步提高农业机械的自动化水平,以实现农业机械的智能化。由于不同传感器均存在各自的优缺点,农业环境也存在着时变性、多样性和复杂性,因此针对不同的农业环境,研究不同传感器融合的环境感知系统,从而提高系统的稳定性和可靠性。例如,在设施农业、郁闭果园这类卫星信号易受影响的环境中,可结合机器视觉、激光雷达等传感器实现精确导航。研究基于农业物联网技术的导航作业远程监控平台,实现农业机械作业的可视化、远程管理和任务调度;此外,可研究同构或异构农机联合导航作业及集群控制策略,从而提高农业机械的作业效率,实现农业机械的大规模应用。