陳侃松+熊攀+邵沖+陳珂
摘 要:根據糧庫環境的應用需求,設計了一種糧庫環境監測系統,該系統由上位機監控中心和ZigBee無線監測網絡兩部分組成。采用以CC2530芯片外加CC2591射頻芯片為核心的節點開發策略,并移植了Z-Stack協議棧,然后對ZigBee組網系統進行了軟件設計;同時應用VC6.0平臺設計了上位機監測界面。實驗表明,該系統采集數據準確、數據傳輸實時性較好。
關鍵詞:糧庫環境;ZigBee;Z-Stack;VC6.0
中圖分類號:TP273 文獻標識碼:A 文章編號:2095-1302(2014)02-0066-03
0 引 言
基于ZigBee技術的無線傳感器網絡具有低功耗、低復雜度、自組織、低成本、高安全等特性,是專為低速傳感器和控制網絡設計的無線網絡協議,非常適合于自動控制和遠程控制領域。將ZigBee技術應用于糧庫環境監測,能夠在很大程度上提高糧庫監測的范圍及準確性,解決了傳統糧庫布線困難、組網復雜、系統不易維護等缺點。
1 系統功能與總體結構
1.1 系統功能
糧庫環境監測系統可以實現對糧庫溫濕度信息的采集、處理和傳輸,用戶可以通過上位機監測糧庫的溫濕度信息和采集節點的工作電壓,同時可以通過上位機輸入相應的指令去控制采集節點的開啟、關閉及采集的時間間隔。當溫濕度超過所設定的報警值時,上位機監測系統將會發出報警,提醒用戶采取相應安全措施對糧庫進行管理。
1.2 系統總體結構
糧庫環境監測系統主要由ZigBee無線傳感網絡、上位機監測中心兩部分組成,ZigBee組網采用了網狀拓撲結構,建立了協調器、路由器和終端三類節點。上電后,采集節點自動組建ZigBee無線傳感網絡,將定時采集的糧庫環境數據以多跳形式匯聚到網絡協調器,最終通過USB接口將數據發送到上位機監控中心。監控中心實時顯示采集到的糧庫溫濕度信息和節點電壓信息,并具有報警提示功能。
2 系統硬件設計
系統硬件部分主要包括傳感器模塊、CC2530無線傳輸模塊、電源模塊等。采用數字溫濕度傳感器DHT11設計一個傳感器模塊,用于采集溫濕度信息,傳感器外圍電路如圖1所示。無線傳輸模塊包含協調器、路由器、終端三類節點,用來對傳感器采集到的數據進行處理和傳輸,CC2530外圍電路如圖2所示。ZigBee模塊可選用兩種供電方式:USB總線供電,2節5號干電池供電,并由LED顯示供電狀態,電源電路如圖3所示。
圖1 傳感器外圍電路
3 系統軟件設計
系統軟件設計主要包括ZigBee組網系統軟件設計和上位機監測界面軟件設計兩部分。
3.1 ZigBee組網系統軟件設計
ZigBee組網系統軟件設計包括傳感器節點軟件設計和協調器節點軟件設計。傳感器節點主要完成對糧庫環境溫濕度參數的采集、處理和發送。當傳感器節點收到外部中斷時給DHT11發送查詢指令,等待DHT11數據轉換后進行數據發送,發送完畢后進入休眠狀態,等待有請求時再次激活,傳感器節點工作流程如圖4(a)所示。協調器負責選擇工作信道、發送網絡信標、組建網絡、管理網絡節點與存儲網絡節點信息,且同監控中心交互數據,協調器節點工作流程如圖4(b)所示。對ZigBee進行電源管理,使傳感器節點能夠在非工作狀態下進入休眠狀態,需要做兩項準備工作。首先要在preprozessor里加入POWER_SAVING。其次,將Tools->f8wConfig.cfg中 -DPOLL_RATE、-DRESPONSE_POLL_RATE設置為0。然后找到文件hal_drivers.c中:
if (!Hal_KeyIntEnable)
{//osal_start_timerEx( Hal_TaskID, HAL_KEY_EVENT, 100);}
把 osal_start_timerEx()這句去掉。要不然key的polling會調用osal_start_timerex(),每100ms檢查key電壓的變化,導致無法長時間休眠。通過在Tools->f8wConfig.cfg中設置-DPOLL_RATE可以設置休眠時間,如需要休眠10 s,則-DPOLL_RATE=10000。
圖3 電源電路
3.2 上位機監測界面軟件設計
上位機監測界面利用VC6.0開發工具進行設計,主要實現數據的接收、存儲、分析和對終端采集節點的控制。
一方面,可以在上位機界面上實時顯示傳感器節點采集到的溫濕度信息和電源電壓,另一方面,可以通過上位機界面輸入相應的指令控制傳感器節點開啟、關閉及采集的時間間隔,例如:發送79 6F 80后關閉796F節點,發送79 6F 40后開啟796F節點。當串口接收到的溫濕度超過所設置的報警限值時,單元格顏色變紅(超上限)或變藍(超下限),通過函數m_Grid.SetCellBackColor()設置單元格顏色,同時可以聽見“嘟嘟”的報警聲,用函數MessageBeep(0xFFFFFFFF)發出報警。當電池電壓過低時,可以通過上位機輸入相應指令去控制傳感器節點的關閉以更換電池。在項目中插入MSComm、FlexGrid、Button等控件,利用ClassWizard定義CMSComm類控制變量,添加串口事件消息處理函數OnComm(),打開和設置串口參數。OnComm()函數實現關鍵代碼如下:
void SCommTest::OnComm()
{ ……
m_Grid.SetTextMatrix(1,2,strT);
sumt=bt[0]*100+bt[1]*10+bt[3];//提取溫度
if(m_checkt.GetCheck()) //設置溫度報警
{ if(sumt>=250)
{ ::MessageBeep(0xFFFFFFFF); //報警
m_Grid.SetFixedRows(1);
m_Grid.SetFixedCols(2);
m_Grid.SetCellBackColor(255); }//顏色
else{……}
} ……}
上位機軟件流程如圖5所示。
4 系統測試
該系統通過布置1 個協調器節點、2個路由器節點、5個傳感器節點和一臺PC機,在實驗室進行了模擬測試。測試結果如圖6所示。
(a) 傳感器節點工作流程圖 (b)協調器節點工作流程圖
圖4 ZigBee組網系統軟件設計圖
圖5 上位機軟件流程圖
由測試結果可知,ZigBee網絡能夠完成外部溫濕度信息的采集,在上位機監控中心可以實時顯示采集到的外部溫濕度信息和節點電源電壓。當采集到的溫度超過報警上限值30 ℃時,單元格顏色變紅,同時發出“嘟嘟”的報警聲。在上位機監測界面輸入指令FF FF 80手動發送后關閉了所有節點,再次輸入指令FF FF 40手動發送后開啟所有節點。系統數據傳輸準確、可靠, 數據丟包率幾乎為0。
圖6 上位機監測界面
5 結 語
本文所設計的糧庫監測系統能夠實現多節點數據的實時采集、處理、傳輸和顯示,同時具有閾值比較、智能報警等功能,管理人員可以通過上位機發送相應的指令對傳感器節點進行控制。通過引入休眠機制實現了傳感器節點的休眠/喚醒調度,使其低功耗運行,減少了節點能耗。該系統有效地解決了傳統糧庫監測系統布線困難、組網復雜、系統不易維護等缺點,具有很好的應用價值。
參 考 文 獻
[1] 熊宗接,陳良洲. 基于LabVIEW的無線傳感器網絡數據采集[J]. 測控技術,2012,31(3):48-50.
[2] 金曉龍. 基于ZigBee的糧倉無線測溫系統的設計[J]. 測控技術,2011,30(10):44-47.
[3] 周建民,尹洪妍,徐冬冬. 基于ZigBee技術的溫室環境監測系統[J]. 儀表技術與傳感器,2011(9):50-52.
[4] 李新春,許馳. 基于WSN的糧庫環境監測系統[J]. 儀表技術與傳感器,2012(7):38-41.
[5] 滕志軍,李國強,王中寶,等. 基于ZigBee的溫室大棚遠程監測系統[J]. 農機化研究,2012(4):148-151.
[6] 陳良洲,熊宗接. 基于VC6.0的無線傳感器網絡數據采集[J].微型機與應用,2012,31(9):9-11.
[7] 潘小琴,洪剛. 基于主干網的溫室無線環境監測系統[J]. 中國農機化學報,2013,34(3):237-240.
[8] 李亮波,劉繼忠,張華. 膠囊機器人無線控制系統設計[J]. 微計算機信息,2010(11):154-158.
[9] 包長春,李志紅,張立山,等. 基于ZigBee技術的糧庫監測系統設計[J]. 農業工程學報,2009,25(9):197-201.
Design of environment monitoring system in grain storage based on ZigBee
CHEN Kan-song, XIONG Pan, SHAO Chong, CHEN Ke
(School of Computer and Information Engineering, Hubei University, Wuhan 430062, China)
Abstract: According to the application requirement of grain storage environment, a monitoring system is designed, which consists of the PC monitoring center and ZigBee wireless sensor network. A node development strategy with the core of CC2530 chip and CC2591 chip was adopt, and according to Z-Stack, the software ZigBee networking system is designed. The PC monitoring interface is designed based on VC6.0 platform. Experimental results show that the data collection is accurate and data transmission is good in real-time.
Keywords: grain storage environment; ZigBee; Z-Stack; VC6.0
if(m_checkt.GetCheck()) //設置溫度報警
{ if(sumt>=250)
{ ::MessageBeep(0xFFFFFFFF); //報警
m_Grid.SetFixedRows(1);
m_Grid.SetFixedCols(2);
m_Grid.SetCellBackColor(255); }//顏色
else{……}
} ……}
上位機軟件流程如圖5所示。
4 系統測試
該系統通過布置1 個協調器節點、2個路由器節點、5個傳感器節點和一臺PC機,在實驗室進行了模擬測試。測試結果如圖6所示。
(a) 傳感器節點工作流程圖 (b)協調器節點工作流程圖
圖4 ZigBee組網系統軟件設計圖
圖5 上位機軟件流程圖
由測試結果可知,ZigBee網絡能夠完成外部溫濕度信息的采集,在上位機監控中心可以實時顯示采集到的外部溫濕度信息和節點電源電壓。當采集到的溫度超過報警上限值30 ℃時,單元格顏色變紅,同時發出“嘟嘟”的報警聲。在上位機監測界面輸入指令FF FF 80手動發送后關閉了所有節點,再次輸入指令FF FF 40手動發送后開啟所有節點。系統數據傳輸準確、可靠, 數據丟包率幾乎為0。
圖6 上位機監測界面
5 結 語
本文所設計的糧庫監測系統能夠實現多節點數據的實時采集、處理、傳輸和顯示,同時具有閾值比較、智能報警等功能,管理人員可以通過上位機發送相應的指令對傳感器節點進行控制。通過引入休眠機制實現了傳感器節點的休眠/喚醒調度,使其低功耗運行,減少了節點能耗。該系統有效地解決了傳統糧庫監測系統布線困難、組網復雜、系統不易維護等缺點,具有很好的應用價值。
參 考 文 獻
[1] 熊宗接,陳良洲. 基于LabVIEW的無線傳感器網絡數據采集[J]. 測控技術,2012,31(3):48-50.
[2] 金曉龍. 基于ZigBee的糧倉無線測溫系統的設計[J]. 測控技術,2011,30(10):44-47.
[3] 周建民,尹洪妍,徐冬冬. 基于ZigBee技術的溫室環境監測系統[J]. 儀表技術與傳感器,2011(9):50-52.
[4] 李新春,許馳. 基于WSN的糧庫環境監測系統[J]. 儀表技術與傳感器,2012(7):38-41.
[5] 滕志軍,李國強,王中寶,等. 基于ZigBee的溫室大棚遠程監測系統[J]. 農機化研究,2012(4):148-151.
[6] 陳良洲,熊宗接. 基于VC6.0的無線傳感器網絡數據采集[J].微型機與應用,2012,31(9):9-11.
[7] 潘小琴,洪剛. 基于主干網的溫室無線環境監測系統[J]. 中國農機化學報,2013,34(3):237-240.
[8] 李亮波,劉繼忠,張華. 膠囊機器人無線控制系統設計[J]. 微計算機信息,2010(11):154-158.
[9] 包長春,李志紅,張立山,等. 基于ZigBee技術的糧庫監測系統設計[J]. 農業工程學報,2009,25(9):197-201.
Design of environment monitoring system in grain storage based on ZigBee
CHEN Kan-song, XIONG Pan, SHAO Chong, CHEN Ke
(School of Computer and Information Engineering, Hubei University, Wuhan 430062, China)
Abstract: According to the application requirement of grain storage environment, a monitoring system is designed, which consists of the PC monitoring center and ZigBee wireless sensor network. A node development strategy with the core of CC2530 chip and CC2591 chip was adopt, and according to Z-Stack, the software ZigBee networking system is designed. The PC monitoring interface is designed based on VC6.0 platform. Experimental results show that the data collection is accurate and data transmission is good in real-time.
Keywords: grain storage environment; ZigBee; Z-Stack; VC6.0
if(m_checkt.GetCheck()) //設置溫度報警
{ if(sumt>=250)
{ ::MessageBeep(0xFFFFFFFF); //報警
m_Grid.SetFixedRows(1);
m_Grid.SetFixedCols(2);
m_Grid.SetCellBackColor(255); }//顏色
else{……}
} ……}
上位機軟件流程如圖5所示。
4 系統測試
該系統通過布置1 個協調器節點、2個路由器節點、5個傳感器節點和一臺PC機,在實驗室進行了模擬測試。測試結果如圖6所示。
(a) 傳感器節點工作流程圖 (b)協調器節點工作流程圖
圖4 ZigBee組網系統軟件設計圖
圖5 上位機軟件流程圖
由測試結果可知,ZigBee網絡能夠完成外部溫濕度信息的采集,在上位機監控中心可以實時顯示采集到的外部溫濕度信息和節點電源電壓。當采集到的溫度超過報警上限值30 ℃時,單元格顏色變紅,同時發出“嘟嘟”的報警聲。在上位機監測界面輸入指令FF FF 80手動發送后關閉了所有節點,再次輸入指令FF FF 40手動發送后開啟所有節點。系統數據傳輸準確、可靠, 數據丟包率幾乎為0。
圖6 上位機監測界面
5 結 語
本文所設計的糧庫監測系統能夠實現多節點數據的實時采集、處理、傳輸和顯示,同時具有閾值比較、智能報警等功能,管理人員可以通過上位機發送相應的指令對傳感器節點進行控制。通過引入休眠機制實現了傳感器節點的休眠/喚醒調度,使其低功耗運行,減少了節點能耗。該系統有效地解決了傳統糧庫監測系統布線困難、組網復雜、系統不易維護等缺點,具有很好的應用價值。
參 考 文 獻
[1] 熊宗接,陳良洲. 基于LabVIEW的無線傳感器網絡數據采集[J]. 測控技術,2012,31(3):48-50.
[2] 金曉龍. 基于ZigBee的糧倉無線測溫系統的設計[J]. 測控技術,2011,30(10):44-47.
[3] 周建民,尹洪妍,徐冬冬. 基于ZigBee技術的溫室環境監測系統[J]. 儀表技術與傳感器,2011(9):50-52.
[4] 李新春,許馳. 基于WSN的糧庫環境監測系統[J]. 儀表技術與傳感器,2012(7):38-41.
[5] 滕志軍,李國強,王中寶,等. 基于ZigBee的溫室大棚遠程監測系統[J]. 農機化研究,2012(4):148-151.
[6] 陳良洲,熊宗接. 基于VC6.0的無線傳感器網絡數據采集[J].微型機與應用,2012,31(9):9-11.
[7] 潘小琴,洪剛. 基于主干網的溫室無線環境監測系統[J]. 中國農機化學報,2013,34(3):237-240.
[8] 李亮波,劉繼忠,張華. 膠囊機器人無線控制系統設計[J]. 微計算機信息,2010(11):154-158.
[9] 包長春,李志紅,張立山,等. 基于ZigBee技術的糧庫監測系統設計[J]. 農業工程學報,2009,25(9):197-201.
Design of environment monitoring system in grain storage based on ZigBee
CHEN Kan-song, XIONG Pan, SHAO Chong, CHEN Ke
(School of Computer and Information Engineering, Hubei University, Wuhan 430062, China)
Abstract: According to the application requirement of grain storage environment, a monitoring system is designed, which consists of the PC monitoring center and ZigBee wireless sensor network. A node development strategy with the core of CC2530 chip and CC2591 chip was adopt, and according to Z-Stack, the software ZigBee networking system is designed. The PC monitoring interface is designed based on VC6.0 platform. Experimental results show that the data collection is accurate and data transmission is good in real-time.
Keywords: grain storage environment; ZigBee; Z-Stack; VC6.0