【導(dǎo)讀】跌倒可以導(dǎo)致老年人身體組織挫傷、骨折甚至危及生命,并從心理上給老年人造成了壓力和恐懼感。實(shí)際上很多傷亡并不是由于意外跌倒本身造成的,而是由于跌倒發(fā)生后,老年人沒有得到及時(shí)的救治造成的。尤其現(xiàn)在社會(huì)上存在很多訛詐現(xiàn)象,導(dǎo)致人們不敢輕易伸出援助之手。
隨著人類生活水平的不斷提高,人口老齡化成為一個(gè)全球性的發(fā)展趨勢(shì)。目前,我國(guó)已經(jīng)進(jìn)入了老齡化社會(huì),老年人的身心健康問(wèn)題得到人們更多的關(guān)注。老年人因生理結(jié)構(gòu)衰老和身體機(jī)能減退,發(fā)生意外跌倒的概率和頻率非常高。
因此,在老年人發(fā)生跌倒后,如何盡早被發(fā)現(xiàn),并發(fā)出求救信號(hào)進(jìn)行及時(shí)救治變得格外重要。為了老年人更健康地生活,研究設(shè)計(jì)一個(gè)老年人的跌倒檢測(cè)與報(bào)警系統(tǒng)具有十分重要的研究?jī)r(jià)值和實(shí)際意義。
目前,研究開發(fā)人體跌倒檢測(cè)系統(tǒng)方面的技術(shù)有很多種,最常見的是圖像分析和加速度分析法。都是基于視頻圖像分析的室內(nèi)跌倒自動(dòng)檢測(cè)系統(tǒng),這種技術(shù)準(zhǔn)確性高,人體動(dòng)作清晰可見,但需要多部攝像機(jī)同時(shí)工作,且暴露了用戶的個(gè)人隱私,監(jiān)測(cè)范圍有限,受環(huán)境的影響也很大。另一種加速度分析方法,主要基于微機(jī)電系統(tǒng)(Micro-Electromechanical System,MEMS)
傳感器。MEMS技術(shù)近幾年得到了快速發(fā)展,廣泛應(yīng)用在跌倒檢測(cè)、狀態(tài)檢測(cè)、運(yùn)動(dòng)檢測(cè)等方面。都是利用MEMS技術(shù)進(jìn)行人體跌倒檢測(cè)的,目前國(guó)內(nèi)一些基于MEMS技術(shù)的跌到檢測(cè)雖可較好實(shí)現(xiàn)跌倒檢測(cè),但大多計(jì)算量較大、設(shè)計(jì)復(fù)雜、價(jià)格昂貴,難以得到廣泛的應(yīng)用。
設(shè)計(jì)一種基于Arduino和三軸加速度傳感器的跌倒檢測(cè)報(bào)警系統(tǒng),實(shí)時(shí)采集人體加速度參數(shù)和地理位置信息,應(yīng)用于老年人意外跌倒后及時(shí)報(bào)警,兼具了性價(jià)比高、設(shè)計(jì)簡(jiǎn)單、實(shí)時(shí)性高、低功耗、可擴(kuò)展的特點(diǎn),實(shí)驗(yàn)證明了該系統(tǒng)的可行性和準(zhǔn)確性。
1 系統(tǒng)總體設(shè)計(jì)
跌倒檢測(cè)報(bào)警系統(tǒng)由Arduino最小系統(tǒng)、加速度參數(shù)采集模塊、GPS定位模塊、GSM通信模塊組成,其系統(tǒng)框圖如圖1所示。
圖1 跌倒檢測(cè)報(bào)警系統(tǒng)框圖
Arduino實(shí)時(shí)接收加速度參數(shù)采集模塊傳來(lái)的人體加速度參數(shù)值,單片機(jī)通過(guò)接收來(lái)的加速度值,經(jīng)過(guò)跌倒檢測(cè)算法來(lái)判斷穿戴者的體態(tài),如果檢測(cè)出跌倒的發(fā)生,便觸發(fā)跌倒報(bào)警機(jī)制。當(dāng)?shù)拱l(fā)生時(shí),通過(guò)GPS定位模塊能捕獲到穿戴者的具體地理位置,然后發(fā)出包含跌倒位置的報(bào)警求救信息,通知佩戴者的監(jiān)護(hù)人或醫(yī)療機(jī)構(gòu),進(jìn)行后續(xù)的救治。本系統(tǒng)在考慮這些功能需求的前提下,采用Arduino為控制核心,外圍連接加速度參數(shù)采集模塊、GPS定位模塊、GSM通信模塊,來(lái)完成整個(gè)系統(tǒng)的功能。
2 硬件設(shè)計(jì)
硬件部分主要包括微控制器最小系統(tǒng)的選取、加速度參數(shù)采集模塊、GPS定位模塊、GSM通信模塊,以及各個(gè)模塊之間的連接。
2.1 Arduino平臺(tái)
Arduino是一款基于開源的電子原型設(shè)計(jì)平臺(tái)。Arduino包含兩個(gè)主要的部分:硬件部分是可以用來(lái)做電路設(shè)計(jì)的電路板,基于AVR系列單片機(jī)和ARM微控制器,有豐富的外設(shè)接口和硬件資源;軟件部分則是Arduino IDE,是在計(jì)算機(jī)中的程序開發(fā)環(huán)境[10]。Arduino的模塊化設(shè)計(jì),大大簡(jiǎn)化了電子系統(tǒng)的設(shè)計(jì)過(guò)程。
其中,微控制器最小系統(tǒng)選用Arduino Uno,它是基于ATMEL公司的ATmega328P單片機(jī)的硬件平臺(tái),具有32KB Flash、1KB EEPROM、14路數(shù)字輸入輸出口(其中6路可用于PWM輸出)、6路模擬輸入接口。同時(shí),Uno預(yù)置了Bootloader程序,不需要其他外部燒寫器,可以直接通過(guò)USB下載程序。
2.2 加速度傳感器ADXL345
ADXL345是ADI公司最近推出的基于iMEMS技術(shù)的3軸、數(shù)字輸出加速度傳感器。ADXL345具有多種可變的測(cè)量范圍,高分辨率,高靈敏度,超小的封裝,超低的功耗,標(biāo)準(zhǔn)的I2C或SPI數(shù)字接口,32級(jí)FIFO存儲(chǔ),以及內(nèi)部多種運(yùn)動(dòng)狀態(tài)檢測(cè)和靈活的中斷方式等特性[11]。所有這些特性,使得 ADXL345有助于大大簡(jiǎn)化跌倒檢測(cè)算法,使其成為一款非常適合用于跌倒檢測(cè)器應(yīng)用的加速度傳感器。圖2為ADXL345功能框圖。
圖2 ADXL345功能框圖
ADXL345標(biāo)準(zhǔn)的I2C數(shù)字接口可以和Arduino Uno的I2C接口方便通信,將ADXL345采集到的人體三軸加速度數(shù)據(jù)傳給單片機(jī)進(jìn)行跌倒檢測(cè)算法處理,圖3給出了ADXL345和單片機(jī)之間的I2C總線典型連接圖。ADXL345的(CS) ?管腳接高電平,表示ADXL345工作在I2C模式。SDA和SCL是I2C總線的數(shù)據(jù)線和時(shí)鐘線,分別連接到Arduino Uno相應(yīng)的I2C總線接口(A4和A5)。ADXL345的INT1管腳連接到Arduino Uno的INT0(Pin 2),用來(lái)產(chǎn)生中斷信號(hào)。
圖3 ADXL345和單片機(jī)之間的I2C典型連接圖
2.3 GPS定位和GSM通信模塊SIM908
SIM908是一款集成了高性能GSM/GPRS引擎和GPS引擎的芯片。其中的GSM/GPRS引擎可以工作在GSM 850MHz,EGSM 900MHz,DCS 1800MHz和PCS 1900MHz四個(gè)頻段;GPS引擎具有一流的采集和跟蹤靈敏度、TTFF(Time-To-First-Fix)和準(zhǔn)確度[12],這些特性可以很好地完成跌倒位置定位和發(fā)送報(bào)警信號(hào)的任務(wù)。在SIM908芯片上可以同時(shí)完成GPS定位和GSM通信功能,可以大大減少系統(tǒng)芯片的數(shù)量和功耗。圖4為SIM908的功能框圖。SIM908通過(guò)UART口與Arduino Uno進(jìn)行通信,RXD和TXD分別與Uno的TXD和RXD相連,完成跌倒位置的GPS數(shù)據(jù)的捕獲和發(fā)送GSM報(bào)警短信功能。
圖4 SIM908功能框圖
3算法設(shè)計(jì)與實(shí)驗(yàn)
3.1 跌倒檢測(cè)算法
對(duì)跌倒檢測(cè)原理的研究主要是找到人體在跌倒過(guò)程中的加速度變化特征。圖5給出的是加速度在不同運(yùn)動(dòng)過(guò)程中的變化曲線,包括(a)步行上樓、(b)步行下樓、(c)坐下、 (d)起立。其中紅色的曲線是Y軸(垂直方向)的加速度曲線,其正常靜止?fàn)顟B(tài)下應(yīng)該為-1g;黑色和黃色的曲線分別是X軸(前后方向)和Z軸(左右方向)的加速度曲線,其正常靜止?fàn)顟B(tài)下應(yīng)該為0g;綠色的曲線是三軸加速度的矢量和,其正常靜止?fàn)顟B(tài)下應(yīng)該為+1g。
圖5 不同運(yùn)動(dòng)過(guò)程中的加速度變化曲線
由于老年人的運(yùn)動(dòng)相對(duì)比較慢,所以在普通的步行過(guò)程中,加速度變化不會(huì)很大。最明顯的加速度變化就是在坐下動(dòng)作中Y軸加速度(和加速度矢量和)上有一個(gè)超過(guò)3g的尖峰,這個(gè)尖峰是由于身體與椅子接觸而產(chǎn)生的。而跌倒過(guò)程中的加速度變化則完全不同。圖6給出的是意外跌倒過(guò)程中的加速度變化曲線。通過(guò)圖6和圖5的比較,可以發(fā)現(xiàn)跌倒過(guò)程中的加速度變化有4個(gè)主要特征,這可以作為跌倒檢測(cè)的準(zhǔn)則。這4個(gè)特征在圖6中以紅色的方框標(biāo)注,下面將對(duì)其逐一進(jìn)行詳細(xì)介紹。
圖6 意外跌倒過(guò)程中的加速度變化曲線
失重:在跌倒的開始都會(huì)發(fā)生一定的失重現(xiàn)象。在自由落體的下降過(guò)程,這個(gè)現(xiàn)象會(huì)更加明顯,加速度的矢量和會(huì)降低到接近0g。對(duì)于一般的跌倒,也會(huì)發(fā)生合加速度小于1g的情況。因此,這可以作為跌倒?fàn)顟B(tài)的第一個(gè)判斷依據(jù)。可以由ADXL345的Free_Fall中斷來(lái)檢測(cè)。
撞擊:失重之后,人體發(fā)生跌倒的時(shí)候會(huì)與地面或其他物體發(fā)生撞擊,在加速度曲線中會(huì)產(chǎn)生一個(gè)很大的沖擊。這個(gè)沖擊可以通過(guò)ADXL345的Activity中斷來(lái)檢測(cè)。因此,F(xiàn)ree_Fall中斷之后,緊接著產(chǎn)生Activity中斷是跌倒?fàn)顟B(tài)的第二個(gè)判斷依據(jù)。
靜止:人體在跌倒后,也就是撞擊發(fā)生之后,不可能馬上起來(lái),會(huì)有短暫的靜止?fàn)顟B(tài)(如果人因?yàn)榈苟鴮?dǎo)致昏迷,甚至可能是較長(zhǎng)時(shí)間的靜止)。表現(xiàn)在加速度曲線上就是會(huì)有一段時(shí)間的平穩(wěn)。這可以通過(guò)ADXL345的Inactivity中斷來(lái)檢測(cè)。因此,Activity中斷之后的Inactivity中斷是跌倒?fàn)顟B(tài)的第三個(gè)判斷依據(jù)。
與初始狀態(tài)比較:跌倒之后,人體會(huì)發(fā)生翻轉(zhuǎn),因此人體的方向會(huì)與原先靜止站立的姿態(tài)不同。這使得跌倒之后的靜止?fàn)顟B(tài)下的三軸加速度數(shù)值與初始狀態(tài)下的不同,如圖5所示。因此,跌倒檢測(cè)的第四個(gè)依據(jù)就是跌倒后的靜止?fàn)顟B(tài)下加速度值與初始狀態(tài)發(fā)生變化,且矢量變化超過(guò)一定的門限值。
這四個(gè)判斷依據(jù)綜合在一起,構(gòu)成了整個(gè)的跌倒檢測(cè)算法,可以對(duì)跌倒?fàn)顟B(tài)給出報(bào)警。
另外,如果跌倒造成了嚴(yán)重的后果,比如,導(dǎo)致了人的昏迷。那么人體會(huì)在更常的一段時(shí)間內(nèi)都保持靜止。這個(gè)狀態(tài)仍然可以通過(guò)Inactivity中斷來(lái)檢測(cè)。也就是說(shuō),如果發(fā)現(xiàn)在跌倒之后的很長(zhǎng)時(shí)間內(nèi)都保持Inactivity狀態(tài),可以再次給出一個(gè)嚴(yán)重報(bào)警。算法的流程圖如圖7所示。
圖7 算法流程圖
3.2 實(shí)驗(yàn)結(jié)果
本文設(shè)計(jì)了一個(gè)實(shí)驗(yàn)方案對(duì)算法進(jìn)行驗(yàn)證。實(shí)驗(yàn)對(duì)向前跌倒,向后跌倒,向左、右兩側(cè)跌倒等不同跌倒姿勢(shì)以及跌倒后是否有長(zhǎng)時(shí)間靜止?fàn)顟B(tài)的情況分別進(jìn)行了10次測(cè)試,表1中給出的是相關(guān)測(cè)試結(jié)果。
表1 實(shí)驗(yàn)結(jié)果
本設(shè)計(jì)將加速度傳感器ADXL345、GPS和GSM模塊SIM908與Arduino Uno平臺(tái)結(jié)合在一起,通過(guò)加速度傳感器采集人體三軸加速度值,實(shí)時(shí)檢測(cè)人體體態(tài),完成對(duì)人體跌倒的檢測(cè)和報(bào)警。整體設(shè)計(jì)成本低、可靠性高、算法復(fù)雜度低、檢測(cè)準(zhǔn)確度高和可擴(kuò)展的優(yōu)點(diǎn),具有很高的實(shí)用性,可以滿足對(duì)人體跌倒檢測(cè)報(bào)警的需要。