霍春光,劉 影,代 巍
(遼寧工程技術大學 電子與信息工程學院,遼寧 葫蘆島 125000)
隨著時代的邁進,計算機、網絡通信、大數據和自動控制技術的全面發展,打破了傳統的工農業工作方式,科學技術已經深入了民族工農業[1]。就農業大棚而言,在我國大棚溫室控制系統存在的主要問題:
(1)總體來講,科技水平和總體發展狀況不平衡,與發達國家相差較大。而且我國在智能農業方面的研究相對發達國家較晚、基礎薄弱,從生產設施裝備不完整,技術較低,生產也不規范,難以形成大規模生產制造,而農業發達國家多為自動化群控制,從而便產生了差距。
(2)在我國現有的大棚溫室內環境控制系統每個系統都是點對點相互獨立的,幾乎沒有群控制系統,這樣不僅會浪費大量的資金與財務,而且降低了用戶的管理效率。
(3)在大棚溫室測控系統中,很多通信通信系統還是有線方式。在我國大棚控制通信系統主要有RS 485總線、RS 232總線以及CAN總線等[2]。有線通信會讓室內的排線錯綜復雜,各線之間產生的電磁干擾較多、發熱較大,整體功耗提升,并且容易損壞,后期的維護成本高,不能真正意義上達到農業工業化、自動化的水平。
(4)即使有無線傳輸系統,系統多采用WiFi、藍牙、ZigBee等,這些系統容易受干擾,適用范圍很差[3]。WiFi功耗高,傳輸距離較短,抗干擾較弱,藍牙相對功耗低但是傳輸距離更短,ZigBee功耗雖然低,數據量極小,且極易受干擾,局限性太大,無法適應太多的復雜環境檢測控制(強干擾地區)[4]。
為此,本文設計了一種基于LoRa的智能大棚控制系統。該系統可以監測并控制室內環境的溫濕度信息,利用LoRa節點傳輸至網關再通過GPRS將數據上傳至云平臺,管理人員通過云端網頁或網關實時監測并且遠程控制各項數據指標,如果數據異常系統則會向管理人員發送報警短信,并且采取相應的措施調整環境。針對停電的情況,系統中加入了斷電記憶功能。在設備突然斷電情況下,數據可以得到保留,重新上電能夠自動恢復,以有效保障環境狀態安全。實驗表明:所提系統解決了人工監測導致出現的偏差,采用遠程自動化控制,即使用戶身在遠方也可實時調整環境條件狀態,可大幅提高農作物的生產質量與人們的工作效率。
LoRa可大大改善了接收的靈敏度,降低了功耗,而且LoRa還具有擴頻技術[5],如圖1所示,LoRa的延遲極低,在高達100 dB的鏈路上的通信距離可達10 km。LoRa接收電流特別小,僅僅10 mA,最低功耗的傳輸方式即睡眠電流為200 nA,這大大增加了設備的續航能力,并且大幅度延長了電池的使用壽命。本文基于LoRa技術制作的網關支持多信道多數據并行處理,穩定性強、延遲低、容量大[6]。理論上網關24 h可以處理500萬次與各子節點間的通信(例如,每次發送10 B數據,網絡占用率僅為0.1)。如果把網關安裝在有移動通信基站的位置處,在100 mW電功率下其發射功率為20 dBm,那么在城市里、在建筑密集的環境下,其覆蓋范圍可達2 km左右,而在建筑密度較低的野外郊區,其覆蓋范圍甚至可達到10 km以上。

圖1 LoRa擴頻技術
通過基于LoRa、NB-IoT制作的數據采集端、控制端、可操控網關以及基于OneNET的可視化監管中心[7],可遠程及時了解各個節點溫室大棚內的環境狀態信息,并且進行實時自動調整[8],在極短的時間內控制溫度、濕度,使農作物生活于最優的環境,保障農作物的健康狀態和生長速度,并且提高作業效率和管理水平,推動了農業信息化的發展。
本文設計的基于LoRa的智能大棚控制系統分為4個部分,分別為數據采集端、可操控網關、控制端、云端,如圖2所示。LoRa模塊負責傳輸采集的環境信息、警報和控制信號。可操控網關將來自各個LoRa的數據進行初步處理之后再通過NB-IoT模塊上傳至OneNET平臺,云端會將環境信息顯示在網頁上。當環境控制系統的數據異常時,網關發送出相應的警報和控制信號,控制端會采取相應的措施對環境進行校正,并且還會向監管人員或用戶發送異常短信提醒,無論在家中還是在大棚都可以實現對大棚溫室內環境的遠程實時可視化監控。

圖2 環境控制系統系統結構
系統硬件主要分為數據采集端、可操控網關和控制端三個部分,如圖3所示。其中數據采集端和控制端共用一塊電源,放在需要監控的大棚溫室內,如圖4所示。可操控網關則使用另一塊電源,與用戶和管理者放在一起。本系統采用LoRa星狀數據結構,以網關作為中央節點,利用不同的信道對各個節點相連接,每一個節點都可以與網管之間進行信息交換。LoRa具有喚醒模式,當需要控制遠端子節點時,會發送喚醒碼,遠程端會定時接收喚醒信號。當收到喚醒信號時,便開啟串口傳輸模式,進行數據傳輸,數據利用NBIoT模塊,通過TCP/IP協議上傳至云平臺。這種方式提高了傳輸效率和工作效率,并且最大限度地降低了功耗。

圖3 數據采集端與控制端

圖4 可操控網關
如圖5所示,數據采集端主要包括處理核心模塊、LoRa無線模塊、溫度傳感器和濕度傳感器。

圖5 數據采集系統硬件框圖
核心處理模塊采用了宏晶科技生產的8位8051核心微處理器STC89C516單片機。該模塊主要負責處理傳感器采集到的數據,并通過LoRa模塊以無線的方式發送給可操作網關。
LoRa模塊采用了成都億百特公司生產的新一代工作頻率在433 MHz的無線收發模塊。作為星狀結構的一個子節點,該模塊主要是將處理好的數據以無線方式發送出去。
溫、濕度傳感器采用了DHT11、DS18B20。該模塊主要負責采集環境溫濕度,其中DHT11在溫度測試方面不夠精確,因此用DS18B20進行溫度測量,讓數據更加精確。
可操控網關如圖6所示,主要包括核心處理模塊、LoRa無線模塊、24C02 E2PROM模塊、NB-IoT模塊、LCD液晶顯示屏。

圖6 可操控網關硬件框圖
(1)核心處理器采用宏晶科技生產的STC12C5A60S2單片機。STC12C5A60S2是一款高速、低功耗、超強抗干擾的新一代8051單片機,其具有雙串口通信。它對LoRa模塊接收到的數據進行處理,并顯示在液晶顯示屏上。首先其會檢測是否連接,未連接會在液晶屏顯示“disconnect”;然后檢測傳感器是否正常,如果傳感器不正常會顯示“error”。接收到正常的數據后,會顯示在液晶屏上,并且發送給NBIoT模塊,通過NB-IoT模塊將數據上傳至云平臺。并且用戶可以根據自己的需求利用按鍵對環境的條件進行設置,設置信息會通過單片機處理保存在E2PROM中。當數據與設置不符,通過STC12C5A60S2單片機對數據處理讓網關模塊會亮起報警燈并且生成控制信號,以LoRa模塊發出至控制端。
(2)E2PROM采用24C02芯片。24C02芯片為串行通信方式,是基于I2C總線通信協議的儲存器件,具有接口方便、體積小、穩定性強,數據斷電不丟失的特點,保存時效可長達100年。若網關模塊中途掉電,數據仍然會儲存在芯片里,待到來電設備會自動恢復上次斷電前設置的數據,無需擔心數據丟失。
(3)LoRa模塊采用成都億百特公司生產的新一代工作頻率在433 MHz的無線收發模塊,該模塊主要負責將警報信號以無線方式發送出去,以及接收數據采集端的數據。
(4)顯示屏采用了1602液晶顯示屏,可以調節亮度,對比度,可以將數據直觀顯示。
(5)NB-IoT模塊采用了中國移動OneNET平臺專用的M5310A模塊,將單片機處理后的環境數據流上傳至OneNET平臺。
控制端軟件設計如圖7所示,核心處理模塊采用了宏晶科技生產的8位8051核心微處理器STC89C516單片機,該模塊主要負責將LoRa接收到的警報信號進行處理,將警報信號發送給GPRS/GSM無線模塊,并且發送相應的控制信號給光耦繼電器改變環境。

圖7 控制端系統硬件框圖
LoRa模塊采用了成都億百特公司生產的新一代工作頻率在433 MHz的無線收發模塊,該模塊主要是接收將警報信號傳給單片機。
GPRS/GSM無線模塊采用了芯訊通(SIMcom)公司旗下的SIM900A模塊,采用ARM926EJ-S架構,它主要負責將單片機傳輸的警報信號通過基站以短信發送給用戶。
繼電器采用了光耦四合一繼電器,具有集成度高、響應迅速的特點,主要控制改變環境因素電器的開啟。
該智能大棚控制系統的軟件設計主要分為數據采集端軟件設計、可操控網關模塊軟件設計、控制端軟件設計和可視化監管中心軟件設計。
數據采集端軟件設計流程圖如圖8所示。

圖8 數據采集端軟件設計流程
在打開數據采集端電源后,該設備初始化溫度傳感器DS18B20和DHT11以及LoRa無線模塊,處理器開始檢測傳感器是否正常工作,如果傳感器不能正常工作,通過LoRa發送錯誤信號,然后進行循環檢測;傳感器正常工作情況下,傳感器數據經過處理器處理后,將溫濕度數據寫入LoRa,LoRa再將溫濕度數據發送出去,最終進入下一個數據采集和發送循環。
可操控網關軟件設計流程如圖9所示。

圖9 可操控網關軟件設計流程
在打開可操控網關電源后,該設備對STC12C5A60S2芯片、24C02芯片、1602液晶屏、按鍵、M5310A模塊、LoRa模塊初始化。首先LoRa將數據傳入至單片機,單片機LoRa檢測連接狀態及傳感器是否能正常運行,檢測結果會顯示在液晶屏上。正常運行情況下,單片機會先讀取儲存器信息,然后LCD屏會顯示LoRa接收到的數據,并且通過M5310A模塊將接收到的數據傳入至云平臺。人工可根據自己的需求通過按鍵設置環境條件,單片機會自動儲存在24C02芯片中,從而實現斷電記憶;處理器會根據設置環境條件與當前環境值進行對比。當環境不滿足條件要求時,處理器會通過LoRa模塊發送出對應的警報信號,并且有指示燈提示,然后進入循環檢測更新數據,當溫濕環境條件正常時,設備會發送符合條件信號,然后再進入下一個循環檢測更新數據。
控制端軟件設計如圖10所示,在打開控制端上電源后,系統對STC89C516芯片、LoRa、繼電器、SIM900A模塊初始化。首先LoRa將接收到的信息通過單片機處理,判斷是否為報警信號,如果是正常信號,則進入循環繼續掃描;當接收到報警信號,單片機會根據報警信號判斷出當前環境狀態,通過SIM900A給用戶發送當前錯誤環境報警短信,并且通過繼電器控制相應的用電器來調整環境狀態,然后進入循環檢測。

圖10 控制端軟件設計流程
本設計的云端可視化監控中心基于OneNET平臺而設計。OneNET平臺是由中國移動打造的PaaS物聯網開放平臺。該平臺可以提供簡便的海量連接、云端存儲、消息分發和大數據分析等服務,下位機端通過GPRS/GSM傳輸模塊與API接口進行連接,大幅度降低了開發者的研發、運營和維護成本,提高了工作效率。用戶可以根據OneNET平臺提供的產品服務框架結構,創建一個大棚環境應用,通過審核之后,便可以對系統中的各項數據進行云端處理,用戶最終可以看到實時數據,并且對環境變化進行預測。OneNET平臺的開發結構管理圖結構如圖11所示。OneNET平臺的用戶、產品、設備、APIKey、觸發器和數據流采用如圖10所示的結構形式[9-10]。

圖11 OneNET平臺資源管理層次結構
當可操控網關未連接數據采集端,可操控網關LCD屏會顯示“disconnect”,連接好但未插入傳感器時候,數據采集端會發送錯誤信號,可操控網關LCD屏上會顯示“error”,插好傳感器后數據采集端將獲取到的溫濕度數據發送到可操控網關,LCD屏幕會顯示溫濕度數據。然后通過按鍵對操控網關進行環境條件設置,當環境不滿足設定條件,可操控網關警報燈亮起,同時LoRa將報警條件發送到了控制端,控制端接到信號后,對應相應環境改變條件的繼電器正常工作,手機端收到大棚環境信息報警短信;可操控網關將溫濕度數據一起上傳至OneNET平臺,最終在云端可視化監管中心上顯示出來;當可操控網關突然斷電,再重新上電啟動,環境條件設置并未丟失,斷電記憶功能可以正常實現。
圖12所示為基于OneNET平臺上開發的網頁應用,其顯示大棚環境信息以及數據統計圖,可方便直觀監測環境且預測環境變化規律。圖13為大棚環境條件預設值條件不符向管理人員發送的報警短信圖。

圖12 網頁應用顯示圖

圖13 短信報警圖
在科學技術發展迅猛的今天,科學改變生活已經深入人心,實現低功耗、綠色環保已是智能農業的大勢所趨,因此,本文設計一種基于LoRa技術和OneNET平臺的環境控制系統。經過多次測試,通過各個子節點對主節點的精準反饋,該系統可以實現對大棚環境條件實時監測、數據預測、遠程控制、斷電記憶、短信報警等先進功能,并且基于LoRa的傳輸系統采用的是喚醒模式,該模式下大幅度降低了功耗,延長了電池的使用壽命,增加了系統的穩定性。