?

基于物聯網的智能糧庫監測系統研究與設計

2024-03-06 05:32蘇世雄馬新華韓思蕊
自動化與儀表 2024年2期
關鍵詞:機軟件糧庫上位

蘇世雄,李 川,馬新華,韓思蕊

(西安航空學院 計算機學院,西安 710077)

我國是世界上的人口大國,糧食作為人類生存的必需物品,具有舉足輕重的作用,而科學合理地存儲糧食是國家戰略物資儲備的必然要求。糧庫作為糧食存儲的基本單元具有十分重要的作用,糧食在存儲過程中,常因糧食的溫度、濕度、CO2濃度過高等,導致糧食發熱霉變[1],給國家和人民帶來巨大的損失[2]。因此,對糧庫中的糧情監測顯得尤為重要。傳統的糧庫監測由糧庫工作人員采用工具人工測量糧食的溫度、濕度等參數,此方法需要耗費大量的人力物力財力。隨著信息技術的發展,學術界針對糧庫監測進行了相應研究,例如文獻[3]等設計了一款無線傳感器網絡的糧庫監測系統,實現了糧庫內糧情的實時監測。文獻[4]設計了一款基于ZigBee技術的多傳感器糧庫監測系統方案,實現了一種自組網的糧庫監測系統。文獻[5]設計了一款智能多參數糧情自動監測系統,該系統可以監測糧庫的溫濕度變化和誘捕害蟲,實現了糧庫的智能化監測功能。文獻[6]開發了一套基于LoRa 的糧庫糧情監測系統,解決了多點傳輸沖突問題。文獻[7]設計了一款基于嵌入式ARM9 平臺的糧庫糧情智能監測系統。文獻[8]針對單一傳感器采集數據片面、易造成誤報、漏報等情況,設計了一種多傳感器融合的糧倉環境監測系統,對糧庫溫濕度、CO2濃度、O2濃度進行實時監測與調控,從而降低外界環境干擾[9],確保糧庫存儲的質量。

雖然相關學者已經提出了一些糧庫監測方案,但是這些方式大多數是從某一方面進行研究分析,并沒有將擴展性與控制方式結合在一起,因此,本系統結合物聯網技術設計了一款智能糧庫監測系統,該系統一方面無需布線,自組網實現多糧庫實時環境監測、預警等功能,可隨時增加或刪除采集節點,具有良好的擴展性;另一方面設計了2 種控制模式,手動或自動調節糧庫環境,確保糧食存儲安全。

1 系統整體設計

大型糧庫具有分布廣、監測點分散、地域面積集中等特點,因此,該設計采用覆蓋范圍廣、自組網能力強、信息傳輸可靠、低成本[10]的ZigBee 技術實現無線通信功能,該方式一方面節省了布線的繁瑣和成本,另一方面具有較強的可擴展性,可隨時加入節點,擴大監測范圍。本系統設計的系統整體架構如圖1 所示。該系統利用ZigBee 技術構建了網狀拓撲結構,主要由上位機和下位機組成,上位機的主要任務是實時顯示所采集的數據與系統控制方式的選擇;下位機主要任務是環境監測與環境調控。下位機又分為協調器與路由節點和終端節點,協調器主要負責整個系統網絡的建立、數據的接受和發送以及與上位機的通信;路由節點主要負責為其他節點轉發數據,擴大網絡覆蓋范圍;終端節點主要負責數據的采集和數據發送與接收功能,所接收的數據用以對外圍調節設備的控制。

圖1 系統整體架構Fig.1 Overall system architecture

2 系統硬件設計

系統硬件設計即下位機的設計,主要分為協調器與路由節點、終端節點兩部分,都采用當前流行的具有ZigBee 無線通信功能的CC2530 單片機為核心結合外圍電路所設計。協調器的主要任務是建立網絡,并將數據通過串口發送給上位機;路由節點的主要任務是轉發數據,因此,該模塊框架圖設計較簡單只有通信模塊和串口模塊即可,如圖2 所示。

圖2 協調器、路由節點框圖Fig.2 Coordinator and routing node block diagram

終端節點主要負責數據的采集和發送/接收以及設備的控制,因此,該模塊框架圖設計如圖3 所示,主要由傳感器模塊、調控設備模塊、通信模塊和報警模塊組成。

圖3 終端節點框圖Fig.3 Terminal node block diagram

傳感器模塊包括溫濕度傳感器、CO2濃度傳感器。其中,溫濕傳感器采用DHT11 數字溫度傳感器,該傳感器是一款已校準的數字信號輸出傳感器,該傳感器采用單總線串行接口,具有采集精度高、穩定性強、功耗低等優點[11];CO2濃度傳感器采用MG-812型二氧化碳傳感器,該傳感器利用紅外光吸收原理檢測空氣中的CO2濃度,將其轉化為電信號,可通過AD 轉換器轉換為數字信號,具有靈敏度高、穩定性好、使用壽命長等特點。調控設備模塊采用風扇進行模擬,模擬改善當前環境。報警模塊由LED 報警燈和蜂鳴器組成,用來提醒庫房管理人員糧庫異常。

3 系統軟件設計

系統軟件設計分為上位機軟件設計和下位機軟件設計。下位機軟件設計采用 IAR Embedded Workbench for 8051 軟件對Z-Stack 協議棧進行開發,IAR for 8051 是開發CC2530 的常用工具,它具有完全標準的C 兼容、良好的版本控制和擴展工具、便捷的模擬和中斷處理[12]等優點。Z-Stack 協議棧采用的是操作系統抽象層(OSAL)協議棧調度程序,用戶只能通過調用API 接口開發具體應用,因此,該協議也被成為半開源的協議棧[13]。下位機軟件設計主要是協調器與路由器和終端節點的軟件設計,其設計原理由Z-Stack 協議棧決定,所有流程基本類似,其流程參考文獻[3],此處不再贅述。本文重點介紹上位機軟件設計。

上位機軟件主要負責數據顯示和選擇控制方式,這就要求界面友好且簡單,而Qt 是一款跨平臺的開發環境[14],具有面向對象的所有優點[15],提供豐富的圖形界面且支持輕量級數據庫Sqlite3。因此,上位機軟件設計采用基于Qt 平臺和Sqlite 3 數據庫設計。本系統設計了兩種控制方式:手動方式和自動方式。手動方式即傳統方式,用戶自行控制外圍設備;自動方式即智能方式,系統根據用戶在界面中設置的不同閾值區間,判斷采集的數據是否在閾值范圍內,若數值不在閾值范圍內,則開啟設備,對環境進行調節,使糧庫環境置于合適的環境中,否則設備就關閉,設計的軟件流程如圖4 所示。用戶通過登錄界面輸入正確的用戶名和密碼,配置好相應的串行口數據即可獲得糧庫中不同倉庫的實時溫度、濕度、CO2濃度以及各設備狀態等信息。通過按鈕選擇控制模式,用以調節糧庫中的環境。當選擇自動模式時,可以根據糧庫中存放的糧食類型實時的設置溫度、濕度、CO2濃度等閾值區間,以便系統自動調節環境。同時,在手動模式時,用戶也可以查看歷史數據,以便于數據分析。

圖4 上位機軟件流程Fig.4 Upper computer software flow chart

4 系統測試與分析

設計實現的糧庫監測系統下位機實物如圖5所示,上位機UI 界面如圖6 所示,此時系統控制模式為手動模式。

圖5 下位機實物Fig.5 Physical object of lower computer

圖6 上位機界面Fig.6 Upper computer interface

對整個系統功能的完整性和穩定性進行測試,分為手動模式測試和自動模式測試。

(1)手動模式,顯示各測量數據,控制外部設備,測試結果如表1 所示。

表1 手動模式測試表Tab.1 Manual mode test

(2)自動測試,顯示各測量數據,驗證各個模塊聯動功能,測試如圖7 所示,當測量數據在閾值區間內,則報警和風扇關閉,如圖7(a)所示;更改閾值區間范圍,當測量數據不在閾值區間范圍內,則報警和風扇打開,如圖7(b)所示,其全部測試結果如表2 所示。

表2 自動模式測試表Tab.2 Automatic mode test

圖7 自動模式Fig.7 Automatic mode

當在手動模式時,可以點擊界面中查看歷史數據按鈕,查看采集的數據變化過程,當數據異常時,為用戶分析異常提供數據支撐,顯示界面如圖8 所示。所有測試次數均為100 次,測試結果均正常。因此,系統符合設計功能,且系統運行穩定。

圖8 歷史數據記錄Fig.8 Historical data record

5 結語

該系統采用CC2530 單片機、各種傳感器、外圍設備模塊和Qt 平臺,設計并實現了基于物聯網的糧庫監測系統,實現了糧庫環境信息實時采集和設備智能化控制,使得糧庫管理更加智能化。經運行測試表明,該系統功能符合設計要求,運行穩定,操作方便,具有較高的實用性。本設計具有以下創新點:系統中設計了兩種控制方式,手動模式和自動模式,既考慮了傳統方式又兼顧了智能化方式;閾值設定不再是單一的、固定的方式,而通過上位機設定閾值區間,既方便用戶根據糧庫中存放的不同糧食類型動態更改閾值范圍,又可以不用再次下載下位機程序;在手動工作方式下,可以查看歷史數據記錄,以便管理員分析當出現異常情況時,監測的數據變化情況,為糧食安全存儲提供數據支撐;系統采用ZigBee 自組網技術,隨著糧庫數量的增加,只需要增加路由節點和終端節點數即可完成對糧庫的監測,無需布線,具有良好的可擴展性。

猜你喜歡
機軟件糧庫上位
糧庫竣工
糧庫里的機器人
特斯拉 風云之老阿姨上位
智能化糧庫現場見聞
我為抗日政府管糧庫
“三扶”齊上位 決戰必打贏
基于ZigBee和VC上位機的教室智能監測管理系統
道岔監測系統上位機軟件設計
基于正交試驗法的北斗用戶機軟件測試用例設計
PCI-e高速數據采集卡的驅動與上位機軟件設計
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合