楊 帆,李富善
1.武漢工程大學電氣信息學院,湖北 武漢 430205;
2.湖北省視頻圖像與高清投影工程技術研究中心,湖北 武漢 430205
設施農業是世界現代農業發展的主要方向之一,我國農業正處于從傳統向高產、優質、高效的現代化農業轉型階段,設施農業是我國今后較長時期內農業發展的重點[1]。設施農業智能化管控是實現設施農業生產自動化、高效化最為重要的環節之一,一直受到各國農業專家和研究人員的高度重視[2]。溫室作為一種重要的農業基礎設施,過去常常以人工手段為農作物創造適宜的生長環境,消耗的時間成本和人力成本較高,不利于資源的集約化利用[3]。采用傳感器技術和無線通信技術設計一套集監控、管理于一體的智能溫室系統[4],為解決農業研究者面臨的困難提供了一種思路。而利用單片機技術和微機聯網技術,設計蔬菜大棚溫度、濕度控制網絡,以分布式聯片多個蔬菜大棚溫度、濕度控制或在一個蔬菜大棚內進行溫度、濕度多點控制[5]的設計方法也被研究者深入探討。
但目前行業內的研究都集中在控制溫室大棚內的空氣的溫濕度、光照和二氧化碳濃度等,忽略了對作物生長的土壤濕度的實時測量與控制,而作物的優良生長跟土壤的濕度有直接的聯系,只有控制好土壤濕度,才能有效提高作物的培育效率。為了節省人力成本,提高作物的培育效率,本文設計了一種基于NRF24L01無線通信芯片的自動控制系統[6]。該系統的優勢在于充分利用NRF24L01芯片一對多的通信功能,通過上位機遠程無線控制土壤濕度,同時監測空氣中的光照強度、溫度和濕度變化,并實時顯示在上位機控制界面上。
系統采用模塊化設計[7],主要由上位機模塊、空氣信息監測模塊和土壤濕度測控模塊組成。PC機、STC89C51單片機(以下稱1號單片機)、NRF24L01無線通信芯片(以下稱1號NRF)構成上位機模塊;GY-30光照強度傳感器、DHT11溫濕度傳感器、NRF24L01無線通信芯片(以下稱2號NRF)和STC89C51單片機(以下稱2號單片機)構成空氣信息監測模塊;YL-69土壤濕度傳感器、電磁閥、NRF24L01無線通信芯片(以下稱3號NRF)和STC89C51單片機(以下稱3號單片機)構成土壤濕度測控模塊。系統的結構圖如圖1所示。

圖1 系統結構Fig.1 Structure of proposed system
系統的工作原理:啟動系統后在上位機界面上設定土壤濕度值,1號單片機通過1號NRF將設定的濕度值發送給3號NRF,3號單片機存儲濕度設定值并將采集到的實時濕度值發送給上位機模塊,之后通過對比接收到的土壤濕度設定值和實時采集到的土壤濕度值,控制電磁閥的開關,進而達到控制土壤濕度的目的;同時2號單片機將采集到的空氣中的溫度、濕度和光照強度數據整理后,經2號NRF發送給上位機模塊;1號單片機整理接收自2號NRF和3號NRF的實時信息,并在控制界面上繪圖顯示變化情況。
系統以3塊NRF24L01芯片作為通信核心,NRF24L01芯片是一種工作在2.4 GHz頻率下的單片無線收發器[8],可按需配置為僅發射模式、僅接收模式和發射/接收模式。該芯片可實現一對多通信,在本設計中采用一對二的通信方式,將3塊NRF芯片均配置為發射/接收模式,數據寬度均為8個字節,頻率均為1 MHz。1號NRF的通信頻道設為10和60,根據設定的時間間隔在這2個頻道之間跳轉,2號NRF的通信頻道設為10,3號NRF的通信頻道設為60。當1號NRF的通信頻道跳轉到10的時候,1號NRF與2號NRF進行通信;當1號NRF的通信頻道跳轉到60的時候,1號NRF與3號NRF進行通信。
系統的上位機模塊中,1號單片機與PC機之間采用串行通信方式,單片機的P3.0/RXD引腳和P3.1/TXD引腳用串行數據線接到PC機的串口(圖2中PC端),用來給PC機發送接受自下位機的數據,同時接收來自PC的控制指令。圖2為上位機模塊電路原理圖。

圖2 上位機模塊電路原理圖Fig.2 Schematics of host computer module
上位機模塊具體實現3個功能:一是在控制界面上實時繪制空氣中的溫濕度和光照強度變化曲線;二是在控制界面上實施繪制溫室內土壤濕度的變化曲線;三是在控制界面上設定土壤濕度值。1號單片機作為上位機模塊的數據處理核心,一方面通過1號NRF的不同頻道跟下位機的2個模塊通信,另一方面通過串口線與PC機交互。圖3為上位機模塊工作流程圖。

圖3 上位機模塊工作流程圖Fig.3 Work flowchart of host computer module
該監測模塊中,2號NRF為通信核心,2號單片機為數據處理核心,GY-30芯片和DHT11芯片組成數據采集核心。GY-30芯片是一種用于兩線式串行總線接口的數字型光照強度傳感器[9],與2號單片機的P1.0和P1.1引腳相連,光照強度的采集范圍為 1~65 535 lx[10],采集時間最大為 180 ms。GY-30傳感器的工作過程是:2號單片機向GY-30發送起始信號,接著向GY-30發送設備地址和寫信號,發送完畢后等待GY-30應答;之后2號單片機發送內部寄存器地址,等待GY-30應答,收到應答信號后,讀取測量結果(結果為16位數據)之后2號單片機開始處理數據,采集過程結束。DHT11芯片是一種輸出數字信號的溫濕度一體化傳感器[11],包括一個電阻式測濕元件和一個NTC測溫元件。該傳感器與2號單片機采用單總線進行通信,與2號單片機的P0.7引腳相連。DHT11芯片測得的數據為40 Bit,在與單片機傳輸時,數據一次性傳給單片機,為了提高數據的準確性,數據增加校驗位。圖4為空氣監測模塊的電路原理圖。其中P1端為DHT11芯片,P2端為GY-30芯片。
空氣監測模塊具體實現2個功能:一是收集空氣中的溫濕度信息,并將溫濕度數據整理后通過2號單片機發送給上位機模塊;二是收集空氣中的光照強度信息,并將光照強度數據整理后經2號NRF發送給上位機模塊。圖5所示為溫室空氣監測模塊的工作流程圖。

圖4 空氣監測模塊電路原理圖Fig.4 Schematics of air monitoring module

圖5 空氣監測模塊工作流程圖Fig.5 Work flowchart of air monitoring module
該模塊中,3號單片機為數據處理核心,3號NRF為無線通信核心[12-13],模塊通過YL-69芯片監測溫室內土壤的濕度信息,通過控制電磁閥的開關狀態來控制水管內水流的有無。YL-69芯片是一種用來測量土壤相對含水量的傳感器,該芯片有2個金屬插片插在土壤里,單位土壤含水量的變化會引起2塊插片之間的電阻值的變化,根據電阻的變化量求出電壓的變化量傳給單片機,從而監測土壤濕度的變化情況。獲取土壤濕度信息的通道有2種:一是從YL-69傳感器的D0引腳,用于獲取濕度閾值狀態,通過3號單片機的P1.0引腳給單片機傳送數據,原理是,當土壤濕度大于某個閾值,D0輸出0,否則輸出1;二是從YL-69傳感器的A0引腳,從該引腳獲取到的是模擬量,通過3號單片機的P0.0引腳給單片機傳送數據,用于獲取具體的濕度值。3號單片機通過P0.7引腳外加場效應管IRF540驅動電磁閥,IRF540是電壓啟動型,3號單片機從P0.7引腳輸出一個低電平,三極管8550導通,使得IRF540的G極獲得一個5 V的電壓,IRF540導通,進而打開電磁閥開關,水管中水流通過,開始噴水。圖6為溫室土壤濕度測控模塊的電路原理圖,其中P1端為24 V電磁閥,P2端為YL-69土壤濕度傳感器,P3端為土壤濕度傳感器的金屬插片。
土壤濕度測控模塊具體實現2個功能:一是采集土壤濕度數據并發送給上位機模塊;二是通過對比上位機模塊的濕度設定值和YL-69傳感器采集到的濕度值,以及上位機的控制指令決定電磁閥的通斷,進而使土壤濕度滿足設定值。圖7為土壤濕度測控模塊的工作流程圖。

圖6 土壤濕度測控模塊電路原理圖Fig.6 Schematics of soil moisture measurement and control module

圖7 土壤濕度測控模塊工作流程圖Fig.7 Workflow chart of measurement and control module of soil moisture
1號單片機和1號NRF組成上位機模塊的數據收發和處理單元,該單元用串行數據線連接到PC機上,將接收到的數據整理后傳送給PC機,同時將PC機的控制指令經過處理后發送給其他模塊。圖8為上位機模塊的實物連接圖。

圖8 上位機模塊實物連接圖Fig.8 Real object connection photo ofhost computer module
空氣監測模塊置于溫室空氣中,GY-30光照強度傳感器測量照射到溫室上的光照強度,DHT11芯片測量溫室內空氣中的溫濕度,2號單片機和2號NRF處理監測到的信息。圖9所示為空氣監測模塊的實物圖。

圖9 空氣監測模塊實物圖Fig.9 Real object photo of air monitoring module
土壤濕度檢測器和土壤濕度傳感器組成土壤濕度的監測和數據處理單元,3號單片機通過電磁閥驅動器控制電磁閥的狀態,3號NRF用以跟上位機模塊的無線通信。圖10為土壤濕度測控模塊的實物圖。

圖10 土壤濕度測控模塊實物圖Fig.10 Real object photo of measurement and control module of soil moisture
系統的執行器為旋轉水噴頭,工作原理是:在噴管上方的搖臂軸上設有偏流板和導流板,當水從噴管的噴嘴中噴出時,經偏流板沖擊導流板,使搖臂產生切向力繞懸臂回轉一角度,然后在扭力彈簧的作用下返回并撞擊噴管,使噴管轉一角度,如此反復進行,噴頭即可做全圓周轉動,為了達到在作業范圍內均勻噴灑的目的,在噴嘴處設置了網格。該噴管的噴灑半徑為2 m,即一個噴管可噴灑的面積大約為12 m2,按照溫室大小的不同增加(或減少)噴管的數目即可達到控制目的。電磁閥接到總水管上,當電磁閥打開時各噴管開始噴灑,電磁閥關閉時各噴管停止噴灑。圖11為旋轉水噴頭和電磁閥的實物圖。
NRF24L01芯片總共有126個通信頻道[14],但為了減少一對二通信時的干擾,將2號NRF的頻道設定為10,將3號NRF的通信頻道設定為60。經過多次調試,系統運行良好,在上位機模塊與溫室相距30 m內,可有效獲取數據;2號NRF和3號NRF的距離超過3 m時干擾可忽略不計[15]。圖12為上位機控制界面。

圖11 水噴頭和電磁閥實物圖Fig.11 Real object photos of water nozzle and solenoid

圖12 上位機控制界面Fig.12 Control interface of host computer
在一個測量周期內,溫室中空氣的監測結果和土壤濕度的監測結果均可實時顯示;在此次實驗周期內,設定的土壤濕度值為60%,由圖12可以看出,土壤的濕度是在60%的周圍波動,變化區間在45%~75%之間。由于誤差和延時不可避免,導致不同時段采集到的數據差異較大,比如在08:00-10:00的時段內,水噴管持續噴水,致土壤濕度一度高達75%。但總體而言,系統能按照設定的目標良好運行,達到了測控的目的。
目前業內的研究大部分側重于僅對溫室內空氣的溫濕度和光照強度的測控,本文側重于對溫室內的土壤濕度的自動控制,同時也實時監測空氣的變化情況,設計了一種以NRF24L01芯片為通信核心的溫室無線測控系統。其創新點為:一是利用無線通訊的方式,極大的簡化了控制方式;二是利用NRF24L01芯片一對多的通信功能,提高了測控效率。接下來還可以進一步利用NRF24L01芯片的一對多通信方式,用一個PC機控制多個溫室大棚內的物理指標,實現資源的集約化利用。