西安工程大學(xué)機(jī)電工程學(xué)院 李遠(yuǎn)朝 高曉丁 李忠欣
基于TinyOS的無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)
西安工程大學(xué)機(jī)電工程學(xué)院 李遠(yuǎn)朝 高曉丁 李忠欣
本文從硬件和軟件兩個(gè)方面分析了構(gòu)建無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的一般規(guī)律和方法,設(shè)計(jì)了以msp430控制芯片和D21DL無(wú)線數(shù)傳電臺(tái)為核心的無(wú)線傳感器網(wǎng)絡(luò)硬件平臺(tái)、無(wú)線傳感器網(wǎng)絡(luò)系統(tǒng)軟件移植了加州大學(xué)伯克利學(xué)院開發(fā)的專用于無(wú)線傳感器網(wǎng)絡(luò)的TinyOS開源系統(tǒng),在此基礎(chǔ)上進(jìn)行硬件驅(qū)動(dòng)以及上層通訊協(xié)議的開發(fā)。
TinyOS;傳感器網(wǎng)絡(luò)節(jié)點(diǎn);msp430;無(wú)線數(shù)傳電臺(tái)
無(wú)線傳感器網(wǎng)絡(luò)(WSN)是傳感器和無(wú)線通訊以及電子等技術(shù)的結(jié)合,起初是用于解決因監(jiān)測(cè)區(qū)域范圍過(guò)大、監(jiān)測(cè)節(jié)點(diǎn)過(guò)多或者環(huán)境太惡劣等的地方。隨著該技術(shù)的發(fā)展,現(xiàn)今其已被應(yīng)用于很多領(lǐng)域,不論是在環(huán)境的監(jiān)測(cè)和保護(hù)方面,還在精細(xì)農(nóng)業(yè)、醫(yī)療護(hù)理,甚至在軍事領(lǐng)域以及目標(biāo)方面都有很大的應(yīng)用。如圖1所示為以無(wú)線數(shù)傳電臺(tái)為傳輸媒介的傳感器網(wǎng)絡(luò)組成形式:監(jiān)測(cè)區(qū)域內(nèi)的大量傳感器節(jié)點(diǎn)對(duì)監(jiān)測(cè)區(qū)域內(nèi)的環(huán)境參數(shù)進(jìn)行監(jiān)測(cè),通過(guò)無(wú)線數(shù)傳電臺(tái)傳送至匯聚節(jié)點(diǎn),最后匯聚節(jié)點(diǎn)通過(guò)數(shù)據(jù)線傳輸?shù)綌?shù)據(jù)處理中心(計(jì)算機(jī))進(jìn)行數(shù)據(jù)的處理,其中傳感器節(jié)點(diǎn)是無(wú)線傳感器網(wǎng)絡(luò)的關(guān)鍵部分。本文設(shè)計(jì)的傳感器節(jié)點(diǎn)是在msp430控制芯片上移植TinyOS操作系統(tǒng)來(lái)實(shí)現(xiàn)數(shù)據(jù)采集、處理和傳輸。
圖1 無(wú)線傳感器網(wǎng)絡(luò)圖
圖2 傳感器節(jié)點(diǎn)結(jié)構(gòu)圖
無(wú)線傳感器節(jié)點(diǎn)包括固定節(jié)點(diǎn)(錨點(diǎn))和移動(dòng)節(jié)點(diǎn)。固定節(jié)點(diǎn)便是位置固定的節(jié)點(diǎn),其在整個(gè)無(wú)線傳感器網(wǎng)絡(luò)中的作用十分重要,移動(dòng)節(jié)點(diǎn)或者其他新增節(jié)點(diǎn)可以通過(guò)固定節(jié)點(diǎn)對(duì)自己進(jìn)行定位,而起移動(dòng)節(jié)點(diǎn)的信息傳遞也要借助于固定的轉(zhuǎn)發(fā)。根據(jù)監(jiān)測(cè)對(duì)象的運(yùn)動(dòng)狀態(tài),整個(gè)網(wǎng)絡(luò)中的節(jié)點(diǎn)可以都是固定節(jié)點(diǎn),也可以是移動(dòng)節(jié)點(diǎn)。
本文所設(shè)計(jì)的無(wú)線傳感器網(wǎng)絡(luò)系統(tǒng)是對(duì)某個(gè)地區(qū)的溫濕度進(jìn)行監(jiān)測(cè),所有節(jié)點(diǎn)都設(shè)計(jì)為固定節(jié)點(diǎn);每個(gè)無(wú)線傳感器節(jié)點(diǎn)的組成結(jié)構(gòu)如圖2所示。
該傳感器節(jié)點(diǎn)的硬件部分由msp430單片機(jī)模塊、溫濕度傳感器模塊、無(wú)線通信模塊、電源模塊和RS232通訊模塊等組成,其中RS232模塊是主節(jié)點(diǎn)獨(dú)有的,它主要是用于主節(jié)點(diǎn)與PC通訊用的。
圖3 單片機(jī)的最小系統(tǒng)
單片機(jī)模塊主要是對(duì)采集的信息的處理。設(shè)計(jì)采用的TI的msp430f169芯片,該芯片是16位自帶AD轉(zhuǎn)換的低功耗芯片,選用該芯片簡(jiǎn)化了電路,也一定程度上減少了能耗,延長(zhǎng)了該節(jié)點(diǎn)數(shù)據(jù)采集時(shí)間。msp430f169單片機(jī)的最小系統(tǒng)如圖3所示。
本設(shè)計(jì)選擇數(shù)字溫度傳感器,傳感器將檢測(cè)的信息直接送到單片機(jī)的IO口,由單片機(jī)處理后進(jìn)行上傳。其電路連接情況如圖4所示。
圖4 溫濕度傳感器模塊
圖5 TinyOS體系結(jié)構(gòu)
本設(shè)計(jì)采用雙電源供電模式:?jiǎn)纹瑱C(jī)模塊由三塊1.2v的干電池供電,這樣就能保證msp430和溫濕度傳感器都在正常工作電壓以內(nèi)。無(wú)線數(shù)傳模塊單獨(dú)供電,因?yàn)闊o(wú)線傳輸非常消耗電量。
節(jié)點(diǎn)的軟件設(shè)計(jì)設(shè)計(jì)實(shí)際上就是對(duì)TinyOS系統(tǒng)的修改和移植。TinyOS采用了組件的結(jié)構(gòu),它是一個(gè)基于事件的系統(tǒng).其設(shè)計(jì)的主要目標(biāo)是代碼量小、耗能少、并發(fā)性高、魯棒性好,可以適應(yīng)不同的應(yīng)用.完整的系統(tǒng)由一個(gè)調(diào)度器和一些組件組成,應(yīng)用程序與組件一起編譯成系統(tǒng).組件由下到上可分為硬件抽象組件、綜合硬件組件和高層軟件組件,高層組件向底層組件發(fā)出命令,底層組件向高層組件報(bào)告事件.調(diào)度器具有兩層結(jié)構(gòu),第一層維護(hù)著命令和事件,它主要是在硬件中斷發(fā)生時(shí)對(duì)組件的狀態(tài)進(jìn)行處理;第二層維護(hù)著任務(wù)(負(fù)責(zé)各種計(jì)算),只有當(dāng)組件狀態(tài)維護(hù)工作完成后,任務(wù)才能被調(diào)度.TinyOS的組件層次結(jié)構(gòu)就如同一個(gè)網(wǎng)絡(luò)協(xié)議棧,底層的組件負(fù)責(zé)接收和發(fā)送最原始的數(shù)據(jù)位,而高層的組件對(duì)這些位數(shù)據(jù)進(jìn)行編碼、解碼,更高層的組件則負(fù)責(zé)數(shù)據(jù)打包、路由和傳輸數(shù)據(jù).TinyOS體系結(jié)構(gòu)如圖5所示。
TinyOS無(wú)法直接在windows上進(jìn)行裁剪和修改,本設(shè)計(jì)使用的方法是在windows上安裝一個(gè)類linux系統(tǒng)的cygwin系統(tǒng),并以此為平臺(tái)安裝TinyOS、nesC編輯器以及msp430 tools。通過(guò)這種方法解決了系統(tǒng)平臺(tái)的搭建。
TinyOS的層次化思想就是把把組成系統(tǒng)的所有構(gòu)件按照某種標(biāo)準(zhǔn)劃分成層次,以分層的形式來(lái)組織系統(tǒng)。上層對(duì)下層通過(guò)構(gòu)件接口進(jìn)行命令調(diào)用,下層對(duì)上層通過(guò)構(gòu)件接口進(jìn)行事件通知。從上到下劃分成應(yīng)用層、管理層、硬件抽象層。
本節(jié)點(diǎn)的設(shè)計(jì)主要對(duì)通訊類模塊、傳感類模塊和控制類模塊進(jìn)行編程,其他的一些則是根據(jù)需要對(duì)TinyOS系統(tǒng)進(jìn)行裁剪。
本論文對(duì)無(wú)線傳感網(wǎng)絡(luò)節(jié)點(diǎn)的相關(guān)知識(shí)進(jìn)行了簡(jiǎn)單介紹,提出了一套完整的以msp430f169控制器和無(wú)線數(shù)傳電臺(tái)為基礎(chǔ)構(gòu)建無(wú)線傳感網(wǎng)絡(luò)節(jié)點(diǎn)硬件平臺(tái)的方案,構(gòu)建了一個(gè)全新的無(wú)線傳器網(wǎng)絡(luò)硬件平臺(tái)。對(duì)當(dāng)前無(wú)線傳感器網(wǎng)絡(luò)領(lǐng)域流行的嵌入式系統(tǒng)TinyOS請(qǐng)進(jìn)了概括的分析,并在新搭建的硬件平臺(tái)上以TinyOS為基礎(chǔ)設(shè)計(jì)了各硬件的驅(qū)動(dòng)。系統(tǒng)設(shè)計(jì)完成后,通過(guò)10個(gè)該節(jié)點(diǎn)組成的無(wú)線網(wǎng)絡(luò)對(duì)10個(gè)房間的溫濕度變化進(jìn)行了監(jiān)測(cè),其結(jié)果與實(shí)際溫濕度變化相同,驗(yàn)證了整個(gè)節(jié)點(diǎn)軟硬件系統(tǒng)的準(zhǔn)據(jù)和可靠。
[1]孫利民,李建中,等.無(wú)線傳感器網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社,2005.407-409.
[2]李響.無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)嵌入式操作系統(tǒng)TinyOS的研究與移植[D].西安:西安電子科技大學(xué),2008.
[3]劉振宇.無(wú)線傳感器網(wǎng)絡(luò)專用微處理器設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2007.
[4]錢開國(guó),桑楠.基于TinyOS的無(wú)線傳感器網(wǎng)絡(luò)操作系統(tǒng)移植性研究與實(shí)現(xiàn)[A].第二屆全國(guó)通信新理論與新技術(shù)學(xué)術(shù)大會(huì)會(huì)議論文集[C].
[5]王大喜.無(wú)線傳感器網(wǎng)絡(luò)的網(wǎng)絡(luò)管理協(xié)議及關(guān)鍵技術(shù)研究[D].杭州電子科技大學(xué),2010.
[6]王洪通,金淑梅,王忠.基于WSN的公路監(jiān)控系統(tǒng)設(shè)計(jì)[J].通信技術(shù),2010(06).
[7]韓曉剛,呂彭民.基于MSP430和USB的數(shù)據(jù)采集系統(tǒng)[J].電子產(chǎn)品世界,2005(15).
Design of WSN Node on TinyOS Platform
Li Yuan-chao Gao Xiao-ding
(College of mechanical and electrical,Xi’an Polytechnic University,Xi’an 710048,China)
The general rules and methods of building wireless sensor network(WSN)node are analyzed from aspects of hardware and software.The wireless sensor network has been built with the msp430 MCU and wireless digital radio.And the software of wireless sensor network has been developed on the tinyOS which is developed by the California Berkeley College for WSN field.
TinyOS;WSN node;msp430;wireless digital radio
李遠(yuǎn)朝(1989—),男,西安工程大學(xué)機(jī)電工程學(xué)院碩士研究生,研究方向:機(jī)電測(cè)試技術(shù)、物聯(lián)網(wǎng)技術(shù)。