前言:尋找寫作靈感?中文期刊網用心挑選的談MQTT的草莓溫室物聯網監控系統設計,希望能為您的閱讀和創作帶來靈感,歡迎大家閱讀并分享。
摘要:為實現草莓溫室的遠程監控和管理,設計基于mqtt的草莓溫室物聯網監控系統。系統采用MQTT協議作為數據通信協議,降低了通信成本,在帶寬受限的農業物聯網應用場景中具有較好的傳輸性能。物理感知層通過PLC實時采集草莓溫室的環境參數并控制溫室設備。網絡傳輸層使用云服務器,搭配MySQL數據庫,使用MQTT通訊協議發布/訂閱主題,完成信息傳輸。應用層采用響應式布局界面,適配多種用戶終端。系統實現草莓溫室信息采集與遠程控制,提高溫室的管理水平。
關鍵詞:溫室;物聯網;MQTT協議;PLC
0引言
草莓是我國農業增效、農民增收的重要產業,我國的草莓生產面積和產量居世界第一。目前草莓大多采用溫室設施栽培生產,能提前上市,提高生產效益,因而對草莓溫室的管理十分重要。草莓溫室環境參數的監控是抵御自然災害,提高自動化程度的重要途徑[1]。如果依靠人工采集數據、現場調控設施,不僅會造成工作效率低、采集數據誤差大,還會影響最終的控制效果。基于物聯網的草莓溫室監控系統可以實現遠程監測草莓的生長環境信息,并對設施環境進行智能化調控,以提高生產管理水平,促進農業發展方式轉變[2]。朱均超等設計了基于物聯網的農業大棚環境監測系統,但是無法通過設施控制調節環境參數[3]。柳軍等實現了溫室環境數據的采集和監測,并列舉了溫室調控的執行機構,但并沒有進行配套的控制功能開發[4]。本文通過物聯網和傳感技術的融合,設計物聯網監控系統,實現草莓溫室環境參數的實時采集和遠程控制。使用輕量級的通信協議MQTT,降低了通信成本,在帶寬受限的農業物聯網應用場景中具有較好的傳輸性能。采用分布式系統設計,可以使傳感器實現即插即用。設計響應式監控平臺,滿足不同終端用戶需求。
1系統總體架構
基于MQTT的草莓溫室物聯網控制系統由三層架構組成,分別為物理感知層、網絡傳輸層和終端應用層[5],總體結構如圖1所示。物理感知層處于系統的最底層,分為數據采集模塊和執行機構模塊。通過傳感器采集到環境參數,輸入到采集控制器中進行匯總,將匯總后的數據送到無線終端設備DTU。DTU作為數據傳輸單元,可以將環境參數通過GPRS方式傳輸至網絡傳輸層的云服務器,也可以將云服務器處理后的控制命令轉換為串口數據輸送給執行控制器,用以調節溫室設備。網絡層將接收到的環境參數存儲到數據庫中,并響應終端的查詢和控制請求。終端應用層提供多種類型終端的人機交互接口,實現現場數據的實時監測和溫室設備的遠程調控,并具有歷史數據查看、系統管理、設備管理功能。
2物理感知層
感知層的作用是采集和傳輸草莓溫室環境參數[6,7],并通過控制器對溫室設備進行調控,結構框圖如圖2所示。該層包括匯總數據及控制設備的采集控制節點、用于數據采集的環境傳感器、溫室環境控制設備,另外,為將溫室環境數據方便可靠的傳輸至網絡層,本層還包括網絡傳輸模塊DTU。采集控制器系統是物理感知層的核心。系統的處理器采用了西門子的CPU226PLC,該款處理器具有充足的數字量I/O接口,并可以擴展模擬量輸入模塊,實現溫室設備的手動/自動控制模式切換,環境數據的匯總,以及溫室設備的控制,PLC的輸入輸出分配表見表1。由圖3所示,PLC的輸入接口除了連接溫室設備獨立控制按鈕外,還要連接數據采集傳感器。需要采集的環境因子有6個參數,分別是空氣溫度、空氣濕度、土壤溫度、土壤濕度、二氧化碳濃度和光照強度。因傳感器的輸出值為模擬量,PLC需要外接兩個模擬輸入模塊EM231,用以將傳感器采集到的模擬量數據匯集到PLC中。PLC的輸出連接控制溫室設備運行的交流接觸器和報警用指示燈。為了實現數據的可靠傳輸,PLC選用自帶的RS485通信接口與網絡傳輸模塊DTU進行通信。傳感器的數據輸入到PLC中,經過打包發送到DTU中。考慮到溫室所處環境偏僻,所以使用性價比高、靈活性好的GPRS通信方式,將DTU的數據傳輸至云服務器。
3網絡傳輸層
網絡傳輸層是連接物理感知層和中間應用層的中間環節,負責將物理感知層收集到的環境參數打包上傳,同時將終端應用層的用戶指令進行下傳。本層的數據傳輸功能應用MQTT協議實現。從感知層傳輸數據時,將各個智能網關定義成消息的發布者,環境參數通過服務器傳輸,同時將響應終端定義成訂閱者,實現草莓溫室環境參數的遠程監測。在控制溫室設備時,則是把響應終端定義成發布者,代理服務器將用戶的控制指令發送到訂閱了對應主題的控制設備上,實現溫室設備的遠程控制。網絡傳輸層的傳輸原理如圖4所示。智能網關和響應終端通過MQTT協議進行數據傳輸時,訂閱與發布必須要有主題。草莓溫室的數據采集和控制都需要相應的主題,因此在監控系統網絡層傳輸時需要兩個維度的主題,分別是采集數據主題和控制命令主題:采集數據主題“Iot/GreenhouseID/SensorID/Data”,該主題主要用于傳輸傳感器編號、傳感器狀態、傳感器數據(環境數據)等消息。控制命令主題“Iot/GreenhouseID/DeviceID/Control”,該主題主要用于傳輸物聯網系統中客戶對溫室設備的控制命令。主題中各關鍵字解釋見表2。
4終端應用層
終端應用層提供了人機交互平臺。用戶可以實時查看溫室環境數據,回放歷史數據。管理員賬號可以遠程控制溫室設備,進行設備管理和系統管理。應用層采用了瀏覽器/服務器(B/S)結構進行開發,靜態界面使用Bootstrap開源框架,響應式布局,可以適配多種用戶終端。在靜態界面中插入JSP文件實現數據的動態加載和自動刷新。引入echarts開源可視化圖標庫,實現歷史數據的折線表示。
5系統測試
溫室物聯網監控系統搭建完成后,置于江蘇農博園草莓溫室內進行測試。測試過程中系統運行正常,數據采集準確可靠,控制設備響應迅速。界面操作流暢無卡頓,數據返回迅速,具有良好的人機交互性能。系統顯示界面如圖5所示。溫室環境數據作為衡量參數,以同一傳感器上傳的50個數據為一組,得到系統測得的平均監測值和實地平均監測值的參數對比,如圖表3所示。經過對比,六種環境參數誤差均小于5%,系統監測數據準確,效果良好。
6結語
物聯網技術與設施農業生產相融合,促進草莓產業轉型升級。本文設計的草莓溫室物聯網監控系統,實現了環境數據的實時采集和設備的遠程控制,具有歷史數據查看、系統管理、設備管理等功能,提高溫室管理水平。
作者:姬麗雯 高菊玲 劉永華 單位:江蘇農林職業技術學院