文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.01.017
中文引用格式: 李建勇,,李洋,劉雪梅. 基于ZigBee的糧庫環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2016,,42(1):65-67,71.
英文引用格式: Li Jianyong,,Li Yang,,Liu Xuemei. Design of granary environmental monitoring system based on ZigBee[J].Application of Electronic Technique,2016,,42(1):65-67,,71.
0 引言
我國作為一個(gè)人口大國,,維持一定數(shù)量和品質(zhì)的糧食儲(chǔ)備是保障國家糧食安全和社會(huì)穩(wěn)定的重要措施,。糧食在儲(chǔ)藏過程中易受溫度、水分等因素影響,,使糧食發(fā)生霉變,、蟲害滋生和火災(zāi)等情況,為了確保儲(chǔ)糧安全,,需準(zhǔn)確掌握糧食儲(chǔ)藏過程中溫濕度的實(shí)時(shí)變化,、氣味異常、火災(zāi)警情和能進(jìn)行通風(fēng)、防潮除濕等措施[1-4],。傳統(tǒng)的糧庫監(jiān)控系統(tǒng)大都采用人工或有線監(jiān)控方式,,人工監(jiān)控不僅費(fèi)時(shí)費(fèi)力、效率低,,而且測(cè)量誤差大,,隨機(jī)性大;而有線監(jiān)控,,當(dāng)監(jiān)控點(diǎn)較多情況下,,不僅布線繁瑣、成本高,,且維護(hù)困難,、靈活性差。針對(duì)這些缺陷,,采用ZigBee無線傳感器網(wǎng)絡(luò)技術(shù),,設(shè)計(jì)了一種低功耗、低成本,、精度高的糧庫環(huán)境監(jiān)控系統(tǒng),。
1 系統(tǒng)總體設(shè)計(jì)
糧庫環(huán)境監(jiān)控系統(tǒng)主要由ZigBee無線傳感網(wǎng)絡(luò)和上位機(jī)監(jiān)控軟件兩部分組成,其結(jié)構(gòu)框圖如圖1所示,。ZigBee無線傳感網(wǎng)絡(luò)遵循TI公司的ZigBee2007協(xié)議棧Z-Stack,,采用樹狀拓?fù)浣Y(jié)構(gòu),由一個(gè)協(xié)調(diào)器,、多個(gè)路由器和多個(gè)傳感器節(jié)點(diǎn)(終端)等設(shè)備組成,。傳感器節(jié)點(diǎn)首先加入由協(xié)調(diào)器發(fā)起的ZigBee網(wǎng)絡(luò),然后把測(cè)量各節(jié)點(diǎn)的溫度,、濕度,、氣味濃度和火災(zāi)警情等環(huán)境參數(shù)經(jīng)路由器或直接傳遞到協(xié)調(diào)器,接著由協(xié)調(diào)器經(jīng)串口上傳到PC機(jī),,最后用由VS2013制作的上位機(jī)監(jiān)控軟件來實(shí)時(shí)顯示溫濕度值,、氣味濃度和火災(zāi)警情,對(duì)火災(zāi)聲光報(bào)警和反向控制相應(yīng)節(jié)點(diǎn)進(jìn)行通風(fēng)或除濕,,并記錄所有的數(shù)據(jù)和操作,。
2 系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)中的協(xié)調(diào)器、路由器和傳感器節(jié)點(diǎn)三種設(shè)備都是以TI公司的ZigBee SOC CC2530F256芯片為核心來進(jìn)行設(shè)計(jì)的,。CC2530F256是2.4 GHz IEEE 802.15.4和ZigBee應(yīng)用的片上系統(tǒng)解決方案,,支持RemoTI、SimpliciTI,、TIMAC和Z-Stack協(xié)議棧,,內(nèi)部主要集成一個(gè)高性能2.4G RF收發(fā)器和一顆工業(yè)級(jí)小巧高效的8051控制器,,以及8 KB RAM和256 KB閃存等其他模塊,以滿足系統(tǒng)對(duì)低功耗,、低成本的要求[5],。由于協(xié)調(diào)器、路由器和傳感器節(jié)點(diǎn)功能不同,,所需硬件電路不同,,將分別進(jìn)行設(shè)計(jì)。
2.1 傳感器節(jié)點(diǎn)設(shè)計(jì)
傳感器節(jié)點(diǎn)主要負(fù)責(zé)測(cè)量各節(jié)點(diǎn)的溫度,、濕度,、氣味濃度和火災(zāi)警情等環(huán)境參數(shù)并傳遞到協(xié)調(diào)器,接收上位機(jī)控制軟件發(fā)回的命令來控制通風(fēng)或除濕設(shè)備,,由電池供電,,其硬件結(jié)構(gòu)圖如圖2所示。測(cè)量溫度和濕度采用高精度的DHT22數(shù)字溫濕度傳感器,,通過單總線直接與CC2530的P0.0引腳相連接,。由于當(dāng)糧食發(fā)生霉變時(shí)會(huì)產(chǎn)生霉、酸,、腐臭等氣味,,通過測(cè)量這些氣味的濃度能預(yù)測(cè)糧食霉變的情況,因此采用TGS2600氣味傳感器來測(cè)量氣味濃度,,與CC2530的A/D轉(zhuǎn)換接口A6(P0.6)相連接,。采用JNHB1004遠(yuǎn)紅外火焰?zhèn)鞲衅鱽頊y(cè)量火災(zāi)警情,通過一片電壓比價(jià)器LM393與CC2530的P0.7相連接,,當(dāng)JNHB1004傳感器檢測(cè)到火焰時(shí),,立即通過上位機(jī)界面符號(hào)提示和聲光提示進(jìn)行火災(zāi)報(bào)警。由于通風(fēng)和除濕設(shè)備為大功率強(qiáng)電設(shè)備,,采用SRD-05VDC-SL-C繼電器以完成對(duì)它們的控制及與節(jié)點(diǎn)進(jìn)行隔離,,其輸入端接CC2530的P0.1引腳。這些對(duì)傳感器信號(hào)的采集,、處理和對(duì)繼電器的控制都是由CC2530內(nèi)部集成的8051控制器完成的,,而與ZigBee網(wǎng)絡(luò)之間的信息交換由CC2530內(nèi)部集成的RF收發(fā)器完成,。
由于CC2530的有效通信距離為100 m,,為增加節(jié)點(diǎn)與路由器和協(xié)調(diào)器的通信距離,在CC2530后面都增添了高性能功率放大及低噪聲放大芯片RFX2401C,,外接SMA膠棒天線或小吸盤天線[6],。
2.2 路由器和協(xié)調(diào)器設(shè)計(jì)
路由器用來擴(kuò)展網(wǎng)絡(luò)通信范圍,協(xié)助傳感器節(jié)點(diǎn)和協(xié)調(diào)器之間的通信,,在樹狀網(wǎng)絡(luò)拓?fù)淇芍芷谛怨ぷ?,因此采用電池供電,;而協(xié)調(diào)器負(fù)責(zé)啟動(dòng)和配置網(wǎng)絡(luò),這些完成后就相當(dāng)于路由器,,協(xié)助網(wǎng)絡(luò)內(nèi)的傳感器節(jié)點(diǎn)和PC機(jī)相互通信,,必須采用PC機(jī)供電。因?yàn)椴恍枰獋鞲衅骱屠^電器等電路,,只需要RF收發(fā)電路和電源電路,,所以路由器和協(xié)調(diào)器的設(shè)計(jì)幾乎相同,區(qū)別在于協(xié)調(diào)器多了串口通信電路,。協(xié)調(diào)器電路圖如圖3所示,,串口電路采用USB轉(zhuǎn)串口芯片CH340進(jìn)行設(shè)計(jì),直接與CC2530的UART0相關(guān)引腳相連接,。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)主要包括ZigBee網(wǎng)絡(luò)中各種設(shè)備軟件和上位機(jī)監(jiān)控軟件的設(shè)計(jì)兩部分,。
3.1 ZigBee網(wǎng)絡(luò)中各種設(shè)備軟件
為便于用戶開發(fā)ZigBee系統(tǒng),TI公司在推出其CC2530的同時(shí),,向用戶提供了自己的ZigBee協(xié)議棧Z-Stack,,它實(shí)質(zhì)就是一套ZigBee系統(tǒng)程序,為TI自己的開發(fā)板量身定做的,,提供了符合ZigBee2007協(xié)議棧體系結(jié)構(gòu)所要求每層操作相關(guān)的各種事件處理函數(shù)和一個(gè)名為操作系統(tǒng)抽象層OSAL 的協(xié)議棧調(diào)度程序[5],,以及包含協(xié)調(diào)器、路由器和終端程序設(shè)計(jì)的例程,。因此本系統(tǒng)ZigBee網(wǎng)絡(luò)中各種設(shè)備程序就是在其集成開發(fā)環(huán)境IAR Embedded Workbench for 8051下修改 Z-Stack-CC2530-2.5.1的SampleApp例程來完成設(shè)計(jì)的,。
協(xié)調(diào)器和路由器的程序只需在例程基礎(chǔ)上修改協(xié)議棧規(guī)范、網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),、PANID,、信道和數(shù)據(jù)收發(fā)函數(shù)等網(wǎng)絡(luò)參數(shù)以及和系統(tǒng)工程有關(guān)的應(yīng)用層即可,而傳感器節(jié)點(diǎn)程序不僅同樣需要修改這些方面,,還要根據(jù)系統(tǒng)硬件來修改Z-Stack例程各層目錄中所有與硬件有關(guān)部分的程序,。傳感器節(jié)點(diǎn)程序流程圖如圖4所示。由于OSAL只采用了輪詢?nèi)蝿?wù)調(diào)度隊(duì)列的方法來進(jìn)行任務(wù)調(diào)度管理,,在系統(tǒng)初始化之后就進(jìn)入輪轉(zhuǎn)查詢式操作系統(tǒng),,對(duì)發(fā)生的任何事件就調(diào)用協(xié)議棧相應(yīng)層的事件處理函數(shù)進(jìn)行處理,因此在硬件層中設(shè)置對(duì)JNHB1004火焰?zhèn)鞲衅鞑捎弥袛嗵幚淼氖录?,?duì)DHT22溫濕度傳感器,、TGS2600氣味傳感器和繼電器控制采用輪詢處理的事件等修改以完成系統(tǒng)的開發(fā)。
3.2 上位機(jī)監(jiān)控軟件
上位機(jī)監(jiān)控軟件采用VS2013進(jìn)行設(shè)計(jì),,主要由傳感器節(jié)點(diǎn)狀態(tài)區(qū)域,、實(shí)時(shí)顯示趨勢(shì)圖和通信設(shè)置區(qū)域等組成。傳感器節(jié)點(diǎn)狀態(tài)區(qū)域按照安排好的節(jié)點(diǎn)順序,,不僅能實(shí)時(shí)顯示每個(gè)節(jié)點(diǎn)的溫度值,、濕度值,、氣味濃度和火災(zāi)警情等狀態(tài),當(dāng)發(fā)生火災(zāi)時(shí)進(jìn)行界面報(bào)警燈符號(hào)閃亮提示和通過外部聲光設(shè)備發(fā)出火災(zāi)警報(bào),,同時(shí)還有每個(gè)節(jié)點(diǎn)對(duì)應(yīng)的按鈕用來控制按照一定順序分配的通風(fēng)和除濕設(shè)備,。實(shí)時(shí)顯示趨勢(shì)圖不僅按時(shí)間可以直接顯示每個(gè)節(jié)點(diǎn)的溫度值、濕度值和氣味濃度,,還能以文本格式存儲(chǔ)溫濕度值,、煙霧異常、火災(zāi)報(bào)警和除濕按鈕等所有狀態(tài)變化并能隨機(jī)查看,。通信設(shè)置區(qū)域主要進(jìn)行串行和網(wǎng)絡(luò)通信的設(shè)置,,串口設(shè)置如端口選擇、打開串口,、關(guān)閉串口,、手動(dòng)刷新和自動(dòng)刷新等操作,網(wǎng)絡(luò)通信設(shè)置如IP設(shè)置,、啟動(dòng)和關(guān)閉網(wǎng)絡(luò)等操作,。上位機(jī)與各個(gè)傳感器節(jié)點(diǎn)通信采用主從查詢式,按照約定好的編碼和通信協(xié)議,,由上位機(jī)發(fā)起查詢?nèi)缓髠鞲衅鞴?jié)點(diǎn)進(jìn)行應(yīng)答,,一問一答,非問莫答,,避免各傳感器節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù)產(chǎn)生沖突,。
4 系統(tǒng)測(cè)試
本系統(tǒng)利用制作好的4個(gè)傳感器節(jié)點(diǎn)、1個(gè)路由器和1個(gè)協(xié)調(diào)器,,在用戶方的1個(gè)大平房倉型糧庫中進(jìn)行測(cè)試,。該糧庫長100 m,跨度24 m,,高7 m,,其裝糧高度為6 m,因此在糧庫按25 m間隔和6.1 m高來放置傳感器節(jié)點(diǎn)以及按不同距離放置路由器和協(xié)調(diào)器進(jìn)行測(cè)試,,節(jié)點(diǎn)1實(shí)時(shí)溫度趨勢(shì)圖如圖5所示,。測(cè)試結(jié)果表明,其平均溫度誤差為0.2 ℃,,濕度誤差為2% RH,,氣味濃度分辨率為0.5,滿足精度要求,,同時(shí)對(duì)火焰反應(yīng)比較敏感,,預(yù)報(bào)火警迅速,,對(duì)通風(fēng)和除濕設(shè)備控制比較準(zhǔn)確,,而且上位機(jī)監(jiān)控軟件操作簡(jiǎn)單,。此外本系統(tǒng)采用3 dB的2.4 GHz膠棒天線進(jìn)行測(cè)試,無線模塊輸出功率可達(dá)22 dBm,,在空曠地帶兩個(gè)模塊有效傳輸距離可達(dá)1 500 m,,滿足通信距離的需要。
5 結(jié)束語
測(cè)試表明,,該系統(tǒng)不僅達(dá)到了設(shè)計(jì)要求,,還具有測(cè)量精度高、功耗低,、成本低,、組網(wǎng)靈活、人機(jī)界面簡(jiǎn)單直觀,、實(shí)用性強(qiáng)和穩(wěn)定性高等諸多優(yōu)點(diǎn),,同時(shí)還能用于其他需求相近的領(lǐng)域。
參考文獻(xiàn)
[1] 梁絨香.基于無線傳輸?shù)募Z倉多參數(shù)綜合監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].自動(dòng)化技術(shù)與應(yīng)用,,2014,,33(8):43-47.
[2] 徐艷玲.基于物聯(lián)網(wǎng)的遠(yuǎn)程糧倉環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)[J].軟件工程師,2015,,18(2):22-23.
[3] 董靜薇,,李會(huì)樂,郭艷雯,,等.基于Zigbee的糧倉溫濕度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].哈爾濱理工大學(xué)學(xué)報(bào),,2014,19(2):120-124.
[4] 李家金.基于ZigBee的糧倉環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].大連:大連海事學(xué)院,,2012.
[5] 姜仲,,劉丹.ZigBee技術(shù)與實(shí)訓(xùn)教程——基于CC2530的無線傳感網(wǎng)絡(luò)技術(shù)[M].北京:清華大學(xué)出版社,2014.
[6] 李建勇,,劉雪梅,,李洋.基于SimpliciTI的大棚溫濕度無線監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2015,,23(18):173-179.