【摘 要】WSN是一種多跳自組織網(wǎng)絡(luò),其利用先進的傳感器,可以對周圍環(huán)境以及設(shè)定對象進行數(shù)據(jù)采集,還可以將采集的信息經(jīng)過處理后,自動傳輸?shù)接脩艚K端。隨著科技與信息技術(shù)不斷發(fā)展,WSN網(wǎng)絡(luò)應(yīng)用的范圍越來越廣,其在軍事、醫(yī)療以及環(huán)境監(jiān)測等領(lǐng)域都發(fā)揮著重要的監(jiān)測作用。本文對WSN節(jié)點與PC機無線通信的方法進行了研究,希望對相關(guān)研究人員有所幫助。
【關(guān)鍵詞】WSN節(jié)點;PC機;無線通信;方法
WSN是科技不斷發(fā)展的產(chǎn)物,屬于一種新型的無線傳感器網(wǎng)絡(luò),其與PC機無線通信技術(shù)結(jié)合起來,可以形成一種微電子技術(shù),而且適用于多個領(lǐng)域。WSN網(wǎng)絡(luò)的不斷發(fā)展,使得信息感知技術(shù)越來越先進,相關(guān)人員必須對傳統(tǒng)的信息感知技術(shù)進行改進,這樣可以降低該項技術(shù)應(yīng)用的成本以及能耗。WSN節(jié)點與PC機無線通信的結(jié)合,可以形成低功率、低成本、多跳自組織網(wǎng)絡(luò),可以對信息進行接收與傳輸,下面筆者對WSN節(jié)點與PC機無線通信的方式進行簡單介紹。
1.WSN系統(tǒng)的結(jié)構(gòu)與特點
WSN系統(tǒng)是一種新型的無線傳感器網(wǎng)絡(luò),其主要是由傳感器節(jié)點構(gòu)成的,可以通過自有的方式進行網(wǎng)絡(luò)連接。傳感器節(jié)點具有一定的復(fù)雜性,其包括數(shù)據(jù)傳感、處理單元、通信單元等元件,在科技不斷進步的影響下,傳感器節(jié)點電池的尺寸越來越小,這也使得WSN節(jié)點形成了低成本、低功率的新型傳感器。
WSN網(wǎng)絡(luò)的應(yīng)用范圍越來越廣,其可以多用戶提供數(shù)據(jù)傳輸以及資源共享的平臺,為了將傳感器網(wǎng)絡(luò)接入互聯(lián)網(wǎng)中,其需要借助PC機這一設(shè)備,這樣才能實現(xiàn)與互聯(lián)網(wǎng)的互聯(lián)。WSN節(jié)點與PC機無線通信相結(jié)合,首先需要將PC機作為控制指令的設(shè)備,其將相關(guān)指令發(fā)送到傳感器中,再利用WSN網(wǎng)絡(luò)將信息發(fā)送到PC機上。
2.軟件設(shè)計
本文對WSN節(jié)點與PC機無線通信相連的方法進行了研究,在這一過程中,相關(guān)人員首先需要在特定的網(wǎng)絡(luò)環(huán)境下進行,比如在TinyOS系統(tǒng)下,可以對WSN節(jié)點進行有效的研究。還需要設(shè)計PC機安裝軟件,還需要選擇編程語言,比如nesC等,這種編程語言是在計算機C語言的基礎(chǔ)上發(fā)展形成的。
2.1接收PC機命令并發(fā)射無線信號
隨著科技的不斷發(fā)展,相關(guān)人員設(shè)計出了開發(fā)程度test2,實現(xiàn)了計算機串口接收命令發(fā)射無線信號的功能。在信號傳輸?shù)倪^程中,工作人員需要將tese2程序加載到節(jié)點Node2中,而程序test2主要包括兩個文件,即配置文件與模板文件,這兩個文件的后綴分別為test2.nc、test2M。nc。在test2中,涉及到的組件包括Test2M、IntToRfm、LedsC和HPLUARTC,其相互間的關(guān)系如圖1所示。
圖1 Test的組件圖
在上圖中,涉及到了模塊test2M的3個具體實現(xiàn),分別是IntToRfm、LedsC和HPLUARTC,其中test2M使用的接口IntOutput由IntToRfm提供,實現(xiàn)了test2程序?qū)⒁粩?shù)據(jù)通過無線發(fā)射出去;HPLUARTC組件提供的接口HPLUART用來實現(xiàn)節(jié)點從計算機串口中得到PC發(fā)送給自己的數(shù)據(jù);LedsC組件提供的Leds接口的yellowToggle()、greenToggle()命令控制節(jié)點上的LED燈閃亮。該部分程序的關(guān)鍵代碼為:
//串口接收命令數(shù)據(jù)并無線發(fā)射數(shù)據(jù)出去
asynceventresult_tHPLUART.get(uint8_tdata)//串口接收PC機命令通過HPLUART接口的get事件實現(xiàn)
{uint8_tk;
atomick=data;
//如果命令數(shù)據(jù)為3,則黃色LED燈閃亮,并且發(fā)送無線數(shù)據(jù)4
if(3==k)
{callLeds.yellowToggle();
callIntOutput.output(4);
}
//如果命令數(shù)據(jù)為2,則綠色LED燈閃爍,并且發(fā)送無線數(shù)據(jù)5
elseif(2==k)
{callLeds.greenToggle();
callIntOutput.output(5);
}
returnSUCCESS;
}
在本例中,將命令信息設(shè)為變量k,若k=3,則讓Node2將常數(shù)4以無線形式發(fā)射出去,并且黃色LED燈閃亮;若k=2,則要求Node2向外發(fā)射無線數(shù)據(jù)5,并且綠色LED燈閃亮。在實際應(yīng)用中,無線數(shù)據(jù)可作為命令讓傳感器網(wǎng)絡(luò)節(jié)點接收。
2.2 WSN節(jié)點接收無線信號
在tinyos-1.x/apps/目錄下,利用RfmToLeds應(yīng)用程序可接收無線信號。在本文的實例中,將RfmToLeds應(yīng)用程序加載到無線傳感器網(wǎng)絡(luò)的某一個節(jié)點中。該程序通過一個簡單的配件來實現(xiàn),使用了RfmToInt組件接收信息,使用IntToLeds組件在LED上顯示接收到的數(shù)據(jù)。RfmInt組件使用GenericComm組件接收信息。在RfmToInt的程序中,需注意下面這一行:
RfmToIntM.ReceiveIntMsg->GenericComm.ReceiveMsg[AM_INTMS
G];
這行代碼將RfmToIntM使用到的ReceiveMsg接口(即ReceiveIntMsg)連接到GenericComm中的ReceiveMsg,并且指明句柄ID為AM_INTMSG。對接收到的信息而言,內(nèi)存管理本質(zhì)上是動態(tài)的。信息到達(dá)后進入緩沖區(qū),主動信息層就會解析句柄類型并分派出去。應(yīng)用程序通過ReceiveMsg.receive事件獲取緩沖區(qū)地址。下面為接收無線數(shù)據(jù)的關(guān)鍵代碼:
eventTOS_MsgPtrReceiveIntMsg.receive(TOS_MsgPtrm)
{IntMsg*message=(IntMsg*)m->data;
callIntOutput.output(message->val);//此處message->val即為Node2發(fā)送過來的無線數(shù)據(jù)returnm;}
本實例中,將tinyos-1.x/apps/目錄下的TOSBASE程序加載到Node1節(jié)點中,通過Node1也可將接收到的無線數(shù)據(jù)在PC機上顯示出來。
3.實驗結(jié)果與分析
通過上文的分析可以看出,將相關(guān)軟件安裝在PC機中,可以實現(xiàn)WSN節(jié)點與PC機的連接,可以形成無線通信網(wǎng)絡(luò),由上述分析我們可以看出,使用無線傳感器網(wǎng)絡(luò)進行信息數(shù)據(jù)的傳遞具有非常重要的應(yīng)用價值與意義,是當(dāng)前很多行業(yè)領(lǐng)域都非常重視的網(wǎng)絡(luò)形式。為了能夠使WSN節(jié)點的應(yīng)用范圍更加廣泛,我們可以通過將其與Internet相互連接的方式來實現(xiàn)信息資源的共享。但是這是需要利用與PC機的終端進行互聯(lián)才能實現(xiàn)的。筆者對本次實驗的結(jié)果進行了分析,并主要從信息發(fā)送過程以及接收過程這兩個方面進行了研究,結(jié)果如下:
3.1發(fā)送過程
在PC機中,串口發(fā)送數(shù)據(jù)主要是通過觸發(fā)節(jié)點發(fā)送的,在數(shù)據(jù)3位置處,向傳感器網(wǎng)絡(luò)發(fā)送命令數(shù)據(jù)4。WSN節(jié)點Node2在接收到PC機傳輸?shù)臄?shù)據(jù)3后,需要通過控制命令經(jīng)數(shù)據(jù)4通過無線通信網(wǎng)絡(luò)發(fā)送出去。在發(fā)送的過程中,要觀察PC機端口以及波特率,由于本文案例中,硬件平臺選用的是Telosb節(jié)點,所以,需要對串口助手進行特殊的設(shè)置,即規(guī)定波特率為57600,并且以HEX的格式發(fā)送出去。
3.2接收過程
在WSN無線網(wǎng)絡(luò)中,在節(jié)點Nsde1中加載TOSBase程序,并打開串口助手,對其設(shè)置與Nsde1相同的波特率,并以HEX的格式顯示出來,這時要觀察Nsde1的多個端口,當(dāng)發(fā)現(xiàn)PC機上接收到了無線數(shù)據(jù)后,還需要對數(shù)據(jù)進行特殊處理。比如在HEX格式中顯示7 E4204010803FFFFFFFF047D5D04000100DEAF7E,工作人員需要去掉其中的協(xié)議數(shù)據(jù),得出最終的數(shù)據(jù),即7D5D后面的04000100 DEAF7E數(shù)據(jù),而本實例中,PC機真正收到的無線數(shù)據(jù)為04。
4.結(jié)語
綜上所述,WSN節(jié)點與PC機相連,可以形成無線傳感器網(wǎng)絡(luò),其可以實現(xiàn)對信息數(shù)據(jù)的有效傳遞與傳輸,而且在多個領(lǐng)域都有著廣泛的應(yīng)用。WSN網(wǎng)絡(luò)是信息時代的產(chǎn)物,其是在傳統(tǒng)網(wǎng)絡(luò)的基礎(chǔ)上,通過對技術(shù)的改進,實現(xiàn)了無線傳輸以及信息資源的共享。將WSN節(jié)點與互聯(lián)網(wǎng)技術(shù)結(jié)合在一起,還需要利用多種軟件以及網(wǎng)絡(luò)技術(shù),本文對WSN節(jié)點與PC機無線通信的方法進行了介紹與研究,以供專業(yè)人士參考與借鑒。
【參考文獻(xiàn)】
[1]李建中,李金寶,石勝飛.傳感器網(wǎng)絡(luò)及其數(shù)據(jù)管理的概念、問題與進展[J].軟件學(xué)報,2003(10).
[2]盧敏,夏煒,酆廣增.下一代無線通信的目標(biāo)及發(fā)展趨勢[J].通訊世界,2002(07).
[3]吳基傳.正確把握無線通信的發(fā)展方向[J].中國無線電管理,2002(10).