崔海嵩 田靜靜 林嘯嘯 張仕遠 倪冰倩
摘 要:隨著智能農業技術的發展,傳統灌溉技術存在著明顯不足,尤其是在人力勞動方面太過依賴。目前智能化灌溉方式通常需要人為管理和調整且通常存在著許多未知問題。為了避免問題出現的同時無法及時得知以及相同問題無法自動執行解決方案,以此開發了一種分布式物聯網控制系統對原有的智能化灌溉設備進行改進。
關鍵詞:物聯網;單片機;灌溉系統
一、研究背景
當前,智能灌溉模型是通過使用單片機和相應的傳感器對農林狀態進行檢測。通過單片機對當前環境的監控和初試設定值的比較,得到當前應該執行的固定動作。以此形成的自動化灌溉系統無法靈活運用到各種農作物之間,對于環境的檢測十分有限,不利于拓展和維護。為解決這一問題,對單片機進行了改進,加入通信模塊和更多傳感器。
二、研究意義
通過對智能灌溉系統的優化,能夠大幅度提升該系統的適應能力。使耕種可以從體力勞動變成腦力勞動,對于同一種問題實現一種可靈活變化的解決方案。即開發出一種能夠拋出異常的灌溉模式,當出現未知農業環境或錯誤時,能夠及時上報并嘗試采用備用解決方案。以此提升我國糧食參量和農業種植效率,更有利于水資源的有效利用,對水的循環使用提供了一定幫助。
異常問題處理是系統的一大研究內容,對于無法解決的異常,當存在大面積種植時,人工現場處理非常耗時耗力,效率極低,使用遠程微控系統與智能灌溉系統結果,達到遠程實體操控的目的,為農林灌溉和異常處理提供了極大方便,通過對于惡劣環境的應對能力也得到了提升。
三、研究方案
設計相應電路模型,模擬電路運行。確保關鍵電路無故障,驅動相應主板位置正常后可嘗試對主控板安裝、部署。主控制板可采用相應模擬器實現程序模擬,通過對聯網模塊、溫度檢測、異常處理、遠程控制之間信號傳輸及相關問題處理,得到相應的解決方案。設計不同錯誤對應的解決方案以及代碼,設計相應的錯誤解決方案和默認錯誤解決方案,對設計程序進行整體規劃,必要之處做出相應的解釋,最終得到系統設計方案,確定出智能灌溉系統的升級方案。
根據方案進行系統程序設計。首先設計服務端測試系統,用于接收客戶端發來的一系列程序參數和錯誤代碼,并將其展示輸出。客戶端系統使用C++語言設計,通信模塊使用ESP8266網絡通信模塊對服務器發送信息,服務器擁有固定IP地址用于和客戶端形成穩定通信。數據加工處理是在單片機和Arduino結合下實現的功能,Arduino作為主管理器,充當系統管理器,操控并命令單片機執行長時間工作,單片機也充當多線程服務中的子線程。單片機實時監控單個功能模塊的變化和實現對單個功能的操控,Arduino獲取單片機返回的信息,并對其進行加工處理后決定下發指令。對于異常處理Arduino發送錯誤代碼到ESP8266模塊,此時ESP8266模塊充當網絡代理,作為Arduino無線網卡,將其發送來的指令進一步加工或是不加工,通過網絡上傳到服務器端,服務器端獲得相應指令后執行相應的異常處理方案,通過將錯誤異常保存在系統日志中。
異常處理是服務端主動向客戶端發出的特殊指令,服務端下發監控程序,此時客戶端分配自動與服務端建立的端口,用于視頻流傳輸,服務端開始對客戶端發出的視頻流進行實時監控刷新。對于遠程微控服務指令,客戶端會匹配本地微控系統,啟動系統后,微控系統與客戶端ESP8266連接,此時ESP8266不再直接與Arduino形成網絡代理,而是作為微控系統的遠程控制網卡,遠程微控時客戶端和服務端會建立穩定連接,服務端監聽微控狀態,客戶端同樣實時監控自身行為狀態,隨時準備處理服務端發來的控制指令。微控系統接收到客戶端指令后通過執行相應動作模擬人為控制,嘗試在人為控制下解決未知異常。
智能灌溉系統通常不發生未知異常,需要面臨的問題還有對于多種環境的監控和管理。系統會根據當前客戶端信息匹配相應的灌溉方案和異常指令,指令和解決方案均可在遠程服務端進行操作,客戶端獲取灌溉方案是在客戶端與服務端建立連接成功后發生的,當客戶端啟動成功后會首先向服務器發送自身信息,此時服務端在對客戶端信息完成驗證后隨后下發系統配置,客戶端根據接收到的系統配置對內部參數進行調整,實現多功能環境下的培育種植。
針對植物變化周期培育方式,本系統設置了客戶端系統重啟指令,該指令在解決客戶端啟動問題同時也可以應用在不同周期種植方式不同的植物培養環境中,當植物處于不同生長周期時,服務端對客戶端發送重啟命令,對客戶端重新下發初試配置,客戶端得到初試配置后重新對內部參數進行微調,以實現對當前種植環境的模式改變。
四、研究成果
客戶端使用C++程序對Arduino和ESP8266進行燒錄,單片機采用C語言編程,微控程序采用Arduino及舵機結合,與ESP8266建立連接,攝像模塊與ESP8266連接實現網絡傳輸。
服務端采用JAVA、Python結合,實現數據通信及數據呈現,搭建出用戶微調界面和系統狀態檢測見面,其中JAVA程序用于實現客戶端與服務端的通信及異常處理,負責將狀態數據和系統數據存入日志文件,Python程序是服務端與管理員之間的通信工具,用于對服務端的輕微控制和客戶端系統的實時監控。
網絡通信采用互聯網通信、局域網通信聯合,實驗時采用局域網進行調試,客戶端內部之間也采用局域網通信,客戶端與服務端的遠程連接使用互聯網公網IP通信,滿足遠程操控的需求。
通過模型試驗,最終對植物生長數據的統計得出,相較于升級前的智能灌溉系統,新的智能灌溉方案擁有更強的適應能力,對植物的不同生長周期和系統穩定性處理都具有良好的表現,植物生長狀態更好。
五、結語
升級后的智能灌溉系統擁有更強的環境適應能力和更穩定的系統性能,支持更多的植物培養方案同時擁有更直觀的數據結果體現。針對數據系統的升級和通信服務的改進,智能灌溉系統在實際測試中做出了更優的表現。當前農業環境下通過智能灌溉系統的應用能夠對農業種植和管理提供極大的便利,智能農業系統的迭代升級隨后也將考慮接入決策樹方案,使程序在多特征下能夠預測出灌溉服務標簽,同時可將接入定位系統,實現更直觀的農林狀態監控。
參考文獻:
[1] 王驥,沈玉立,周文靜.基于無線傳感器網絡的智能灌溉系統研究[J].現代電子技術, 2008, 31(15):4.DOI:10.3969/j.issn.1004-373X.2008.15.031.
[2] 魏恒文,楊培嶺.日光溫室黃瓜智能灌溉控制指標研究[J].灌溉排水學報, 2008, 027(003):63-65.DOI:CNKI:SUN:GGPS.0.2008-03-018.
[3] 張觀山,束懷瑞,高東升,等.基于ZigBee和GPRS的遠程果園智能灌溉系統的設計與實現[J].山東農業大學學報:自然科學版, 2012(3):4.DOI:10.7666/d.d144184.
[4] 黎江,王祥寧,張倩.遠程無線傳感器技術在智能灌溉監控中的應用[J].農機化研究, 2010(3):7.DOI:10.3969/j.issn.1003-188X.2010.03.050.
[5] 鄧昀,程小輝.智能灌溉系統的無線傳感器網絡設計[J].自動化儀表, 2013, 34(2):5.DOI:10.3969/j.issn.1000-0380.2013.02.020.
[6] 孫穎奇,袁穎華,吳秋明,等.低功耗智能灌溉控制閥的研究[C]//大數據時代的信息化建設——.2015.
[7] 藍宇,黃中舟,朱彥博,等.基于STM32和樹莓派智能灌溉系統的設計與實現[J].? 2021.DOI:10.16667/j.issn.2095-1302.2021.07.033.
作者簡介:崔海嵩,男,安徽宿州人,宿州學院管理學院2021級本科生。田靜靜,女,安徽六安人,宿州學院商學院2021級本科生。林嘯嘯,男,安徽銅陵人,宿州學院管理學院教學秘書,碩士。張仕遠,男,安徽阜陽人,宿州學院信息工程學院2020級本科生。 倪冰倩,女,安徽六安人,宿州學院信息工程學院2020級本科生。
基金項目:國家級大學生創新創業訓練計劃(項目編號202310379001);省級大學生創新創業訓練計劃(項目編號 S202310379142)。