本发明涉及一种自动对靶变量喷雾控制系统、喷雾机及控制方法,属于植保机械领域。
背景技术:
传统施药采取过量喷施的方式来达到防止病虫害的目的,但此种方式造成了农药的大量浪费,一方面污染环境,另一方面造成农药残留量超标,带来十分严重的安全隐患。因此实现按需施药,精确施药就成了我们亟待解决的问题。目前对靶喷雾主要都是靶标区域内喷施,区域外不喷,而不能够根据树冠体积大小以及冠层疏密程度实时改变喷雾量,改变风机转速,实现按需施药。
中国发明专利申请(cn108575955a)公开了一种自动对靶喷雾控制系统,但这两种方式均只能实现对靶施药,不能实时根据树冠体积大小实现变量施药。
中国发明专利申请(cn106070155a)公开了一种基于plc的自动对靶变量喷雾控制系统及其控制方法,该系统利用图像采集模块进行靶标信息采集,根据靶标面积,病虫害程度实现变量,处理时间较长,实时性不高。
中国发明专利(cn105486228b)公开了一种基于二维激光扫描仪的树木靶标体积实时测量方法,该方法仅提供了靶标体积的测量方法,没有涉及到冠层疏密程度以及具体的变量控制方法。
中国发明专利申请(cn108684634a)公开了一种基于体积特征预判的喷雾控制方法及系统,该系统测距模块分为独立的若干组,体积测量精度较低,且不涉及冠层疏密程度的测量方法。
因此,提供一种可以快速准确识别靶标体积和冠层疏密程度,实时变量喷雾的控制系统具有重要的意义。
技术实现要素:
本发明的第一个目的在于提供一种自动对靶变量喷雾控制系统,该系统可以根据树冠有无、树冠体积以及冠层疏密度实现靶标区域内喷施。
本发明的第二个目的在于提供一种包括上述系统的喷雾机。
本发明的第三个目的在于提供一种基于上述系统的控制方法。
本发明的第一个目的可以通过采取如下技术方案达到:
一种自动对靶变量喷雾控制系统,包括控制模块、数据采集模块、输入/输出模块、喷雾机构以及风送机构;
所述数据采集模块包括激光雷达和旋转编码器,所述激光雷达用于采集靶标的位置和距离信息,所述旋转编码器用于采集喷雾机的位置信息、喷雾机的行驶速度和行驶距离;
所述控制模块包括控制器、树莓派和继电器,所述树莓派与激光雷达连接,所述控制器分别与树莓派、继电器、旋转编码器、输入/输出模块、风送机构的风机连接,所述继电器与喷雾机构的喷头组连接。
进一步的,所述喷雾机构包括药箱、液泵、多路分水器、多个电磁阀以及多个喷头组,所述继电器数量、电磁阀数量和喷头组数量均为一一对应,所述药箱的输出端与液泵的输入端连接,所述液泵的输出端与多路分水器的输入端连接,所述多路分水器的每路输出端与一个电磁阀连接,每个继电器与控制器连接,并通过对应的电磁阀与对应的喷头组连接。
进一步的,所述药箱与液泵之间设有安全阀。
进一步的,所述液泵上设有调压旋钮和压力表。
进一步的,所述风送机构包括多个风机,所述喷雾机构的喷头组数量与风机数量一一对应,喷雾机构的每个喷头组设置在对应风机的前部,所述多个风机与控制器连接。
进一步的,所述风送机构还包括仿形喷杆,所述多个风机设置在仿形喷杆上。
进一步的,所述系统还包括控制箱,所述控制模块设置在控制箱内。
进一步的,所述控制器为arduino控制器。
进一步的,所述输入/输出模块为触摸屏。
本发明的第二个目的可以通过采取如下技术方案达到:
一种喷雾机,所述喷雾机包括上述的自动对靶变量喷雾控制系统。
本发明的第三个目的可以通过采取如下技术方案达到:
一种基于上述自动对靶变量喷雾控制系统的控制方法,所述方法包括:
在人机交互界面选择喷雾模式;
若选择连续喷雾模式,在连续喷雾模式下选择风机转速,点击开启按钮,控制继电器,使电磁阀常开,连续喷雾;点击停止按钮,控制继电器,使电磁阀关闭,喷雾停止;
若选择对靶模式,在对靶模式下选择风机转速,启动喷雾机开始行走,激光雷达和旋转编码器开始采集并处理数据;
若采集到靶标信息,则根据处理得到的树冠体积信息和冠层疏密度信息,输出所需流量的脉冲宽度调制波控制对应的电磁阀频繁开闭,从而实现按需施药;若未采集到靶标信息,则控制继电器,使电磁阀关闭;
判断控制器是否继续工作,若停止工作,则结束喷雾;否则,返回人机交互界面选择喷雾模式。
进一步的,所述激光雷达和旋转编码器开始采集并处理数据,具体为:
激光雷达采集靶标的位置和距离信息,旋转编码器采集喷雾机的位置信息、喷雾机的行驶速度和行驶距离,激光雷达每检测一次读取一次旋转编码器的值,得到完整的靶标三维信息;
根据靶标三维信息,计算得到树冠体积和冠层疏密度。
进一步的,所述激光雷达每检测一次读取一次旋转编码器的值,得到完整的靶标三维信息,具体包括:
激光雷达扫描对准果树树冠,由下到上一次扫描生成一条密集的测距点云数据;
激光雷达沿水平方向移动的过程,生成一系列测距点云数据;
将一系列测距点云数据按照对应旋转编码器采集的水平信息进行组合,得到完整的靶标三维信息。
进一步的,所述树冠体积包括两侧树冠体积,每侧树冠体积的计算如下式:
其中,vi为冠层单元体的体积,如下式:
vi=si×hi×rk
其中,rk为旋转编码器采集的喷雾机行驶距离,si为果树某个点的冠层深度信息,hi为果树上、下两个点之间的距离,如下式:
si=ds-di×cosai
hi=di+1×sinai+1-di×sinai
其中,di和di+1分别为激光雷达从下往上扫描时生成的距离信息,对应角度分别为ai和ai+1;
所述冠层疏密度的计算如下式:
其中,s2表示一个完整靶标测距序列的方差,表征冠层的疏密程度,x0表示一个完整靶标测距序列的距离均值,xi表示激光雷达距离靶标的水平距离,如下式:
xi=di×cosai。
进一步的,所述根据处理得到的树冠体积信息和冠层疏密度信息,输出所需流量的脉冲宽度调制波控制对应的电磁阀频繁开闭,从而实现按需施药,具体包括:
根据处理得到的树冠体积信息和冠层疏密度信息,遵循施药量与树冠体积相匹配的原则,决策出对应树冠体积的施药量,建立树冠体积与冠层疏密度的关系,进一步修正体积参数;
通过实验测得不同压力不同占空比下的流量数据,建立流量-占空比模型,根据果树施药量需求,给对应的喷头组输出所需流量的脉冲宽度调制波控制相应的电磁阀频繁开闭,从而实现按需施药。
本发明相对于现有技术具有如下的有益效果:
1、本发明系统设置了激光雷达和旋转编码器,通过激光雷达可以采集靶标的位置和距离信息,通过旋转编码器采集喷雾机的位置信息、喷雾机的行驶速度和行驶距离,树莓派获取激光雷达采集的数据,控制器获取旋转编码器采集的数据,树莓派与控制器之间实现数据传输,通过相应的数据处理,得到树冠体积和冠层疏密度,并将树冠体积信息和冠层疏密度信息发送给控制器,控制器可以根据树冠体积信息和冠层疏密度信息,得到施药量,通过输出对应流量的频率和占空比,进而实现喷雾机构的喷头组流量的精确控制;另一方面,通过调节控制器生成脉冲宽度调制波的占空比来实现风送机构的风机转速调节,能够大大提高资源利用率,可有效提升雾滴覆盖率。
2、本发明系统可以根据树冠有无、树冠体积以及冠层疏密度实现靶标区域内喷施,区域外不喷,大树多喷,小树少喷,并且能够根据冠层疏密度对体积参数进行二次修正,从而优化喷雾量,使得变量喷雾更加精准。
附图说明
图1为本发明实施例的自动对靶变量喷雾控制系统的结构原理框图。
图2为本发明实施例的喷雾机构的原理示意图。
图3为本发明实施例的喷雾机的正视结构图。
图4为本发明实施例的喷雾机的左视结构图。
图5为本发明实施例的靶标信息采集示意图。
图6为本发明实施例的激光雷达扫描示意图。
图7为本发明实施例的冠层单元体体积示意图。
其中,1-激光雷达,2-旋转编码器,3-控制器,4-树莓派,5-继电器,6-药箱,7-液泵,8-六路分水器,9-电磁阀,10-喷头组,11-安全阀,12-调压旋钮,13-压力表,14-风机,15-触摸屏,16-车架,17-行走轮,18-控制箱,19-仿形喷杆。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例:
如图1所示,本实施例提供了一种自动对靶变量喷雾控制系统,该系统包括控制模块、数据采集模块、输入/输出模块、喷雾机构以及风送机构,数据采集模块包括激光雷达1和旋转编码器2,控制模块包括控制器3、树莓派4和六个继电器5。
所述激光雷达1用于采集靶标的位置和距离信息,其型号为日本北阳hokuyo公司生产的urg-04lx-ug012d激光扫描测距仪。
所述旋转编码器2用于采集喷雾机的位置信息、喷雾机的行驶速度和行驶距离,其型号为e6b2-cwz1x增量型编码器。
所述树莓派4的型号可以为树莓派3代b型,其通过usb接口与激光雷达1连接,可以获取激光雷达1采集的数据,树莓派4与控制器3之间依靠uart串口实时通讯实现数据传输,通过相应的数据处理,进而计算出树冠体积和冠层疏密度,并将树冠体积信息和冠层疏密度信息发送给控制器3。
如图1和图2所示,喷雾机构包括药箱6、液泵7、六路分水器8、六个电磁阀9以及六个喷头组10,继电器5、电磁阀9和喷头组10均为一一对应,药箱6的输出端与液泵7的输入端连接,液泵7的输出端与六路分水器8的输入端连接,六路分水器8的每路输出端与一个电磁阀9连接,每个继电器5与对应的电磁阀9连接,用于控制对应的电磁阀9的开关,一方面实现喷雾的开启和关闭,另一方面通过脉冲宽度调制(pulsewidthmodulation,简称pwm)实现变量控制,每个电磁阀9与对应的喷头组10连接。
为了使压力不超过规定值,在药箱5与液泵6之间设有安全阀11;进一步地,液泵6上设有调压旋钮12和压力表13。
进一步地,电磁阀9的具体型号为亚德客2w030—08b型,其在10hz、20hz频率下输出的流量具备良好的线性关系。
所述风送机构包括六个风机14,每个风机4采用thb2048hg-a轴流风机,风机14与喷头组10一一对应,每个喷头组10设置在对应风机14的前部,六个风机14与控制器3连接;进一步地,风送机构还包括仿形喷杆,仿形喷杆分为左、右两侧,其中三个风机14上、中、下设置在左侧的仿形喷杆上,另外三个风机14上、中、下设置在右侧的仿形喷杆上。
为了保护控制模块,本实施例的喷雾控制系统还包括控制箱,控制模块设置在控制箱内,即控制器3、树莓派4和六个继电器5均设置在控制箱内。
所述输入/输出模块可以采用触摸屏15,触摸屏15与控制器3连接,是人机交互界面的主要部件,其具体型号为tjc4832t035-011rn型,触摸屏15可以设置在控制箱上,也可以设置在喷雾机的便于用户操作的位置上(例如车头位置),不仅可以选择切换喷雾模式,控制喷雾流量,而且可以实时观测喷雾机的数据反馈。
所述控制器3可以为arduino单片机,其型号为arduinomega2560,通过i/o接口与旋转编码器2连接,可以获取旋转编码器2采集的数据,控制器3在接收到树莓派4发送的树冠体积信息和冠层疏密度信息后,根据树冠体积信息和冠层疏密度信息,决策出对应树冠体积的施药量,通过输出对应流量的频率和占空比,控制电磁阀9频繁开闭,进而实现流量的精确控制;另一方面,通过调节控制器3生成脉冲宽度调制波的占空比来实现风机14的转速调节,可有效提升雾滴覆盖率。
进一步地,arduinomega2560有十五个脉冲宽度调制输出端口,但只能输出5v、频率为490hz的脉冲宽度调制波,通过查阅arduinomega2560的数据手册发现脉冲宽度调制的行为是由叫作timer/counter的集成元件决定的,每个timer/counter有两个或三个通道。每个通道连到一个控制器引脚上。改变一个引脚的频率需要改变它所连接的定时器的频率,这样反过来也会改变其它连到同一个定时器的引脚的频率。,该单片机共有六个timer/counter,分别为timer0、timer1、timer2、timer3、timer4、timer5。其中timer0和timer2为八位timer/counter,每个timer有a、b两个通道,timer0控制整个系统的delay函数,如果更改timer0可能导致计时函数不准确,所以在其他timer/counter的个数满足要求的情况下,尽量不去更改timer0的底层设置,本发明仅需十二路路(包括六路控制风机转速的脉冲宽度调制波和6路控制电磁阀的脉冲宽度调制波)自定义pwm波,无需修改timer0的底层设置。而定时/计数器timer1、timer3、timer4、timer5为十六位位的,每个又有a、b、c三个通道;每个timer/counter都有快速脉冲宽度调制和相位校准脉冲宽度调制两种工作模式,定时器可以从0到255运行,也可以从0运行到固定值;每个输出也可以反转,控制这些timer/counter工作方式的寄存器有tccrna、tccrnb、ocrna、ocrnb、ocrnc(若定时器有c通道),其中n代表timer/counter的名字。tccrna及tccrnb为控制寄存器,他们可以控制的参数有:
a、脉冲生成模式控制位(wgm):用来设置timer/counter的工作模式,在八位timer/counter中,2bit位于寄存器tccrna,1bit位于寄存器tccrnb;在十六位位timer/counter中,2bit位于寄存器tccrna,2bit位于寄存器tccrnb;
b、时钟选择位(cs):设置时钟的分频系数(计数器工作的速度),3bit位于寄存器tccrnb;
c、输出模式控制位(comna、comnb及comnc):使能/禁用/反相输出波形,各占2bit,位于寄存器tccrna;
d、输出比较器(ocrna、ocrnb及ocrnc):该值为计数器与之进行比较的值。当计数器等于这三个值时,相应通道的输出值根据不同的模式进行变化,这些寄存器跟对应的timer/counter有相同的位数,通过设置timer/counter的位,使其对应端口产生需要的脉冲宽度调制波,从而达到风机转速控制和流量控制的目的。
如图3~图4所示,本实施例还提供了一种喷雾机,该喷雾机为喷雾小车,其包括车架16、行走轮17以及上述的喷雾控制系统,行走轮17与车架16连接,喷雾控制系统设置在车架16上;具体地,激光雷达1、旋转编码器2、药箱6、控制箱18和仿形喷杆19设置在车架16上。
本实施例还提供了一种基于上述喷雾控制系统的控制方法,该方法包括以下步骤:
s1、系统初始化。
s2、在人机交互界面选择喷雾模式,若选择连续喷雾模式,则执行步骤s3;若选择对靶模式,则执行步骤s4。
s3、在连续喷雾模式下选择风机转速,点击开启按钮,控制器控制继电器,使电磁阀常开,连续喷雾;点击停止按钮,控制器控制继电器,使电磁阀关闭,喷雾停止。
s4、在对靶模式下选择风机转速,启动喷雾机开始行走,激光雷达和旋转编码器开始采集并处理数据。
s5、控制器根据处理后的数据执行相应的指令;若采集到靶标信息,则执行步骤s6;若未采集到靶标信息,则执行步骤s7。
s6、根据处理得到的树冠体积信息和冠层疏密度信息,输出所需流量的脉冲宽度调制波控制对应的电磁阀频繁开闭,从而实现按需施药。
s7、控制器控制继电器,使电磁阀关闭。
s8、判断控制器是否继续工作,若停止工作,则结束喷雾;否则,返回步骤s2。
步骤s4中,激光雷达和旋转编码器开始采集并处理数据的具体操作为:
1)如图5所示,激光雷达采集靶标的位置和距离信息,旋转编码器采集喷雾机的位置信息、喷雾机的行驶速度和行驶距离,激光雷达每检测一次读取一次旋转编码器的值,得到完整的靶标三维信息。
2)如图6所示,激光雷达扫描对准果树树冠,由下到上一次扫描生成一条密集的测距点云数据(测距序列);激光雷达沿水平方向(喷雾机行驶方向)移动的过程,生成一系列测距点云数据;激光雷达每次扫描的步进角度为0.36°,量程是240°,所以激光雷达每扫描一圈可以检测大约660个数据点,然后去除非靶标点,保留靶标点。并且这些测距序列包含果树的位置信息、深度信息以及树冠稠密度等;将一系列测距点云数据按照对应旋转编码器采集的水平信息进行组合,得到完整的靶标三维信息。
3)如图6所示,ds为标准果园行距的二分之一(实际情况亦可根据需要增加一个测距传感器实时监测激光雷达到树干的距离),di和di+1分别为激光雷达从下往上扫描时生成的距离信息,对应角度分别为ai和ai+1,由此即可计算果树a点(下点)、b点(上点)的冠层深度信息。
si=ds-di×cosai
si+1=ds-di+1×cosai+1
hi=di+1×sinai+1-di×sinai
其中,si为果树a点的冠层深度信息,si+1为果树b点的冠层深度信息,hi为果树a点与b点之间的距离。
4)如图7所示,rk为旋转编码器测得的喷雾机的行驶距离,精度根据实际需要进行取值,则冠层单元体的体积计算公式为:
vi=si×hi×rk
每侧树冠体积为:
5)喷雾机构共包含六个喷头组,每侧分为上中下三个喷头组,故可将每侧树冠体积分为上中下三个部分,每个喷头组负责对应靶标的施药量,具体为:
6)测得靶标体积的同时,可根据激光雷达的测距序列,估算出冠层疏密度。对于冠层密度大的果树,树叶分布集中,测距序列的距离值也相对集中,波动范围小,离散程度小;对于冠层稀疏的果树,树叶分布松散,测距序列的距离值波动范围较大,离散程度也较大,此处采用方差来衡量数据的波动程度,亦可表征冠层疏密度。具体计算方法为:
xi=di×cosai
其中x0表示一个完整靶标测距序列的距离均值,xi表示激光雷达距离靶标的水平距离,s2表示一个完整靶标测距序列的方差,可以表征冠层疏密度,s2大,即表示冠层稀疏,可适当减少喷雾量;s2小,则表示冠层密集,可适当增加喷雾量。
步骤s6的具体操作为:
1)根据处理得到的树冠体积信息和冠层疏密度信息,遵循施药量与树冠体积相匹配的原则,决策出对应树冠体积的施药量,考虑到冠层疏密度不同对喷雾量的需求亦不同,需建立树冠体积与冠层疏密度的关系,进一步修正体积参数;
2)通过实验测得不同压力不同占空比下的流量数据,建立流量-占空比模型,根据果树施药量需求,给对应的喷头组输出所需流量的脉冲宽度调制波控制相应的电磁阀频繁开闭,从而实现按需施药。
综上所述,本发明系统设置了激光雷达和旋转编码器,通过激光雷达可以采集靶标的位置和距离信息,通过旋转编码器采集喷雾机的位置信息、喷雾机的行驶速度和行驶距离,树莓派获取激光雷达采集的数据,控制器获取旋转编码器采集的数据,树莓派与控制器之间实现数据传输,通过相应的数据处理,得到树冠体积和冠层疏密度,并将树冠体积信息和冠层疏密度信息发送给控制器,控制器可以根据树冠体积信息和冠层疏密度信息,得到施药量,通过输出对应流量的频率和占空比,进而实现喷雾机构的喷头组流量的精确控制;另一方面,通过调节控制器生成脉冲宽度调制波的占空比来实现风送机构的风机转速调节,能够大大提高资源利用率,可有效提升雾滴覆盖率。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明构思加以等同替换或改变,都属于本发明专利的保护范围。