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