基于 Arduino 和 WiFi 的溫室監(jiān)控系統(tǒng)
0 引 言
隨著現(xiàn)代農(nóng)業(yè)科技的改革與發(fā)展,溫室大棚因其涉及范圍廣、科技含量高、與人們生活密切相關(guān)等,已成為各國農(nóng)業(yè)飛速發(fā)展的必要條件。實現(xiàn)溫室大棚環(huán)境監(jiān)測,實時監(jiān)測大棚內(nèi)溫濕度和光照等環(huán)境因素是否穩(wěn)定,各環(huán)境因素是否在植物可接受范圍內(nèi) [1],最終達到植物生長所需的最佳環(huán)境因素。
本文系統(tǒng)將 Arduino 單片機、各類環(huán)境因素相關(guān)的傳感器、ZigBee 無線通信和手機 APP 開發(fā)相融合 [2],設(shè)計一種切實可行的溫室大棚環(huán)境監(jiān)測系統(tǒng)。該系統(tǒng)能夠符合不同地域的氣候特征,使得溫室大棚內(nèi)的環(huán)境參數(shù)都能符合植物正常生長的條件,且總體結(jié)構(gòu)簡單,便于應(yīng)用。
1 系統(tǒng)總體方案
1.1 方案設(shè)計步驟
本文方案具體實施步驟如下 :
(1) 本文設(shè)計由溫度、濕度和光照強度傳感器、Arduino 主控芯片、WiFi模塊、傳感器和手機 APP組成,主要實現(xiàn)溫室大棚中溫濕度和光照信息采集、數(shù)據(jù)處理、數(shù)據(jù)傳輸及數(shù)據(jù)查看功能 [3]。
(2) 調(diào)試溫度、濕度和光照強度傳感器的讀值程序。
(3) 使結(jié)果顯示在 APP上,每隔 500ms便發(fā)送數(shù)據(jù)到ESP8266,數(shù)據(jù)以溫度 |濕度 |光照強度的方式傳送并顯示。
1.2 系統(tǒng)總體框圖
系 統(tǒng) 采 用 Arduino主 控 芯 片,ESP8266串 口 WiFi, LM35溫度傳感器,HR202濕度傳感器和BH1750光照傳感器,總體框圖如圖 1 所示。
1.3 系統(tǒng)整體功能
系統(tǒng)主程序流程如圖 2 所示。電路板通電后,溫度、濕度和光照傳感器會采集溫室大棚的信息并傳送至 Arduino 主控芯片處理。芯片發(fā)送數(shù)據(jù)至 ESP8266,ESP8266 通過與手機 APP 通信發(fā)送至手機 [4],按下 WiFi 模塊開關(guān),手機通過WiFi 模塊發(fā)出的 WiFi 信號與模塊連接,然后打開手機環(huán)境監(jiān)測系統(tǒng) APP,APP 會顯示溫室大棚實時對應(yīng)的溫度、濕度和光照強度的測試值 [5],實現(xiàn)遠距離監(jiān)測報警功能。
2 系統(tǒng)硬件設(shè)計
2.1 Arduino 單片機
簡單來說,Arduino 單片機是一個基于開放和構(gòu)建原始碼的軟硬件平臺,并且擁有廣泛的類似 Java 與 C 語言的編程環(huán)境 [6]。Arduino 簡單易懂、操作簡單,包含硬件部分各種型號的操作板和軟件部分的 IDE 編程環(huán)境。Arduino IDE編程利用基于 Wiring 的編程語言和 Arduino 開發(fā)環(huán)境實現(xiàn)。
2.2 LM35溫度傳感器
經(jīng)過對溫度傳感器性能與安全方面的比較,本文系統(tǒng)選擇 LM35 作為采集溫室大棚溫度值的傳感器。該傳感器工作性能穩(wěn)定,測量精度高,誤差較小,額定使用范圍廣,可直接接電源工作,工作流程如圖 3 所示。
2.3 HR202 濕度傳感器
經(jīng)過對濕度傳感器性能與安全方面的比較,本文系統(tǒng)選擇 HR202 作為采集溫室大棚濕度值的傳感器。該傳感器可廣泛應(yīng)用于各種測試濕度的環(huán)境中,通過電位器調(diào)節(jié)靈敏度。長期使用性能穩(wěn)定安全,現(xiàn)已廣泛應(yīng)用于醫(yī)療、倉庫、工業(yè)控制和科研等領(lǐng)域 [7]。
2.4 ESP8266 WiFi 模塊
ESP8266 是一款超低功耗的 WiFi 透傳模塊,廣泛應(yīng)用于互聯(lián)網(wǎng)和移動設(shè)備的無線連接領(lǐng)域,可實現(xiàn)互聯(lián)網(wǎng)或局域網(wǎng)的通信。ESP8266 能夠獨立運行,也可搭載在其他擴展版上運行,工作時傳輸性能穩(wěn)定,傳輸距離遠。
ESP8266 的高速緩沖存儲器可減少內(nèi)存需求,并且可以從主控芯片接收信息,無線傳輸?shù)剿枰?PC 端或手機APP 等 [8]。該模塊成本低、體積小、傳輸速率快,可直接連接 Arduino 實現(xiàn)數(shù)據(jù)傳輸功能,有 STA,AP 與 AP+STA 三種工作模式。
2.5 CC2530 ZigBee 無線通信模塊
CC2530 是一種基于 IEEE 802.15.4 的短距離、低功耗的無線通信模塊,具有近距離、低成本、低數(shù)據(jù)速率與自組織等特點。系統(tǒng)內(nèi)可編程閃存,主要適用于自動與遠程控制領(lǐng)域,可工作在 2 400 ~ 2 450 MHz 的公用頻段。通過該模塊可使傳統(tǒng)的串口設(shè)備進行無線連接,主要用于點對點與廣播等通信 [9]。
3 手機 APP 制作與顯示
E4A 是一種專門針對安卓手機 APP 開發(fā)的軟件,由開發(fā)區(qū)與代碼區(qū)兩部分組成。開發(fā)區(qū)針對手機 APP 顯示界面,代碼區(qū)針對手機 APP 的語言編程環(huán)境 [10]。APP 設(shè)計界面如圖 4 所示。
4 系統(tǒng)測試結(jié)果分析
按照電路圖把模塊與元器件在網(wǎng)孔板上連接成一個整體,下載好程序后開始測試。得到系統(tǒng)測試值,2 個節(jié)點通電后,顯示當前環(huán)境下所采集到的溫濕度和光照強度。硬件實物如圖 5 所示。
通過人為改變節(jié)點周圍溫度與光照等條件,系統(tǒng)測試值發(fā)生明顯變化,并且當溫度值高于上限 30、低于下限 5,濕度值高于上限 1 000、低于下限 200,光照強度值高于上限800、低于下限 10 時,都會有蜂鳴器報警與 APP 界面報警,從而實現(xiàn)溫室大棚的環(huán)境監(jiān)測與移動監(jiān)測報警功能。經(jīng)過多次測量對比,溫度測量值與實際值誤差在 ±0.25 ℃之間 ;濕度值誤差在 2%~ 3%RH 之間 ;光照強度值誤差在 0.5%~ 3%lx之間,總體誤差較小,測量值較準確。
5 結(jié) 語
本文系統(tǒng)經(jīng)過方案設(shè)計、硬件制作、軟件開發(fā)調(diào)試、系統(tǒng)測試等一系列步驟,多個節(jié)點都能正常顯示采集參數(shù)與通信,達到了數(shù)據(jù)精度要求。手機 APP 制作成功并安裝到手機,通過 WiFi 模塊連接節(jié)點與手機,節(jié)點間采用 ZigBee 無線通信傳遞數(shù)據(jù),實現(xiàn)了手機 APP 上顯示溫、濕度及光照強度與報警功能。