徐玉炎, 明 軒 , 張 瑞, 李奇越, 楊 潔
(1.合肥工業(yè)大學(xué) 電氣與自動(dòng)化工程學(xué)院,安徽 合肥 230009;2.杭州娃哈哈科技有限公司 浙江 杭州 310009)
傳統(tǒng)的醫(yī)療監(jiān)護(hù)系統(tǒng)采用有線傳感器探頭來(lái)獲得受試者的生理數(shù)據(jù),這類設(shè)備往往連線眾多,進(jìn)行檢測(cè)時(shí)受試者只能坐臥于床,使受試者的行動(dòng)受到很大限制;此外,傳統(tǒng)的醫(yī)療監(jiān)護(hù)設(shè)備往往給受試者代理較大的生理、心理負(fù)荷,可能造成所測(cè)得的數(shù)據(jù)與真實(shí)情況有一定差距,影響病情的正確診斷[1]。
針對(duì)上述現(xiàn)狀,本文基于WSN技術(shù),設(shè)計(jì)了穿戴式的醫(yī)療監(jiān)護(hù)系統(tǒng)。受試者佩戴的傳感器終端可以實(shí)時(shí)采集病人的體溫、脈搏、姿態(tài)等生理參數(shù),并以無(wú)線的方式傳輸至監(jiān)護(hù)中心;醫(yī)生可以通過(guò)PC軟件實(shí)現(xiàn)對(duì)監(jiān)控網(wǎng)絡(luò)的管理,同時(shí)可以隨時(shí)隨地訪問(wèn)Web應(yīng)用,實(shí)現(xiàn)對(duì)病人生理數(shù)據(jù)的獲取。
系統(tǒng)主要包括監(jiān)測(cè)網(wǎng)絡(luò)、監(jiān)護(hù)中心計(jì)算機(jī)上位機(jī)程序、Web應(yīng)用3部分,其整體結(jié)構(gòu)如圖1所示。其中無(wú)線傳感器網(wǎng)絡(luò)包括協(xié)調(diào)器與穿戴式傳感器終端,傳感器終端可以采集病人的體溫、脈搏、姿態(tài)等參數(shù),通過(guò)協(xié)調(diào)器匯聚,經(jīng)RS485總線傳輸至監(jiān)護(hù)中心計(jì)算機(jī);監(jiān)護(hù)中心計(jì)算機(jī)的上位機(jī)程序?qū)⒈O(jiān)測(cè)數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中,同時(shí)對(duì)于病人危險(xiǎn)的生理信息及時(shí)報(bào)警;Web應(yīng)用與監(jiān)護(hù)系統(tǒng)的數(shù)據(jù)庫(kù)連接,醫(yī)生可以很方便的通過(guò)手機(jī)、平板、電腦等各種終端對(duì)病人的監(jiān)護(hù)信息進(jìn)行訪問(wèn)。
圖1 醫(yī)療監(jiān)護(hù)系統(tǒng)總體結(jié)構(gòu)圖Fig.1 Overall structure of medical monitoring system
本文設(shè)計(jì)的醫(yī)療監(jiān)護(hù)系統(tǒng)主要應(yīng)用于醫(yī)院、養(yǎng)老院等室內(nèi)場(chǎng)所,這些場(chǎng)所中的墻壁、設(shè)備都會(huì)對(duì)無(wú)線射頻信號(hào)的傳輸造成阻礙,所以如何在這樣的環(huán)境下保證網(wǎng)絡(luò)的穩(wěn)定是本系統(tǒng)首先要解決的問(wèn)題。同時(shí),本系統(tǒng)的傳感器節(jié)點(diǎn)為穿戴式的,受試者會(huì)長(zhǎng)期佩戴,為保證受試者的移動(dòng)性必須使用電池供電,這就對(duì)系統(tǒng)的功耗提出了很高的要求,所以本系統(tǒng)設(shè)計(jì)的網(wǎng)絡(luò)必須盡量滿足終端節(jié)點(diǎn)的節(jié)能要求。
針對(duì)上述討論,設(shè)計(jì)出無(wú)線傳感器網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。該網(wǎng)絡(luò)為兩級(jí)樹(shù)形網(wǎng)絡(luò),第一級(jí)網(wǎng)絡(luò)為RS485總線型網(wǎng)絡(luò),監(jiān)護(hù)中心計(jì)算機(jī)、無(wú)線傳感器網(wǎng)絡(luò)協(xié)調(diào)器都掛載在該總線網(wǎng)絡(luò)上;第二級(jí)網(wǎng)絡(luò)為各個(gè)協(xié)調(diào)器與穿戴式傳感器終端組成的星型無(wú)線網(wǎng)絡(luò)??偩€網(wǎng)絡(luò)保證了各個(gè)協(xié)調(diào)器與監(jiān)護(hù)中心計(jì)算機(jī)在建筑物內(nèi)的穩(wěn)定通信,廣泛布置的協(xié)調(diào)器保證了無(wú)線傳感器網(wǎng)絡(luò)的覆蓋率,簡(jiǎn)單星型無(wú)線網(wǎng)絡(luò)在保證可靠通信的同時(shí)極大降低了穿戴式傳感器終端的能源消耗。
圖2 無(wú)線傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖Fig.2 Topology structure of WSN
具體的無(wú)線網(wǎng)絡(luò)方面,本系統(tǒng)選擇了較成熟的ZigBee技術(shù)來(lái)搭建。ZigBee是一種近距離、低復(fù)雜度、低功耗、低成本的無(wú)線網(wǎng)絡(luò)技術(shù),廣泛應(yīng)用于各種無(wú)線傳感器網(wǎng)絡(luò)的搭建。ZigBee網(wǎng)絡(luò)根據(jù)應(yīng)用需要可以組成星型網(wǎng)絡(luò)、網(wǎng)狀網(wǎng)絡(luò)和樹(shù)狀網(wǎng)絡(luò)[2]。網(wǎng)狀網(wǎng)絡(luò)通過(guò)終端多跳通信來(lái)保證網(wǎng)絡(luò)覆蓋,故能耗較高,樹(shù)狀網(wǎng)絡(luò)通過(guò)配置相應(yīng)的路由節(jié)點(diǎn)來(lái)提高網(wǎng)絡(luò)覆蓋,而本系統(tǒng)已經(jīng)配置足夠多的協(xié)調(diào)器來(lái)覆蓋整個(gè)應(yīng)用場(chǎng)所,故最簡(jiǎn)單的星型網(wǎng)絡(luò)即可滿足需求,同時(shí)這種網(wǎng)絡(luò)中的終端節(jié)點(diǎn)具有最低的功耗。
本系統(tǒng)中所有的協(xié)調(diào)都具有同樣的網(wǎng)絡(luò)號(hào),系統(tǒng)上電后,協(xié)調(diào)器會(huì)自動(dòng)選擇一個(gè)信道,建立網(wǎng)絡(luò),穿戴式傳感器終端節(jié)點(diǎn)會(huì)自動(dòng)與最近的協(xié)調(diào)器通信,加入網(wǎng)絡(luò),同時(shí)協(xié)調(diào)器為其分配一個(gè)16位的邏輯地址。在應(yīng)用層,事先為每個(gè)終端節(jié)點(diǎn)規(guī)定了唯一的設(shè)備號(hào),并以此來(lái)標(biāo)識(shí)不同的節(jié)點(diǎn)。當(dāng)系統(tǒng)需要獲得某確定節(jié)點(diǎn)的傳感器信息時(shí),所有的協(xié)調(diào)器都會(huì)在網(wǎng)絡(luò)中廣播包含該節(jié)點(diǎn)設(shè)備號(hào)的指令,終端節(jié)點(diǎn)對(duì)設(shè)備號(hào)進(jìn)行比對(duì),如果相同則發(fā)送所需的傳感器數(shù)據(jù)。當(dāng)傳感器終端節(jié)點(diǎn)因?yàn)橐苿?dòng)或障礙物遮擋等原因脫離當(dāng)前協(xié)調(diào)器建立的網(wǎng)絡(luò)時(shí),會(huì)立即尋找最近的協(xié)調(diào)器重新加入網(wǎng)絡(luò)。通過(guò)這樣設(shè)計(jì),提高了網(wǎng)絡(luò)的穩(wěn)定性,同時(shí)了降低傳感器節(jié)點(diǎn)的功耗。
穿戴式傳感器節(jié)點(diǎn)以網(wǎng)蜂公司研制的CC2530核心板為基礎(chǔ)研制,硬件結(jié)構(gòu)如圖3。系統(tǒng)選用TI公司的CC2530作為微控制器,該芯片集成了兼容ZigBee協(xié)議的射頻模塊以及一個(gè)增強(qiáng)型8051內(nèi)核的單片機(jī),可以運(yùn)行TI的ZStack協(xié)議棧,為系統(tǒng)的軟硬件設(shè)計(jì)提供了極大的便利[3]。
圖3 穿戴式傳感器節(jié)點(diǎn)硬件結(jié)構(gòu)圖Fig.3 Structure diagram of wearable sensor nod
考慮到測(cè)量的便利性以及減少受試者的佩戴負(fù)擔(dān),系統(tǒng)采用非接觸式人體紅外溫度測(cè)量傳感器MLX90615,該傳感器主要由紅外熱電堆傳感器、低噪聲放大器、16位模數(shù)轉(zhuǎn)換器和功能強(qiáng)大的DSP單元等組成,可以通過(guò)I2C總線與單片機(jī)通訊。由于CC2530不具備硬件I2C接口,故采用軟件模擬的方式獲取該傳感器的數(shù)據(jù)[4]。
系統(tǒng)采用反射式脈搏傳感器模塊獲取人體脈搏數(shù)據(jù),使用ADXL354加速度計(jì)檢測(cè)人體姿態(tài),對(duì)于跌倒等意外情況及時(shí)發(fā)送報(bào)警。穿戴式傳感器節(jié)點(diǎn)還加入了低功耗的Nokia 5110 LCD顯示器以及按鍵,可以與受試者進(jìn)行簡(jiǎn)單的交互。
本系統(tǒng)使用一個(gè)簡(jiǎn)單的反射式光電脈搏傳感器模塊來(lái)檢測(cè)受試者的脈搏,該模塊成本較低、性能穩(wěn)定,其電路原理圖如圖4所示[5]。其基本原理是依據(jù)光電容積法檢測(cè)由于心臟泵血引起的人體末端毛細(xì)血管的體積變化,從而間接測(cè)量出心臟的跳動(dòng)情況。
圖4 反射式脈搏傳感器模塊原理圖Fig.4 Schematic of pulse sensor module
該模塊選擇了模擬輸出的APDS-9008環(huán)境亮度傳感器。該傳感器在設(shè)計(jì)上緊貼人眼的光譜響應(yīng)曲線,對(duì)于波長(zhǎng)500 nm左右的綠光尤其敏感,故本電路選擇了綠色LED作為反射光源。APDS-9008輸出電流信號(hào),通過(guò)一個(gè)12 kΩ的電阻進(jìn)行I/V變換,得到的信號(hào)進(jìn)入無(wú)源低通濾波網(wǎng)絡(luò),濾除高頻干擾后經(jīng)過(guò)一個(gè)基準(zhǔn)電壓為VCC/2的反向比例放大電路放大后輸出。CC2530通過(guò)內(nèi)置的A/D轉(zhuǎn)換器以100 Hz的采樣頻率獲取該模塊的輸出電壓,通過(guò)對(duì)信號(hào)的分析計(jì)算,獲得受試者的脈搏。
由于病人身體虛弱或行動(dòng)不便,往往會(huì)發(fā)生跌倒的意外,若跌倒后沒(méi)有得到及時(shí)的救助,將會(huì)導(dǎo)致嚴(yán)重后果,所以跌倒監(jiān)測(cè)成為本系統(tǒng)要解決的問(wèn)題之一。系統(tǒng)采用ADXL345加速度傳感器來(lái)檢測(cè)人的姿態(tài),結(jié)合相應(yīng)算法,判斷病人是否跌倒,在跌倒時(shí)發(fā)送信息至監(jiān)護(hù)中心計(jì)算機(jī),完成報(bào)警。
ADXL345三軸加速度傳感器測(cè)量范圍達(dá)±16 g,具有3.9 mg/LSB的高分辨率,同時(shí)具有許多特殊檢測(cè)功能,如活動(dòng)非活動(dòng)檢測(cè)、敲擊檢測(cè)、自由落體檢測(cè)等,而這些功能可以映射到兩個(gè)中斷輸出引腳中,從而為系統(tǒng)的低功耗設(shè)計(jì)提供了極大的便利。
依據(jù)文獻(xiàn)[6]提出的跌倒檢測(cè)算法對(duì)系統(tǒng)進(jìn)行設(shè)計(jì),主要是通過(guò)加速度傳感器依次對(duì)人體跌倒時(shí)的3種關(guān)鍵特性(失重、撞擊和靜止)進(jìn)行識(shí)別,從而判斷人體跌倒。
無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的軟件包括ZigBee協(xié)調(diào)器軟件與穿戴式傳感器終端軟件兩部分。這兩部分軟均使用CC2530所兼容的Z-Stack協(xié)議棧進(jìn)行開(kāi)發(fā)。
根據(jù)前述網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),協(xié)調(diào)器負(fù)責(zé)建立與管理ZigBee星型網(wǎng)絡(luò),同時(shí)通過(guò)RS485總線與上位機(jī)進(jìn)行交互。在網(wǎng)絡(luò)數(shù)據(jù)傳輸方面,協(xié)調(diào)器主要處理兩種情況:一種是上位機(jī)定時(shí)發(fā)送查詢命令,獲得所有傳感器的數(shù)據(jù);一種是穿戴式傳感器終端在檢測(cè)到跌倒后向上位機(jī)發(fā)送報(bào)警指令。對(duì)于前一種情況,協(xié)調(diào)器通過(guò)RS485總線接收到上位機(jī)發(fā)送的查詢命令后,向ZigBee網(wǎng)絡(luò)中的所有傳感器終端廣播查詢命令,待收到網(wǎng)絡(luò)內(nèi)所有傳感器終端采集的信息后,協(xié)調(diào)器將數(shù)據(jù)打包上傳給上位機(jī)。對(duì)于第二種情況,協(xié)調(diào)器僅僅是將收到的報(bào)警信息轉(zhuǎn)發(fā)給上位機(jī)。
圖5 醫(yī)療監(jiān)護(hù)系統(tǒng)上位機(jī)程序Fig.5 User interface of the PCprogram
穿戴式傳感器終端節(jié)點(diǎn)工作較為復(fù)雜。終端節(jié)點(diǎn)加入網(wǎng)絡(luò)后,定時(shí)10 ms的事件周期。由于體溫變化緩慢,具有大慣性特性,所以每100個(gè)事件周期采集一次體溫信息。當(dāng)終端節(jié)點(diǎn)沒(méi)有收到任何查詢命令時(shí),僅將體溫在LCD上顯示,供佩戴者查看。當(dāng)終端節(jié)點(diǎn)收到查詢命令時(shí),LCD顯示信息提醒佩戴者穿戴好采集設(shè)備,開(kāi)始傳感器信息的采集。此時(shí)除了溫度信息,每個(gè)事件周期均采集脈搏傳感器的模擬電壓數(shù)據(jù)。經(jīng)實(shí)驗(yàn),系統(tǒng)選用脈搏傳感器模塊的模擬電壓信號(hào)存在一個(gè)大于2 V的脈沖尖峰信號(hào),該信號(hào)即代表脈搏跳動(dòng)。其尖峰寬度在140 ms到190 ms之間。程序中利用狀態(tài)機(jī)原理,當(dāng)檢測(cè)到連續(xù)12個(gè)事件周期中采集的模擬電壓信號(hào)大于2 V后脈搏計(jì)數(shù)值加一。為保證脈搏數(shù)據(jù)的準(zhǔn)確性,脈搏采樣的過(guò)程設(shè)置為2000個(gè)事件周期。最后將計(jì)算得到的脈搏數(shù)據(jù)連同體溫一起單播發(fā)送給協(xié)調(diào)器。穿戴式傳感器終端還具有跌倒檢測(cè)報(bào)警的功能,根據(jù)3.3所述的檢測(cè)方法,配置ADXL345的自由落體檢測(cè)中斷與活動(dòng)檢測(cè)中斷,并映射至中斷輸出引腳。系統(tǒng)檢測(cè)到相應(yīng)中斷后進(jìn)行判斷,若判斷為跌倒的情況,則立即向協(xié)調(diào)器發(fā)送報(bào)警指令,完成跌倒檢測(cè)報(bào)警。
監(jiān)護(hù)軟件分為本地上位機(jī)程序與網(wǎng)絡(luò)Web應(yīng)用兩部分。本地上位機(jī)程序負(fù)責(zé)管理WSN網(wǎng)絡(luò),并將監(jiān)護(hù)數(shù)據(jù)寫入網(wǎng)絡(luò)數(shù)據(jù)庫(kù),同時(shí)為醫(yī)護(hù)人員提供監(jiān)護(hù)數(shù)據(jù)的顯示;網(wǎng)絡(luò)Web應(yīng)用可供病人或醫(yī)護(hù)人員訪問(wèn),提供所需的監(jiān)護(hù)數(shù)據(jù)。
監(jiān)護(hù)中心計(jì)算機(jī)通過(guò)RS485總線網(wǎng)絡(luò)與所有網(wǎng)絡(luò)協(xié)調(diào)器進(jìn)行通信,配置無(wú)線傳感器網(wǎng)絡(luò),獲得無(wú)線傳感器網(wǎng)絡(luò)的監(jiān)測(cè)數(shù)據(jù),在為醫(yī)護(hù)人員提供病人基本信息、病人監(jiān)護(hù)數(shù)據(jù)的同時(shí),將監(jiān)護(hù)數(shù)據(jù)寫入網(wǎng)絡(luò)數(shù)據(jù)庫(kù)。
基于以上需求,使用C#語(yǔ)言,結(jié)合.Net技術(shù)[7]進(jìn)行編寫上位機(jī)程序,程序界面如圖5所示。計(jì)算機(jī)通過(guò)串口與RS485總線進(jìn)行通信,串口操作使用SerialPort類完成。所有的病人基本信息、監(jiān)護(hù)數(shù)據(jù)都存儲(chǔ)于網(wǎng)絡(luò)數(shù)據(jù)庫(kù)中,數(shù)據(jù)庫(kù)選用的是MySQL,故數(shù)據(jù)庫(kù)的訪問(wèn)使用MySQL Connector/NET來(lái)實(shí)現(xiàn)。
網(wǎng)絡(luò)Web應(yīng)用如圖6所示,用戶可以通過(guò)瀏覽器訪問(wèn)該應(yīng)用獲得相應(yīng)的監(jiān)護(hù)數(shù)據(jù)。根據(jù)設(shè)計(jì),病人與醫(yī)護(hù)人員都能訪問(wèn)該應(yīng)用,但其權(quán)限不同:以病人身份登陸時(shí)只能獲得自己的監(jiān)護(hù)數(shù)據(jù),以醫(yī)護(hù)人員身份登陸后則可以獲得所有病人的監(jiān)護(hù)信息。
Web應(yīng)用采用Apache服務(wù)器架構(gòu),連接至存儲(chǔ)病人信息的MySQL數(shù)據(jù)庫(kù)。服務(wù)器端CGI程序采用PHP語(yǔ)言編寫,顯示圖表使用基于jQuery的動(dòng)感統(tǒng)計(jì)曲線生成插件Highcharts,客戶端程序使用腳本語(yǔ)言JavaScript,實(shí)現(xiàn)了像動(dòng)態(tài)刷新和其他的強(qiáng)交互型功能。通過(guò)本W(wǎng)eb應(yīng)用,病人和醫(yī)生都能隨時(shí)隨地通過(guò)網(wǎng)絡(luò)獲取所需的監(jiān)護(hù)信息,十分方便高效,這也是本系統(tǒng)的一大特色。
圖6 監(jiān)護(hù)系統(tǒng)的Web應(yīng)用Fig.6 User interface of Web application
根以上設(shè)計(jì),制作了具有兩個(gè)網(wǎng)絡(luò)協(xié)調(diào)器,四個(gè)穿戴式傳感器終端的醫(yī)療監(jiān)護(hù)系統(tǒng),為了模擬病房結(jié)構(gòu),將該系統(tǒng)其布置于學(xué)生宿舍。經(jīng)過(guò)一周的試驗(yàn),該系統(tǒng)運(yùn)行良好,可以較準(zhǔn)確地獲得4位受試者的體溫、脈搏數(shù)據(jù),能檢測(cè)出大部分的跌倒情況。同時(shí),用戶可以通過(guò)上位機(jī)程序或者Web應(yīng)用進(jìn)行監(jiān)護(hù)數(shù)據(jù)的訪問(wèn)與系統(tǒng)管理,基本達(dá)成設(shè)計(jì)目標(biāo)。
本文介紹的基于WSN的醫(yī)療監(jiān)護(hù)系統(tǒng)以較低的成本,實(shí)現(xiàn)了低生理、心理負(fù)荷下的人體體溫、脈搏及姿態(tài)等生理信息的獲取,同時(shí),結(jié)合Web技術(shù),編寫了Web應(yīng)用,實(shí)現(xiàn)了對(duì)監(jiān)護(hù)數(shù)據(jù)的多終端無(wú)障礙訪問(wèn) ,極大提升了系統(tǒng)的易用性。如果該系統(tǒng)在醫(yī)院等機(jī)構(gòu)推廣開(kāi)來(lái),能在保證準(zhǔn)確監(jiān)護(hù)結(jié)果的前提下減少醫(yī)護(hù)人員的工作量,同時(shí)減少了病人的生理、心理負(fù)擔(dān)。
[1]王虹,吳飛.醫(yī)療監(jiān)護(hù)技術(shù)現(xiàn)狀分析與探討[J].中國(guó)醫(yī)療設(shè)備,2012,26(7):62-65.WANG Hong,WU Fei.Research of wireless intelligent healthcare monitor system based on electronic wrist strap[J].China Medical Devices,2012,26(7):62-65.
[2]Baronti P,Pillai P,Chook VWC,et al.Wireless sensor networks:a survey on the state of the art and the 802.15.4 and ZigBee standards[J].Computer Communications,2007,30(7):1655-1695.
[3]王小強(qiáng),歐陽(yáng)駿,黃寧淋.ZigBee無(wú)線傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[M].北京:化學(xué)工業(yè)出版社,2012.
[4]Texas Instruments.CC253x System-on-Chip Solution for 2.4 GHz IEEE 802.15.4 and ZigBee?Applications User’s Guide[EB/OL].[2009-04-01].http://www.ti.com/general/docs/lit/getlite rature.tsp?baseLiteratureNumber=swru191.
[5]Joel M,Yury G.Pulse Sensor Open Hardware[EB/OL].[2012-03-12].http://pulsesensor.myshopify.com/pages/openhardware.
[6]陳均,王憶文.基于ZigBee的定位和人體跌倒檢測(cè)系統(tǒng)[J].電子技術(shù)應(yīng)用,2012,38(12):29-31.CHEN Jun,WANG Yi-wen.ZigBee-based localization and human fall detection system[J].Application of Integrated Circuits,2012,38(12):29-31.
[7]李佳,付強(qiáng),丁寧,等.C#開(kāi)發(fā)技術(shù)大全[M].北京:清華大學(xué)出版社,2009.