多生理參數(shù)的無(wú)線實(shí)時(shí)監(jiān)護(hù)系統(tǒng)設(shè)計(jì)
4 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)主要包括上位機(jī)(監(jiān)護(hù)系統(tǒng)終端)和下位機(jī)(ZigBee無(wú)線傳感網(wǎng)絡(luò))設(shè)計(jì)兩部分。下位機(jī)軟件基于TI公司最新的ZStack-CC25 30-2.4.0-1.4.0協(xié)議棧,使得組網(wǎng)相對(duì)更為穩(wěn)定可靠。下位機(jī)的軟件包括3個(gè)部分:協(xié)調(diào)器軟件、路由器軟件以及終端設(shè)備軟件。
4.1 協(xié)調(diào)器與路由器軟件設(shè)計(jì)
協(xié)調(diào)器軟件處理流程如圖8所示。協(xié)調(diào)器一方面要處理各個(gè)節(jié)點(diǎn)發(fā)送過(guò)來(lái)的有效數(shù)據(jù),包括節(jié)點(diǎn)的網(wǎng)絡(luò)地址、有效數(shù)據(jù)長(zhǎng)度、串ID、定位坐標(biāo)數(shù)據(jù)以及生理參數(shù)等,另一方面要處理并轉(zhuǎn)發(fā)PC機(jī)發(fā)送給節(jié)點(diǎn)的數(shù)據(jù)包命令,如終端節(jié)點(diǎn)查找請(qǐng)求以及路由器坐標(biāo)配置等。本文引用地址:http://butianyuan.cn/article/155479.htm
路由器是一種已知靜態(tài)節(jié)點(diǎn),其坐標(biāo)位置是固定的,可以提供坐標(biāo)和RSSI值的信息包給終端設(shè)備。路由器軟件處理流程如圖9所示。
4.2 終端設(shè)備軟件設(shè)計(jì)
終端設(shè)備的軟件設(shè)計(jì)主要包括電源管理、體溫采集、脈率采集、脈搏波采集以及定位實(shí)現(xiàn)。為了降低終端設(shè)備的功耗,采用休眠一喚醒的機(jī)制。每隔10 s自動(dòng)采集一次生理參數(shù)和定位信息,采集成功后通過(guò)CC2530的控制引腳關(guān)閉生理參數(shù)采集模塊。然后發(fā)送數(shù)據(jù)包給監(jiān)護(hù)系統(tǒng)終端,并使設(shè)備進(jìn)入休眠,等待下一次采集事件的喚醒。終端設(shè)備軟件處理流程如圖10所示。
4.2.1 體溫采集程序
NTC熱敏電阻的特性方程為:
式中,RT和R0分別表示NTC在熱力學(xué)溫度為T(mén)和T0時(shí)的電阻值,單位為Ω;T0和T分別為介質(zhì)的起始熱力學(xué)溫度和變化熱力學(xué)溫度,單位為K;B稱(chēng)作B值,NTC熱敏電阻特定的材料常數(shù)。
由于B值同樣是隨溫度而變化的,因此這種方法只能以一定的精度描述額定溫度或電阻值附近的有限范圍。基于電阻/溫度關(guān)系表,由圖6體溫采集電路可得輸出電壓值V和NTC阻值的關(guān)系為:
式中,Vrel為ADC基準(zhǔn)電壓,選擇為CC2530的AVDD5引腳值;ADC的分辨率設(shè)置為12位。結(jié)合式(2),可得到各溫度點(diǎn)對(duì)應(yīng)的A/D轉(zhuǎn)換后的數(shù)字量為:
程序中,首先根據(jù)式(3)和電阻/溫度關(guān)系,制定ADC值一溫度轉(zhuǎn)換表,為接下來(lái)的數(shù)據(jù)處理提供參考依據(jù)。體溫采集流程如圖11所示。其中,采用折半查找法可以提高查表的效率,基于分段的線性捅值是用直線段來(lái)擬合溫度曲線。在處理中,分段越細(xì),擬合的曲線就越接近實(shí)際的溫度曲線,精度也就越高。
4.2.2 脈率采集程序
采用CC2530的16位定時(shí)器1的通道2進(jìn)行脈率的采集,設(shè)置為輸入捕獲模式,上升沿觸發(fā)。同時(shí),需要設(shè)置寄存器CLKCONCMD和T1CTL,使得定時(shí)器1的計(jì)數(shù)頻率為最小的1 953.125 Hz,避免計(jì)數(shù)器溢出。每次脈率信號(hào)的上升沿到來(lái)時(shí),都將觸發(fā)一個(gè)捕獲事件,16位計(jì)數(shù)器的內(nèi)容將被捕獲到相關(guān)的捕獲寄存器T1CC2L和T1CC2H中。將兩個(gè)連續(xù)的脈率信號(hào)對(duì)應(yīng)的捕獲寄存器值相減,獲得脈率信號(hào)的時(shí)間間隔,再轉(zhuǎn)換為脈率。為了減小外部干擾造成的誤差,程序中連續(xù)采集3次脈率,然后剔除奇異值,最終計(jì)算出平均脈率值。
4.2.3 脈搏波采集程序
為了采集到連續(xù)的脈搏波形,使用ADC的序列轉(zhuǎn)換模式以及最高的12位分辨率。采樣周期由定時(shí)器1的通道0控制,根據(jù)所需的采樣周期設(shè)置定時(shí)器1的定時(shí)時(shí)間,每隔這個(gè)時(shí)間,定時(shí)器1的通道0就會(huì)觸發(fā)一次A/D采樣。本文中設(shè)置定時(shí)時(shí)間為5 ms,即采樣頻率為200 Hz。為了提高CC2530的工作效率,A/D轉(zhuǎn)換的結(jié)果采用DMA傳輸,每完成一個(gè)序列轉(zhuǎn)換,ADC都將產(chǎn)生一個(gè)DMA觸發(fā)。設(shè)置系統(tǒng)在兩個(gè)相鄰的采樣間隔內(nèi)處于休眠狀態(tài),等待定時(shí)器1觸發(fā)一次序列A/D轉(zhuǎn)換并進(jìn)行相關(guān)操作,處理完后又再次進(jìn)入休眠。
4.2.4 定位實(shí)現(xiàn)
設(shè)計(jì)中采用非基于距離的算法,利用固定點(diǎn)定位,終端設(shè)備首先發(fā)出請(qǐng)求坐標(biāo)的廣播信息,然后將收到最大LQI值的那個(gè)路由節(jié)點(diǎn)的位置坐標(biāo),作為終端設(shè)備的位置。經(jīng)測(cè)試,使用該方法定位可靠,定位性能穩(wěn)定,適合于室內(nèi)定位。但是,也應(yīng)該注意到,該定位法精度較低,如果想提高定位精度,必須提高路由節(jié)點(diǎn)的密度,這不利于控制監(jiān)護(hù)系統(tǒng)的成本。
結(jié)語(yǔ)
本文設(shè)計(jì)了一種基于ZigBee PRO和CC2530的無(wú)線多生理參數(shù)實(shí)時(shí)監(jiān)護(hù)系統(tǒng)。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)具有組網(wǎng)靈活、網(wǎng)路容量大、測(cè)量實(shí)時(shí)準(zhǔn)確以及可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)。它可以作為一個(gè)解決方案應(yīng)用于社區(qū)、養(yǎng)老院或福利院等的日常監(jiān)護(hù)中。
評(píng)論