-
开放科学(资源服务)标识码(OSID):
-
田间杂草作为农业生态系统的一部分,必然会对农作物生长产生一定程度的不利影响,如与农作物争夺养分、空间、阳光等。联合国粮食及农业组织(FAO)的相关研究表明,全球粮食作物在成熟收获前通常会因杂草减产约10%,每年粮食损失达2.9亿t[1-2],而每年杂草对我国粮食作物造成的直接经济损失将近千亿元,对主粮作物造成的产量损失也达300万t[3]。
在我国,人工除草和化学除草是2种主要的除草方式,人工除草费时费力,化学除草虽然应用广、效率高[4-6],但会喷洒药剂污染环境[7]。近年来我国农业机械化水平的不断提高,加速了传统除草方式被机械除草所取代的进程。机械除草能够有效地减轻人工劳动强度,提高作业效率,但由于农田地块不平整、驾驶员操作不当等因素会导致机械除草机在作业过程中对行不准。作物行之间的距离通常较小,如果机械除草机无法准确地沿着作物行前进,容易误伤作物,影响产量。国外在农机具精准对行作业方面的研究具有较早的起点和较为成熟的技术积累,其中基于视觉伺服控制技术设计的电驱除草系统等,在近年来也取得了重要进展[8-11]。
英国的Tillett等[12]开发了一种配备计算机视觉导向系统的行间除草装置,利用机器视觉识别作物行并计算横向偏移量,再通过侧移机构及时纠偏。丹麦的Griepentrog等[13]开发了一个基于RTK-GPS导航的自动行内机械除草系统,使用RTK-GPS进行高精度导航,并利用摆线锄控制系统、卡尔曼滤波器等实现锄头实时定位和控制,该系统在不同前进速度下均能有效避免与作物碰撞。国内相关研究起步较晚,张俊雄等[14]设计了一种主动式横移对行装置,利用机器视觉和伺服液压控制等技术实现对行纠偏,试验结果显示对行准确率最高可达95.7%,但随着拖拉机速度提高,对行准确率降幅较大。张振国等[15]设计了小麦免耕播种机双导轨滑移式调偏系统,通过北斗导航系统得到拖拉机和机具实时位置信息,再将得到的横向偏差量发送给控制系统进行处理,让双导轨调偏装置进行调偏,试验结果表明当田间秸秆覆盖量不超过1.5 kg/m2且作业速度不超过1.4 m/s时,免耕播种机的避茬率可达90%以上。
针对当前对行纠偏系统由于拖拉机速度提高导致对行准确率大幅下降的问题,本研究设计了一种由作物行识别与偏移量计算子系统、机械纠偏装置和控制执行子系统组成的行株间机械除草机横向纠偏系统。对该系统的机械纠偏装置进行建模仿真,为关键结构参数设计提供理论依据;作物行识别与偏移量计算子系统基于改进的YOLOv5深度学习模型对作物行进行识别并拟合出作物行线,计算出偏移量发送给控制执行子系统;控制执行子系统通过PID算法控制液压缸伸缩实现机械纠偏装置的横移对行,补偿机械除草机的横向偏移量。
全文HTML
-
作物行识别与偏移量计算子系统的硬件主要包括Intel RealSense D435深度相机、Jetson NX嵌入式计算设备等。作为作物行识别与偏移量计算子系统的核心部分,Jetson NX为深度学习算法部署以及与控制执行子系统进行信息传输提供了硬件平台。在Jetson NX中部署改进的YOLOv5深度学习算法,对D435深度相机实时拍摄传输的图像进行处理,以提取作物行线,并为作业机具与作物行偏移量计算提供依据。
-
本研究采用经过课题组改进的YOLOv5深度学习模型[16]对作物植株进行识别,玉米苗图像采集地点为镇江市丹徒区世业镇卫星村农谷农业科技园。用大疆无人机在玉米田间共采集400张图像,采集过程如图 1所示。为便于标注和训练,将图像全部9等分,得到3 600张新图像。对新图像按照7∶2∶1的比例来划分,其中训练集为2 520张,验证集为720张,测试集为360张。通过Labellmg标记工具对采集到的田间玉米苗图像进行人工标注,标记玉米苗为识别目标,标注图像如图 2所示。将改进的YOLOv5算法在该测试集上进行模型训练,训练迭代次数设为6 000次。改进的YOLOv5算法在采集的玉米苗测试集上的mAP为90.8%,在田间玉米苗的识别和定位方面表现出较高的精确度。
-
将D435深度相机向下俯视30°安装在东方红LF1104-C拖拉机驾驶室的顶部居中位置[17],如图 3所示。拖拉机顶部离地面的垂直距离约为2.5 m,且D435深度相机视场角为85°×58°。由式(1)~式(3)计算可得相机能有效覆盖拖拉机前方一块长约4.6 m,宽约1.25 m的区域,符合作业要求。
其中:θh为相机水平视野角度(85°);θv为相机垂直视野角度(58°);θv′为相机垂直视野调整后的角度;α为相机俯视角度(30°);h为相机安装点距离地面的垂直距离(2.5 m);W为水平视野范围宽度;H为垂直视野范围在地面投影的长度。
-
1) 坐标系转换
在相机参数标定前,需确定4种坐标系:图像坐标系UO0V、图像物理坐标系XOY、相机坐标系XcOcYc和世界坐标系XwOwYw[18],图 4为相关坐标系关系示意图。在实际作业过程中,相机坐标系与世界坐标系的转换过程如下:以拖拉机底部中心为世界坐标系原点,相机的Z轴(成像方向)指向上方,X轴沿着拖拉机横向轴,Y轴沿着拖拉机纵向轴,建立相机坐标系;相机坐标系相对于世界坐标系进行旋转,旋转沿着X轴,即拖拉机的横向轴进行。而在相机坐标系中选取任一点Pc(Xc,Yc,Zc),均可通过式(4)转换为世界坐标系中的点Pw(Xw,Yw,Zw)。
式中:T为变换矩阵,用于将相机坐标系中的点Pc(Xc,Yc,Zc)转换成世界坐标系中的点Pw(Xw,Yw,Zw);R为旋转矩阵,
$\boldsymbol{R}=\left[\begin{array}{ccc} 1 & 0 & 0 \\ 0 & \cos \theta & -\sin \theta \\ 0 & \sin \theta & \cos \theta \end{array}\right]$ ,表示相机坐标系相对于世界坐标系的旋转,旋转沿着X轴,即拖拉机的横向轴进行;t为平移向量,t =(tx,ty,tz),表示世界坐标系的原点(拖拉机底部中心)到相机光心的直线距离和方向;Pc为相机坐标系中任意一点;Pw为Pc经过变换矩阵T转换到世界坐标系中的点。2) 相机标定
本研究采用张正友标定法来进行相机的参数标定,在MATLAB标定工具箱[19]中导入12张从不同角度拍摄的棋盘格标定板照片,处理得到D435左右相机的内外参如表 1所示,标定试验如图 5所示。
-
相较于传统机器视觉方法,深度学习算法在提取作物行信息方面鲁棒性好,环境适应性强,可以在短时间内准确识别目标[20]。使用训练好的深度学习模型对采集到的图像进行处理,识别出图像中的玉米苗,得到每个目标的边界框,其中每个框定义为(X1,Y1,X2,Y2),对应边界框的左上角和右下角的坐标。对于每个检测到的边界框,可以通过式(5)和式(6)计算出中心点坐标(Xcenter,Ycenter)。
其中:X1,Y1为边框左上角的X,Y坐标;X2,Y2为边框右上角的X,Y坐标;Xcenter为边框中心点的X坐标;Ycenter为边框中心点的Y坐标。
-
在进行作物行线拟合时,通常采用的方法为霍夫变换法和最小二乘法。霍夫变换通过利用点与线的对偶性进行直线拟合,将数据空间中的直线转换为参数空间上的点,并通过分析参数空间中点的峰值来确定最优拟合直线,但这一方法在计算上较为耗时,难以达到视觉导航过程中对实时性的要求。相比之下,最小二乘法基于最小化点到直线的距离平方和的原理进行直线拟合,其计算速度快且拟合精度较高[21],因此本研究选择使用最小二乘法来拟合玉米苗的行线。将识别的玉米苗中心点数据应用最小二乘法,经过直线拟合并由式(7)得出直线的斜率m和截距c,拟合的直线如图 6所示。
式中:m为斜率;c为截距;{(x1,y1),(x2,y2),…,(xn,yn)}为一组数据点。
-
横向偏移量是通过计算目标直线与图像水平中心线交点的横坐标与图像垂直中心线的横坐标之间的差值来确定的(图 7),计算依据为当拖拉机挂接悬挂系统进行对行纠偏作业时,拖拉机中心线、机械纠偏装置中心线和农机具中心线三线合一,且与正前方3条作物行的中间作物行对准,若作业过程中拖拉机中心线与中间作物行线发生偏移,即为需要计算的横向偏移量。具体步骤如下:设定图像中心点坐标为(x0,y0),作物行直线方程为y=mx+c,找到作物行直线与图像水平中心线y=y0的交点,由式(8)计算出目标直线与图像水平中心线交点的横坐标,由式(9)可得横向偏移量,式(10)为输出的偏移量与实际偏移距离的换算公式。
其中:x1为作物行直线与图像水平中心线交点的横坐标值;P为作物行直线相对于图像垂直中心线的横向偏移量;R为图像的空间分辨率;d为实际偏移距离。
1.1. 系统组成
1.2. 图像采集与模型训练
1.3. 相机安装与参数标定
1.3.1. 相机安装
1.3.2. 相机参数标定
1.4. 作物行线拟合提取与偏移量计算
1.4.1. 玉米苗行中心点提取
1.4.2. 玉米苗行中心线拟合
1.4.3. 偏移量计算
-
横向纠偏机械装置如图 8所示,主要包括:三点悬挂固定座、除草纠偏平台、平台导向轴、双作用液压缸、前三点悬挂连接件、后三点悬挂连接件等。其中三点悬挂固定座作为机械除草机整机挂接的动力平台,在前面一侧留有三点悬挂的挂点,方便与拖拉机挂接;三点悬挂固定座内部上下平行安装了2根平台导向轴,平台导向轴安装前会穿过除草纠偏平台,为除草纠偏平台提供挂接和滑移的基座。考虑到在实际工作过程中,除草纠偏平台与三点悬挂固定座需要保持较为稳定的相对横移,会承受较大的负载冲击与摩擦,因此在三点悬挂固定座与平台导向轴结合处安装了4个无油衬套。除草纠偏平台后面一侧也留有三点悬挂点,以便与机械除草机挂接。
横向纠偏机械装置最重要的设计参数是横向纠偏距离,这直接影响着整个悬挂系统有效作业范围和不同环境下纠偏的适用性,通过查阅相关资料设定装置的实际纠偏范围为0~140 mm。横向纠偏机械装置结构参数如图 8所示,此时除草纠偏平台处于装置中位。参照文献[22]中拖拉机挂接标准并根据实际需求,初步确定除草纠偏平台长度为720 mm,三点悬挂固定座长度为1 220 mm,且两者作为折弯件厚度均为10 mm。由式(11)可得装置的理论纠偏范围为0~210 mm,但由于内置的HSGL01-50/dE液压缸需要一定的安装距,故实际纠偏范围能达到0~150 mm,基本满足各类机械除草机具在田间作业时的纠偏需求。
式中:L1为三点悬挂固定座长度(1 220 mm);L2为除草纠偏平台长度(720 mm);L3为无油衬套厚度(10 mm);L4为平台导向轴安装底座厚度(10 mm);Δl为允许纠偏范围(mm)。
本研究中由东方红LF1104-C拖拉机为整个横向纠偏系统提供动力输出,设计的液压系统机械部分主要包括双作用液压缸、三位四通电磁换向阀、溢流阀、单向阀和蓄能器等,其原理图如图 9所示。
-
在实际作业过程中,开始时拖拉机牵引着农机具沿着作物行中心线行驶,拖拉机中心线、农机具中心线与作物行中心线三者均重合。一旦拖拉机中心线与作物行中心线发生偏移,作物行识别与偏移量计算子系统就会输出偏移量使得横向纠偏机械装置带动农机具进行对行调整。当作物行识别与偏移量计算子系统输出的偏移量是正值时,说明农机具相对于作物行往右偏,此时需要横向纠偏机械装置往左进行纠偏;反之输出的偏移量是负值时,横向纠偏机械装置往右进行纠偏。3种状态调整示意图如图 10所示。
2.1. 横向纠偏机械装置设计
2.2. 对行纠偏工作原理
-
控制执行子系统原理图如图 11所示,以STM32F407ZGT6单片机作为控制系统信息处理的核心控制器,控制系统在工作过程中主要用到控制器的数字I/O端口、ADC(模拟数字转换器)数据采集模块、串口通信模块、定时器模块等。控制器通过输出高低电平控制继电器闭合和断开进而控制电磁阀开闭,实现对液压缸伸缩的控制。为了实时检测液压缸的伸缩量,平行于液压缸安装直线位移传感器。
-
整个横向纠偏系统的软件部分主要分为作物行识别与偏移量计算子系统中作物行识别与偏移量的计算以及控制执行子系统中液压缸伸缩量的控制。在作物行识别与偏移量计算子系统的Jetson NX中配置好环境,运行改进的YOLOv5模型及后处理算法,实现作物行的识别定位以及横向偏移量计算。控制执行子系统通过串口通信接收并处理作物行识别与偏移量计算子系统发送的偏移量信息,同时采集直线位移传感器的实时反馈信息,实现对液压缸伸缩的实时控制,进而实现整个系统对行纠偏,具体控制流程如图 12所示。由于相机安装在拖拉机前方,故从识别作物行到液压缸伸缩动作之间存在一定的延时,延时时间通过式(12)计算得到:
式中:Tw为从获取目标点图像到液压缸开始动作之间的延时时间(s);D为相机画面中心到除草机执行机构的距离(m);V为当前拖拉机速度(m/s);Ts为系统响应时间,包括识别作物行时间、偏移量计算时间和通信时间(s)。
-
液压缸伸缩量的实时控制决定着整个横向纠偏系统的对行纠偏效果。本研究采用PID算法控制液压缸的伸缩量,使得液压缸响应更快、更平稳,整个系统能达到更好的对行纠偏效果。图 13、图 14是在AMESIM-MATLAB中搭建的液压缸-PID控制仿真模型以及相关仿真结果。设定液压缸目标伸缩量为40 mm,通过经验法对比例系数Kp、积分系数Ki、微分系数Kd进行参数整定,结果显示当Kp=6.82、Ki =0.35、 Kd =0.04时能得到最好的响应效果。
3.1. 控制执行子系统硬件设计
3.2. 控制程序与流程
3.3. 液压缸PID控制
-
为了检验拖拉机不同行驶速度下横移对行装置的对行准确率,在江苏润果农场进行了田间模拟试验。以仿真玉米苗为对象进行对行纠偏准确率试验,选定一个长50 m、宽8 m的矩形区域,将长方形泡沫板平行于区域两边放置。在泡沫板上按照株距300 mm均匀排列安插仿真玉米苗,模拟试验现场如图 15所示。
-
将横向纠偏系统安装在东方红LF1104-C拖拉机上,对拖拉机液压输出管路进行改装,通过安装三位四通电磁阀实现液压输出的电控。让拖拉机的机头和机身分别平行于矩形区域的2条相邻边线,并在横向纠偏机械装置内无油衬套处用绳垂直悬挂螺母;在同一起始位置沿直线分别以0.63、1.56、2.25 km/h 3种速度行驶20 m距离,带动横向纠偏机械装置进行模拟作业,每种速度分别进行3组。对于模拟作业过程中的每一次纠偏动作,GUI界面都会显示偏移量输出的Unix时间戳;单片机内置的实时时钟(RTC)模块也会记录直线位移传感器采集的液压缸位置数据开始几乎不再变化的时间。
-
在每次模拟作业结束后,用摆放好的卷尺分别量出泡沫板上反映的垂直悬挂螺母初始位置与模拟作业结束后位置的水平距离,通过式(13)计算出对行准确率和平均对行准确率,试验结果如表 2所示。
式中:Ai为对行准确率;di为模拟作业结束后悬挂螺母在泡沫板上与作物行的水平距离(mm);d为模拟作业开始前悬挂螺母在泡沫板上与作物行的水平距离,即偏移量(mm);A为平均对行准确率。
将单片机内置的实时时钟(RTC)模块记录的时间,与对应的GUI界面显示偏移量输出的时间代入式(14)、式(15),可得在模拟作业过程中每次纠偏动作完成的大致响应时间、拖拉机不同驾驶速度下系统对行纠偏的响应时间和平均响应时间,所得结果如表 3所示。
其中:tai为单片机内置的实时时钟(RTC)模块记录的时间;tbi为GUI界面显示偏移量输出的时间;ti为每次纠偏的响应时间;Ti为同一驾驶速度下作业过程中系统对行纠偏平均响应时间;T为同一驾驶速度下3次作业过程中系统对行纠偏平均响应时间的平均值。
通过对上述结果进行分析,可以看出横向纠偏系统平均对行准确率、系统对行纠偏平均响应时间与拖拉机的驾驶速度呈一定的负相关性,即拖拉机驾驶速度越快,挂接的机械纠偏装置在作业过程中越不平稳,平均对行准确率因此会有所下降,但整个横向纠偏系统的平均对行准确率在最高速度下依然能够达到87.4%,平均响应时间最长为1.4 s,说明该系统可以实现较为准确的对行纠偏功能,并且响应速度较快。
4.1. 试验方案设计
4.2. 结果分析
-
1) 设计了一种用于大田作物农机具精准对行作业的横向纠偏系统,采用改进的YOLOv5深度学习模型进行作物行识别与作物行线拟合,识别速度快、准确率高,且具有一定的泛化能力,符合农业机械田间作业的要求。
2) 在AMESIM-MATLAB联合仿真环境中,搭建液压缸-PID控制仿真模型进行联合仿真,根据初步的仿真结果,对比例系数Kp、积分系数Ki、微分系数Kd进行参数整定与微调,得到的结果显示:当Kp=6.82、Ki=0.35、Kd=0.04时,PID算法对液压缸伸缩量控制效果最好。
3) 在拖拉机前进速度分别为0.63、1.56、2.25 km/h时,模拟试验的行株间机械除草机横向纠偏系统的平均对行准确率分别达到91.8%、88.7%、87.4%,对应的纠偏平均响应时间分别为1.4、0.8、0.5 s,证明了整个横向纠偏系统具有一定的纠偏效果,符合设计要求。