您現(xiàn)在的位置:
中國(guó)傳動(dòng)網(wǎng)
>
技術(shù)頻道
>
技術(shù)百科
>
一種無(wú)線(xiàn)傳感器網(wǎng)絡(luò)自組網(wǎng)協(xié)議的研究與實(shí)現(xiàn)
時(shí)間:2008-06-10 11:55:00來(lái)源:zhangting




圖2 傳感器節(jié)點(diǎn)框圖[/align]
MSP430系列單片機(jī)是TI公司生產(chǎn)的一種混合信號(hào)控制器,其突出優(yōu)點(diǎn)是低電源電壓、超低功耗,可采用電池工作,有很長(zhǎng)的使用時(shí)間[6]。
nRF905是挪威Nordic VLSI公司推出的單片射頻收發(fā)器,低電壓工作,功耗非常低,工作于433/868/915 MHz三個(gè)ISM(工業(yè)、科學(xué)和醫(yī)學(xué))頻道,頻道之間的轉(zhuǎn)換時(shí)間小于650 μs[7]。ShockBurstTM工作模式,能自動(dòng)處理字頭和CRC(循環(huán)冗余碼校驗(yàn))。通過(guò)SPI串口與微控制器通信,使用非常方便;內(nèi)建空閑模式 與關(guān)機(jī)模式,易于實(shí)現(xiàn)節(jié)能。nRF905適用于無(wú)線(xiàn)數(shù)據(jù)通信、無(wú)線(xiàn)開(kāi)鎖等諸多領(lǐng)域。
天線(xiàn)的設(shè)計(jì)是整個(gè)系統(tǒng)設(shè)計(jì)的一個(gè)非常重要的環(huán)節(jié)。系統(tǒng)功耗的高低以及網(wǎng)絡(luò)性能的好壞與天線(xiàn)的設(shè)計(jì)都有密切關(guān)系。天線(xiàn)部分的設(shè)計(jì)采用整體PCB環(huán)行差分天線(xiàn)。與傳統(tǒng)的鞭狀天線(xiàn)相比,不僅節(jié)省空間,降低生產(chǎn)成本,機(jī)構(gòu)上也更穩(wěn)固可靠。
因?yàn)楸疚闹饕芯繜o(wú)線(xiàn)傳感器網(wǎng)絡(luò)的自組網(wǎng)和低功耗技術(shù),所以只選擇了MSP430系列單片機(jī)的內(nèi)部集成熱敏二極管來(lái)測(cè)量節(jié)點(diǎn)的工作溫度,但預(yù)留了大量外接傳感器接口,外接傳感器的信號(hào)能以中斷方式喚醒節(jié)點(diǎn)。
2.3 系統(tǒng)功耗
傳感器節(jié)點(diǎn)采用電池供電,功耗的高低直接影響整個(gè)網(wǎng)絡(luò)的生命期。系統(tǒng)的功耗不僅與選擇的元器件有關(guān),還與整個(gè)網(wǎng)絡(luò)的控制策略有關(guān)。采用不同的控 制策略,系統(tǒng)的工作時(shí)間就會(huì)不同。若希望節(jié)點(diǎn)工作一年的時(shí)間(365×24=8 760小時(shí)),則理論上要求平均工作電流約為263 μA(2 300÷8 760)。發(fā)射數(shù)據(jù)到接收應(yīng)答的工作時(shí)間約為50 ms,這樣可推算出每次工作前的平均休眠時(shí)間為2.3 s[8]。實(shí)際應(yīng)用中,可以根據(jù)網(wǎng)絡(luò)的反應(yīng)速度和信息的采樣率來(lái)選擇系統(tǒng)工作和休眠的時(shí)間。
3、軟件開(kāi)發(fā)
低功耗系統(tǒng)的設(shè)計(jì)是一種綜合硬件和軟件為一體的技術(shù),必須在使用低功耗芯片的同時(shí),采用智能的控制策略。例如,讓系統(tǒng)在需要工作時(shí)全速運(yùn)行;而當(dāng)整個(gè)系統(tǒng)處理完事件就進(jìn)入低功耗模式,等待外部事件的喚醒。
系統(tǒng)軟件包括基站節(jié)點(diǎn)軟件、傳感器節(jié)點(diǎn)軟件和上位機(jī)處理軟件。
3.1 基站節(jié)點(diǎn)軟件
基站節(jié)點(diǎn)的主程序比較簡(jiǎn)單,初始化后就進(jìn)入低功耗模式,等待外部事件喚醒。外部事件包括串口中斷事件、接收到數(shù)據(jù)事件和定時(shí)器的中斷事件。
圖3給出了基站節(jié)點(diǎn)的串口中斷流程。
[align=center]
圖3 基站節(jié)點(diǎn)串口中斷流程[/align]
為了防止串口通信過(guò)程中丟失數(shù)據(jù),軟件設(shè)計(jì)上加了握手協(xié)議。當(dāng)基站節(jié)點(diǎn)每發(fā)送一個(gè)數(shù)據(jù)包給上位機(jī)時(shí),上位機(jī)都會(huì)向基站節(jié)點(diǎn)發(fā)送應(yīng)答信號(hào),直到數(shù)據(jù)包發(fā)送給上位機(jī)。接收到數(shù)據(jù)包后,節(jié)點(diǎn)會(huì)從低功耗模式中喚醒,根據(jù)接收到的數(shù)據(jù)中標(biāo)志位的不同字符分別進(jìn)入不同的處理單元。
當(dāng)多個(gè)傳感器節(jié)點(diǎn)同時(shí)與某個(gè)傳感器節(jié)點(diǎn)通信時(shí),存在掙搶信道的現(xiàn)象。為了避免多個(gè)傳感器節(jié)點(diǎn)同時(shí)與某個(gè)傳感器節(jié)點(diǎn)通信造成數(shù)據(jù)丟失,軟件上采用 一定的退避機(jī)制。一方面,利用射頻芯片nRF905的CD(載波偵聽(tīng))信號(hào)來(lái)產(chǎn)生隨機(jī)延時(shí),以避免同時(shí)發(fā)送信號(hào);另一方面,當(dāng)一個(gè)傳感器節(jié)點(diǎn)與某個(gè)傳感器 節(jié)點(diǎn)建立了通信通道時(shí),其他發(fā)送數(shù)據(jù)的節(jié)點(diǎn)會(huì)增加發(fā)射數(shù)據(jù)的次數(shù)。
3.2 傳感器節(jié)點(diǎn)軟件
傳感器節(jié)點(diǎn)初始化后,首先發(fā)送請(qǐng)求基站節(jié)點(diǎn)分配級(jí)別的命令,同時(shí)打開(kāi)一個(gè)定時(shí)喚醒的定時(shí)器;然后進(jìn)入低功耗模式,等待外部事件的喚醒。若傳感器 發(fā)送請(qǐng)求基站節(jié)點(diǎn)分配級(jí)別的次數(shù)達(dá)到設(shè)定上限,仍未確定節(jié)點(diǎn)在網(wǎng)絡(luò)中的級(jí)別,則該節(jié)點(diǎn)就會(huì)向周?chē)鷤鞲衅鞴?jié)點(diǎn)廣播信息。當(dāng)廣播次數(shù)達(dá)到設(shè)定值時(shí),傳感器節(jié)點(diǎn) 就根據(jù)收到的信息確定自己的級(jí)別以及與該節(jié)點(diǎn)有直接聯(lián)系的節(jié)點(diǎn)的信息,并把這些信息發(fā)送給基站節(jié)點(diǎn)。傳感器節(jié)點(diǎn)的外部中斷事件包括接收到數(shù)據(jù)事件、定時(shí)器 中斷事件、狀態(tài)突變事件。
當(dāng)傳感器節(jié)點(diǎn)檢測(cè)到狀態(tài)突變后,會(huì)從低功耗狀態(tài)喚醒,并及時(shí)采集此時(shí)的環(huán)境參數(shù)(包括狀態(tài)量、溫度值及節(jié)點(diǎn)電壓值),將這些數(shù)據(jù)發(fā)送出去。該數(shù)據(jù)包通過(guò)單跳或多跳到達(dá)基站節(jié)點(diǎn)并在上位機(jī)軟件上顯示。
3.3 上位機(jī)處理軟件
為了監(jiān)測(cè)整個(gè)網(wǎng)絡(luò)情況,需要在主機(jī)上建立良好的人機(jī)交互界面。采用Visual Basic(VB)來(lái)設(shè)計(jì)人機(jī)界面。利用VB的MSComm控件實(shí)現(xiàn)上、下位機(jī)的串口通信,利用其他控件實(shí)現(xiàn)對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的分析、顯示和操作。
上位機(jī)主程序主要完成一些變量和控件初始化,然后等待串口數(shù)據(jù)。數(shù)據(jù)的接收和發(fā)送都是由中斷程序完成的,其流程如圖4所示。
[align=center]
圖4 上位機(jī)的串口中斷流程[/align]
上位機(jī)接收到完整的數(shù)據(jù)包后,會(huì)根據(jù)數(shù)據(jù)包中的關(guān)鍵字進(jìn)行不同的處理。發(fā)送數(shù)據(jù)時(shí),根據(jù)保存的網(wǎng)絡(luò)數(shù)據(jù)計(jì)算中轉(zhuǎn)數(shù)據(jù)的路徑。為節(jié)約基站節(jié)點(diǎn)的能量,網(wǎng)絡(luò)中有很多的數(shù)據(jù)處理是在上位機(jī)中進(jìn)行的。
4、實(shí)驗(yàn)結(jié)果
系統(tǒng)研制完成后,需要設(shè)計(jì)實(shí)驗(yàn)來(lái)考核自組網(wǎng)效果及網(wǎng)絡(luò)性能。實(shí)驗(yàn)中,首先關(guān)注的問(wèn)題是隨機(jī)分布的傳感器節(jié)點(diǎn)在自定義的組織協(xié)議下的組網(wǎng)情況。為 了考核自組織效果, 首先讓基站節(jié)點(diǎn)通過(guò)串口與上位機(jī)相連并打開(kāi)上位機(jī)處理軟件;然后打開(kāi)傳感器節(jié)點(diǎn)的電源,并通過(guò)人工安放或者隨機(jī)撒播方式布置好傳感器節(jié)點(diǎn)。
借助上位機(jī)的處理軟件,可以非常清楚地看到整個(gè)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和網(wǎng)絡(luò)節(jié)點(diǎn)的環(huán)境參數(shù)。當(dāng)上位機(jī)處理軟件檢測(cè)到網(wǎng)絡(luò)內(nèi)的傳感器節(jié)點(diǎn)后,會(huì)在上位機(jī)上進(jìn)行顯示并保存?zhèn)鞲衅鞴?jié)點(diǎn)的數(shù)據(jù)。圖5為系統(tǒng)演示的11個(gè)傳感器節(jié)點(diǎn)自由組網(wǎng)時(shí)界面的顯示情況。組網(wǎng)時(shí)間約3 min。
圖5中的黑色曲線(xiàn)為數(shù)據(jù)的傳輸路徑。當(dāng)鼠標(biāo)點(diǎn)擊某個(gè)節(jié)點(diǎn),會(huì)彈出該節(jié)點(diǎn)的信息采集卡。信息采集卡反映了節(jié)點(diǎn)的狀態(tài)量、溫度值、電壓值以及剩余能量,通過(guò)采集卡可直接對(duì)該節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制。
[align=center]
圖5 網(wǎng)絡(luò)拓?fù)浼皵?shù)據(jù)傳輸路線(xiàn)圖[/align]
在檢測(cè)網(wǎng)絡(luò)性能的實(shí)驗(yàn)中,讓傳感器節(jié)點(diǎn)一級(jí)一級(jí)分布下去。通過(guò)上位機(jī)軟件可以很清楚地看到所投放的傳感器節(jié)點(diǎn)可組成的最大跳數(shù)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。 當(dāng)網(wǎng)絡(luò)組成后,可通過(guò)上位機(jī)界面對(duì)網(wǎng)內(nèi)各個(gè)節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制;當(dāng)各個(gè)節(jié)點(diǎn)發(fā)生狀態(tài)突變時(shí),會(huì)以中斷形式喚醒節(jié)點(diǎn),以能量?jī)?yōu)先的原則逐級(jí)傳送到基站節(jié)點(diǎn),并 在上位機(jī)界面上進(jìn)行相應(yīng)顯示。
當(dāng)新的傳感器節(jié)點(diǎn)加入到網(wǎng)絡(luò)中,系統(tǒng)會(huì)及時(shí)反映新加入節(jié)點(diǎn)。當(dāng)系統(tǒng)檢測(cè)到傳感器節(jié)點(diǎn)由于電源電壓低于工作電壓,或人為破壞引起失效時(shí),會(huì)從網(wǎng)絡(luò) 中刪除該節(jié)點(diǎn)的拓?fù)浣Y(jié)構(gòu)及相關(guān)信息,檢測(cè)方法有手動(dòng)刷新和定時(shí)采樣兩種。網(wǎng)絡(luò)內(nèi)傳送的數(shù)據(jù)都保存在網(wǎng)絡(luò)數(shù)據(jù)庫(kù)中,便于查尋。通過(guò)上位機(jī)軟件還能夠?qū)W(wǎng)絡(luò)進(jìn) 行復(fù)位,讓所有傳感器節(jié)點(diǎn)進(jìn)行重新組網(wǎng)。
結(jié) 語(yǔ)
本文首先提出了一種無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的自組織協(xié)議,然后選用MSP430F149和nRF905設(shè)計(jì)了微型傳感器節(jié)點(diǎn),并實(shí)現(xiàn)了一種低功耗無(wú)線(xiàn)網(wǎng)絡(luò),其特點(diǎn)如下:
① 利用無(wú)線(xiàn)通信攜帶的信息自動(dòng)生成多級(jí)網(wǎng)狀網(wǎng)絡(luò),并按能量?jī)?yōu)先的原則自動(dòng)生成數(shù)據(jù)的傳輸路徑。
② 采取應(yīng)答和退避機(jī)制,防止多個(gè)傳感器節(jié)點(diǎn)向一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)所導(dǎo)致的數(shù)據(jù)丟失。
③ 無(wú)線(xiàn)通信的雙向性,不僅被動(dòng)顯示各個(gè)傳感器節(jié)點(diǎn)的信息,還可主動(dòng)對(duì)每個(gè)傳感器節(jié)點(diǎn)進(jìn)行遠(yuǎn)程控制。
④ 使用支持低功耗工作模式的硬件,配合軟件上的智能控制策略來(lái)實(shí)現(xiàn)系統(tǒng)低功耗,盡可能延長(zhǎng)網(wǎng)絡(luò)壽命。標(biāo)簽:
傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為傳動(dòng)網(wǎng)(www.wangxinlc.cn)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>500kN.m聯(lián)軸器扭矩剛度疲勞試驗(yàn)系統(tǒng)
2025-11-10
2025-11-10
2025-10-31
勇梅機(jī)械液壓閘門(mén)給煤機(jī)的優(yōu)點(diǎn)
2025-10-22
2025-10-17
推薦專(zhuān)題
更多>