雷 桐,沈慶宏,馮兆祥
(1.南京大學電子科學與工程學院,江蘇南京210093;2.江蘇省長江公路大橋建設(shè)指揮部,江蘇泰州225321)
由于無線傳感器網(wǎng)絡工作在比較惡劣的環(huán)境中,節(jié)點能量一般由電池供應,電源無法更換,但是卻要求網(wǎng)絡的生存時間長達數(shù)月甚至數(shù)年,節(jié)點能量受限成為其最大制約因素。本文通過研究傳感器節(jié)點的能耗分布,應用低功耗的無線傳感網(wǎng)絡[1]Imote 2節(jié)點,利用軟件開發(fā)與實際應用相結(jié)合的方式,設(shè)計出一種降低節(jié)點功耗的方法,將計算算法移植到應用于Imote2[2]的操作系統(tǒng),根據(jù)不同節(jié)點模塊的需求,用nesC語言編寫不同模塊的程序,并將其下載到Imote 2節(jié)點上,通過實驗證明方法的可行性與降低功耗的有效性。
傳感器節(jié)點由4個部分組成:分別是傳感器模塊、處理器模塊、無線通信模塊和能量供應模塊。傳感器模塊負責監(jiān)測區(qū)域內(nèi)采集信息和轉(zhuǎn)換數(shù)據(jù);處理器模塊負責控制整個傳感器節(jié)點的操作,存儲和處理本身采集的數(shù)據(jù)與其他節(jié)點發(fā)來的數(shù)據(jù);無線通信模塊負責與其他傳感器節(jié)點進行無線通信,交換控制信息和收發(fā)采集的數(shù)據(jù);能量供應模塊為傳感器節(jié)點提供運行所需的能量,通常采用微型電池[3]。傳感器節(jié)點體積微小,通常攜帶的電池能量十分有限。由于傳感器節(jié)點個數(shù)多,成本低,分布區(qū)域廣,而且部署區(qū)域環(huán)境復雜,有些區(qū)域甚至人員不能到達,所以,傳感器節(jié)點通過更換電池的方式來補充能源是不現(xiàn)實的。如何高效使用能量來最大化網(wǎng)絡生命周期是傳感網(wǎng)絡面臨的重要挑戰(zhàn)。
圖1所示是傳感器節(jié)點各部分能量消耗的情況[4],從圖中可知,傳感器節(jié)點的絕大部分能量消耗都是在無線通信模塊,傳感器節(jié)點傳輸信息時要比執(zhí)行計算時消耗更多的電能。模塊存在發(fā)送、接收、空閑和睡眠4種狀態(tài),無線通信模塊在發(fā)送狀態(tài)的能量消耗最大,在空閑狀態(tài)和接收狀態(tài)的能量消耗接近,略少于發(fā)送狀態(tài)的能量消耗,而在睡眠狀態(tài)的能量消耗最小。
Imote 2智能無線傳感器是一種設(shè)計用于數(shù)據(jù)密集型應用的智能傳感器平臺。其主板采用了低功率 X-scale處理器,PXA27x CPU。該處理器可工作于低電壓低頻率模式,可進行低功耗操作。Imote 2具有256 kB的靜態(tài)隨機存儲器(SRAM),32 MB的同步內(nèi)存(SDRAM),以及32 MB的閃存。它使用的是德州儀器公司的CC2420 IEEE 802.15.4射頻發(fā)射器。CC2420支持2.4 GHz帶寬16通道250 kB/s最大數(shù)據(jù)傳輸率。與之配套的傳感器集成模塊可測三軸加速度、光、溫濕度等[5]。
每個Imote 2傳感器節(jié)點都具有自帶的微處理器,可以進行數(shù)字信號處理、自我診斷、自我識別以及自適應功能。傳感器節(jié)點在本地就可進行數(shù)據(jù)處理,只將少許有用的信息發(fā)送至基站或其他傳感器節(jié)點,有效減少了數(shù)據(jù)傳輸量,節(jié)省了能耗。相對于其他無線傳感器節(jié)點(如Mica系列),Imote 2的主要特點是其所能儲存的數(shù)據(jù)量和靈活的通信、信息處理能力,這也是本文選擇其作為實驗平臺的原因。
Imote 2軟件采用的是嵌入式操作系統(tǒng)Tiny-OS,其內(nèi)存占用量少,支持密集布排和自組織性的傳感器網(wǎng)絡。該系統(tǒng)主要采用nesC語言編寫,為無線傳感器網(wǎng)絡提供了一系列基本的接口、組件和配件文件等[6]。采用nesC語言編寫Imote 2程序組件會被下載到每個Imote 2傳感器節(jié)點,基站收到命令后使Imote 2上的傳感器集成板采集數(shù)據(jù)并暫存在閃存中,最終發(fā)送給基站節(jié)點。
理論上,低功耗算法可以在用戶、應用、操作系統(tǒng)和部件4個層次中的任何一個上實現(xiàn)。但無論是基于性能還是基于狀態(tài)的措施,都要借助軟件編程才能發(fā)揮作用。只有應用程序才能決定何時發(fā)送數(shù)據(jù)(基于狀態(tài)的措施)、何時調(diào)整時鐘頻率(基于性能的措施)。根據(jù)節(jié)點的硬件信息和實際應用的需求,降低代碼量和復雜度、降低各部分能耗和對硬件資源的需求[7]。
數(shù)據(jù)采集是無線傳感網(wǎng)絡系統(tǒng)的首要任務[8]。只有通過節(jié)點采集到所需信息,才能進一步進行數(shù)據(jù)處理和傳輸。根據(jù)對傳感器各模塊的能耗分析可知數(shù)據(jù)的發(fā)送與接收功耗很大。本文根據(jù)實際應用需求,將數(shù)據(jù)處理算法移植至節(jié)點操作系統(tǒng)并轉(zhuǎn)換成適合Imote2操作系統(tǒng)的nesC代碼,根據(jù)整體需求進行改進,減少輸出的數(shù)據(jù)量,從而降低節(jié)點的功耗。因此,如何處理傳感器的輸出數(shù)據(jù),提取有意義的信息成為算法移植所要考慮的問題。
在無線傳感器網(wǎng)絡的應用中,為了分析目標的運動特征,信號在時域范圍內(nèi)的空間信息往往被忽略,傅里葉變換和功率譜密度(PSD)函數(shù)包含著信號的基本頻域信息和動力系統(tǒng)的性能。而當采樣頻率和其他用戶設(shè)定一定時,處理后的數(shù)據(jù)量恒定(與采集數(shù)據(jù)量的大小和時間無關(guān))。所以,當系統(tǒng)要求不需要空間信息時,利用節(jié)點的處理器處理原始數(shù)據(jù)得到僅包含頻域特性的數(shù)據(jù)發(fā)送回基站能夠大大降低發(fā)送的數(shù)據(jù)包數(shù)量和時間。本文以移植PSD計算算法為例,用實驗證明此原理。
基站模塊:協(xié)調(diào)節(jié)點進行數(shù)據(jù)采集、PSD計算、發(fā)送PSD數(shù)據(jù)至基站。首先,初始化和鏈接程序中所用到的模塊,基站模塊向節(jié)點模塊發(fā)送采集數(shù)據(jù)指令;其次,采集完畢后,定時器計時結(jié)束并發(fā)送PSD計算參數(shù),待節(jié)點模塊計算完畢后,基站模塊定時器計時結(jié)束發(fā)送傳輸數(shù)據(jù)命令給節(jié)點模塊,最后,基站模塊接收數(shù)據(jù)并打印至用戶預設(shè)的txt文件中。
節(jié)點模塊:主要任務是采集測量數(shù)據(jù),并計算PSD,將其數(shù)據(jù)發(fā)送到基站。首先,初始化和鏈接程序中所用到的模塊,接收到采集命令后開始采集數(shù)據(jù),采集完畢后等待命令;其次,在接收到計算命令后開始計算PSD,計算完畢后等待命令;最后,在接收到發(fā)送數(shù)據(jù)命令后開始發(fā)送PSD數(shù)據(jù)。
計算模塊:首先,進行差錯檢查和分配存儲空間,其次,根據(jù)用戶設(shè)置選擇通道與選擇窗口,使用改進的離散傅里葉變換算法[9,10]構(gòu)成的功率譜密度計算函數(shù)計算窗口內(nèi)的頻譜并保存,在計算完所有窗口與通道的數(shù)據(jù)后發(fā)送計算結(jié)束信號。
圖2所示為程序流程,虛線框內(nèi)為所添加的移植算法部分。
實驗采用基于外部電流測量的實測能耗方法,它通過外接設(shè)備電路來對節(jié)點能耗進行測試,在電源與節(jié)點之間串聯(lián)了1只1Ω的電流取樣電阻器,在電阻器兩側(cè)接數(shù)字示波器對其電壓進行測量,最后計算得出節(jié)點的能耗。
無線傳感節(jié)點的功耗測試是通過測量傳感節(jié)點的工作電流來實現(xiàn),根據(jù)電流乘以電壓來計算,電流又通過串入電阻器實現(xiàn)電流/電壓轉(zhuǎn)換來測量。電阻大小的選取的原則為:引入的壓降可忽略,產(chǎn)生的電壓易于測量。為了不影響被測節(jié)點的功耗,采用一個單獨供電的測量節(jié)點來檢測被測節(jié)點的電流。
圖2 程序流程圖Fig 2 Flow chart of program
實驗將Imote 2傳感器射頻放大器節(jié)點綁定在小型電風扇上測其抖動頻率。
1)改進數(shù)據(jù)與原始數(shù)據(jù)對比實驗
圖3(b)為改進后的移植程序由基站接收到的x,y,z 3通道頻譜數(shù)據(jù)直接顯示,圖3(a)為改進前接收到x,y,z 3通道的原始采集數(shù)據(jù)經(jīng)Matlab中的PSD函數(shù)處理后的顯示,可看出頻率點幾乎無偏移,幅度的偏差是由于與Matlab算法不同和實驗噪聲引起的,在誤差范圍內(nèi)。
2)功耗測試
節(jié)點a下載的是經(jīng)PSD移植后改良的程序,節(jié)點b下載的是初始程序,節(jié)點a,b同時綁在電風扇采用恒定4.5V電壓并對其電流進行實時監(jiān)控,實驗測試時,持續(xù)采集較長一段時間內(nèi)的加速度信號,表1為采集長度為51712個數(shù)據(jù)的參數(shù)數(shù)據(jù)。
表1 采集51712個數(shù)據(jù)的對比實驗結(jié)果Tab 1 Comparison experimental results of collected 51712 datas
分別測試三組不同長度的數(shù)據(jù),由于信號采集部分的功耗主要由硬件和用戶定義決定,由表2可知,發(fā)送功耗比(改進后的發(fā)送功耗/原始發(fā)送功耗)僅為2%左右,而在總功耗極限比(采集功耗/實際原始總功耗)約為95.5%的情況下,總功耗也(改進后的功耗/原始功耗)有顯著提升。
圖3 原始方法與移植方法PSD數(shù)據(jù)對比圖Fig 3 PSD data comparison diagram of original and transplaning methods
表2 改進方法與原始方法的功耗比Tab 2 Power consumption ratio of improved method and primitive method
本文以降低無線傳感器網(wǎng)絡節(jié)點功耗為目標,在對無線傳感網(wǎng)絡的特點和模塊功耗進行分析的基礎(chǔ)上,以Imote 2智能無線傳感器為核心,采用了嵌入式操作系統(tǒng)Tiny-OS[11],設(shè)計了基于算法移植的減少數(shù)據(jù)發(fā)送量程序模塊,完成了低功耗軟件設(shè)計并測試分析,證明了此方法可以大大降低傳感器節(jié)點的數(shù)據(jù)發(fā)送功耗和有效降低傳感器節(jié)點的總功耗,實驗表明:此方法得到的PSD數(shù)據(jù)與利用Matlab處理的數(shù)據(jù)基本一致。
[1]吉 林,丁華平,沈慶宏.基于無線傳感器網(wǎng)絡的橋梁結(jié)構(gòu)健康監(jiān)測[J].南京大學學報,2011,47(1):20-24.
[2]陸 慧,沈慶宏,陳 策,等.基于Imote 2的WSNs橋梁結(jié)構(gòu)健康監(jiān)測系統(tǒng)無線傳輸研究[J].現(xiàn)代電子技術(shù),2010,332(27):30-34.
[3]田 忠,宋鐵成,葉芝慧,等.基于IEEE 802.15.4的無線傳感器網(wǎng)絡的設(shè)計與實現(xiàn)[J].電子工程師,2006,32(7):25-29.
[4]Cintanagonwiwat C,Govindan R,Estrin D.Directed diffusion a scalable and robust communication paradigm for sensor networks[C]∥The 6th Annual ACM/IEEE Int’l Conf on MobiCOM’00,Boston,MA,2000.
[5]Imote 2 hardware reference manual[DB/OL].(2007—09—01)[2008—03—25].http:∥www.xbow.com/Support/Support_pdf_files/Imote2_Hardware_Reference_Manual.pdf.
[6]徐春紅,吉 林,沈慶宏,等.基于無線傳感器網(wǎng)絡的橋梁結(jié)構(gòu)健康監(jiān)測系統(tǒng)[J].電子測量技術(shù),2008,31(11):95-98.
[7]崔 巍,史殿習,丁 博,等.Linux在無線傳感器Imote 2上的移植與應用[J].計算機工程,2010,36(4):292-293.
[8]Arici T,Altunbasak Y.Adaptive sensing for environment monitoring using wireless sensor networks[C]∥Proc of IEEE Wireless Communications and Networking Conference(WCNC),Atlanta,GA:2004.
[9]張憲超,武繼剛,蔣增榮,等.AFT離散傅里葉變換的算術(shù)傅里葉變換算法[J].電子學報,2000,28(5):105-107.
[10]Alves R G,Osorio P L,Swamy M N S.General FFT pruning[C]∥Proceedings of the 43rd IEEE Midwest Symposium,Michigan,2000:1192-1195.
[11]Spencer B F,Ruiz-sandoval M E,Kurata N.Smart sensing technology:Opportunities and challenges[J].Structural Control and Health Monitoring,2004,11(4):349-368.