喬曉輝,杜尚豐,徐 丹
(中國農(nóng)業(yè)大學(xué)信息與電氣工程學(xué)院,北京100083)
中國是一個(gè)農(nóng)業(yè)大國,隨著科技的發(fā)展及互聯(lián)網(wǎng)技術(shù)的成熟和普及,作為溫室生產(chǎn)關(guān)鍵技術(shù)之一的溫室環(huán)境監(jiān)測與調(diào)控也向著與互聯(lián)網(wǎng)相結(jié)合的方向發(fā)展[1-4]。國內(nèi)實(shí)際農(nóng)業(yè)生產(chǎn)中使用的傳統(tǒng)溫室環(huán)境監(jiān)控系統(tǒng)大多采用PC機(jī)為上位機(jī),單片機(jī)、PLC為下位機(jī)的上—下位機(jī)控制模式,這類下位機(jī)系統(tǒng)由于其處理器資源和性能有限,實(shí)時(shí)性不高,且系統(tǒng)穩(wěn)定性難以滿足用戶生產(chǎn)需求[4-5]。此外,溫室環(huán)境執(zhí)行機(jī)構(gòu)的控制大多采用開關(guān)控制,且控制方法單一。雖然國外溫室環(huán)境遠(yuǎn)程測控技術(shù)比較成熟,自動(dòng)化智能程度較高,但直接引進(jìn)造價(jià)高、不適合我國溫室,難以普及[6-8]。本文擬設(shè)計(jì)開發(fā)溫室環(huán)境連續(xù)型調(diào)控系統(tǒng),實(shí)現(xiàn)溫室執(zhí)行機(jī)構(gòu)的連續(xù)型控制,可通過互聯(lián)網(wǎng)將遠(yuǎn)程計(jì)算機(jī)計(jì)算控制輸入傳給服務(wù)器,節(jié)約系統(tǒng)成本,還可為用戶開展遠(yuǎn)程試驗(yàn)研究提供平臺(tái)。
該系統(tǒng)包括溫室環(huán)境現(xiàn)場測控、嵌入式服務(wù)器和遠(yuǎn)程計(jì)算機(jī)監(jiān)控3個(gè)部分。系統(tǒng)結(jié)構(gòu)如圖1所示。
遠(yuǎn)程計(jì)算機(jī)通過互聯(lián)網(wǎng)讀取存儲(chǔ)在服務(wù)器動(dòng)態(tài)數(shù)據(jù)區(qū)Wi_data.txt文件中的溫室內(nèi)外環(huán)境數(shù)據(jù),經(jīng)過計(jì)算后將得出加熱量、通風(fēng)量、二氧化碳補(bǔ)給量和補(bǔ)光量,通過互聯(lián)網(wǎng)傳送給服務(wù)器。自動(dòng)測控程序?qū)⒆x取數(shù)據(jù)區(qū)Ei_data.txt文件中的加熱量、通風(fēng)量、CO2補(bǔ)給量和補(bǔ)光量值,并將其發(fā)送給溫室現(xiàn)場測控部分的控制節(jié)點(diǎn)來控制溫室執(zhí)行機(jī)構(gòu)。
溫室現(xiàn)場測控部分完成溫室內(nèi)外環(huán)境參數(shù)溫度、濕度、光照和二氧化碳濃度的采集并且累計(jì)存儲(chǔ)到服務(wù)器動(dòng)態(tài)數(shù)據(jù)區(qū)中的Sensor_data.txt文件,將環(huán)境參數(shù)當(dāng)前值記錄到Wi_data.txt文件中。至此,遠(yuǎn)程計(jì)算機(jī)通過服務(wù)器與溫室現(xiàn)場測控部分形成閉環(huán)完成遠(yuǎn)程溫室測控。
溫室現(xiàn)場測控部分是系統(tǒng)的基礎(chǔ),主要包括溫室環(huán)境采集模塊、服務(wù)器和溫室執(zhí)行機(jī)構(gòu)控制模塊。嵌入式服務(wù)器是系統(tǒng)的重要組成部分,是連接遠(yuǎn)程計(jì)算機(jī)和溫室現(xiàn)場的橋梁,選擇常用的ARM+Linux嵌入式操作系統(tǒng)[9-12]。遠(yuǎn)程計(jì)算機(jī)完成控制算法的計(jì)算,充分利用溫室環(huán)境信息、溫室執(zhí)行機(jī)構(gòu)和作物的定量科學(xué)知識,將它們描述在動(dòng)態(tài)模型中,計(jì)算出符合種植者目標(biāo)(通常是最大化經(jīng)濟(jì)效益)的控制量。
系統(tǒng)以NanoPC-T3嵌入式ARM開發(fā)板為核心,外加溫室環(huán)境信息采集節(jié)點(diǎn)、控制節(jié)點(diǎn)和電氣電路,系統(tǒng)硬件構(gòu)成如圖2所示。
電氣電路是溫室現(xiàn)場控制的重要組成部分,其主要結(jié)構(gòu)如圖3所示??刂乒?jié)點(diǎn)從服務(wù)器獲取控制輸入量傳入調(diào)壓器的信號輸入端,進(jìn)而控制溫室的執(zhí)行機(jī)構(gòu),即風(fēng)機(jī)、加熱爐、LED燈和二氧化碳發(fā)生器。
溫室環(huán)境采集節(jié)點(diǎn)可以實(shí)現(xiàn)溫室內(nèi)外環(huán)境數(shù)據(jù)的采集,包括溫度、相對濕度、光照強(qiáng)度和二氧化碳濃度。電路板以單片機(jī)C8051F020為核心,集各種傳感器敏感元件于一體,實(shí)現(xiàn)溫室環(huán)境信息采集的功能。節(jié)點(diǎn)結(jié)構(gòu)設(shè)計(jì)如圖4所示。
控制節(jié)點(diǎn)實(shí)現(xiàn)溫室執(zhí)行機(jī)構(gòu)的控制??刂乒?jié)點(diǎn)接收由服務(wù)器傳來的經(jīng)遠(yuǎn)程計(jì)算機(jī)計(jì)算得到的控制輸入,然后將控制輸入量經(jīng)由控制節(jié)點(diǎn)的2路DA輸出轉(zhuǎn)換為電壓信號傳送給電氣柜中的調(diào)壓器,經(jīng)調(diào)壓器輸出控制執(zhí)行機(jī)構(gòu)。
電路板以單片機(jī)C8051F020為核心,包含有兩路DA輸出來控制執(zhí)行機(jī)構(gòu)??刂乒?jié)點(diǎn)結(jié)構(gòu)設(shè)計(jì)如圖5所示。
溫室傳感器節(jié)點(diǎn)的主要功能是進(jìn)行室內(nèi)外環(huán)境數(shù)據(jù)的采集,當(dāng)收到服務(wù)器傳來的環(huán)境獲取指令后,以串口查詢的方式,將室內(nèi)外環(huán)境數(shù)值返回給服務(wù)器。系統(tǒng)軟件設(shè)計(jì)如圖6所示。主程序主要進(jìn)行一些初始化工作;定時(shí)器中斷程序?qū)崿F(xiàn)看門狗復(fù)位、環(huán)境采集等功能;串口發(fā)送和接收子程序?qū)崿F(xiàn)單片機(jī)與服務(wù)器的通信功能。
控制節(jié)點(diǎn)的主要功能是不斷查詢串口,檢查是否收到服務(wù)器傳來的指令并判斷是哪種指令,若為執(zhí)行機(jī)構(gòu)狀態(tài)控制指令,則對相應(yīng)的執(zhí)行機(jī)構(gòu)進(jìn)行控制。控制節(jié)點(diǎn)軟件設(shè)計(jì)如圖7所示。
Web服務(wù)器由串口通信模塊和Web服務(wù)器守護(hù)模塊組成[13-16]。其中,串口通信模塊由溫室環(huán)境自動(dòng)測控程序和遠(yuǎn)程人工控制程序組成[17-18]。溫室環(huán)境采集程序每隔1 min采集溫室內(nèi)外環(huán)境信息,并將獲取到的有效數(shù)據(jù)以特定格式存儲(chǔ)到服務(wù)器的動(dòng)態(tài)數(shù)據(jù)交換區(qū)的txt文件中。執(zhí)行機(jī)構(gòu)控制程序每隔1 min讀取服務(wù)器中Ei_data.txt,即遠(yuǎn)程計(jì)算機(jī)計(jì)算得出的控制輸入對執(zhí)行機(jī)構(gòu)進(jìn)行控制。遠(yuǎn)程人工控制程序用于應(yīng)對用戶需要按照自身意愿進(jìn)行遠(yuǎn)程手動(dòng)控制操作。
服務(wù)器守護(hù)模塊主要包含了嵌入式Web服務(wù)器、CGI腳本和信息可視化的HTML網(wǎng)頁3部分,實(shí)現(xiàn)了溫室環(huán)境信息實(shí)時(shí)瀏覽、視頻監(jiān)控、溫室執(zhí)行機(jī)構(gòu)控制方法選擇和遠(yuǎn)程人工控制功能[19-22]。動(dòng)態(tài)網(wǎng)頁的效果如圖8所示。
為測試系統(tǒng)的有效性和可靠性,將系統(tǒng)部署在中國農(nóng)業(yè)科學(xué)院環(huán)發(fā)所6樓溫室中,進(jìn)行生菜生長的溫室調(diào)控試驗(yàn)。試驗(yàn)過程中選擇溫室內(nèi)外溫度、濕度、光照度和二氧化碳濃度為測量因子。
選取2019年5月3—7日的試驗(yàn)數(shù)據(jù)以10 min為時(shí)間間隔選取數(shù)據(jù)點(diǎn),繪制溫室環(huán)境因子變化曲線,如圖9~12所示。
在試驗(yàn)期間系統(tǒng)運(yùn)行連續(xù)穩(wěn)定且能夠獲取準(zhǔn)確可靠溫室內(nèi)外環(huán)境信息數(shù)據(jù),但未來還需長期測試檢驗(yàn)運(yùn)行狀況。另在試驗(yàn)過程中記錄了生菜的生長狀況,也可以根據(jù)其生長狀況科學(xué)有效地調(diào)整控制策略以滿足用戶的需求。生菜生長狀況如圖13、14所示。
(1)遠(yuǎn)程監(jiān)控系統(tǒng)可根據(jù)溫室的實(shí)際情況選擇合適的控制方法,并且能夠設(shè)定溫室環(huán)境因子的給定值等。
(2)系統(tǒng)的功能豐富,在實(shí)現(xiàn)溫室環(huán)境因子的檢測外,還可以通過網(wǎng)絡(luò)攝像頭實(shí)時(shí)觀察生菜長勢和溫室運(yùn)作狀態(tài)。
(3)由于本系統(tǒng)的信息是基于嵌入式Web服務(wù)器發(fā)布的,因而用戶只需要通過PC、平板或手機(jī)等可以接入互聯(lián)網(wǎng)的設(shè)備,即可訪問此服務(wù)器,實(shí)現(xiàn)對溫室的監(jiān)控。