基于GPRS的ZigBee協(xié)調(diào)器網(wǎng)關(guān)設(shè)計通信
摘要:介紹了一種可進(jìn)行遠(yuǎn)程監(jiān)測和控制的數(shù)據(jù)采集系統(tǒng)。多個測控節(jié)點組成ZigBee無線傳輸網(wǎng)絡(luò),利用GPRS模塊連接因特網(wǎng)擴(kuò)展傳輸范圍,與基于LabVIEW的上位機程序進(jìn)行TCP/IP協(xié)議通信,從而實現(xiàn)遠(yuǎn)程監(jiān)控。下位機設(shè)計了數(shù)據(jù)幀和采集控制指令;協(xié)調(diào)器網(wǎng)關(guān)可對數(shù)據(jù)進(jìn)行選擇性接收和處理,并實現(xiàn)斷線后自動連接;上位機完成對采集數(shù)據(jù)的解析、顯示以及保存,并能發(fā)送控制指令。
關(guān)鍵詞:ZigBee;GPRS;LabVIEW;TCP/IP協(xié)議
0 引言
ZigBee協(xié)議是一種基于IEEE 802.15.4標(biāo)準(zhǔn)的低功耗個域網(wǎng)協(xié)議,其主要特點是低復(fù)雜度、自組織、低功耗、低數(shù)據(jù)速率以及低成本,普遍應(yīng)用于自動控制和測量領(lǐng)域,可以嵌入各種設(shè)備,是一種數(shù)據(jù)傳輸可靠性高的近距離無線組網(wǎng)通信技術(shù)。而GPRS模塊則是通過手機終端連接因特網(wǎng)來實現(xiàn)數(shù)據(jù)的雙向傳輸,它的協(xié)議規(guī)程體現(xiàn)了無線和網(wǎng)絡(luò)相結(jié)合的特征。因此可以通過GPRS技術(shù)來拓展ZigBee測量控制網(wǎng)絡(luò)的作用范圍。目前GPRS的數(shù)據(jù)傳輸主要是基于TCP和UDP兩種通信協(xié)議,其中TCP是面向連接的協(xié)議,提供IP環(huán)境下的數(shù)據(jù)可靠傳輸,適用于可靠性要求比較高的數(shù)據(jù)通信系統(tǒng),而UDP不需要建立連接即可開始傳輸數(shù)據(jù),通信效率較高,但可靠度不高,適用于一次只傳輸少量數(shù)據(jù)的場合LabVIEW作為一種圖形化編程語言開發(fā)環(huán)境,為學(xué)術(shù)界、工業(yè)界和研究實驗室所廣泛接受,運用內(nèi)嵌的TCP/IP網(wǎng)絡(luò)通信協(xié)議組通信,可以直接調(diào)用TCP模塊完成流程圖編寫,而無需過多考慮網(wǎng)絡(luò)底層實現(xiàn),使用該軟件可方便完成上位機測量和控制程序的編制。
1 網(wǎng)絡(luò)組建整體方案
系統(tǒng)網(wǎng)絡(luò)組成如圖1所示,首先由SHT11數(shù)字溫濕度傳感器和CC2530芯片的ADC通道組成傳感器數(shù)據(jù)輸入通道,輸入的信息經(jīng)CC2530芯片采集處理后打包無線發(fā)送到協(xié)調(diào)器節(jié)點,然后協(xié)調(diào)器節(jié)點利用串口2將數(shù)據(jù)發(fā)送給STC12C5A32S單片機,單片機將收到的數(shù)據(jù)進(jìn)一步處理后,通過另一串口把有效數(shù)據(jù)傳送至華為GTM-900C模塊,最后GPRS模塊利用Internet把最終數(shù)據(jù)發(fā)送至上位機,并同時監(jiān)聽上位機指令,一旦接收到指令將轉(zhuǎn)發(fā)給協(xié)調(diào)器直至各采集控制節(jié)點,從而實現(xiàn)數(shù)據(jù)的雙向傳輸。
2 下位機數(shù)據(jù)分析
協(xié)調(diào)器網(wǎng)關(guān)需要把測控節(jié)點無線傳輸過來的數(shù)據(jù)透明發(fā)送至上位機,有效的數(shù)據(jù)幀通過下位機編程為固定長度是20 B的數(shù)據(jù),有些字節(jié)可變,有些字節(jié)是固定的。比如一個數(shù)據(jù)幀用十六進(jìn)制表示為:FE 0F 46 87C6 E9 02 00 09 00 1A 21 00 00 48 9E 00 00 00 07。其中FE為每幀開始的字節(jié);0F,02 00,09 00是固定的字節(jié),表示數(shù)據(jù)包和有效數(shù)據(jù)位,46 87為接收標(biāo)志;最后一個字節(jié)07是前面19個字節(jié)的異或運算值,C6 E9為傳感器節(jié)點16位地址號,隨著數(shù)據(jù)來自不同節(jié)點變化;1A為節(jié)點溫度的整數(shù)部分,換算為十進(jìn)制值為26 ℃,可變;21為節(jié)點10倍片上電壓值,換算至十進(jìn)制值為33 V,可變;0000為父節(jié)點地址;48為節(jié)點相對濕度值,轉(zhuǎn)換至十進(jìn)制值為72%,可變;9E為節(jié)點溫度的小數(shù)部分,換算為十進(jìn)制值的算法是(9×16+15)/256=0.62℃,可變;00 00 00為預(yù)留下來的3 B,用于其他傳感器節(jié)點數(shù)據(jù)的傳送。
協(xié)調(diào)器網(wǎng)關(guān)同時也接收上位機的命令數(shù)據(jù)并通過ZigBee網(wǎng)絡(luò)發(fā)送至具體節(jié)點。命令數(shù)據(jù)為3 B,前2個字節(jié)為目標(biāo)地址,第3個字節(jié)為采集控制命令。如設(shè)置80為停止采集指令,40為開始采集命令,01,02,03為采集周期選擇命令。協(xié)調(diào)器地址是固定的十六進(jìn)制數(shù)0x0000,其他傳感器節(jié)點地址與之不同,因此當(dāng)發(fā)送的前兩個字節(jié)為0000時,可以此做為向全體傳感器節(jié)點廣播命令的判據(jù)。如果前兩個字節(jié)是具體的單個節(jié)點地址,則只有相應(yīng)節(jié)點接收到控制命令。
tcp/ip相關(guān)文章:tcp/ip是什么
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
土壤濕度傳感器相關(guān)文章:土壤濕度傳感器原理
評論