許鵬,王先宏,賈民政
(北京工業(yè)職業(yè)技術(shù)學院 電氣與信息工程學院,北京, 100042)
近年來,我國在智慧溫室環(huán)境因素的精確調(diào)控領(lǐng)域發(fā)展有了很大的進步,但真正能夠進行全方位應用的基本都是大型化的植物工廠或農(nóng)場,中小型和個人農(nóng)場普及率還是很低。計算機智能控制、通信技術(shù)、電氣自動化等高新技術(shù)與傳統(tǒng)農(nóng)業(yè)的契合度還很低。一個主要原因為農(nóng)業(yè)智能化設(shè)施的應用開發(fā)采用的軟硬件模式以及維護等成本相對較高,系統(tǒng)的可擴展性較差,普通中小規(guī)模用戶基本無力承擔。
基于我國農(nóng)業(yè)發(fā)展中的實情,根據(jù)農(nóng)作物生長適宜生態(tài)條件,采用低成本、開發(fā)維護簡單的開源微控制器單元作為核心大腦,利用各種外圍傳感器模塊,準確采集環(huán)境因子(光、熱、水、氣、肥等)以及作物生育狀況等參數(shù),建立相關(guān)作物生長環(huán)境的數(shù)學模型,并對數(shù)據(jù)進行統(tǒng)計分析、存儲,根據(jù)作物生長所需最佳條件,設(shè)計動態(tài)人工智能控制算法,使有關(guān)系統(tǒng)、裝置及設(shè)備有規(guī)律運作, 確保一切生產(chǎn)活動科學、有序、規(guī)范、持續(xù)地進行。從而使廣大農(nóng)戶能夠切實的享受到智慧農(nóng)業(yè)發(fā)展的果實。
綜上,開發(fā)一套成本低廉、使用簡易且又能滿足數(shù)字化、智能化控制要求的新型溫室監(jiān)測、調(diào)控裝置,真正能讓技術(shù)嵌入到普通溫室種植用戶中去,是有其非凡意義的。既能滿足普通單片機控制器的所有控制要求,又兼顧了多媒體電腦的諸多處理能力。系統(tǒng)軟件設(shè)計可實現(xiàn)模塊化調(diào)用,功能升級方便,可操控性強。該設(shè)計系統(tǒng)完全可滿足對作物生長環(huán)境的智能化控制和作物的科學管理,實現(xiàn)資源的優(yōu)化配置,以達到作物穩(wěn)產(chǎn)、高產(chǎn)、高效的現(xiàn)代精細化農(nóng)業(yè)要求。
系統(tǒng)設(shè)計分為兩部分:
第一部分為總體監(jiān)控設(shè)備部。設(shè)一臺工控主機,承擔全場區(qū)的總體監(jiān)視功能。管理人員可隨時通過主機調(diào)取各溫室的各采集單元環(huán)境因子數(shù)據(jù),生成趨勢曲線、報表等實時數(shù)據(jù)。同時總監(jiān)部也具有控制全局控制權(quán)限,在高級用戶登錄后,便可對各控制部的參數(shù)進行修改或執(zhí)行控制動作。界面使用HMI液晶觸摸或顯示大屏。利用組態(tài)軟件作為開發(fā)IDE來實施開發(fā)。
第二部分為各溫室控制部。各控制部以開源控制器Raspberry Pi 4B作為核心控制服務(wù)器。該控制器為卡片式電腦,擁有具有豐富I/O接口和開發(fā)功能,使得開發(fā)的系統(tǒng)具有較強的移植性,便于系統(tǒng)后期一系列擴展需求。40針GPIO接口既有串行通訊接口,也包含了豐富的控制接口。可直接連接各種串行通信傳感器實時監(jiān)測數(shù)據(jù),并根據(jù)監(jiān)測的數(shù)據(jù)設(shè)置各種算法來實施控制卷簾步進電機、排氣風機的各運轉(zhuǎn)功能。
每個控制部的界面采用Python自帶GUI(圖形用戶接口)工具tkinter進行開發(fā)。圖形界面簡單直觀,適合中小型農(nóng)業(yè)現(xiàn)場控制區(qū)域部署。控制部核心嵌入了各農(nóng)作物的環(huán)境影響因子算法,可方便地根據(jù)設(shè)定條件,自動化、智能化地控制風機、電機等電氣設(shè)備。
該系統(tǒng)分為控制核心、傳感單元電路、控制電路三部分??刂坪诵牟捎瞄_源電腦控制平臺,平臺自帶GPIO控制接口。傳感單元包括通過485有線連接和無線Lora通信兩種方式。無線通信需要通過智能采集器進行485-Lora-485的協(xié)議轉(zhuǎn)換??刂破鲗崟r采集的數(shù)據(jù)進行分析、處理,采用模糊融合決策機制向相應的控制電路發(fā)出控制命令,及時調(diào)節(jié)溫室內(nèi)各種環(huán)境因子以達到精細化種植需要的各種設(shè)定條件。
控制部的功能:通過采集各點土壤溫濕度參數(shù),決策是否該對作物進行節(jié)水灌溉作業(yè)。灌溉溫濕度條件滿足冗余查詢條件時,停止灌溉作業(yè);溫室空氣溫濕度環(huán)境監(jiān)測參數(shù)作為對通風設(shè)備、空氣加溫加濕設(shè)備及卷簾機設(shè)備等是否啟動以及排風機組工作轉(zhuǎn)速狀態(tài)進行控制判別條件;光照傳感器單元作為卷簾步進電機工作狀態(tài)以及補光燈設(shè)備是否投入運行的判別條件,進行控制作業(yè);氣體傳感器可根據(jù)所種作物光合作用最佳需求CO2及特殊需求氣體條件進行監(jiān)測,當CO2氣體濃度低于一定條件時即可啟動氣體補充裝置進行二氧化碳施肥,當超標后即啟動排風電機組工作,從而實現(xiàn)智能化的動態(tài)調(diào)節(jié)作用。
圖3 溫室環(huán)境監(jiān)測組態(tài)窗口
總體監(jiān)測部分設(shè)置了各控制部部分的選擇界面,進入相應選擇界面后即可監(jiān)測該溫室的各項環(huán)境因子監(jiān)測數(shù)據(jù)。并開發(fā)了監(jiān)測趨勢線路圖,便于用戶在設(shè)定時間段內(nèi)從整體把握該因子的變化趨勢,為農(nóng)作物的生長和農(nóng)業(yè)研究提供重要的資料依據(jù)。
總體監(jiān)測部除了可以監(jiān)測各溫室的控制部數(shù)據(jù)外,也可向指定的或者總體控制部發(fā)送控制命令,進行總體控制。如一鍵關(guān)閉/停止,一鍵打開/啟動各子控制單元的功能,簡化操作步驟,縮短整體操控時間。
(1)傳感器模塊
該監(jiān)控系統(tǒng)包括光照、空氣溫濕度、CO2濃度、土壤溫濕度等傳感單元??蓪崟r監(jiān)測溫室中各環(huán)境因子。并根據(jù)控制策略控制灌溉、卷簾開合度、補光、加溫、加濕、CO2氣肥等一系列措施,動態(tài)調(diào)節(jié)各因子,滿足不同作物的生長需求,達到精細化種植的目的。
(2)多傳感器系統(tǒng)的敷設(shè)
485布線采用通用的8芯屏蔽雙絞線,可有效防止和屏蔽干擾??偩€上最多允許掛接128個總線設(shè)備,在不加中繼器的情況下,總線長度不大于1200m,如果更長請選用其它專用485/232轉(zhuǎn)換器或者加中繼器,并選用更粗的通訊電纜。對于溫室室內(nèi)設(shè)備來說已完全可滿足空間布線需求。
如果成本允許,也可直接用帶Lora通信的傳感器代替有線設(shè)備,直接同控制部和主監(jiān)測部通信。
采用485-Lora集中控制器作為組網(wǎng)核心,該裝置主要作用就是實現(xiàn)多-多的485/Lora之間的數(shù)據(jù)傳輸,將無線Lora協(xié)議轉(zhuǎn)換為485總線傳輸?shù)臉藴蔒odbus協(xié)議。如圖1總監(jiān)部設(shè)計圖所示,利用多個數(shù)據(jù)轉(zhuǎn)換裝置進行組網(wǎng),建立農(nóng)場自己的數(shù)據(jù)傳輸網(wǎng)絡(luò)。
圖1 總監(jiān)設(shè)備部設(shè)計方案框圖
圖5 485多設(shè)備接線示意圖
圖6 協(xié)議轉(zhuǎn)換裝置組網(wǎng)
系統(tǒng)聯(lián)動的控制方法采用一種融合粗糙集與證據(jù)理論的溫室無線傳感器網(wǎng)絡(luò)環(huán)境控制決策方法,首先應用無線傳感器網(wǎng)絡(luò)構(gòu)建溫室環(huán)境控制設(shè)施,采集溫室環(huán)境信息與控制執(zhí)行機構(gòu)運行;然后采用模糊C均值聚類方法實現(xiàn)連續(xù)數(shù)據(jù)離散化,利用基于信息熵的屬性約簡算法對專家決策表進行約簡,采用均值劃分的基本可信度分配函數(shù)獲得樣本在各焦元的基本可信度分配值:最后對各約簡屬性集進行證據(jù)合成,依據(jù)最大基本可信度分配函數(shù)法,判定應采取控制方法。具體數(shù)據(jù)處理步驟框圖如圖7所示。
圖7 數(shù)據(jù)處理及決策步驟
控制部通過GPIO接口與電機驅(qū)動板進行連接,從而可驅(qū)動直流電機、伺服電機、步進電機等裝置,達到精確控制的目的。
控制部Raspberry Pi通過圖8所示電機驅(qū)動模塊,可同時驅(qū)動兩臺直流電機,控制電機轉(zhuǎn)動方向,實現(xiàn)溫室的送排風控制。同時可根據(jù)聯(lián)合控制策略對電機進行PWM調(diào)速控制。
圖8 電機驅(qū)動模塊
調(diào)速控制部分程序:
卷簾機采用雙極型步進電機,可以通過圖8驅(qū)動電路進行驅(qū)動控制。通過聯(lián)合控制參數(shù)的設(shè)定值,調(diào)用不同的實參訪問驅(qū)動控制函數(shù)來精確控制卷簾電機的旋轉(zhuǎn)步進值,從而達到精確控制溫室卷簾開合角度的控制要求。
部分控制程序:
x = int(input('輸入一個整數(shù)(位于-400與400之間)來控制步進電機旋轉(zhuǎn):'))
控制部圖形用戶接口(GUI)使用的是Python3內(nèi)嵌的tkinter模塊設(shè)計相關(guān)程序。如下所示從tkinter庫中引入相關(guān)模塊。
系統(tǒng)界面設(shè)計步驟及簡單的初始代碼可描述如下:
(1)建立窗口和標簽
from tkinter import *
root=Tk( )
Label(父對象,options)root.mainloop( )
(2)設(shè)置相關(guān)功能按鈕
Button(父對象,options)
(3)設(shè)置不同監(jiān)測數(shù)據(jù)變量類別
系統(tǒng)監(jiān)測各環(huán)境參數(shù)數(shù)據(jù)根據(jù)實際需要設(shè)定不同類別。tkinter模塊變量類別(Variable Classes)有4個子類別,通過這4個子類別的數(shù)據(jù)于模塊內(nèi)的Widget控制的相關(guān)參數(shù)結(jié)合已完全可滿足系統(tǒng)數(shù)據(jù)需要。4個數(shù)據(jù)類型設(shè)置如下:
a=IntVar #整型變量,默認值為0
b=DoubleVar #浮點型變量,默認值為0.0
c=StringVar #字符型變量,默認為" "
d=BooleanVar #布爾型變量,True為1,F(xiàn)alse為0
(4)建立框架標簽
LableFrame(父對象,options)
除了上面的基本步驟外還可以通過Tkinter建立多個事件進行綁定,插入多個容器子控件以及進一步編輯Menu和Toolbars來不斷完善交互界面設(shè)置。本系統(tǒng)GUI界面設(shè)置示意圖如圖9所示。
圖9 GUI界面示意圖
本論文中設(shè)計的新型溫室環(huán)境因子調(diào)控裝置采用總監(jiān)測部、各控制部的分模塊控制模式??偙O(jiān)測部主要負責對整個農(nóng)場區(qū)域各環(huán)境采集參數(shù)進行全域監(jiān)測,同時還開發(fā)了一鍵功能,可快速部署。各控制部發(fā)揮開源卡片電腦強大的控制算例等功能,部署聯(lián)合控制策略算法,控制各部設(shè)備達到對溫室環(huán)境因子精準控制,實現(xiàn)精細化種植的最終目的。整套裝置設(shè)計科學合理,各司其職的同時,又注重統(tǒng)籌兼顧原則。采用價格相對較低的卡片電腦既滿足了高水平的控制要求,又實現(xiàn)了產(chǎn)品的低成本化,便于中小農(nóng)場的部署使用,具有很強地實用價值。