骆寅,韩岳江,董健
(江苏大学国家水泵及系统工程技术研究中心,江苏 镇江 212013)
先进的农业灌溉技术,对于农业的健康发展起着重要的促进作用.国家“十三五”发展规划明确指出要加快现代农业产业科技创新,大力提高农机装备等领域关键技术的智能化水平[1].近年来,中国在提高农业灌溉设备智能化水平方面进展迅速,但是由于起步较晚,未形成产业化等原因,中国灌溉设备在产品质量、技术性能、可靠性方面仍与国外同类产品存在着较大差距[2-3].
目前,国外一些发达国家将信息化发展成果与灌溉技术相结合,在提高农业用水效率及生产力方面取得显著成果[4].其中包括利用无线控制节点技术实现农作物的精准灌溉[5].利用ZigBee网络通讯技术及GSM通讯技术对农作物生长环境进行实时监测,并自动生成智能灌溉方案[6].基于智能模糊逻辑设计温室温湿度关联控制系统自动控制温室环境以达到节水节能目的[7].基于光伏灌溉管理器模型自动根据季节天气调节灌溉水量[8].结合物联网技术和边缘控制技术,实现包括精准灌溉在内的精准农业场景控制[9]等.
在国内,郭建昌等[10]基于STC单片机设计了一套智能农田灌溉潜水泵控制器.俞卫东等[11]基于PLC控制技术与模糊控制理论研发出一套智能水肥灌溉系统.韩贵黎等[12]将PLC控制技术与GPRS和ZigBee无线通讯技术相结合,建立了智能灌溉控制规则库以进行精准灌溉.虞佳佳[13]利用物联网技术与专家决策系统汇总农作物生长信息,实现精细化灌溉作业.
从上述研究现状中可以发现,现阶段国内外发展智能灌溉的思路,基本上是通过传感器技术、通讯技术搜集农作物生长及环境信息,汇总后生成智能灌溉计划,再具体调节灌溉泵、喷头等灌溉设备以达到精细作业,节水节能的目的.而灌溉泵作为农业灌溉的关键设备,其自身运行状态往往缺乏智能监测.中国已建成机电排灌排水设备装机功率2 700多万kW.遍布广大农村地区的灌溉泵在缺乏监测调节的条件下有可能会偏离设计工况运行,造成能源浪费[13],因此,以智能监测灌溉泵各项运行参数作为突破口,对于提高灌溉设备智能化水平,减少能源浪费有着重要意义.
目前,在泵性能监测方面,国内外较为有效的方法是搭建测试试验台,通过各类传感器收集泵性能数据以实现监测[14].类似方法在工业用泵监测上通常能取得一定成效,但是这些方法大部分缺乏专门的农业环境适应性设计,例如灌溉用水水质与粮食安全密切相关,而以往的大部分泵性能监测设备不具备水质监测功能.且一些特殊的农业作业环境也不具备搭建大型测试台的条件.同时,大量侵入式传感器的安装也会破坏泵体完整性.
基于上述分析,文中设计一种具备灌溉用水水质监测功能和灌溉泵性能参数监测功能,侵入性弱,易携带,适用于灌溉作业环境的灌溉泵智能运行监测系统.
设计的灌溉泵智能运行监测系统,拟监测的灌溉泵运行参数包括转速、流量、扬程、效率以及灌溉用水水质.为减少监测设备侵入性,除灌溉用水水质以外的其他监测参数,一律通过非接触方式监测,即通过霍尔传感器从驱动电动机电信号中提取.
灌溉泵转速的监测流程如图1所示,具体步骤:由霍尔电压传感器、霍尔电流传感器对驱动电动机的输入电压电流信号进行采集,并通过单片机的DSP功能对采集的离散的驱动电动机电压电流数字信号进行FFT分析以获取各次谐波.在此过程中,为减少频谱中基频能量的泄漏,避免电动机负载波动和虚假频率产生,系统对采集的数据进行了加汉宁窗处理,得到电压谐波和电流谐波后,由其二者的比值构造各次谐波的阻抗谱.
图1 转速计算流程图
在各次谐波阻抗谱中,偏心谐波频率在电源基波频率的两侧形成边带,其幅值与转子偏心程度成正比,计算公式为
(1)
去除高于3倍基波频率的各奇次谐波后,所剩幅值最大的谐波的频率即为1阶转子齿谐波的频率ft,将ft代入式(2),取能使结果与ft最接近的偶数Z1,即得到转子齿数Z.
(2)
在获得转子齿数Z后,可按照式(3)计算灌溉泵转速,即
(3)
灌溉泵驱动电动机的输出功率计算流程如图2所示.根据测得的驱动电动机输入电压、电流信号,计算出驱动电动机的输入功率,结合绕组相电阻和电动机空载特性,利用气隙转矩法计算电动机效率,进而获得电动机输出功率,即灌溉泵的输入功率.
图2 灌溉泵驱动电动机输出功率计算流程图
灌溉泵的转速、流量、扬程、效率,是随其所处工况变化而发生变化的,但各项运行参数之间相互关联.由于泵的转速已获得,可根据转速相似定律,将泵特性曲线转化为瞬时旋转速度下的特性方程,将灌溉泵的输入功率代入特性方程中,即可求解灌溉泵的流量.
P(Q,k)=p0k3+p1k2Q+p2kQ2+p3Q3,
(4)
式中:k为调速比,k=当前转速/额定转速.将得到的Q值分别代入到式(5)和(6)中,即可求解灌溉泵扬程H和效率η.
H(Q,k)=h0k3+h1k2Q+h2kQ2,
(5)
η(Q,k)=a0k2+a1kQ+a2Q2.
(6)
灌溉泵的流量、扬程、效率计算流程图如图3所示.
图3 灌溉泵的流量、扬程、效率计算流程图
灌溉用水水质信息则直接由水质监测探头获取,并通过串口传至单片机.
灌溉泵各项运行参数由MCU核心控制模块进行汇总计算,并发送至监测信息显示模块进行显示,从而实现灌溉泵的运行监测.
整个监测系统在硬件上由6个功能模块组成,系统的功能框架如图4所示.
图4 灌溉泵智能运行监测系统功能框架图
其中驱动电动机电压电流信号采集模块负责采集灌溉泵驱动电动机的输入电压信号、输入电流信号.水质监测模块负责采集灌溉用水水质信息.MCU核心控制模块负责对采集的灌溉泵运行信息进行汇总、计算、发送,以及驱动其他功能模块.监测信息显示模块由LCD屏和Android移动客户端组成,负责实时显示灌溉泵运行信息.GPRS通讯模块负责MCU核心控制模块和Android移动客户端之间的无线通讯.供电模块负责给各功能模块供电.
监测系统功能模块的主体部分集成在PCB板上.相较于传统的分散式传感器监测,该系统具有抗干扰能力强、侵入性弱、结构紧凑易携带、环境适应性强的优势.
文中以三路TBV10/25A霍尔电压传感器和三路WCS1800闭环霍尔电流传感器构成灌溉泵驱动电动机电压电流信号的采集电路.以三相三线制接法为例,将A,B,C三相连接线分别穿过霍尔电流传感器过孔,并将此三相接口引线两两接于霍尔电压传感器接线端,电流互感器可以感应每一相的电流,电压互感器可以感应两相之间的电压.
采集获得的灌溉泵驱动电动机的输入电压电流动态信号通过MAX291低通滤波器进行抗混叠处理以消除高频分量干扰,从而适应MCU核心控制模块的AD采集要求.
驱动电动机电压电流信号采集模块电路图如图5所示.
图5 驱动电动机电压电流信号采集模块电路图
灌溉泵智能运行监测系统对水质信息的监测指标包括水温、pH、溶解氧、电导率、浊度5项.
水质监测模块的主体部分是YSI 6920V2水质监测探头.该水质监测探头对水温的测量范围达-5 ℃~+60 ℃;对pH的测量范围达0~14;对光学溶解氧的测量范围达0~50 mg/L;对电导率的检测范围达0~100 μS/cm;对浊度的检测范围达0~1 000 NTU.符合文中对灌溉用水水质信息监测的监测范围要求.
水质监测探头的具体安装步骤如下:在灌溉泵泵体靠近出口处的上表面开设导水孔,水质分析探头即安装在导水孔内.水质分析探头的安装处外壁开有螺纹.导水孔上方设有转接头A,转接头A为一个加工有内螺纹的中空圆柱体.水质分析探头外部套有转接头B,其外部加工有可与转接头A匹配的内螺纹.密封垫圈安装在转接头A上部的环形槽内,将与转接头B相连的水质分析探头扭入转接头A内,通过压紧密封垫圈进行密封,具体安装细节如图6所示.
图6 水质监测探头安装示意图
在灌溉泵工作时,流经泵内的水流在叶轮带动下通过泵体进入导水孔,与水质监测探头相接触,水质监测探头通过串口线将采集到的水质信息传输至MCU核心控制模块,再由MCU核心控制模块进行数据整合和信息发送,实现水质信息监测.
文中灌溉泵智能运行监测系统中的MCU核心控制模块采用STM32F103ZET6单片机作为核心处理器.
在监测系统各模块的功能实现上,驱动电动机电压电流信号采集通过单片机的ADC和DMA功能实现;水质监测模块与MCU核心控制模块之间的数据通讯通过单片机的串口通讯功能实现;GPRS模块与MCU核心控制模块的数据传递通过单片机的串口通讯功能实现;LCD屏与MCU核心控制模块的数据传递以及LCD屏上的信息显示通过单片机的并口通讯功能以及单片机对ILI9488液晶控制器的驱动功能实现;定时采样以及定时数据刷新通过单片机的通用定时器定时功能实现.根据上述监测系统功能实现原理以及资源配置需求,可设计出MCU核心控制模块的电路图如图7所示.
图7 MCU核心控制模块电路图
MCU核心控制模块的工作流程具体如图8所示.在各功能模块工作前,MCU核心控制模块先对各功能模块进行初始化配置,然后对水质分析仪获得的水质信息以及采集到的驱动电动机电压电流信号进行相应的计算处理,并通过灌溉泵特性曲线和特性方程计算灌溉泵转速及工况数据.最后将各个参数信息发送至监测信息显示模块,并定时进行数据刷新以实现实时监测.
图8 MCU核心控制模块工作流程图
综合考虑数据处理精度和单片机内存,文中在设计上将灌溉泵智能运行监测系统的信号采样率设为2 000 Hz,即MCU核心控制模块通过定时器定时功能每0.5 ms进行AD采样1次.同时,把信息显示模块显示信息的刷新率也设为2 000 Hz,做到MCU核心控制模块的AD采样频率和信息显示模块的信息刷新率一致,保证监测信息的实时性.
灌溉泵在无人值守的情况下运行时,若监测人员要对灌溉泵进行远程监测,就需要通过无线通讯实现监测信息传递.灌溉泵智能运行监测系统针对性设计了GPRS通讯模块,以实现MCU核心控制模块和信息显示模块中的Android移动客户端之间的无线通讯.GPRS通信模块以ATK-SIM900芯片作为通讯芯片,模块照片如图9所示.
图9 GPRS通讯模块
GPRS通讯模块通过串口与MCU核心控制模块相连,并通过串口接收单片机发送的AT指令控制以进行工作.考虑灌溉泵运行现场复杂电磁环境的影响,GPRS通讯模块选择数据传输过程相对稳定的基于AT指令的Text mode短信发送方式与Android移动客户端进行数据通讯.GPRS通讯模块的工作流程如图10所示,具体描述如下:① GPRS通讯模块接受MCU核心控制模块通过串口向发送的AT指令“AT+CMGF”,即选择通过短信发送的方式与Android移动客户端进行数据交互.并设置“AT+CMGF=1”,即选择通讯数据的数据类型为文本;② 接收AT指令“AT+CSCS=GSM”,设置TE字符集;③ 接收AT指令“AT+CMGS=“xxxxxxxxxxx””,其中“xxxxxxxxxxxx”指Android移动客户端所安装的手机的手机号,例如AT+CMGS=“18361817375”;④ MCU核心控制模块通过GPRS通讯模块向Android客户端发送包含灌溉泵运行参数信息的数组,数组发送完毕后,GPRS通讯模块返回“+CMGS:xx”,表示数据发送成功.
图10 GPRS通讯模块工作流程图
通过上述步骤,MCU核心控制模块即可通过GPRS通讯模块向Android移动客户端发送监测信息.
为实时显示灌溉泵运行信息,在模块化设计上以LCD屏和Android移动客户端作为灌溉泵智能运行监测系统的2种监测信息显示平台.
LCD屏即薄膜晶体管液晶显示屏,设计的灌溉泵智能运行监测系统所选用的LCD屏尺寸为2.8寸,显示分辨率为320×240,通过16位数据线及5位信号线与MCU核心控制模块相连.与其他嵌入式屏显设备相比,LCD屏占用单片机的IO口多,占用单片机的内存资源大,但信息传输速度快,实时性好,抗干扰性强.故灌溉泵智能运行监测系统选用LCD屏作为监测信息的显示平台之一.在软件设计上,由于LCD屏的外部连接和控制时序与SRAM设备类似,故可以直接将LCD当做SRAM设备,并通过单片机的FSMC控制器对其进行控制操作.反映在程序编写上,直接在keil平台调用ST官方提供的FSMC相关库函数即可对LCD屏的显示界面进行开发.LCD通讯端口如图11所示.
为实现灌溉泵运行信息的远程监测,通过搭建Android Studio开发环境构建了Android移动客户端作为远程监测信息显示平台.Android移动客户端图层包括视图层和业务处理层.视图层主要负责灌溉泵各项运行监测信息的显示.业务处理层主要负责Android移动客户端与GPRS通讯模块之间的数据交互,即GPRS通讯模块将计算处理好的灌溉泵实时运行参数通过Android广播机制发送至Android移动客户端.Android移动客户端图层分布及其功能结构如图12所示.
图12 Android移动客户端图层
Android移动客户端与GPRS通讯模块数据交互的具体流程如下:根据Android系统信息广播机制,当Android客户端收到GPRS通讯模块发送的包含灌溉泵运行参数信息的短信时会产生一条action属性值为andriod.Provider.Telephone.SMS的响应广播,该广播的Intent中包含了灌溉泵的运行参数信息,在业务处理层中注册对应事件的Broadcast Receiver子类,即可对短信信息进行解码,获取广播信息中的灌溉泵运行参数信息.文中在Android移动客户端开发过程中,设计了Broadcast Receiver的子类SMSBroadcast Receiver,并对SMSBroadcast Receiver中的onReceiver()函数进行了修改,将在AndriodManifest.xml 中注册的广播接收类属性与响应广播属性设置为一致.通过上述操作可对与短信相应的广播进行数据解码,将解码得到的信息输入onReceiver()后,即可获取灌溉泵的运行参数信息.Android客户端短信处理流程如图13所示.
图13 Android移动客户端短信处理流程图
DC-DC电路如图14所示.
图14 DC-DC转换电路
灌溉泵智能运行监测系统的各功能模块中,MCU核心控制模块需要外接+5 V电压;驱动电动机电压电流信号采集模块中的霍尔电压传感器和霍尔电流传感器需要外接±15 V电压,AD采集通路上的MAX291运放需要外接±5 V电压,水质监测模中的YSI 6920V2水质监测探头需要外接+12 V电压.根据上述各功能模块的供电需求,设计供电模块以提供±5 V,±15 V,12 V 5路输出电压.
选用ATX0250F5WA电脑电源作为供电模块的主体部分,该电脑电源可提供+3.3 V,+5 V,±12 V 4路输出电压.-5 V,±15 V 3路输出电压由基于TPS5340芯片设计的DC-DC转换电路外接电脑电源提供的+12 V电压转换而得.
为验证灌溉泵智能运行监测系统的可靠性,文中搭建了试验台并设计了验证试验方案.
验证试验所选用的灌溉泵模型为IS-65-50-160型单级单吸离心泵,其具体参数:设计流量Qd=50 m3/h,设计扬程Hd=34 m,额定转速N=2 930 r/min,效率η=72.8%,叶片数Z=6.
图15为试验台示意图.为验证灌溉泵智能运行监测系统的可靠性,另行搭建了1套对比监测系统以进行数据对比.对比监测系统的测量设备主要包括WIKA S-10型压力传感器、SGDN-50动态扭矩、LDG-SIN-CN65-Z2电磁流量计及NI USB-6343数据采集卡.在试验台出口管路上安有电磁阀,通过控制其开度以调节流量,可以对这2套系统在灌溉泵小流量工况运行,设计流量工况下运行及大流量工况下运行时的运行监测数据进行比对分析.由于对灌溉泵0~65 m3/h的全流量范围内的不同工况进行了可靠性试验验证,且对比系统所用测量设备的测量精度高于文中对灌溉泵监测的精度要求,故2套设备同时同台条件下进行重复试验后所得的数据和对比结果具有代表性,可以用来检验灌溉泵智能运行监测系统对转速、流量、扬程及效率进行监测的可靠性.
图15 试验台示意图
对于监测系统水质监测信息的可靠性验证,在灌溉用水加入储水罐之前直接使用YSI 6920V2水质监测探头对灌溉用水进行了水质信息采样,并与灌溉泵运行时灌溉泵智能运行监测系统所获取的灌溉用水水质信息进行对比分析.文中取5种典型水质分别进行了验证试验,由于2套系统使用的是相同型号的水质监测设备,且水质监测探头对水温、pH、光学溶解氧、电导率、浊度的监测精度分别达到了±0.15 ℃,±0.1,±0.2~0.6,±0.5%以及2 NTU,超出文中对水质的监测精度要求,故水质监测对比试验也具有代表性.
通过改变电磁阀开度使灌溉泵在全流量范围内14个不同的工况点下运行,每个工况点下两套系统同时采集数据10 s,并分别取平均值.全流量范围下变工况试验重复实施5次,再取平均值.所获灌溉泵智能运行监测系统和对比系统监测的部分数据如表1,2所示.
表1 灌溉泵智能运行监测系统监测数据
为量化对比灌溉泵智能运行监测系统监测数据的准确度,定义δ为灌溉泵智能运行监测系统监测数据的相对误差,其表达式为
(7)
式中:m1,m2分别为灌溉泵智能运行监测系统和对比监测系统所监测的灌溉泵运行参数值.计算所得的相对误差如图16所示.
表2 对比监测系统监测数据
图16 两系统泵性能参数相对误差图
灌溉泵智能运行监测系统所监测的灌溉泵转速、流量、扬程、效率的相对误差均控制在0.5%以下,符合国家泵性能测试的最低标准.来自供电模块的杂波是导致误差产生的主要因素,灌溉泵智能运行监测系统的供电电压来自于供电模块中的电脑电源部分和DC-DC电路部分,两者受复杂电磁环境的干扰,会使供电电压产生杂波,由于灌溉泵智能运行监测系统是从驱动电动机输入电信号中提取灌溉泵性能参数的,而供电杂波与输入电信号相调制,诱生谐波,导致了灌溉泵智能运行监测系统在转速、流量、扬程及效率的监测结果上存在轻微误差.
在水质监测模块验证试验上,文中取5种不同的水质进行了监测和数据对比分析,每种水质下的验证试验重复实施5次,再取平均值,两套系统的数据对比如表3所示,表中θ为水温,DO为溶解氧,EC为电导率,TUR为浊度.
表3 水质信息监测对比
通过计算可知,监测系统监测的水质信息的相对误差也能够控制在0.5%以内.灌溉用水在剧烈流动时,其水温、pH、溶氧、电导、浊度会轻微改变,这是导致此误差产生的主要原因,但误差在可接受范围内,不影响系统判别灌溉用水水质的正常功能.
文中基于嵌入式单片机技术,初步设计了一种灌溉泵智能运行监测系统,通过系统试验验证,总结结论如下:
1)灌溉泵智能运行监测系统样机对灌溉泵的各项运行参数进行监测的结果相对误差都控制在0.5%以内.灌溉泵智能运行监测系统的监测数据刷新率稳定保持在2 000 Hz,监测灌溉泵运行参数的功能基本实现.
2)相较于传统的泵运行监测设备,灌溉泵智能运行监测系统增加了水质监测功能,且仅从驱动电动机电信号中获取灌溉泵性能参数,减少了侵入式传感器的使用,整个系统集成程度高,结构紧凑,适用于复杂的灌溉作业环境,提高了灌溉泵的智能化水平.
3)通过对灌溉泵进行实时监测,可以及时判断灌溉泵所处的工作状态并进行相应调整,以优化灌溉泵运行,减少灌溉泵在非设计工况下工作造成的能源浪费.
4)通过对灌溉用水水质进行监测,可以判断灌溉用水是否符合灌溉标准,避免类似于碱水的劣质水源污染土壤,危害粮食安全.