張鋼 馮明卿 李曉潔
摘 要:根據(jù)電力倉儲管理中溫濕度實時監(jiān)控的需要,采用ZigBee無線通信技術(shù),以TI CC2530無線單片機及ZStack協(xié)議桟為核心,結(jié)合數(shù)字溫濕度傳感器,設(shè)計了一款多測點無線傳感器網(wǎng)絡(luò)測量系統(tǒng)。本文介紹系統(tǒng)的構(gòu)成和工作原理、硬件選擇和軟件設(shè)計。測試結(jié)果表明,該系統(tǒng)監(jiān)測效果良好,具有功耗低、體積小、操作方便、成本低等特點。
關(guān)鍵詞:ZigBee;無線通信;溫濕度;CC2530
DOI:10.16640/j.cnki.37-1222/t.2018.19.176
1 引言
在電力倉庫管理和物資保存過程中,環(huán)境溫度和濕度是非常重要的控制參數(shù),當溫度濕度變化超過一定范圍,會對儲備物資的質(zhì)量造成很大的影響,使電力物資的物理和化學性質(zhì)產(chǎn)生變化,機械性能變壞,物體強度降低,發(fā)生金屬銹蝕,生蟲霉變等等。傳統(tǒng)的倉儲部門是由倉管員不定時查看、記錄倉庫和車間的濕度值,費時間和人力,數(shù)據(jù)不是很客觀。我們和電力公司物流中心合作,在分析研究現(xiàn)有倉儲監(jiān)測措施的基礎(chǔ)上,將基于ZigBee的無線傳感器網(wǎng)絡(luò)技術(shù)應用于電力倉儲環(huán)境監(jiān)測領(lǐng)域,設(shè)計了基于CC2530芯片的傳感器節(jié)點硬件結(jié)構(gòu)和軟件系統(tǒng),構(gòu)建了倉儲管理環(huán)境參數(shù)多點監(jiān)測系統(tǒng)的智能組網(wǎng)方案,該系統(tǒng)可以對倉庫目標節(jié)點的溫度、濕度和煙霧等環(huán)境參數(shù)進行全面、快捷的無線采集和保存查詢。
2 系統(tǒng)原理與硬件構(gòu)成
(1)ZigBee通信技術(shù)是一種短距離、低數(shù)據(jù)速率、低復雜度、低功耗的無線通信技術(shù),基于 ZigBee 的無線傳輸設(shè)備由于體積小、功耗低、傳輸好、靈活位置等優(yōu)點,在溫室環(huán)境參數(shù)監(jiān)測方面具有廣闊的應用前景。ZigBee通信技術(shù)是物聯(lián)網(wǎng)應用的核心技術(shù)之一。
ZigBee網(wǎng)絡(luò)中存在三種節(jié)點,協(xié)調(diào)器(Coordinator)、終端節(jié)點(Enddevice)和路由器(router)。又分為全功能設(shè)備FFD與精簡功能設(shè)備RFD。
ZigBee網(wǎng)絡(luò)中全功能器件FFD具有完整的協(xié)議功能,在網(wǎng)絡(luò)中可以作三種節(jié)點中的任意一種。精簡的功能器件RFD主要目的是要實現(xiàn)非常簡單的協(xié)議功能,因此只能夠在網(wǎng)絡(luò)中作普通的節(jié)點。FFD可以和RFD或其他的FFD進行通信,可是RFD只能和FFD進行通信。ZigBee網(wǎng)絡(luò)要求至少有一個全功能設(shè)備作為網(wǎng)絡(luò)協(xié)調(diào)器。支持星型網(wǎng)、樹狀網(wǎng)和網(wǎng)狀網(wǎng)三種網(wǎng)絡(luò)拓撲結(jié)構(gòu)。圖1 為常見的zigbee無線網(wǎng)絡(luò)結(jié)構(gòu)圖。
在倉儲管理與監(jiān)測方面,采用ZigBee無線通信技術(shù)在大型倉儲、農(nóng)業(yè)大棚等需要多點多參數(shù)數(shù)據(jù)采集的環(huán)境中,能夠避免有線傳輸情況下布線費用昂貴,維修困難,難于擴展的不足,更便于移動節(jié)點的數(shù)據(jù)采集。
本項目根據(jù)某電力倉儲物資管理應用中的實際問題,采用ZigBee無線技術(shù),采用星型網(wǎng)絡(luò)拓撲結(jié)構(gòu)實現(xiàn)組網(wǎng),應用 CC2530通信模塊及SHT11溫濕度傳感器,設(shè)計出一套倉儲環(huán)境多點溫濕度實時監(jiān)測系統(tǒng)。監(jiān)測系統(tǒng)由兩個部分構(gòu)成: 監(jiān)控顯示模塊和 ZigBee無線傳感器網(wǎng)絡(luò)。ZigBee 溫度監(jiān)控系統(tǒng)測試主要功能是:協(xié)調(diào)器自動建立一個網(wǎng)絡(luò),網(wǎng)絡(luò)中各傳感器節(jié)點發(fā)現(xiàn)該網(wǎng)絡(luò)后,加入該網(wǎng)絡(luò),自動完成綁定,并工作于采集模式,開始向協(xié)調(diào)器發(fā)送溫濕度數(shù)據(jù); 協(xié)調(diào)器節(jié)點通過串口將傳感器節(jié)點采集的溫度數(shù)據(jù)上傳至監(jiān)控平臺顯示PC,顯示在監(jiān)控屏幕上,保存到數(shù)據(jù)庫中,管理員可以訪問整個倉儲溫室環(huán)境各種信息。倉儲環(huán)境顯示信息能夠以數(shù)字及圖形曲線形式表示,管理員能夠直觀詳盡了解倉儲環(huán)境多個參數(shù)的實時和歷史狀態(tài),或及時采取相應措施。
(2)協(xié)調(diào)器節(jié)點的硬件設(shè)計:協(xié)調(diào)器屬于全功能設(shè)備FFD。協(xié)調(diào)器節(jié)點的主要作用首先是啟動和配置網(wǎng)絡(luò),即網(wǎng)絡(luò)組網(wǎng)的過程中第一個啟動的設(shè)備就是協(xié)調(diào)器,當協(xié)調(diào)器配置好以后其他設(shè)備才能加入; 協(xié)調(diào)器的工作任務(wù)在于控制各個終端傳感器節(jié)點的工作節(jié)奏,接收各終端節(jié)點的監(jiān)測數(shù)據(jù),將收集的溫濕度數(shù)據(jù)通過串口上傳到上位機監(jiān)控平臺。協(xié)調(diào)器硬件采用新一代射頻模塊CC2530F256 芯片,其內(nèi)含增強型低功耗 8051 微控制器內(nèi)核和高性能無線射頻模塊,具有256KB可編程閃存,是優(yōu)秀的片上系統(tǒng)解決方案,支持IEEE802.15.4 /ZigBee/ZigBee RF4CE標準和ZigBee2007/Pro 協(xié)議棧,帶自2個USART接口,模塊能便捷完成信號的收發(fā)功能。
(3)傳感器節(jié)點硬件設(shè)計:傳感器節(jié)點主要負責溫濕度數(shù)據(jù)的采集、發(fā)送以及控制指令的接收執(zhí)行,是采集終端節(jié)點,該節(jié)點屬于半功能設(shè)備RFD。硬件部分與協(xié)調(diào)器節(jié)點類似,采用 2.4GHz 集成 CC2530 射頻模塊。所采用的溫濕度傳感器是Sensirion公司的新一代的數(shù)字式溫濕度露點傳感器SHT1 1,可實現(xiàn)免標定、免調(diào)試、數(shù)字式輸出及全互換功能。其溫度采集精度可達±0.5℃,濕度采集精度達±3.5%RH,其采用雙向兩線串行數(shù)據(jù)接口能與CC2530-Zigbee模塊進行通訊。終端節(jié)點同時配置其他傳感器,可實現(xiàn)煙霧報警、紅外線人像監(jiān)測。
3 系統(tǒng)軟件設(shè)計
(1)系統(tǒng)開發(fā)環(huán)境:采用流行的 IAR Embedded Workbench For C8051開發(fā)平臺,軟件基礎(chǔ)設(shè)計采用TI 公司 CC2530芯片組支持的ZigBee2007/Pro協(xié)議軟件,以ZStack 中Sensordemo等例程為基礎(chǔ),通過APP程序2次開發(fā)來建立所需要的項目。利用 CC Debugger完成程序的下載工作。
項目程序包含協(xié)調(diào)器節(jié)點和傳感器節(jié)點兩個子工程。協(xié)調(diào)器工作時,協(xié)調(diào)器協(xié)議棧運用初始化函數(shù),進行網(wǎng)絡(luò)各層的任務(wù)初始化;當接受到傳感器節(jié)點加入網(wǎng)絡(luò)之后,協(xié)議棧會根據(jù)事件的 task_id 進入網(wǎng)關(guān)節(jié)點的任務(wù)事件處理函數(shù)。按照循環(huán)請求的方式向終端節(jié)點請求采集數(shù)據(jù),處理數(shù)據(jù), 延時等待,再次進入循環(huán)工作狀態(tài)。PC通過串口與協(xié)調(diào)器通信,上位機監(jiān)控系統(tǒng)軟件向協(xié)調(diào)器發(fā)送數(shù)據(jù)請求指令,協(xié)調(diào)器的串口回傳函數(shù)uartRxCB就進行相應處理,調(diào)用sys_Ping_Request()向PC機發(fā)送協(xié)調(diào)器的基本信息。
傳感器節(jié)點初始化后,掃描網(wǎng)絡(luò)信道,尋找到相應的父節(jié)點并加入網(wǎng)絡(luò)。通過初始化函數(shù) SensorNode_Init (),調(diào)用 osal_start_timerEx () ,該函數(shù)有三個參數(shù),用來設(shè)置事件和定時,并向 ZStack 發(fā)送測溫事件 SEND_DATA_EVENT,故可在輪詢時發(fā)現(xiàn)這個事件標志,進入事件的處理函數(shù) SensorNode_ProcessEvent (),進行參數(shù)的數(shù)據(jù)采集,數(shù)據(jù)就由此傳感器節(jié)點通過發(fā)送函數(shù)AF_SendDataRequest() 傳到協(xié)調(diào)器節(jié)點。沒有事件時則節(jié)點進入休眠狀態(tài)。
(2) 上位機監(jiān)控終端軟件設(shè)計:自主開發(fā)了zigbee無線傳感器網(wǎng)絡(luò)監(jiān)控系統(tǒng)軟件ZEPC V1.0,系統(tǒng)主界面如圖3。上位機軟件采用主流的Java技術(shù)實現(xiàn),將每個無線終端節(jié)點的溫度、濕度、及電池容量等采集數(shù)據(jù)匯總到人機監(jiān)控界面中,形成用戶適用的數(shù)據(jù)表現(xiàn)形式,每個采集點的溫度、濕度、報警等信息都用數(shù)字或?qū)崟r曲線圖的方式展示出來,方便監(jiān)控管理員直觀地查看。采集到的實時數(shù)據(jù)存入到數(shù)據(jù)庫,可顯示參數(shù)列表、實時曲線圖、實時數(shù)據(jù)、累計數(shù)據(jù)、歷史、報警畫面、報表等多種顯示、統(tǒng)計功能,更加貼近用戶需求。
1)串口讀寫:監(jiān)測系統(tǒng)的協(xié)調(diào)器在收集到終端節(jié)點傳來的采集數(shù)據(jù)后通過串口發(fā)送給上位機,上位機通過串口將控制命令發(fā)送給協(xié)調(diào)器,協(xié)調(diào)器再將命令發(fā)送給終端節(jié)點進行控制。串口數(shù)據(jù)的收發(fā)采用SUN公司提供的JcommAPI實現(xiàn),JcommAPI提供了對常用的RS232串行端口通訊的支持。JCommAPI中CommPortIdentifier類是對串口進行訪問控制的核心類,主要用于對串口進行設(shè)置。
2)實時曲線圖的實現(xiàn):通過Java多線程技術(shù)及JFreeChart技術(shù),可以將采集到的溫濕度等數(shù)據(jù)以實時曲線圖的方式展示。時序圖的實現(xiàn)用ChartFactory類的createTimeSeriesChart()方法實現(xiàn)。曲線上的數(shù)據(jù)則通過線程,在指定的時間間隔內(nèi)將采集到的數(shù)據(jù)和當前時間添加到時序圖中,從而形成實時波動的圖像。
3)歷史數(shù)據(jù)查詢:采集到的數(shù)據(jù)存入數(shù)據(jù)庫后,就可以對歷史數(shù)據(jù)進行查詢處理。數(shù)據(jù)庫選用微軟的SQLServer,通過一張表來存儲節(jié)點地址、溫度、濕度等數(shù)據(jù)。利用JDBC來訪問數(shù)據(jù),并使用SQL語言對數(shù)據(jù)庫進行增刪改查操作。
(3)系統(tǒng)現(xiàn)場測試:為了測試系統(tǒng)的性能,在電力公司經(jīng)開區(qū)物資倉庫進行了實測。倉庫大廳約3000平米。在測試中,我們故意地對倉庫各處傳感器終端上進行了加溫、加濕、煙霧等干擾,從顯示終端上看這些干擾都能相應地在監(jiān)測系統(tǒng)中看到變化。在倉庫空曠處終端節(jié)點數(shù)據(jù)可以穩(wěn)定傳輸60-70多米。在倉庫物資遮攔處數(shù)據(jù)可以穩(wěn)定傳輸30-50米。測試中發(fā)現(xiàn)節(jié)點天線的高度和位置是影響信號傳輸?shù)闹匾蛩?,另外隨著儲物數(shù)量的變動,節(jié)點天線放置高度,設(shè)備流動和體積等等也是重要的影響因素。
4 結(jié)語
運用ZigBee 協(xié)議及通信模塊設(shè)計并實現(xiàn)了一種新型無線傳感器網(wǎng)絡(luò)監(jiān)測系統(tǒng), 完成了電力倉儲溫室內(nèi)溫濕度等環(huán)境參數(shù)的實時監(jiān)測, 系統(tǒng)運行穩(wěn)定,達到了預期的目標。由于傳統(tǒng)的布線監(jiān)控方式越來越顯現(xiàn)出它的局限性,ZigBee無線傳感器網(wǎng)絡(luò)為需要搭建多參數(shù)傳感器網(wǎng)絡(luò)的倉儲環(huán)境監(jiān)測系統(tǒng)提供了更多精準有效的方案。
參考文獻:
[1]王小強等.ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計與實現(xiàn)[M].北京:化學工業(yè)出版社,2012.
[2]李文中.ZigBee2007/PRO協(xié)議棧實驗與實踐[M].北京:北京航空航天大學出版社,2010.
作者簡介:張鋼(1960-),男,研究生,教授,研究方向:測控技術(shù)與電子設(shè)計自動化。