董佳,王志強(qiáng),蓋素麗,檀改芳,吳青峰
(1.河北省科學(xué)院應(yīng)用數(shù)學(xué)研究所,石家莊市,050081;2.河北省信息安全認(rèn)證技術(shù)創(chuàng)新中心,石家莊市,050081;3.太原科技大學(xué)電子信息工程學(xué)院,太原市,030024)
我國(guó)人口約占世界的20%,但淡水資源只有全球的5%~7%,水資源短缺已對(duì)我國(guó)經(jīng)濟(jì)可持續(xù)發(fā)展和生態(tài)平衡構(gòu)成了嚴(yán)重威脅。不管是相對(duì)于農(nóng)業(yè)用水量還是相對(duì)于全國(guó)用水量,農(nóng)業(yè)灌溉用水都是真正的用水大戶。因此,節(jié)水灌溉研究一直是一項(xiàng)重要而又緊迫的任務(wù)[1]。目前我國(guó)農(nóng)田的灌溉方式仍然以大水漫灌為主,灌溉效率低、水資源浪費(fèi)嚴(yán)重、勞動(dòng)強(qiáng)度大、投入產(chǎn)出比低。隨著農(nóng)業(yè)集約化的不斷推廣,土地流轉(zhuǎn)和家庭農(nóng)場(chǎng)經(jīng)營(yíng)模式的不斷擴(kuò)張,發(fā)展現(xiàn)代農(nóng)業(yè)節(jié)水高新技術(shù)逐步成為保障我國(guó)人口高峰期食物安全、水安全、生態(tài)安全及整個(gè)國(guó)家安全的重大戰(zhàn)略[2]。
近年來(lái),國(guó)內(nèi)外專家對(duì)自動(dòng)灌溉控制系統(tǒng)的研究主要聚焦于兩個(gè)方面,一是針對(duì)具體的農(nóng)作物,利用專家控制算法及管理系統(tǒng),實(shí)現(xiàn)自動(dòng)灌溉,達(dá)到節(jié)水提質(zhì)的目的;二是針對(duì)溫室、農(nóng)田等特定的環(huán)境,利用智能控制算法,實(shí)現(xiàn)特定環(huán)境下的灌溉優(yōu)化控制。徐凱等根據(jù)葡萄的需水規(guī)律,基于模糊控制算法實(shí)現(xiàn)葡萄的精準(zhǔn)閾值灌溉,不僅減少灌溉用水量,而且有效提升了葡萄品質(zhì)[3]。王興旺等[4]基于無(wú)線傳感網(wǎng)絡(luò)設(shè)計(jì)了一套針對(duì)水晶梨的灌溉控制系統(tǒng),利用PID-LPF控制算法,提升了灌溉精度和效率及水晶梨外觀品質(zhì)和營(yíng)養(yǎng)品質(zhì)。Shinde等[5]對(duì)甘藍(lán)分別使用滴灌和微噴灌等灌溉方法進(jìn)行試驗(yàn)對(duì)比,得出甘藍(lán)在不同灌溉條件和灌溉水平下的表現(xiàn)規(guī)律,找出了最適宜的作物灌溉方法。趙亮等[6]針對(duì)溫室環(huán)境下的灌溉系統(tǒng),基于自適應(yīng)Fuzzy-PID控制算法,實(shí)現(xiàn)了灌溉的自動(dòng)化及智能化。
本文針對(duì)農(nóng)田中不同作物的分片種植場(chǎng)景,設(shè)計(jì)了一種基于STM32單片機(jī)的自動(dòng)灌溉控制系統(tǒng)[7-13],能夠根據(jù)不同作物的需水量和施肥量,實(shí)現(xiàn)精準(zhǔn)灌溉,提升了灌溉系統(tǒng)的自動(dòng)化、智能化水平,達(dá)到了提高水資源利用率、降低勞動(dòng)強(qiáng)度、節(jié)省成本的目的。
本系統(tǒng)由中心控制模塊、水泵控制模塊、施肥泵控制模塊、電磁閥控制模塊、人機(jī)交互模塊組成。通過(guò)人機(jī)交互模塊輸入初始參數(shù),對(duì)系統(tǒng)進(jìn)行初始化,人機(jī)交互模塊下發(fā)控制指令給中心控制模塊,中心控制模塊通過(guò)數(shù)字IO或通信指令驅(qū)動(dòng)水泵、施肥泵、電磁閥控制模塊,實(shí)現(xiàn)灌溉設(shè)備的控制和系統(tǒng)參數(shù)采集;中心控制模塊以通信指令的方式給人機(jī)交互模塊反饋系統(tǒng)參數(shù),實(shí)現(xiàn)系統(tǒng)參數(shù)的監(jiān)測(cè)。系統(tǒng)總體框圖如圖1所示。

圖1 系統(tǒng)總體框圖Fig.1 Overall system block diagram
中心控制模塊作為系統(tǒng)的邏輯中心,選用STM32F103VET6芯片作為控制器,該芯片使用Cortex-M3作為硬件架構(gòu),采用DC3.3 V電壓供電,具有512 kB Flash,64 kB RAM,最大時(shí)鐘頻率高達(dá)72 MHz,輸入/輸出端口為80個(gè),有多種外設(shè)接口,能夠滿足系統(tǒng)設(shè)計(jì)需求。該模塊的主要電路包括控制器電路、供電電路、CAN總線收發(fā)器電路。
控制器原理圖如圖2所示。
該模塊使用控制器的32個(gè)輸入/輸出管腳驅(qū)動(dòng)電磁閥控制模塊;使用PD5和PD6管腳通過(guò)UART方式與人機(jī)交互模塊建立通信,接收控制指令,上傳系統(tǒng)參數(shù);使用PA11和PA12管腳連接CAN總線收發(fā)器,與水泵控制模塊和施肥泵控制模塊建立通信,下發(fā)控制指令,采集系統(tǒng)數(shù)據(jù);采用外部晶振提供8 MHz時(shí)鐘信號(hào),經(jīng)過(guò)控制器內(nèi)部倍頻后,使控制器在72 MHz高頻下工作;設(shè)置復(fù)位按鍵K1,當(dāng)按下K1時(shí),將NRST管腳的電平拉低,控制器復(fù)位。
采用UA78M33CKVURG3穩(wěn)壓芯片將系統(tǒng)供電電壓DC24 V電壓轉(zhuǎn)換為控制器所需供電電壓DC3.3 V,電壓變換電路如圖3所示。

圖3 電壓變換電路Fig.3 Voltage conversion circuit diagram
采用SN65HVD230D芯片作為CAN總線收發(fā)器,收發(fā)器的TXD、RXD分別與控制器的PA12和PA11管腳連接,在收發(fā)器的輸出端傳輸線兩端并聯(lián)一個(gè)120 Ω的電阻,可以減小傳輸過(guò)程中的信號(hào)反射,提高通信穩(wěn)定性[14-15]。CAN總線收發(fā)器電路如圖4所示。

圖4 CAN總線收發(fā)器電路Fig.4 CAN bus transceiver circuit diagram
施肥泵控制模塊與水泵控制模塊的硬件設(shè)計(jì)完全相同,通過(guò)設(shè)備通信地址來(lái)區(qū)分控制對(duì)象。該模塊用于控制施肥泵的啟停及運(yùn)行狀態(tài)的監(jiān)控。該模塊采用STM32F072CBT6作為控制器,設(shè)計(jì)了控制器電路、數(shù)字量輸入/輸出電路、模擬量輸入/輸出電路、供電電路、CAN總線收發(fā)器電路。數(shù)字量輸入/輸出電路如圖5所示。模擬量輸入/輸出電路如圖6所示。

圖5 數(shù)字量輸入/輸出電路Fig.5 Digital input/output circuit diagram

圖6 模擬量輸入/輸出電路Fig.6 Analog input/output circuit diagram
數(shù)字量輸入/輸出電路用于采集變頻器的運(yùn)行狀態(tài)和啟動(dòng)變頻器,數(shù)字量輸出電路選用NUD3124LT1G負(fù)載驅(qū)動(dòng)芯片,內(nèi)置MOSFET、ESD保護(hù)和穩(wěn)壓二極管,當(dāng)管腳G接收到控制器輸出的電壓驅(qū)動(dòng)信號(hào)時(shí),驅(qū)動(dòng)芯片內(nèi)部MOSFET的漏極和源極導(dǎo)通,即驅(qū)動(dòng)芯片的管腳D和管腳S導(dǎo)通,繼電器線圈的A2端與地導(dǎo)通,線圈吸合,常開(kāi)觸點(diǎn)K1閉合,驅(qū)動(dòng)信號(hào)送達(dá)變頻器。變頻器的運(yùn)行狀態(tài)反饋信號(hào)是AC220V電壓信號(hào),因此數(shù)字量輸入電路選用PA2501L-1高隔離電壓光耦進(jìn)行強(qiáng)弱電信號(hào)隔離,為了降低光耦被擊穿的風(fēng)險(xiǎn),減小電路功耗,在反饋電壓輸入端增加二極管V13和穩(wěn)定電壓為100 V的穩(wěn)壓管V11,V13的單向?qū)щ娦允沟霉怦钶斎攵说男盘?hào)只有正弦波的正半波,V11的穩(wěn)壓特性,使得流過(guò)光耦輸入端的電流不到3 mA。
模擬量輸入/輸出電路用于采集肥液流量和設(shè)定變頻器的給定運(yùn)行頻率,輸入輸出量均為DC4~20 mA 電流信號(hào)。模擬量輸入電路選用AD8542ARZ作為A/D轉(zhuǎn)換芯片,該芯片有兩路差分輸入,12位采樣精度,具有極低的輸入偏置電流,適用于具有較高源阻抗的應(yīng)用。采用該芯片將DC4~20 mA電流信號(hào)變換為DC0~2.7 V電壓信號(hào)送到控制器,在電路中增加V7、V8齊納二極管,防止過(guò)電壓[16-17]。模擬量輸出電路選用XTR115U芯片,將控制器輸出的DC0~3.3 V 電壓信號(hào)變換為DC4~20 mA電流信號(hào),利用該芯片VREF管腳的DC2.5 V電壓,產(chǎn)生DC4 mA的偏置電流,選用B2424LS-1WR2隔離電源模塊為XTR115U芯片提供DC24 V電壓,保證供電的穩(wěn)定性。
電磁閥控制模塊選用ULN2803AN達(dá)林頓管驅(qū)動(dòng)芯片[18],該芯片適用于低邏輯電平數(shù)字電路和較高的電流/電壓之間的接口。驅(qū)動(dòng)芯片接收中心控制單元輸出的DC3.3V電壓信號(hào),使輸出端與地導(dǎo)通,繼電器線圈吸合,指示燈點(diǎn)亮,常開(kāi)觸點(diǎn)閉合,控制電磁閥導(dǎo)通。電磁閥控制電路如圖7所示。

圖7 電磁閥控制電路Fig.7 Solenoid valve control circuit diagram
系統(tǒng)軟件設(shè)計(jì)包括上位機(jī)部分和下位機(jī)部分,上位機(jī)部分軟件設(shè)計(jì)主要是人機(jī)交互界面的設(shè)計(jì),下位機(jī)軟件設(shè)計(jì)主要包括邏輯控制程序和通訊程序的設(shè)計(jì)。
系統(tǒng)上電后,首先進(jìn)行初始化,對(duì)參數(shù)進(jìn)行設(shè)置,判斷系統(tǒng)的運(yùn)行狀態(tài),確保系統(tǒng)可以正常工作。初始化后,運(yùn)行主程序,實(shí)現(xiàn)水泵、施肥泵、電磁閥的控制及運(yùn)行狀態(tài)采集,故障判斷與處理,通信及協(xié)議解析等功能。系統(tǒng)主程序流程圖如圖8所示。

圖8 主程序流程圖Fig.8 Main program flowchart
上位機(jī)作為人機(jī)交互部分,用來(lái)輸入控制指令,監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài)。通過(guò)上位機(jī)可以設(shè)定系統(tǒng)的運(yùn)行參數(shù),實(shí)現(xiàn)現(xiàn)場(chǎng)設(shè)備的手動(dòng)單控、手動(dòng)組控、計(jì)劃輪灌三種控制模式,并能夠監(jiān)測(cè)系統(tǒng)的運(yùn)行狀態(tài)。人機(jī)交互主界面如圖9所示。

圖9 人機(jī)交互主界面Fig.9 Man-Machine interface
系統(tǒng)設(shè)計(jì)完成后,基于實(shí)驗(yàn)室CS4000過(guò)程控制試驗(yàn)裝置對(duì)系統(tǒng)進(jìn)行測(cè)試。試驗(yàn)裝置有6個(gè)電磁閥、1個(gè)水泵、1個(gè)壓力傳感器、1個(gè)變頻器、1個(gè)流量計(jì)、1個(gè)電動(dòng)調(diào)節(jié)閥。利用這套試驗(yàn)裝置對(duì)系統(tǒng)進(jìn)行測(cè)試,如圖10所示。
設(shè)定主管路初始?jí)毫?0 Pa,電動(dòng)調(diào)節(jié)閥初始開(kāi)度為60%,施肥泵流量為0.05 m3,通過(guò)調(diào)節(jié)支路中的手動(dòng)閥門來(lái)改變主管路中的壓力,測(cè)試系統(tǒng)的調(diào)節(jié)能力;當(dāng)肥液流量達(dá)到設(shè)定值后,電動(dòng)調(diào)節(jié)閥開(kāi)度應(yīng)變?yōu)?。經(jīng)過(guò)測(cè)試,電磁閥能夠正常開(kāi)閉;系統(tǒng)受到擾動(dòng)后,經(jīng)過(guò)一定的過(guò)渡時(shí)間,主管路仍能保持設(shè)定壓力;肥液流量達(dá)到設(shè)定值后,電動(dòng)調(diào)節(jié)閥關(guān)閉,即開(kāi)度變?yōu)?,證明系統(tǒng)的功能測(cè)試合格。
通過(guò)設(shè)定不同主管路壓力,測(cè)試系統(tǒng)模擬量輸入輸出精度,4~20 mA對(duì)應(yīng)0~50 Pa,測(cè)試數(shù)據(jù)如表1所示,模擬量輸入輸出對(duì)比曲線如圖11所示。

表1 模擬量測(cè)試數(shù)據(jù)Tab.1 Test data of analog quantity Pa

圖11 模擬量對(duì)比曲線圖Fig.11 Comparison curves of analog quantity
在測(cè)試試驗(yàn)中,常溫下選取10個(gè)壓力測(cè)試點(diǎn),分別測(cè)量模擬量輸出值,并與理論輸出值進(jìn)行比較,根據(jù)數(shù)據(jù)分析,模擬量理論輸出值與實(shí)際輸出值的最大誤差為7.5%;壓力傳感器輸出值與模擬量輸入值的最大誤差為3.7%,從圖11中可以觀察到,模擬量輸出值最大誤差發(fā)生在壓力值為0 Pa時(shí),模擬量輸入值最大誤差發(fā)生在50 Pa時(shí),最大誤差在允許范圍內(nèi),滿足系統(tǒng)要求。
針對(duì)大規(guī)模農(nóng)田分片種植不同作物的灌溉需求,設(shè)計(jì)了一種基于STM32的自動(dòng)灌溉控制系統(tǒng)。該系統(tǒng)包括4個(gè)模塊,其中電磁閥模塊、水泵控制模塊、施肥泵控制模塊可進(jìn)行擴(kuò)展,能夠滿足不同面積農(nóng)田的灌溉需求;通過(guò)人機(jī)交互界面可實(shí)現(xiàn)電磁閥的分組,根據(jù)專家經(jīng)驗(yàn)設(shè)定論管計(jì)劃,實(shí)現(xiàn)不同作物的精準(zhǔn)灌溉。測(cè)量10個(gè)壓力測(cè)試點(diǎn)的數(shù)據(jù),模擬量理論輸出值與實(shí)際輸出值的最大誤差為7.5%;壓力傳感器輸出值與模擬量輸入值的最大誤差為3.7%。該系統(tǒng)提升了灌溉的自動(dòng)化和信息化程度,提高了水資源的利用率,降低了勞動(dòng)強(qiáng)度,滿足大規(guī)模農(nóng)田分片種植的灌溉需求,具有一定社會(huì)效益和經(jīng)濟(jì)效益。
中國(guó)農(nóng)機(jī)化學(xué)報(bào)2023年6期