單慧勇,張程皓,李晨陽,趙輝,衛(wèi)勇,郭旭存
(天津農(nóng)學院 工程技術(shù)學院,天津 300384)
根據(jù)光合作用的反應機制,對設施農(nóng)作物生長影響較大的環(huán)境因素主要有光照、CO2濃度及溫濕度等,由于溫室環(huán)境為密閉環(huán)境,內(nèi)部環(huán)境參數(shù)多通過人工進行調(diào)控,工作效率低。針對以上問題,孫小平[1]對溫室中的供暖設備、風機、LED 燈與其相對應的調(diào)控參數(shù)(如溫度、光強等)之間的關(guān)系進行研究,尋找其相關(guān)函數(shù)關(guān)系,實現(xiàn)溫室環(huán)境自動調(diào)控。張漫等[2]設計了作物光合速率預測模型,將實時監(jiān)測光照、溫度及CO2濃度輸入預測模型中,獲取相應的CO2濃度最佳目標值,從而實現(xiàn)溫室CO2自動調(diào)控。李雅善等[3]擬合設計出了多元非線性光合速率預測模型,可進行光飽和點尋優(yōu),確定了溫室作物在不同光強條件下的環(huán)境參數(shù)最佳目標值,實現(xiàn)了溫室光強自動調(diào)控。以上研究多針對溫室環(huán)境中單一環(huán)境變量進行調(diào)控,難以實現(xiàn)溫室環(huán)境參數(shù)自適應調(diào)控。為有效提高溫室環(huán)境自動化程度,促進溫室作物生長,設計溫室自動調(diào)控系統(tǒng),結(jié)合溫室環(huán)境監(jiān)測、作物光合速率預測模型和多目標協(xié)同控制尋優(yōu)方法設計基于MATLAB 的溫室環(huán)境自動調(diào)控系統(tǒng),以溫室黃瓜為研究對象,對其光合速率進行預測并對環(huán)境調(diào)控效果進行驗證。為方便操作者實時監(jiān)控溫室環(huán)境參數(shù)的變化,設計基于MATLAB 環(huán)境的人機交互GUI 界面,為溫室環(huán)境智能調(diào)控的研究提供借鑒。
調(diào)控系統(tǒng)的設計首先需搭建溫室環(huán)境參數(shù)尋優(yōu)模型,模型的建立主要包括三部分:首先建立光合速率預測模型,然后在光合速率預測模型的基礎(chǔ)上,構(gòu)建有限二氧化碳資源下溫室二氧化碳優(yōu)化調(diào)控模型數(shù)據(jù)庫,繼而提出了以光照增長相對價值為評價指標的相對最經(jīng)濟的補光策略,最終實現(xiàn)有限二氧化碳資源下的溫室光氣耦合優(yōu)化調(diào)控。
采用LS-SVM算法構(gòu)建光合速率預測模型[4],尋求溫度(x1)、光強(x2)及CO2濃度(x3)和輸出光合速率(y)之間的關(guān) 系:y=f(x1,x2,x3)。首先,使用MATLAB 中的mapminmax 函數(shù)對溫度、光強及CO2濃度進行歸一化處理,其模擬歸一化區(qū)間為[0.2,0.9][5]。選取徑向基函數(shù)作為核函數(shù)進行建模,gam是控制錯分樣本懲罰程度的可調(diào)參數(shù),sig2是徑向基核函數(shù)的參數(shù),通過網(wǎng)格搜索獲取最優(yōu)的建模參數(shù)gam和sig2[6],最終確定 的gam=263.549,sig2=0.204 042 5。模型各參數(shù)確定后調(diào)用LS-SVM 工具箱的trainlssvm函數(shù)進行光合速率預測模型的構(gòu)建。
基于上述光合速率預測模型,擬在1 d 內(nèi)的有限資源下對溫室CO2濃度進行優(yōu)化調(diào)控,即給定可用補氣總量,尋找當天溫室中最優(yōu)的補氣時間及對應的單位時間補氣量,將補氣后的光合速率增量作為評價指標,建立CO2優(yōu)化調(diào)控模型數(shù)據(jù)庫。在獲取補氣時間段與補氣量后,將依據(jù)光照增長相對價值曲線曲率最大值對補光量進行尋優(yōu)。
結(jié)合上述調(diào)控模型,擬設計溫室環(huán)境自動調(diào)控系統(tǒng),通過PLC 實時采集溫室中溫度、光強及CO2濃度等參數(shù),通過OPC 通信協(xié)議實現(xiàn)遠程通信。在MATLAB 中搭建調(diào)控系統(tǒng),依據(jù)調(diào)控模型,分析預測作物生長的最佳補氣時間及補氣總量,控制氣肥發(fā)生器及補光燈工作,結(jié)合實時讀取的數(shù)據(jù)進行追蹤控制。
溫室環(huán)境自動調(diào)控系統(tǒng)的功能主要包括實時環(huán)境數(shù)據(jù)的監(jiān)測、數(shù)據(jù)分析目標值尋優(yōu)以及自動輸出調(diào)控環(huán)境參數(shù)。通過監(jiān)測溫室中的實時環(huán)境數(shù)據(jù),獲取對植物生長速率影響較大的各種參數(shù),如溫度、光強和CO2等,可實時監(jiān)測植物生長狀態(tài)。根據(jù)實時環(huán)境參數(shù),系統(tǒng)可調(diào)用上述模型,對環(huán)境參數(shù)進行尋優(yōu),獲得植物生長最佳調(diào)控目標值。結(jié)合模型尋優(yōu)目標值和實時反饋的溫室環(huán)境數(shù)據(jù),控制補光燈組及氣肥發(fā)生器等設備進行環(huán)境參數(shù)的調(diào)節(jié),實現(xiàn)溫室環(huán)境自動調(diào)控。為實現(xiàn)以上功能,設計了溫室環(huán)境監(jiān)測子系統(tǒng)、數(shù)據(jù)分析決策和輸出控制子系統(tǒng)三部分(圖1)。
溫室環(huán)境監(jiān)測子系統(tǒng)包括:CO2傳感器、溫度傳感器以及光照傳感器,監(jiān)測溫室中實時環(huán)境參數(shù),實現(xiàn)溫室環(huán)境數(shù)據(jù)實時監(jiān)測功能,并將其輸入調(diào)控目標值尋優(yōu)子系統(tǒng)中,調(diào)用相應的模型,將光強與CO2協(xié)同調(diào)控目標值尋優(yōu)。輸出控制子系統(tǒng)根據(jù)控制系統(tǒng)計算出的環(huán)境參數(shù)目標值,結(jié)合實時環(huán)境參數(shù),控制溫室中補光燈組及氣肥發(fā)生器改變光強與CO2值,從而達到目標值要求,完成反饋控制。
圖2 為溫室環(huán)境監(jiān)測子系統(tǒng)結(jié)構(gòu)框圖,由CO2傳感器、溫度傳感器、光照傳感器和PLC 控制器組成。由于溫室生產(chǎn)環(huán)境較為惡劣,作物生長環(huán)境存在高溫高濕情況,對監(jiān)控與控制系統(tǒng)具有較高的可靠性要求[7],因此,采用PLC 作為控制器。溫室中各傳感器監(jiān)測記錄溫度、CO2濃度和光照強度等,為調(diào)控目標值尋優(yōu)子系統(tǒng)提供數(shù)據(jù),實現(xiàn)了溫室實時環(huán)境數(shù)據(jù)監(jiān)測功能。
圖3 為數(shù)據(jù)分析決策子系統(tǒng)控制流程圖,環(huán)境監(jiān)測傳感器將實時采集到的信息發(fā)送到控制器PLC,PLC 通過OPC 通信,與計算機建立遠程通信,將環(huán)境參數(shù)實時上傳至計算機中,計算機分析判斷環(huán)境溫度所屬區(qū)間,繼而通過模型調(diào)用該溫度下子模型,通過模型分析預測出光照強度與CO2濃度調(diào)控目標值。實現(xiàn)了數(shù)據(jù)分析目標值尋優(yōu)功能,計算調(diào)控目標值與實時環(huán)境值的差值,將調(diào)控目標值發(fā)送至相應的控制設備。
本研究選擇在MATLAB 環(huán)境下設計輸出控制子系統(tǒng)[8]。自動模式下,傳感器將監(jiān)測到的溫度、光照及CO2濃度數(shù)據(jù)傳輸至計算機,計算機根據(jù)模型計算出協(xié)同決策的光強及CO2濃度目標值,計算機通過OPC 通信與現(xiàn)場控制器PLC 建立通信,寫入光強及CO2濃度目標值,PLC 輸出控制補光燈[9]及氣肥發(fā)生器使得光照與CO2濃度達到目標值[10],實現(xiàn)了自動輸出調(diào)控環(huán)境參數(shù)功能(圖4)。在手動模式下,操作者可根據(jù)傳感器上傳的溫室環(huán)境數(shù)據(jù),手動控制補光燈及氣肥發(fā)生器調(diào)控溫室環(huán)境參數(shù)。
為方便計算機讀取溫室實時環(huán)境數(shù)據(jù)進而分析決策,獲取調(diào)控目標值,同時反饋控制調(diào)控設備工作,需實現(xiàn)計算機與現(xiàn)場PLC 之間的通信連接,通信協(xié)議選擇OPC通信[11-13]。
OPC(OLE for process control)是由OPC 基金會(OPC Foundation)所制定的工業(yè)標準[14]。OPC 主要是在Microsoft 的OLC(ActiveX)、COM、DCOM 的基礎(chǔ)上所研發(fā)的一個開放的標準接口。其主要應用體系為客戶端/服務器[15],在客戶端和服務器之間建立一種通信和數(shù)據(jù)交換的工業(yè)標準[16],以OPC 為交換數(shù)據(jù)的主要方法。
7.0版本以上的MATLAB 軟件中均支持OPC服務,有相應的工具箱OPC toolbox[17],支持讀寫OPC數(shù)據(jù)。MATLAB 中讀取溫室實時環(huán)境數(shù)據(jù)方式有如下2種。
(1)通過GUI界面讀取實時環(huán)境參數(shù)
A.啟動Opctool界面
在MATLAB 命令窗口輸入Opctool,單擊回車即可打開Opctool界面,其操控界面如圖5所示。
B.創(chuàng)建客戶端對象、組對象和項
右鍵單擊OPC Network 可添加本地Host,名字選用默認名字Localhost。右鍵單擊Localhost 添加Client,從OPC Server ID 中選擇GrmOpcServer.GRMOPC,即可建立連接,順序添加Group、Item,即可顯示溫室環(huán)境參數(shù)實時數(shù)據(jù),如圖6 所示。選中相應數(shù)據(jù),點擊Add即可讀取實時環(huán)境參數(shù)。
(2)輸入程序讀取實時環(huán)境參數(shù)
實時環(huán)境數(shù)據(jù)讀取程序如下所示:
da=opcda(‘localhost’,‘GrmOpcServer.GRMOPC’);%創(chuàng)建客戶端對象
connect(da);%連接一個客戶到服務器;
grp=addgroup(da,‘group2’);%創(chuàng)建數(shù)據(jù)訪問組對象;
itm=additem(grp,‘GRM.二氧化碳(溫室)’);%讀取實時環(huán)境參數(shù);
itm1=additem(grp,‘GRM.光照強度(溫室)’);
itm2=additem(grp,‘GRM.空氣溫度(溫室)’質(zhì);
set(grp,′UpdateRate′,0.2);%設置數(shù)據(jù)保存間隔
r=read(itm);%讀取數(shù)據(jù);
a={r.Value};%讀取實時環(huán)境數(shù)值;
b=cell2mat(a);%將元胞數(shù)組類型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型方便處理;
clear grp itm itm1 itm2。
為方便操作人員實時監(jiān)控溫室環(huán)境,GUI 界面設計如圖7—8 所示,對接收到的環(huán)境數(shù)據(jù)進行存儲,并對數(shù)據(jù)進行分析、判斷與智能決策,根據(jù)決策結(jié)果發(fā)送相應控制指令到相應的輸出裝置。根據(jù)系統(tǒng)硬件要求,在MATLAB 環(huán)境下設計了人機交互的GUI界面。
(1)控制系統(tǒng)主界面如圖7所示,主要包括實時監(jiān)控、歷史數(shù)據(jù)、參數(shù)設定、報警信息四部分,按下按鈕可跳轉(zhuǎn)至相應界面。
(2)實時顯示界面如圖8所示,包括溫室環(huán)境數(shù)據(jù)實時顯示欄、溫室環(huán)境數(shù)據(jù)調(diào)控目標值、工作模式選擇、工作狀態(tài)四部分。
A.溫室環(huán)境數(shù)據(jù)實時顯示欄:溫室中通過溫度傳感器、CO2濃度傳感器、光照傳感器監(jiān)測到的環(huán)境數(shù)據(jù)傳輸至PLC,MATLAB 通過OPC 通信協(xié)議與PLC建立遠程通信,將各項數(shù)據(jù)實時顯示在界面上,便于操作者監(jiān)控溫室環(huán)境變化。
B.溫室環(huán)境數(shù)據(jù)調(diào)控目標值:系統(tǒng)根據(jù)實時采集的溫室環(huán)境數(shù)據(jù),依據(jù)當前溫度,調(diào)用適合的模型,預測最佳環(huán)境參數(shù),并發(fā)送至界面,方便操作者對比實時環(huán)境參數(shù)決策控制方案。
C.工作模式選擇:根據(jù)需求可選擇自動控制或手動控制。自動控制模式下,系統(tǒng)根據(jù)實時溫度,調(diào)用相應的模型,分析溫室環(huán)境參數(shù),計算出環(huán)境參數(shù)目標值,并顯示在目標欄上。
D.工作狀態(tài):實時顯示控制裝置工作狀態(tài),便于操作者決策控制。
(3)手動控制界面如圖9所示,包括溫室環(huán)境數(shù)據(jù)實時顯示欄、溫室環(huán)境數(shù)據(jù)調(diào)控目標和手動控制面板三部分。
溫室環(huán)境數(shù)據(jù)實時顯示欄和溫室環(huán)境數(shù)據(jù)調(diào)控目標值與自動模式下相同,控制面板上操作者可根據(jù)控制要求手動輸入環(huán)境參數(shù),按下執(zhí)行按鈕可控制裝置輸出,控制系統(tǒng)向氣肥發(fā)生器或補光燈發(fā)送調(diào)控指令,待實時數(shù)據(jù)達到目標值后停止工作,完成環(huán)境參數(shù)調(diào)控。
(4)參數(shù)配置界面如圖10 所示,在主界面按下參數(shù)配置按鈕可調(diào)出參數(shù)配置界面,包括增加通訊組、刪除通信組和刷新服務器三部分,可根據(jù)操作者實際需求,進行增刪通信組與刷新服務器操作。
(5)歷史數(shù)據(jù)顯示欄如圖11 所示,在主界面按下歷史數(shù)據(jù)按鈕可調(diào)出歷史數(shù)據(jù)顯示界面,可顯示不同時間溫度、光強和CO2濃度,操作者可根據(jù)數(shù)據(jù)判斷不同時間溫室環(huán)境參數(shù)變化情況,記錄保存。
以天津農(nóng)學院西校區(qū)溫室作為研究基地,對系統(tǒng)進行測試。2020 年3 月4 日,溫室中保溫時間段為9:00—16:00,選擇9:30—15:30 作為調(diào)控時間段。首先,設定好可用補氣資源總量,通過調(diào)控模型尋優(yōu)確定當天內(nèi)最優(yōu)補氣時間及單位時間補氣量,控制氣肥發(fā)生器在對應時間段工作,同時控制補光燈工作,控制系統(tǒng)通過PLC 不斷讀取溫室中光照強度及CO2濃度?;谏鲜鰧?yōu)方法,得到了以溫度、CO2濃度為輸入數(shù)據(jù),以光照強度調(diào)控目標值為輸出數(shù)據(jù)的數(shù)據(jù)集,結(jié)合實時讀取的光照強度數(shù)據(jù),對比調(diào)控目標值獲得光照強度調(diào)控增量,控制系統(tǒng)實時追蹤控制補光燈光照強度,實現(xiàn)溫室光氣耦合調(diào)控。調(diào)控完成后,獲得了調(diào)控時間段內(nèi)的光合速率增量,為1 176.918 μmol/(m2·s)。調(diào)控過程中數(shù)據(jù)傳輸穩(wěn)定,實時反饋效果好,自動模式控制界面、手動模式控制界面分別如圖12—13所示。
為實現(xiàn)溫室環(huán)境自動調(diào)控,在融合光合速率預測模型與溫室環(huán)境參數(shù)實時監(jiān)測的基礎(chǔ)上,建立了溫室環(huán)境調(diào)控的尋優(yōu)模型,基于上述調(diào)控模型,在MATLAB 環(huán)境下設計了溫室環(huán)境調(diào)控系統(tǒng)。通過溫室中的CO2傳感器、溫度傳感器以及光照傳感器分別監(jiān)測溫室實時環(huán)境參數(shù),并上傳至控制器PLC中。PLC 通過OPC 技術(shù)與計算機建立遠程通信,計算機讀取PLC 上傳的溫室環(huán)境數(shù)據(jù),調(diào)用相應的尋優(yōu)模型,分析計算出CO2濃度及光照強度的調(diào)控目標值,將其發(fā)送給控制器。控制器根據(jù)調(diào)控目標值控制氣肥發(fā)生器和補光燈組工作,直至溫室環(huán)境數(shù)據(jù)達到調(diào)控目標值后,停止工作,完成反饋控制。對構(gòu)建的系統(tǒng)測試結(jié)果表明,該控制系統(tǒng)可完成作物生長自適應補光補氣,調(diào)控時間段內(nèi)的光合速率增量為1 176.918 μmol/(m2·s),數(shù)據(jù)傳輸穩(wěn)定,實時反饋效果好。為方便操作者決策控制,查看溫室環(huán)境數(shù)據(jù),設計了人機交互GUI 界面,監(jiān)控溫室環(huán)境參數(shù),及時進行決策控制。本研究側(cè)重點在于溫室環(huán)境調(diào)控系統(tǒng)的設計,對所涉及的環(huán)境參數(shù)尋優(yōu)模型并未詳述,后續(xù)將另文介紹上述尋優(yōu)模型建模過程,結(jié)合組態(tài)軟件,設計完善控制系統(tǒng)及圖形用戶控制界面,進一步提高溫室環(huán)境自動調(diào)控技術(shù)。