













摘 要:為了提高溫室大棚的自動化控制水平,設計了溫室大棚環境智能控制系統。該系統以STM32F103C8T6為控制器,可以測量溫室大棚內的溫濕度、光照、土壤濕度、CO2體積分數等農作物生長環境參數,這些參數通過TFT液晶顯示器顯示。環境參數與設定值比較,如果不在設定范圍內,液晶顯示器上相應參數所在行變為紅色,觸發蜂鳴器報警,系統自動進行加熱、降溫、補光、通風、加濕、灌溉等操作。該系統還可以通過ESP8266模塊實現與手機APP通信,用戶可以通過手機端查看環境參數,并且進行手動控制。測試結果表明,系統具有結構簡單、操作方便等特點,實現了對溫室大棚環境的智能控制。
關鍵詞:溫室大棚;STM32;溫濕度傳感器;光照強度傳感器;土壤濕度傳感器;CO2傳感器;ESP8266
中圖分類號:TP273 文獻標識碼:A 文章編號:2095-1302(2024)12-0-05
0 引 言
溫室大棚是現代農業生產的重要設施之一,通過控制大棚內溫度、濕度、光照等環境參數,為農作物提供適宜的生長環境。溫室大棚可以使農作物不受季節、環境影響,滿足人們對新鮮、反季節農產品的需求,因此被廣泛應用于水果、蔬菜、花卉等農作物的生產中[1]。
對溫室大棚內溫濕度、光照強度、土壤水分、CO2體積分數等環境參數的監測與控制,是溫室大棚農作物種植的核心環節,對保障大棚內農作物的健康生長有著至關重要的意義[2-3]。目前,對溫室大棚內的環境參數的監測與控制主要還是采用人工的方式進行,效率低下,成本高,自動化程度低,不利于提高農作物的產量和質量[4-6]。本文基于嵌入式微控制器STM32F103C8T6,設計了大棚環境參數智能控制系統,對大棚內的溫濕度、光照強度、土壤水分、CO2體積分數等環境參數進行實時監測,系統根據設定值自動(也可以手動)控制設備進行加熱、降溫、加濕、灌溉等操作,對大棚內環境參數進行實時控制。為了便于管理,各參數的設定值可通過按鍵進行調整,各環境參數的當前值可通過液晶顯示器實時顯示。此外,系統可以通過WiFi模塊與手機APP通信,用戶可在手機端實現大棚環境內參數的遠程監測與控制。該系統為農作物生長提供了適宜的環境,有助于提高農產品的產量和質量,同時降低生產成本,提高生產效率。
1 系統總體設計
大棚環境智能控制系統以STM32F103C8T6(以下簡稱STM32)為控制器,主要包括:電源模塊、溫濕度傳感器、光照強度傳感器、土壤濕度傳感器、CO2傳感器、按鍵模塊、顯示模塊、報警模塊、通信模塊等。系統總體設計結構框圖如圖1所示。
電源模塊:由于主控制器的工作電壓為1.8~3.6 V,部分器件工作電源在5 V以下,而文中采用的電壓為3.3 V,因此需要設計電源電路將5 V電壓降壓到3.3 V。
溫濕度傳感器:采用數字式溫濕度傳感器DHT11測量大棚內的空氣溫濕度。
光照強度傳感器:采用光照強度傳感器GY-30測量大棚內的光照強度。
土壤濕度傳感器:采用YL-69土壤濕度傳感器測量大棚內的土壤濕度。
CO2傳感器:采用MG-812 CO2傳感器測量大棚內的CO2體積分數。
按鍵模塊:設置各環境參數的設定值。
顯示模塊:采用1.44英寸TFT顯示屏實時顯示各環境參數值,當有參數值不在設定值范圍內時,顯示器上環境參數所在行變為紅色。
報警模塊:當有參數值不在設定值范圍內時,通過蜂鳴器鳴響報警。
控制模塊:當有的環境參數需要調節時,STM32的I/O端口通過繼電器驅動執行機構進行相應參數的調節,完成加熱、降溫、灌溉等操作。
通信模塊:采用ESP8266模塊實現與手機APP通信,用戶通過手機APP可遠程查看大棚內各環境參數值,并進行遠程控制。
2 硬件電路設計
2.1 電源電路設計
系統采用USB供電,電壓為5 V,利用線性穩壓芯片AMS1117-3.3將輸入電壓穩定為3.3 V的輸出電壓,這樣既可以滿足主控模塊的供電需求,也可以滿足通信模塊、顯示模塊等的供電需求。電壓降壓電路如圖2所示[7-8]。
2.2 溫濕度測量電路設計
采用數字式單總線溫濕度傳感器DHT11測量大棚內溫濕度,該傳感器可同時測量溫度和濕度,并以數字信號輸出,溫度測量范圍為0~50 ℃,濕度測量范圍為20 %RH~90 %RH[9]。
DHT11有4個引腳,分別為:VCC(電源正)、DATA(數據傳輸)、NC(空腳)、GND(接地),溫濕度測量電路如圖3所示,DATA引腳與STM32的PA11引腳相連接。
2.3 光照強度測量電路設計
采用光照強度傳感器GY-30測量大棚內的光照強度,GY-30的核心芯片是數字式光強感應芯片BH1750FVI,其內含光敏二極管、運算放大器、16位A/D轉換器等,采用I2C總線與控制器通信,測量光照范圍為0~65 535 lx。GY-30傳感器有5個引腳,分別為:VCC(供電電源正極)、SCL(時鐘輸入)、SDA(數據線)、ADDR(地址線)、GND(供電電源負極)[10-11]。光照強度測量電路如圖4所示,SCL、SDA引腳分別與STM32的PB9、PB8引腳相連接。
2.4 土壤濕度測量電路設計
采用土壤濕度傳感器YL-69測量大棚內的土壤濕度,如圖5所示[12]。其具有2種輸出形式,一種是數字量輸出(DO),在這種模式下,可通過電位器設置閾值,當測量的濕度大于閾值時,DO輸出為0;另一種是電壓模擬量輸出(AO)。由于需要測量土壤濕度數值,所以文中選用第二種。AO與STM32的PA1引腳相連,通過STM32的ADC功能將電壓模擬量轉換成數字量在液晶屏上顯示[13]。
2.5 CO2體積分數測量電路設計
采用CO2傳感器模塊MG-812測量大棚內的CO2體積分數,該傳感器體積小,功耗低,靈敏度高,其受溫濕度變化影響較小,輸出信號具有良好的穩定性[14]。該模塊有4個引腳,分別是:VCC(供電電源正極)、GND(供電電源負極)、DO(數字信號輸出)、AO(模擬信號輸出)。AO與STM32的PA0引腳相連,如圖6所示,通過STM32的ADC功能將電壓模擬量轉換成數字量在液晶屏上顯示。
2.6 按鍵電路設計
按鍵電路由3個按鍵S1、S2、S3構成,用于設置大棚內環境各參數的設定值,按鍵電路如圖7所示。S1鍵為設置鍵,按下時進入設置模式,S2鍵代表加,S3鍵代表減。進入設置模式并設置完一個參數設定值后,按下S1鍵,進入下一個參數設定程序,所有參數設定完成后,按下S1鍵退出參數設置模式。
2.7 顯示電路設計
選用1.44英寸TFT彩屏作為大棚內環境參數顯示器,該顯示器的分辨率為128×128,采用SPI串口通信,有8個引腳,引腳功能見表1,電路如圖8所示。
2.8 報警和控制電路設計
各傳感器實時測量大棚內的環境參數,并與設定值比較,當測量值不在設定范圍內時,通過蜂鳴器鳴響報警,報警電路如圖9所示。STM32的I/O端口通過繼電器驅動執行機構進行參數調節,分別通過PA2、PA3、PA4、PB1、PB5、PB7完成加熱、灌溉、通風、補光、加濕、降溫操作。圖10為加熱控制電路,其他控制電路結構與其相同。
2.9 通信電路設計
通信電路實現STM32與手機APP之間的通信,將大棚內的環境參數發送至手機APP,手機APP端可以對大棚內環境參數進行手動控制。文中采用ESP8266 WiFi模塊實現通信,該模塊支持TCP/IP協議,具有STA模式、AP模式和STA+AP混合模式等3種工作模式。在STA模式下,ESP8266模塊通過路由器連接互聯網,手機或電腦通過互聯網實現對設備的遠程控制;在AP模式下,ESP8266模塊作為熱點,手機或電腦直接與模塊通信,實現局域網無線控制;在STA+AP模式下,2種模式共存[15-17]。文中ESP8266 WiFi模塊選擇AP模式,與STM32采用串口通信,STM32串口選用USART1,通信電路如圖11所示。
3 軟件設計
完成系統硬件設計后,編寫程序實現所需功能。程序開始執行,首先對系統進行初始化,初始化完成后檢測S1鍵是否被按下。如果S1鍵被按下則進入參數設置,如果沒有被按下,各個傳感器開始工作,測量大棚內的環境參數。將得到的環境參數通過TFT液晶顯示器顯示,便于用戶觀察。將測量的參數與設定值比較,如果不在設置范圍內,蜂鳴器鳴響報警。同時控制系統啟動,驅動執行機構進行實時調節。通過通信模塊與手機APP通信,可以在手機APP中遠程查看大棚內各參數數值,也可以遠程操作執行機構進行調節。主程序流程如圖12所示。
3.1 初始化程序
初始化程序包括:各傳感器的I/O配置及初始化;按鍵的I/O配置;串行口的I/O配置、優先級設置和初始化;TFT液晶顯示器的I/O配置及初始化;報警模塊、控制模塊的I/O配置;ADC配置;ESP8266模塊的參數配置。ESP8266模塊的參數配置見表2。
3.2 按鍵程序
通過按鍵程序實現系統參數設置,按下S1鍵進入參數設置界面,按下S2鍵加1(CO2體積分數和光照強度加100),按下S3鍵減1(CO2體積分數和光照強度減100)。設變量menu表示參數設置,每按一次S1鍵menu值加1。進入不同的參數設置界面,當menu值大于7時,再按下S1鍵menu值為0,完成參數設置,進行環境參數實時測量。按鍵程序流程如圖13所示。
3.3 系統控制程序設計
完成參數設定后,各傳感器實時測量大棚內各環境參數,與設定值進行比較。當測量值不在設定范圍內時,控制系統自動啟動,驅動執行機構運行,對大棚內環境進行調節;當環境參數在設定值內,執行機構停止運行。系統控制程序流程如圖14所示。
4 系統測試
完成系統硬件設計和軟件設計后,對系統進行運行測試,將生成的HEX文件下載到STM32中,給系統上電。采用易安卓(E4A)設計手機APP,并安裝到手機中。
通過S1、S2、S3按鍵設置各環境參數的設定值。打開手機WiFi,輸入密碼,連接后通信。各參數的實時值通過通信電路傳輸到手機端,在APP中實時顯示,便于遠程觀測。各參數在設定范圍內,系統正常運行,如圖15所示。當有參數不在設定值范圍內時,液晶顯示器中參數所在行變為紅色,同時蜂鳴器鳴響報警。比如:遮擋光照強度傳感器時,液晶顯示器光照值所在行變為紅色,蜂鳴器鳴響報警,補光燈開啟,如圖16所示。
可通過手機APP中的各個控制按鈕手動控制執行機構運行,實現遠程手動控制。
5 結 語
本文以STM32F103C8T6為控制器設計了一款溫室大棚環境控制系統。該系統能夠實時測量大棚內的空氣溫濕度、CO2體積分數、光照強度、土壤濕度,還具備參數設置、顯示與報警、遠程觀測與控制等功能。本文對系統的硬件和軟件的設計進行了詳細的闡述,并對系統進行了運行測試。結果表明:系統能夠實現對溫室大棚環境參數的測量與控制。本文設計的控制系統結構簡單,操作方便,有助于提高生產效率,具有較強的應用價值和廣闊的市場前景。
參考文獻
[1]沈衛星.基于AT89C51溫室大棚無線溫濕度監測系統的設計與實現[J].數字技術與應用,2023,41(5):190-192.
[2]孫康,王靜秋,冷晟,等.基于物聯網的溫室環境監控系統[J].測控技術,2019,38(9):118-121.
[3]楊明,楊建國,宋楊.基于物聯網技術的溫室大棚環境監測與控制系統模塊化設計[J].物聯網技術,2021,11(1):108-111.
[4]韓力英,楊宜菩,王楊,等.基于單片機的溫室大棚智能監控系統設計[J].中國農機化學報,2016,37(1):65-68.
[5]史晨浩,李成創,余佳慶,等.基于單片機的農業大棚溫濕度采集控制系統的設計[J].電子制作,2023(7):92-94.
[6]何嘉凱,杜雪梅,郟浩杰,等.基于單片機的智能溫室系統的設計與實現[J].物聯網技術,2021,11(10):41-44.
[7]齊超,張冰蔚,戚永康,等.基于STM32的經濟型交流伺服電機控制器設計[J].工業儀表與自動化裝置,2020(5):118-122.
[8]劉宏偉,蔡春曉,王一鳴,等.基于STM32和ZigBee的智能校園路燈控制系統[J].科技與創新,2021(23):95-96.
[9]李志偉,東偉,黃雙成.基于DHT11的農業大棚溫濕度監控系統設計[J].工業儀表與自動化裝置,2021(1):39-43.
[10]楊媛鈁.基于APP技術的農業大棚環境調控設計[J].物聯網技術,2023,13(6):25-27.
[11]陳宣,陳光耀,陳金立.基于LoRa的農業環境參數采集系統[J].信息技術,2022(8):8-14.
[12]向鵬俊.基于STM32的智能大棚環境監測管理系統的設計與實現[J].物聯網技術,2022,12(6):9-13.
[13]樂麗琴,楊洋,張具琴,等.基于LoRa的農作物管理系統設計[J].智慧農業導刊,2023(19):19-21.
[14]賀媛,李昕,馬健,等.室內二氧化碳濃度監測報警器設計[J].吉林大學學報(信息科學版),2023,41(5):827-831.
[15]楊海龍,寇健,溫曉東,等.基于ESP8266的智能建筑溫濕度檢測系統設計[J].河北建筑工程學院學報,2023,41(3):177-181.
[16]肖昌濱,魏云林,黃秀璋,等.基于阿里云的農業大棚環境監控系統設計[J].物聯網技術,2023,13(4):26-30.
[17]曾當兵.基于物聯網的自動喂魚機設計[J].電子世界,2018(2):36-37.
基金項目:湖北省教育廳科學研究計劃項目(B2022199)
作者簡介:祖一康(1984—),男,博士,講師,研究方向為智能檢測與控制。
徐妙婧(1984—),女,碩士,講師,研究方向為智能控制。