產(chǎn)品中心 應(yīng)用方案 技術(shù)文摘質(zhì)量保證產(chǎn)品選型 下載中心業(yè)內(nèi)動態(tài) 選型幫助 品牌介紹 產(chǎn)品一覽 聯(lián)系我們
- 無線傳感器網(wǎng)絡(luò)技術(shù)在人體參數(shù)采集中的應(yīng)用
- 來源:賽斯維傳感器網(wǎng) 發(fā)表于 2011/9/15
摘要: 針對人體生理參數(shù)采集特點(diǎn),設(shè)計(jì)了基于CC2430 和TinyOS 的星型無線傳感器網(wǎng)絡(luò)。實(shí)現(xiàn)了傳感器節(jié)點(diǎn)和中心節(jié)點(diǎn)間CSMA/CA 協(xié)議通信。以溫濕度數(shù)據(jù)采集為例,采用nesC 語言開發(fā)了節(jié)點(diǎn)應(yīng)用程序。對傳感器節(jié)點(diǎn)的功耗進(jìn)行了計(jì)算。研究設(shè)計(jì)方法可應(yīng)用于相關(guān)的周期性無線數(shù)據(jù)采集中。
生理參數(shù)采集是指對人在特定環(huán)境下靜止或活動時(shí)的某些生理參數(shù)進(jìn)行測量、處理和傳送。該技術(shù)應(yīng)用領(lǐng)域廣泛, 如醫(yī)療、保健、體育、軍事和服裝舒適性*價(jià)等。生理參數(shù)采集的實(shí)現(xiàn)方法是將傳感器置于人體相應(yīng)部位, 以有線或無線方式將傳感器采集到的數(shù)據(jù)傳送到終端進(jìn)行處理。在使用中有線傳輸?shù)姆绞接袝r(shí)會受到限制, 所以有必要研究采用無線方式傳輸數(shù)據(jù)的方法。如在服裝舒適性*價(jià)應(yīng)用中, 主要方法有: 在真實(shí)環(huán)境下對人體表溫濕度的測量; 在模擬環(huán)境( 人工氣候室) 下對真人或假人體表溫濕度的測量, 根據(jù)測量值給出主客觀*價(jià)。在進(jìn)行真實(shí)環(huán)境下人體穿著動態(tài)實(shí)驗(yàn)時(shí), 無線數(shù)據(jù)采集傳輸方式會帶來很大方便。無線傳感器網(wǎng)絡(luò)技術(shù)發(fā)展迅速, 將這一技術(shù)應(yīng)用于人體生理參數(shù)采集在國內(nèi)已有相關(guān)應(yīng)用, 如參考文獻(xiàn)[2] 提出基于Zigbee 技術(shù)的無線傳感器網(wǎng)絡(luò)在遠(yuǎn)程家庭監(jiān)護(hù)中的應(yīng)用, 參考文獻(xiàn)[3] 提出了無線傳感器技術(shù)在醫(yī)療監(jiān)護(hù)中的應(yīng)用。本文將結(jié)合具體應(yīng)用, 從無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)軟硬件平臺選擇、網(wǎng)絡(luò)體系結(jié)構(gòu)、MAC 層協(xié)議、節(jié)點(diǎn)低功耗設(shè)計(jì)等方面分析和設(shè)計(jì)人體參數(shù)采集。
1 系統(tǒng)設(shè)計(jì)
1.1 網(wǎng)絡(luò)體系結(jié)構(gòu)及協(xié)議
網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)主要描述網(wǎng)絡(luò)節(jié)點(diǎn)的連接模式。人體生理參數(shù)采集范圍小, 傳感器節(jié)點(diǎn)集中, 各節(jié)點(diǎn)間一般不需要通信。根據(jù)這些特點(diǎn), 可以使用星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。在星型拓?fù)浣Y(jié)構(gòu)中, 每個(gè)分支節(jié)點(diǎn)以點(diǎn)到點(diǎn)的方式連接到中心節(jié)點(diǎn)上, 當(dāng)在中心節(jié)點(diǎn)與分支節(jié)點(diǎn)間大量通信時(shí), 采用星型拓?fù)浣Y(jié)構(gòu)是最有效的。其優(yōu)點(diǎn)在于能夠?qū)①Y源集中、網(wǎng)絡(luò)易于管理、覆蓋范圍集中、路由算法相對簡單, 有問題的節(jié)點(diǎn)很容易在不影響其他節(jié)點(diǎn)性能的情況下被中心節(jié)點(diǎn)隔離掉。
在無線傳感器網(wǎng)絡(luò)中,MAC(Medium Access Control)協(xié)議決定無線信道的使用方式, 在傳感器節(jié)點(diǎn)之間分配有限的無線通信資源, 對傳感器網(wǎng)絡(luò)的性能有較大影響, 是保證無線傳感器網(wǎng)絡(luò)低功耗工作的關(guān)鍵網(wǎng)絡(luò)協(xié)議之一。人體生理參數(shù)采集應(yīng)用中, 傳感器節(jié)點(diǎn)周期性采集數(shù)據(jù), 供電常采用小型紐扣電池, 而中心節(jié)點(diǎn)一般供電充足, 所以采用CSMA/CA(Carrier Sense Multiple Accesswith Collision Avoidance) 控制協(xié)議。中心節(jié)點(diǎn)不關(guān)閉射頻模塊, 持續(xù)接收。傳感器節(jié)點(diǎn)定時(shí)采樣、發(fā)送數(shù)據(jù), 在需要發(fā)送數(shù)據(jù)時(shí)打開射頻模塊, 首先對信道進(jìn)行偵聽, 若信道被占用, 則退避一段隨機(jī)時(shí)間后再繼續(xù)偵聽, 若此時(shí)信道沒有被占用, 則發(fā)送數(shù)據(jù), 得到確認(rèn)后關(guān)閉射頻模塊,MCU 進(jìn)入睡眠模式,等待下一次定時(shí)觸發(fā)。
1.2 射頻收發(fā)器件及網(wǎng)絡(luò)操作系統(tǒng)
傳感器節(jié)點(diǎn)要求體積小、功耗低、能夠進(jìn)行數(shù)據(jù)處理和無線收發(fā), 這里采用TI/Chipcon 公司CC2430EM *估板作為無線收發(fā)模塊, 傳感器電路根據(jù)需要自行設(shè)計(jì)。CC2430 *估板的P0.1 ~P0.7 、P1.0 ~P1.7 及P2.0 ~P2.2 口線, 可與傳感器電路連接進(jìn)行控制。芯片CC2430內(nèi)嵌CC2420 射頻收發(fā)器和8051 MCU, 內(nèi)含12 bit 模/數(shù)轉(zhuǎn)換器、4 個(gè)定時(shí)器、32 kHz 晶振的休眠模式定時(shí)器, 硬件支持CSMA/CA, 供電電壓2.0 V~3.6 V, 在掉電模式下電流消耗僅0.5 μA, 可通過外部中斷或?qū)崟r(shí)時(shí)鐘喚醒。無線傳感器網(wǎng)絡(luò)可以被視為由多個(gè)能量、存儲空間和處理能力有限的CPU 組成的計(jì)算機(jī)系統(tǒng), 這些CPU相互獨(dú)立, 又協(xié)同工作。為便于軟件開發(fā)與維護(hù), 提高軟件開發(fā)效率, 采用TinyOS 嵌入式操作系統(tǒng)。TinyOS 是一種專門為嵌入式系統(tǒng)設(shè)計(jì)的基于組件的操作系統(tǒng), 主要應(yīng)用于無線傳感器網(wǎng)絡(luò), 由nesC 語言實(shí)現(xiàn), 它采用輕量級線程技術(shù)、主動消息通信技術(shù)、事件驅(qū)動模式、組件化編程方式。使用該操作系統(tǒng)能夠提高CPU 使用率, 在TinyOS 的調(diào)度下, 所有與通信事件相關(guān)聯(lián)的任務(wù)在事件產(chǎn)生時(shí)可以迅速進(jìn)行處理。在處理完畢且沒有其他事件的情況下,CPU 將進(jìn)入睡眠狀態(tài)。
1.3 節(jié)點(diǎn)設(shè)計(jì)
圖1 為人體生理參數(shù)采集網(wǎng)絡(luò)結(jié)構(gòu)示意圖。為提高便攜性能, 可以將其中的PC 機(jī)用嵌入式設(shè)備替換。圖中各傳感器節(jié)點(diǎn)定時(shí)采樣、發(fā)送數(shù)據(jù), 中心節(jié)點(diǎn)收到數(shù)據(jù)后通過串口送至PC 機(jī), 進(jìn)行顯示和處理。
圖1 無線數(shù)據(jù)采集網(wǎng)絡(luò)結(jié)構(gòu)圖
節(jié)點(diǎn)有兩類: 傳感器節(jié)點(diǎn)和中心節(jié)點(diǎn)。在TinyOS 環(huán)境下編程語言為nesC, 為支持組件化編程模式,nesC 語言引入了接口和組件的概念。接口是一些功能類似或相關(guān)的函數(shù)聲明, 根據(jù)調(diào)用方向不同命名為命令或事件,具體實(shí)現(xiàn)在提供或使用該接口的組件中。組件包括配件和模塊, 配件負(fù)責(zé)把不同組件通過接口連接起來, 模塊提供程序所需的代碼實(shí)現(xiàn)。對于傳感器節(jié)點(diǎn), 需要針對不同的傳感器設(shè)計(jì)硬件驅(qū)動組件, 結(jié)合已有的中間組件( 如系統(tǒng)組件、電源管理組件、A/D 轉(zhuǎn)換組件、定時(shí)器組件、射頻組件等), 設(shè)計(jì)應(yīng)用層的配置組件和模塊組件。
下面以溫濕度傳感器節(jié)點(diǎn)為例說明設(shè)計(jì)方法, 溫濕度傳感器采用瑞士SENSIRION 公司的SHT10 。
溫濕度傳感器節(jié)點(diǎn)的組件連接如圖2 所示。小矩形框內(nèi)是各組件使用和提供的接口, 箭頭方向表示命令調(diào)用的方向。因?yàn)樗袀鞲衅鞴?jié)點(diǎn)都具有定時(shí)采樣、數(shù)據(jù)處理、按協(xié)議數(shù)據(jù)收發(fā)、射頻模塊和MCU 電源管理等功能, 所以這里將與傳感器有關(guān)的操作單獨(dú)設(shè)計(jì)一個(gè)組件SHT10_C, 在頂層配件中通過與不同類型傳感器組件連接, 實(shí)現(xiàn)各傳感器節(jié)點(diǎn)功能。將與傳感器操作無關(guān)、與應(yīng)用相關(guān)的其他功能組合設(shè)計(jì)一個(gè)中間組件SensorNet_C,通過與下層配件McuSleepC、CsmaC 和CC2430ActiveMessageC連接, 實(shí)現(xiàn)MCU 電源管理、CSMA 協(xié)議及射頻模塊控制。配件SHT10_C 和SensorNet_C 僅提供組件間連接關(guān)系, 其實(shí)現(xiàn)分別由SHT10_M 和SensorNet_M 完成。在調(diào)用命令Send.send () 發(fā)送數(shù)據(jù)時(shí), 首先進(jìn)行清潔信道*估, 如果信道被占用, 則需要退避一段時(shí)間。退避時(shí)間由隨機(jī)函數(shù)產(chǎn)生一個(gè)1~31 之間的隨機(jī)數(shù), 與一個(gè)給定初始值(這里設(shè)為160 μs , 即10 symbols) 相乘而得。初始值可以根據(jù)網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)量進(jìn)行調(diào)整, 節(jié)點(diǎn)少則初始值小, 反之則適當(dāng)加大。溫濕度傳感器節(jié)點(diǎn)的頂層配置組件程序如下:
在配件SensorNet_C 中, 通過連接配件CC2430ActiveMessageC使用模塊組件CC2430ActiveMessageP 中提供的射頻功能。CC2430ActiveMessageP 是射頻堆棧中的頂層組件, 提供單跳通信實(shí)現(xiàn)方法。通過連接配件McuSleepC使用模塊組件McuSleepP 中的MCU 電源管理功能, 實(shí)現(xiàn)MCU 睡眠、定時(shí)和啟動等功能, 以降低節(jié)點(diǎn)功耗。需要在使用McuSleepP 組件的上層組件SensorNet_M 中實(shí)現(xiàn)事件McuSleepControl.beforeSleep () 和McuSleepControl.after-Wakeup() , 以保護(hù)和恢復(fù)睡眠前后的狀態(tài)。
溫濕度傳感器SHT10 具有兩線制串行接口, 輸出已校準(zhǔn)數(shù)字信號。這里定義SHT10 的接口SHT 如下, 需要在模塊組件SHT10_M 中實(shí)現(xiàn)接口所定義的命令。
中心節(jié)點(diǎn)實(shí)現(xiàn)射頻數(shù)據(jù)接收, 然后通過串口將數(shù)據(jù)送給PC 機(jī)。其頂層配置文件如下:
2 傳感器節(jié)點(diǎn)功耗計(jì)算
對人體生理參數(shù)進(jìn)行采集, 尤其在室外應(yīng)用中, 低功耗對于電池供電的傳感器節(jié)點(diǎn)來說非常重要。以下應(yīng)用參考文獻(xiàn)[6] 中的方法對本設(shè)計(jì)中的傳感器節(jié)點(diǎn)的功耗進(jìn)行計(jì)算。采用3.3 V 直流電源供電, 將一個(gè)1%精度的10 Ω 電阻與CC2430EM 串聯(lián), 通過測量電阻兩端的電壓降來計(jì)算一個(gè)采樣周期中各個(gè)時(shí)間段的電流。設(shè)采樣周期T=10 s ,CC2430 射頻輸出功率設(shè)置為100%, 圖3為使用示波器TPS2024 在傳感器節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)獲取的電阻兩端電壓變化波形圖, 水平方向2.50 ms/div , 垂直方向100 mV/div 。表1 為活動期間的電流消耗。
表1 傳感器節(jié)點(diǎn)各時(shí)段電流消耗計(jì)算
一個(gè)采樣周期T 內(nèi)低功耗模式時(shí)間(A 段、G 段,CC2430 在PM2 模式下):
低功耗模式下(CC2430 在PM2 模式下)電流消耗:
一個(gè)采樣周期T 內(nèi)總電流消耗:
每小時(shí)消耗電流:1.326×10-4×360=0.047 74 mA
假設(shè)使用60 mAh 的紐扣電池, 則可以使用時(shí)間為:
60 mAh/0.047 74 mA=1 256 h≈52 天本文采用nesC 語言設(shè)計(jì)了基于TinyOS 的中心節(jié)點(diǎn)和傳感器節(jié)點(diǎn)程序, 實(shí)現(xiàn)了使用CSMA/CA 協(xié)議的星型無線傳感器網(wǎng)絡(luò), 并以溫濕度數(shù)據(jù)采集為例, 設(shè)計(jì)了采用溫濕度數(shù)字傳感器SHT10 的傳感器節(jié)點(diǎn)。當(dāng)采樣周期為10 s、使用60 mAh 電池供電時(shí), 傳感器節(jié)點(diǎn)可持續(xù)工作52 天。本設(shè)計(jì)能夠滿足無線、便攜、低功耗地采集人體生理參數(shù)的需要。使用模塊化編程語言nesC, 提高了開發(fā)效率, 便于擴(kuò)展。本文介紹的研究和設(shè)計(jì)方法可在相關(guān)應(yīng)用中使用。
轉(zhuǎn)載請注明來源:賽斯維傳感器網(wǎng)(www.jsxlzzp.com)
- 如果本文收錄的圖片文字侵犯了您的權(quán)益,請及時(shí)與我們聯(lián)系,我們將在24內(nèi)核實(shí)刪除,謝謝!