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