基于CC2530無線傳感網(wǎng)絡系統(tǒng)的設計
2 軟件設計與實現(xiàn)
2.1 協(xié)調(diào)器節(jié)點程序
在網(wǎng)絡中,每個節(jié)點都有一個64位的物理長地址和一個16位的短地址,短地址用于本網(wǎng)絡的設備通信,而長地址則可以與本網(wǎng)絡之外的其他網(wǎng)絡進行通信。數(shù)據(jù)傳送采用主從節(jié)點方式,與計算機相連作為主節(jié)點(協(xié)調(diào)器),其他節(jié)點作為從節(jié)點(終端節(jié)點),從節(jié)點可以向主節(jié)點發(fā)送中斷請求。
協(xié)調(diào)器端程序流程如圖4所示,協(xié)調(diào)器上電后,首先進行設備初始化,包括硬件電路初始化,寄存器初始化,協(xié)議棧初始化,操作系統(tǒng)初始化。然后進入到執(zhí)行操作系統(tǒng),進入無限循環(huán)的任務執(zhí)行程序中。本文引用地址:http://butianyuan.cn/article/159405.htm
終端程序的大體流程,終端的初始化過程和協(xié)調(diào)器類似。首先判斷節(jié)點是否加入一個網(wǎng)絡,如果是,則可以發(fā)送所采集的信息。如果沒有加入網(wǎng)絡,則判斷是否作為老節(jié)點加入網(wǎng)絡,如果作為老節(jié)點加入網(wǎng)絡,則終端節(jié)點通過保留以前加入網(wǎng)絡的地址來加入網(wǎng)絡。如果作為新的節(jié)點加入網(wǎng)絡,則需要掃描網(wǎng)絡,然后加入其中最優(yōu)秀的一個網(wǎng)絡。
2.2 組網(wǎng)
組網(wǎng)的過程主要如下:
(1)協(xié)調(diào)器首先上電,完成網(wǎng)絡的初始化,選擇一個合適的信道,并且為自己的網(wǎng)絡選擇一個PAN_ID(網(wǎng)絡標識符),然后周期的向周圍發(fā)送beacon request的數(shù)據(jù)包。
(2)再將終端節(jié)點上電,終端節(jié)點會首先向周圍的環(huán)境做一個信道能量掃描選擇一個能量比較合適的信道進行網(wǎng)絡搜尋。
(3)當協(xié)調(diào)器接收到終端節(jié)點的beacon request數(shù)據(jù)包之后會發(fā)送一個包含自己IEEE MAC地址的超幀。
(4)終端節(jié)點接收到超幀之后,將協(xié)調(diào)器的MAC地址保存,并利用這個地址向協(xié)調(diào)器發(fā)送一個Association Request的數(shù)據(jù)包,此包目的是尋求加入網(wǎng)絡。
(5)當協(xié)調(diào)器接收到Data Request之后,首先經(jīng)過NWK層的算法為其分配一個惟一的網(wǎng)絡短地址,然后向終端節(jié)點發(fā)送一個包含其網(wǎng)絡短地址的包,這個包是通過MAC地址發(fā)送的。
(6)當終端節(jié)點接收到這個包之后,配置自己的短地址為0xXXXX,此時可用這個短地址和協(xié)調(diào)器進行應用層的通信,至此終端節(jié)點已經(jīng)成功加入到網(wǎng)絡。
2.3 數(shù)據(jù)傳輸
本研究采用了直接尋址(通用單播),用于設備間的通信。設備直接尋址必須知道接收方的短地址或者長地址。
當節(jié)點接收到一個單播的消息,其APS層就會激活APSDE_DATA_indication原語處理消息。如果接收到的是一個確認幀,則APS層應該發(fā)送APSDE_DATA。
Indication原語來接收命令,然后將溫度信息通過APSDE-DATA.request原語發(fā)送回協(xié)調(diào)器,協(xié)調(diào)器同樣通過APSDE-DATA.indication原語來接收信息。如圖5所示。
3 系統(tǒng)測試
對網(wǎng)絡的測試,主要集中于兩個方面:功能測試,如組網(wǎng),點對點的通信,系統(tǒng)整體測試等;靜態(tài)測試,如節(jié)點的性能指標,程序的實現(xiàn)和數(shù)據(jù)收發(fā)的正確率等。
3.1 功能測試
首先將協(xié)調(diào)器程序燒入一個節(jié)點作為協(xié)調(diào)器;將傳感節(jié)點程序燒入幾個節(jié)點作為傳感器終端。經(jīng)系統(tǒng)測試,所有終端都能加入網(wǎng)絡,并能進行正常的數(shù)據(jù)收發(fā),功能測試顯示系統(tǒng)完好。
3.2 節(jié)點測試
3.2.1 無障礙傳輸距離測試
測試在室外空曠的環(huán)境下進行,打開協(xié)調(diào)器,建立無線網(wǎng)絡后,再打開一個終端節(jié)點設備,此設備作為溫度和電壓信息的參考節(jié)點。最后打開另一個終端節(jié)點,對該節(jié)點加以移動,分別選取5個測試距離,測試移動中該節(jié)點數(shù)據(jù)接收效果,數(shù)據(jù)由計算機保存記錄,測試完畢統(tǒng)計分析數(shù)據(jù)。結果見表1。
3.2.2 有障礙傳輸距離測試
測試在室內(nèi)隔墻的環(huán)境下進行測試,步驟與無障礙傳輸距離測試方法一樣。打開協(xié)調(diào)器,建立無線網(wǎng)絡后,在協(xié)調(diào)器一旁打開一個終端節(jié)點設備,此設備作為溫度和電壓信息的參考節(jié)點。最后打開另一個終端節(jié)點,對該節(jié)點加以移動,分別選取5個測試距離,測試移動中該節(jié)點數(shù)據(jù)接收效果,數(shù)據(jù)由上位機軟件保存記錄,測試完畢統(tǒng)計分析數(shù)據(jù),如表1所示。
在進行無障礙傳輸距離測試和障礙傳輸距離測試,在有墻相隔的時候信號不強,這與天線設計有關,本文終端設備的天線為PCB天線,如果使用帶桿狀天氣的射頻模塊,接收效果就能夠更好。
4 結論
隨著計算成本的下降以及微處理器體積越來越小,無線傳感器網(wǎng)絡開始投入使用,如環(huán)境的監(jiān)測和保護、醫(yī)療護理、目標跟蹤,本文所采用的基于CC2530無線傳感網(wǎng)絡系統(tǒng)設計方案不失為一種較為高效、節(jié)能、抗干擾能力強的廉價組網(wǎng)方案。提高該無線網(wǎng)絡的傳輸距離、增強網(wǎng)絡的自愈能力,提高ZigBee和Wi—Fi及其他2.4 GHz系統(tǒng)的共存時的互不干擾能力,將該方案推向工業(yè)現(xiàn)場是今后研究的重點。
評論