摘要:本文從無(wú)線傳輸協(xié)議的制定、傳輸過(guò)程控制等幾個(gè)方面對(duì)設(shè)計(jì)實(shí)現(xiàn)無(wú)線傳感器網(wǎng)絡(luò)進(jìn)行了論述。在實(shí)際運(yùn)用中,只要對(duì)具體的傳感器進(jìn)行更換,就可以適用于各種各樣的傳感器網(wǎng)絡(luò)。由于無(wú)線傳感器系統(tǒng)組網(wǎng)靈活,采用模塊化的設(shè)計(jì),故具有很好的移植性和擴(kuò)展性,隨著人們生活水平的提高,此系統(tǒng)在未來(lái)交通監(jiān)控領(lǐng)域有著廣闊的應(yīng)用前景。在未來(lái)交通監(jiān)控領(lǐng)域、智能家電、家庭環(huán)境的智能調(diào)節(jié)上有著廣闊的前景。
1、引言
無(wú)線傳感器網(wǎng)絡(luò)是一種全新的信息獲取和處理技術(shù),在現(xiàn)實(shí)生活中得到了越來(lái)越廣泛的應(yīng)用。隨著通信技術(shù)、嵌入式技術(shù)、傳感器技術(shù)的發(fā)展,傳感器正逐漸向智能化、微型化、無(wú)線網(wǎng)絡(luò)化發(fā)展。目前,國(guó)內(nèi)外主要研究無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的低功耗硬件平臺(tái)設(shè)計(jì)拓?fù)淇刂坪途W(wǎng)絡(luò)協(xié)議、定位技術(shù)等。這個(gè)設(shè)計(jì)以檢測(cè)超聲波強(qiáng)度的傳感器為例,實(shí)現(xiàn)了一個(gè)無(wú)線傳感器網(wǎng)絡(luò),根據(jù)傳感器所檢測(cè)的超聲波強(qiáng)弱來(lái)決定開(kāi)啟或關(guān)閉車位指示燈,從而判斷是否有車輛進(jìn)入檢測(cè)區(qū)域。這種傳感器網(wǎng)絡(luò)綜合了嵌入式技術(shù)、傳感器技術(shù)、短程無(wú)線通信技術(shù),有著廣泛的應(yīng)用。該系統(tǒng)不需要對(duì)現(xiàn)場(chǎng)結(jié)構(gòu)進(jìn)行改動(dòng),不需要原先任何固定網(wǎng)絡(luò)的支持,能夠快速布置,方便調(diào)整,并且具有很好的可維護(hù)性和拓展性。
2、ieee802.15.4標(biāo)準(zhǔn)
ieee802.15.4標(biāo)準(zhǔn)適用于低速率、低功耗、低復(fù)雜度和短距離數(shù)據(jù)傳輸?shù)臒o(wú)線個(gè)域網(wǎng)(wpan)。在網(wǎng)絡(luò)內(nèi)的無(wú)線傳輸過(guò)程中,采用帶沖突避免的載波偵聽(tīng)多路訪問(wèn)機(jī)制(csma/ca),支持超幀結(jié)構(gòu)和時(shí)槽保障機(jī)制(gts)。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)可以是星型網(wǎng)或點(diǎn)對(duì)點(diǎn)的對(duì)等網(wǎng)。該標(biāo)準(zhǔn)定義了3種數(shù)據(jù)傳輸頻率,分別為868mhz、915mhz、2.4ghz。前兩種傳輸頻率采取bpsk的調(diào)制方式,后一種采取0-0psk的調(diào)制方式。各種頻率分別支持20kbit/s,40kbit/s和250kbit/s的無(wú)線數(shù)據(jù)傳輸速率,傳輸距離在0m~70m之間。本文中采用的是頻率為2.4ghz的無(wú)線發(fā)射模塊。
3、無(wú)線傳感器網(wǎng)絡(luò)的實(shí)現(xiàn)
3.1網(wǎng)絡(luò)平臺(tái)組建
無(wú)線傳感器網(wǎng)絡(luò)平臺(tái)由超聲波傳感器模塊、微處理器模塊、無(wú)線發(fā)射模塊三個(gè)部分組成,如圖1所示。微處理器模塊和無(wú)線發(fā)射模塊集成在一塊板子上,而超聲波傳感器模塊通過(guò)接口與微處理器相連,這樣可以通過(guò)更換不同的傳感器模塊來(lái)應(yīng)用于各種場(chǎng)合。
3.1.1超聲波傳感器模塊
由于超聲波指向性強(qiáng),在介質(zhì)中傳播的距離較遠(yuǎn),因而超聲波經(jīng)常用于距離的測(cè)量,如測(cè)距儀和物位測(cè)量?jī)x等都可以通過(guò)超聲波來(lái)實(shí)現(xiàn)。利用超聲波檢測(cè)往往比較迅速、方便、計(jì)算簡(jiǎn)單、易于做到實(shí)時(shí)控制,并且在測(cè)量精度方面能達(dá)到工業(yè)實(shí)用的要求。為了使汽車能自動(dòng)避障行走,就必須裝備測(cè)距系統(tǒng),以使其及時(shí)獲取距障礙物的距離信息(距離和方向)。本文所介紹的三方向(前、左、右)超聲波測(cè)距系統(tǒng),就是為后臺(tái)工作人員了解其前方、左側(cè)和右側(cè)的環(huán)境而提供一個(gè)運(yùn)動(dòng)距離信息。
圖1無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)結(jié)構(gòu)
圖2無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)通信拓?fù)浣Y(jié)構(gòu)
sl-srf-25超聲波傳感器,接上電源,可以單獨(dú)作為超聲波測(cè)距使用,由3位led數(shù)碼管顯示障礙物距離,3位led數(shù)碼管采用積木式插裝方式,便于調(diào)試檢查及使用在不同場(chǎng)合。測(cè)量范圍10cm-250cm,測(cè)距小于100cm時(shí),誤差是1~2cm.,大于100cm時(shí),誤差是4~5cm。sl-srf-25超聲波傳感器,還可以從單片機(jī)i/o端口上輸出分段距離檢測(cè)信號(hào)。
3.1.2微處理器模塊
處理器模塊選擇美國(guó)加州伯克利大學(xué)的mica2模型節(jié)點(diǎn)。節(jié)點(diǎn)板上提供如下功能:433mhz中心頻率的無(wú)線通信接口,通過(guò)編程可以定制多種功能:能夠提供-20db~10db多種通信功率;能夠在曼徹斯特編碼方式下提供從0.3kbps~38.4kbps多種傳輸速率;能夠在433m附近設(shè)置多種通信頻率,頻率間隔為76k。它高速和大容量ram的特性,為處理數(shù)據(jù)包提供了便利。
3.1.3無(wú)線發(fā)射模塊
無(wú)線發(fā)射模塊采用桑銳電子科技公司的srwf-501型微功率無(wú)線模塊射頻收發(fā)器。該芯片只需極少外部元器件,性能穩(wěn)定且功耗極低。該收發(fā)器提供3個(gè)串口3種接口方式,com1為ttl電平uart接口,com2為標(biāo)準(zhǔn)的rs-232接口標(biāo)準(zhǔn)的rs-485接口;晶體穩(wěn)頻,內(nèi)置數(shù)字鎖相環(huán),頻點(diǎn)根據(jù)用戶需要在300—1000mhz范圍內(nèi)可以靈活設(shè)置;自動(dòng)過(guò)濾噪聲,簡(jiǎn)化了用戶接口的編程,做到與有線一樣方便;“收”“發(fā)”自動(dòng)切換,無(wú)需的收發(fā)控制線,不發(fā)數(shù)據(jù)時(shí)為常態(tài)“收”狀態(tài);發(fā)數(shù)據(jù)時(shí)自動(dòng)轉(zhuǎn)換為“發(fā)”狀態(tài),“發(fā)”完后自動(dòng)回到“收”;微發(fā)射功率:zui大發(fā)射功率10mw。srwf-501的選擇性和敏感性指數(shù)超過(guò)了ieee802.15.4標(biāo)準(zhǔn)的要求,可確保短距離通信的有效性和可靠性。
3.2系統(tǒng)軟件平臺(tái)
選擇美國(guó)加州伯克利大學(xué)開(kāi)發(fā)的tinyos系統(tǒng)開(kāi)發(fā)環(huán)境。tinydb是tinyos的查詢處理系統(tǒng),它能夠從無(wú)線網(wǎng)絡(luò)中的sensor節(jié)點(diǎn)上提取數(shù)據(jù)和信息。tinyos為tinydb提供了一個(gè)可視化的javaapi窗口,可以進(jìn)行實(shí)時(shí)查詢。
3.3組網(wǎng)類型
在本文中,無(wú)線傳感器網(wǎng)絡(luò)采取星型拓?fù)浣Y(jié)構(gòu)(如圖2),由一個(gè)網(wǎng)絡(luò)協(xié)調(diào)器作為中心節(jié)點(diǎn),可以跟任何一個(gè)普通節(jié)點(diǎn)通信。普通節(jié)點(diǎn)上含有超聲波傳感器對(duì)周圍環(huán)境中的超聲波信號(hào)強(qiáng)度參數(shù)進(jìn)行測(cè)量、采樣,將采集到的數(shù)據(jù)發(fā)往中心節(jié)點(diǎn),并且可以對(duì)中心節(jié)點(diǎn)發(fā)來(lái)的數(shù)據(jù)、命令進(jìn)行分析處理,完成相應(yīng)的操作。若兩個(gè)普通節(jié)點(diǎn)之間要傳送數(shù)據(jù)則必須經(jīng)過(guò)中心節(jié)點(diǎn),由中心節(jié)點(diǎn)把數(shù)據(jù)傳送到相應(yīng)的節(jié)點(diǎn)上。
3.4組網(wǎng)流程
無(wú)線傳感器網(wǎng)絡(luò)是一個(gè)自組織的網(wǎng)絡(luò),如果一個(gè)全功能節(jié)點(diǎn)被激活,它就可能建立一個(gè)網(wǎng)絡(luò)并把自己設(shè)為網(wǎng)絡(luò)協(xié)調(diào)器,其它的普通節(jié)點(diǎn)可以申請(qǐng)加入該網(wǎng)絡(luò)。這樣就可以建成一個(gè)具有星型拓?fù)浣Y(jié)構(gòu)的無(wú)線傳感器網(wǎng)絡(luò)。本文中的無(wú)線傳感器網(wǎng)絡(luò)支持超幀結(jié)構(gòu),網(wǎng)絡(luò)協(xié)調(diào)器經(jīng)過(guò)能量掃描、主動(dòng)信道掃描后,按照設(shè)定的參數(shù)周期性的發(fā)送信標(biāo)幀。普通節(jié)點(diǎn)首先經(jīng)過(guò)能量掃描和被動(dòng)信道掃描后,獲取信標(biāo)幀中包含網(wǎng)絡(luò)特征的參數(shù),如信標(biāo)序號(hào)、超幀序號(hào)和網(wǎng)絡(luò)標(biāo)號(hào)等。通過(guò)同步請(qǐng)求與網(wǎng)絡(luò)協(xié)調(diào)器同步,再通過(guò)匹配請(qǐng)求與網(wǎng)絡(luò)協(xié)調(diào)器關(guān)聯(lián)。在與網(wǎng)絡(luò)協(xié)調(diào)器關(guān)聯(lián)的過(guò)程中,網(wǎng)絡(luò)協(xié)調(diào)器為每個(gè)請(qǐng)求關(guān)聯(lián)的普通節(jié)點(diǎn)分配16位的短地址。這樣在以后的數(shù)據(jù)傳送中就可以用短地址進(jìn)行通信,提高通信效率、降低發(fā)射中的能量消耗,從而延長(zhǎng)網(wǎng)絡(luò)的使用壽命。
3.5數(shù)據(jù)傳輸機(jī)制
3.5.1數(shù)據(jù)格式
在ieee802.15.4標(biāo)準(zhǔn)中定義了四種幀,分別是信標(biāo)幀、數(shù)據(jù)幀、命令幀、確認(rèn)幀。
(1)信標(biāo)幀:用以網(wǎng)絡(luò)協(xié)調(diào)器在支持超幀結(jié)構(gòu)的*個(gè)時(shí)槽向其臨近節(jié)點(diǎn)廣播信標(biāo),當(dāng)附近的節(jié)點(diǎn)接受到信標(biāo)幀后就可以申請(qǐng)加入該網(wǎng)絡(luò)。
由于本文中的無(wú)線傳感器網(wǎng)絡(luò)系統(tǒng)采用相對(duì)簡(jiǎn)單的星型拓?fù)浣Y(jié)構(gòu),在信標(biāo)幀的結(jié)構(gòu)上與ieee802.15.4標(biāo)準(zhǔn)有所不同:在信標(biāo)幀的地址域中僅包含源節(jié)點(diǎn)的網(wǎng)絡(luò)標(biāo)號(hào)和短地址,不包含目的節(jié)點(diǎn)信息(因?yàn)椴捎脧V播方式發(fā)送)。
(2)數(shù)據(jù)幀:用來(lái)傳送含有超聲波度信息的數(shù)據(jù)。
在地址域中包含源節(jié)點(diǎn)和目的節(jié)點(diǎn)的網(wǎng)絡(luò)標(biāo)號(hào)和短地址。由于數(shù)據(jù)幀的傳送方向有兩種:從普通節(jié)點(diǎn)傳向中心節(jié)點(diǎn)和從中心節(jié)點(diǎn)發(fā)送給普通節(jié)點(diǎn)。
(3)命令幀:用于組建無(wú)線傳感器網(wǎng)絡(luò)、傳輸同步數(shù)據(jù)等。命令幀在格式上和其它類型的幀沒(méi)有太多的區(qū)別。
(4)確認(rèn)幀:用以確認(rèn)目標(biāo)節(jié)點(diǎn)成功接收到數(shù)據(jù)幀或命令幀。當(dāng)目標(biāo)節(jié)點(diǎn)成功接收到數(shù)據(jù)幀或命令幀后,就發(fā)送一個(gè)確認(rèn)幀給發(fā)送方。發(fā)送方接收到這個(gè)確認(rèn)幀說(shuō)明發(fā)送成功。若在規(guī)定的時(shí)間內(nèi)沒(méi)有接收到確認(rèn)幀,則重發(fā)該數(shù)據(jù)幀或命令幀。
在幀控制域中定義了幀的類型為確認(rèn)幀。確認(rèn)幀的序列號(hào)要與被確認(rèn)幀相同,并且負(fù)載長(zhǎng)度為零。確認(rèn)幀緊接著被確認(rèn)幀發(fā)送,不需要使用csma-ca機(jī)制競(jìng)爭(zhēng)信道。
3.5.2傳輸流程
在整個(gè)無(wú)線傳感器網(wǎng)絡(luò)中,采取的是普通節(jié)點(diǎn)定時(shí)讀取其傳感器上的超聲波數(shù)據(jù),并將超聲波數(shù)據(jù)發(fā)送給中心節(jié)點(diǎn)。中心節(jié)點(diǎn)對(duì)接受到的數(shù)據(jù)進(jìn)行處理后傳送給相應(yīng)的節(jié)點(diǎn)用以控制其上的車位置位標(biāo)志。首先,網(wǎng)絡(luò)協(xié)調(diào)器對(duì)接收到的數(shù)據(jù)幀進(jìn)行檢驗(yàn),圖2中的中心節(jié)點(diǎn)判斷是判斷是否為節(jié)點(diǎn)的傳感器數(shù)據(jù)。若接收的數(shù)據(jù)是節(jié)點(diǎn)上的數(shù)據(jù),則將該數(shù)據(jù)與一個(gè)超聲波度閾值進(jìn)行比較來(lái)設(shè)定控制變量(用來(lái)控制車位的開(kāi)關(guān)狀態(tài))。反之,則不進(jìn)行發(fā)送操作。然后,判斷帶有空閑的節(jié)點(diǎn)是否加入網(wǎng)絡(luò)。若在網(wǎng)絡(luò)中找到帶有空閑的節(jié)點(diǎn),則中心節(jié)點(diǎn)將控制變量作為數(shù)據(jù)幀負(fù)載發(fā)送給它。反之,則不發(fā)送帶有控制變量的數(shù)據(jù)幀。
4、結(jié)束語(yǔ)
在我們?cè)O(shè)計(jì)的無(wú)線傳感器網(wǎng)絡(luò)車位控制系統(tǒng)中,普通節(jié)點(diǎn)將它采集的超聲波數(shù)據(jù)發(fā)送給網(wǎng)絡(luò)協(xié)調(diào)器,網(wǎng)絡(luò)協(xié)調(diào)器將含有控制變量的數(shù)據(jù)幀發(fā)送給帶有車位占空標(biāo)志接點(diǎn)的同時(shí),還可以通過(guò)串口將超聲波度數(shù)據(jù)傳送給計(jì)算機(jī)。通過(guò)計(jì)算機(jī)上的后臺(tái)軟件,可以監(jiān)控超聲波度信號(hào)的變化。從超聲波傳感器可以判斷車位的占用情況。