曲鳳娟 高一騰

【摘 要】本文旨在研究一款可穿戴式跌倒檢測與預警系統。該系統通過三軸加速度計、陀螺儀、ZigBee等部件結合相關算法,對跌倒進行判斷和定位,并及時報警。定位算法采用了基于RSSI測距的定位,RSSI來自ZigBee模塊。實驗表明本文所述算法正確可行。
【關鍵詞】RSSI;ZigBee;跌倒檢測;陀螺儀
0 引言
中國的老人越來越多,尤其是獨居老人人數也呈現上升趨勢。跌倒是造成老人身體傷害甚至死亡的主要原因之一。如果能夠采取一定的方法減少或避免跌倒對老人造成的傷害將具有非常大的現實意義。本文所研究的跌倒檢測與報警系統能夠在佩戴者發生跌倒后及時報警,使救助人員采取措施盡快實救,最大限度的減小危險動作帶來的傷害。
1 系統架構
本系統主要分三部分:一部分是人體運動采集與分析模塊,包括主處理器、三軸加速傳感器、陀螺儀和藍牙通信模塊,這部分功能模塊佩戴在人體的腰部;第二部分是ZigBee報警和定位模塊,當佩戴者在小區內部跌倒時,由ZigBee生成定位信息并向物業報警,該定位信息也需要通過藍牙發送給手機,手機再繼續報警;第三部分是手機定位和報警模塊,此部分手機通過藍牙接收到報警信號后,啟動GPS定位,通過短信或電話形式向家人報警。
2 系統實現
系統分為可穿戴跌倒檢測裝置、Android手機報警定位和ZigBee小區內報警定位部分。
2.1 系統硬件集成
跌倒檢測模塊采用野火STM32 V3開發板;關于陀螺儀和加速度計,本文選用了MPU6050;跌倒檢測模塊與手機的通信采用藍牙串口模塊FBT06;手機1為基于Android的智能手機,其需要運行相應的應用程序;手機2則可以是任意的可用手機。
MPU6050整合了陀螺儀、3軸加速度計。MPU6050通過主I2C端口以單一數據流的形式,向STM32輸出數據。因此,只需把STM32的引腳PB6(SDA)和PB7(SCL)分別連接到MPU6050的24號引腳(SDA)和23號引腳(SCL)上。
藍牙模塊FBT06通過串口與STM32連接,將FBT06的TXD和RXD與STM32的RXD和TXD連接即可。
ZigBee網絡使用了CC2431模塊,ZigBee協調器與STM32也通過串口進行連接。
2.2 軟件實現
1)STM32端
STM32從MPU6050定時讀取某個軸向(如Z軸)的傾角數據,將SVM和傾角數據結合判斷跌倒。當跌倒發生后,STM32讀取ZigBee發送的信息,若讀取到有效數據則視為定位信息連同報警信號通過藍牙發送給手機,手機再發送報警短信或直接撥打電話;若未讀取到有效的數據則直接通過藍牙向手機發送報警信號,手機解析藍牙數據,當未發現定位信息則啟動GPS定位生成定位信息,繼續發送報警信息或直接撥打電話。
2)ZigBee模塊定位
ZigBee模塊CC2431可以獲取RSSI值,因此可以采用基于RSSI技術的測距協助實現定位,無需添加硬件。
RSSI是指接收信號強度指示。RSSI值隨距離增加而減小,經過簡化的RSSI測距經典模型如公式(2)所示。
RSSI=A+10mlg(d)(2)
A為無線收發節點相距1m時接收節點接收到的無線信號強度RSSI值,m為路徑衰減因子[1]。依據公式(1)求得若干個錨節點與未知節點間的距離,對未知節點定位就可利用這些距離值采用極大似然估算法實現。已知n個錨節點的坐標分別設為(x1,y1)、(x2,y2)、……,(xn,yn),而未知節點坐標設為(x,y),算法實現的具體步驟如下:
(1)錨節點周期性向未知節點發送含有自身ID及自身位置信息的數據包[2]。
(2)未知節點接收到同一ID的錨節點發來的數據包后,從包中提取出信號強度RSSI值,接收到多少數據包也會得到相應數量的RSSI值[3]。當收到該錨節點發來的數據包數量達到一定閾值(如50個)后,對得到的相應數量的RSSI值求平均值即看做該ID錨節點的RSSI值,然后根據公式(1)導出距離d,就得到了某個ID錨節點與未知節點間的距離。以此類推,對所有n個錨節點都采用這種方式處理,可得到n個距離d1、d2、……、dn。
3)手機端
手機為基于Android的智能手機,需要開發相應的應用程序。手機端需要長期的監測是否有跌倒信號出現,因此收發藍牙傳輸數據的功能需要啟用Service服務,以便系統在后臺監聽。
在手機端運行的應用程序中啟動GPS、WIFI定位或基站定位,并通過百度地圖實現經緯度到地址的轉換,生成定位信息。利用百度地圖提供的轉換服務可以實現從經緯度坐標到地址的轉換。向服務器發送包括經緯度信息的HTTP請求,服務器返回JSON數據,再將JSON解析即獲得地址信息。(下轉第33頁)
(上接第5頁)跌倒檢測設備使用鋰電池或移動電源充電。首先需要設備與手機進行藍牙配對。手機端需要開啟藍牙,完成藍牙連接。藍牙連接成功后,設備即可佩戴在腰部進行正常的日常活動。手機再發送報警短信或直接撥打電話;若未讀取到有效的數據則直接通過藍牙向手機發送報警信號,手機解析藍牙數據,當未發現定位信息則啟動GPS定位生成定位信息,繼續發送報警信息或直接撥打電話。
2.3 跌倒檢測設備的位置
跌倒檢測設備的穿戴位置也影響結果的準確性。常見的跌倒檢測裝置穿戴位置有腰部、腕部、腿部、胸部等。通過對穿戴的各種位置進行實驗,確定較理想的穿戴位置。實驗中,通過3人將三軸加速度計放置在不同位置,取平均值,將最佳實驗結果位置作為穿戴位置。
3 結束語
本文設計開發了基于ZigBee定位的跌倒檢測與報警系統。該系統可識別佩戴者產生的跌倒動作,在能夠對跌倒者進行定位的同時給出短信報警。通過實驗數據分析,本論文所研究系統具有較好的跌倒動作識別率。并且當真正跌倒時,家屬能夠及時得到通知,能夠根據短信準確的找到老人跌倒的位置。本系統已經過測試,測試的手機1型號為HTC 528t。
【參考文獻】
[1]何山.基于RSSI的精確室內定位算法[J].現代電信科技,2011,3(3).
[2]楊東勇,顧東袁,傅曉婕.一種基于RSSI相似度的室內定位算法[J].傳感技術學報,2009,2,22(2).
[3]章磊,黃光明.基于RSSI的無線傳感器網絡節點定位算法[J].計算機工程與設計,2010,31(2).
[4]王琦.基于RSSI測距的室內定位技術[J].電子科技,2012,25(6).
[責任編輯:湯靜]