張博文,李爽,龐春穎
(長春理工大學 生命科學技術學院,長春 130022)
截止到2021年5月我國老年人為2.6億,占總人口18.7%,隨著社會老齡化的加劇,到2050年,預計我國65歲以上老年人口數將到達4億,占中國人口30%以上[1-2]。隨著年齡的上升,老年人身體素質逐漸變差,摔倒是老年人群中比較突出的現象,經調查發現,65歲以上人群中每年有1/3的老年人發生一次及以上的跌倒,80歲以上的老年人群在一年中跌倒的概率會達到50%[3-4]。為防止日常活動中出現跌倒狀況,有必要對老年人進行日常監測,對于跌倒進行預測。
目前,國內外跌倒檢測的儀器有很多,基于使用不同的傳感器,跌倒檢測產品可以簡單分為三類方法:(1)基于視頻傳感器檢測;(2)基于周圍信號檢測;(3)基于穿戴式儀器檢測[5-6]。本文設計的是基于穿戴式系統的檢測方法,該方法可以隨時隨地對使用者進行監護,不易受外界影響,而且不會侵犯用戶隱私。穿戴式傳感器利用無線通信技術,能夠將采集到的體征參數傳輸到上位機進行特征提取、特征分類、跌倒預測模型建立,然后進行跌倒預測,對于監護老年人的跌倒以及跌倒預測具有重要意義[7-8]。
系統分為硬件設計和軟件設計,硬件設計包括數據采集電路設計和數據傳輸模塊設計,軟件設計包括單片機程序設計和跌倒預測程序。系統總體方案框圖如圖1所示。

圖1 整體框圖
為了不影響用戶的日常行為活動,故采用穿戴式裝置進行信號采集,本設計的硬件部分主要包含信號采集、信號處理、數據傳輸以及電源模塊。
1.1.1 傳感器放置位置
本文既需要對跌倒進行預測也需要對步態特征進行提取,為后續的步態特征分析以及跌倒預測因素相關性分析提供運動信息,所以要對傳感器的放置位置進行考量與實驗。
人體運動可以看作是肢體繞著關節的運動。為了對人體運動過程進行具體的數學分析,需要構建合理的人體模型來描述人體運動,且該模型必須能代表人體運動核心的部分,因此本文將人體組成進行合理的簡化,在建模過程中用人體骨架系統來描述人體的運動。人體骨架系統模型是將人的肢體看作剛體,模仿人的生理結構,通過關節將這些簡化的剛體相連,從而得到簡化的人體結構[9-10],經過對人體等效模型的研究[11],最終確定將攜帶一枚傳感器的主板放置于腹部,對跌倒預測提供信息來源,另兩枚傳感器分別置于腳踝處采集步態信息,實物圖如圖2所示。

圖2 傳感器放置位置實物圖
1.1.2 采集電路設計
根據人體運動信號采集原理,加速度傳感器是根據壓電效應的原理來工作的。一般加速度傳感器就是利用了其內部的由于加速度造成的晶體變形這個特性。人體在走路時,通過加速度傳感器就可以采集到人體的運動信息,經過無線傳輸到芯片進行處理。本設計采用一塊放置于腹部的MPU6050傳感器對跌倒進行預測,采用兩枚分別放置于左右腳踝的MPU6050傳感器采集步態信息。檢測模塊的實物圖和原理圖如圖3和圖4所示。

圖3 運動信號檢測實物圖

圖4 運動信號檢測原理圖
1.1.3 數據處理模塊設計
數據處理模塊與放置在腹部的傳感器相連,作為采集系統的主板,主板被放置于用戶腹部,由于在設計模塊上考慮到功耗、硬件大小以及數據采集的穩定性與可靠性等,所以采用STM32F407系列單片機作為系統CPU,該單片機接口豐富且低功耗、性能高,清涼小巧的硬件設計能實現復雜的功能要求同時也能保證數據有很高的穩定性和可靠性。
1.1.4 數據傳輸模塊設計
系統采集到的生理信號需要在手機端進行顯示,選用藍牙模塊作為數據傳輸的媒介,本研究選用HC-08藍牙模塊傳輸數據,它具有80米的超長通信距離,以及超低功率和小尺寸等優點,完全滿足設計需要,適用于所有Android系統手機通信,具體實物圖和原理圖如圖5和圖6所示。

圖5 藍牙模塊實物圖

圖6 藍牙模塊原理圖
1.1.5 電源模塊設計
系統在設計電源電路時應根據各個模塊的所需電壓合理供電,必須確保電源電路產生的電壓在每個模塊的供電范圍之內。首先考慮中央處理器STM32F407ZGT6的工作電壓,其范圍為1.8~3.6 V;其次MPU6050模塊供電可選擇2.5 V、3.0 V或3.3 V,藍牙模塊所需供電為2.0~3.6 V,其他器件的所需電壓均在3.3 V左右。考慮到系統的體積與電源所產生的電磁干擾,系統統一使用3.3 V電壓為電路所有器件供電,減小了系統電路板的體積并降低了電磁干擾。
由于系統是可穿戴設備,系統需長期使用,電池應具備體積小、容量高的特點,鋰離子電池體積小、壽命長、對人體危害小,所以使用3.7 V可充電鋰離子電池為系統供電,電池容量為800 mAh。電源模塊電路圖如圖7所示。

圖7 電源模塊電路圖
系統軟件設計包括三個部分:單片機程序設計、上位機跌倒預測算法和Android手機端軟件設計。單片機主要負責信號采集、處理與傳輸;上位機負責基于支持向量機的跌倒預測算法設計;手機端負責監控結果顯示與異常參數報警等功能的實現。
1.2.1 單片機程序設計
首先由于人體運動信號的頻率變化小于20 Hz,根據奈奎斯特采樣定理,最大程度還原原始的生理信號,采樣頻率必須大于信號中最高頻率的2倍以上,這樣采樣得到的數字信號才能完全保留原始信號中的數據信息[11],一般實際應用中保證采樣頻率為信號最高頻率的5~10倍。本文設計的傳感器采樣頻率為100 Hz。
本研究在軟件程序編寫部分,運動信號通過MPU6050傳感器進行采集,MPU6050通過IIC單片機進行通信,IIC1的SCL、SDA與STM32F407ZGT6的PB8、PB9相連;IIC2的SCL、SDA與STM32F407 ZGT6的 PB10、PB11相連;IIC3的 SCL、SDA 與STM32F407ZGT6的 PA8、PC9相連;IIC總線連接的從設備都有一個可以被單片機識別的地址,單片機通過識別該地址來判斷從設備初始化狀況。當傳感器芯片的AD0引腳為低電平時,芯片地址為0X68,判斷地址為0X68則初始化成功。運動狀態采集的軟件流程圖如圖8所示。

圖8 IIC通信流程圖
根據人體運動時加速度與角速度變化規律,設置傳感器的采樣頻率為100 Hz,加速度滿量程范圍為±2 g,角速度滿量程范圍為±2 000 dps,當初始化成功之后系統即可進行數據采集。
1.2.2 跌倒預測算法設計
跌倒預測算法是跌倒預測系統的關鍵部分,目前跌倒預測算法的研究趨勢是采用機器學習的方法。機器學習專門研究用計算機模擬或實現人類的學習行為,機器學習是目前實現人工智能的關鍵,跌倒預測問題可以作為一個二分類問題來處理,即區分跌倒行為和日常活動行為,屬于監督學習[13-14]。本文的跌倒算法是基于支持向量機算法實現的,算法實現流程如圖9所示。

圖9 分類算法流程圖
在進行跌倒預測之前,通過對數據進行特征提取及標注,來對支持向量機進行訓練。本文共設計了八個特征,分別是y軸上的加速度平均值 Acc-Yave,z軸上的加速度最大值 Acc-Zmax,x軸和 y軸上的加速度偏度 Acc-Xske、Acc-Yske,陀螺儀繞y軸和z軸的旋轉速率峰值Gyro-Ykur、Gyro-Zkur,加速度計軸的斜率SL以及能量熵EEB。
計算公式分別如下所示:

其中,N為時間窗口長度;ej為第j個子塊與整個窗口信號總能量的比值。
本文要對完整的運動過程進行實時采集,為了不影響采集動作的連貫性,采用了滑動窗口進行特征提取,防止單個窗口對采集的數據進行分割,因此本文采用了疊加度為50%的滑動窗口對運動數據進行處理。
1.2.3 Android手機端程序設計
在手機端部分,本研究采用目前應用比較廣泛的API為28的智能手機作為基礎,編寫手機APP程序。程序編寫軟件采用的是Android Studio。
Android手機端,作為人機交互的唯一終端,實現用戶注冊、登錄、生理參數實時監測、健康分析、醫療服務、在線咨詢等功能。手機APP功能框圖如圖10所示。

圖10 手機app功能框圖
登錄成功后進入健康管家APP主菜單。主菜單UI設計采用的是GridView,GridView按照行列來顯示內容,一般用來同時顯示圖片與文字,如實現九宮格圖。因此,為了讓界面更加清晰美觀,本研究采用GridView來實現主菜單功能顯示。主菜單界面如圖11所示。

圖11 主菜單功能界面
本文根據跌倒預測的原理以及分析老年人日常生活中的各種行為,把老年人的行為分成兩類:一類是日常活動部分ADL(Activities of Daily Life);另一類是跌倒行為FALL(Fall Down)。跌倒行為具體分為:坐著時向后倒(BSC)、站著時向前倒膝蓋著地(FKL)、站著時向前倒用手支撐著地(FOL)、站立時雙腿彎曲朝后倒(SDL)。跌倒行為具體分類圖如圖12所示。

圖12 跌倒行為具體分類圖
為了校驗儀器裝置和算法的可靠性與正確率,做了 5種實驗:(1)正常行走;(2)坐在椅子上時向后倒;(3)站立時向前倒,膝蓋著地;(4)站立時向前倒,用手抑制著地;(5)站立時雙腿彎曲向后倒。出于安全考慮,模擬實驗由同學完成。
(1)實驗者正常行走或做其他正常動作,包括下蹲、跳躍等。正常行走下儀器采集到的加速度和角速度數據如圖13和圖14所示。

圖13 正常行走加速度圖

圖14 正常行走角速度圖
(2)讓實驗者坐在椅子上時向后倒下時儀器采集到的加速度和角速度數據如圖15和圖16所示。

圖15 坐在椅子上向后跌倒加速度圖

圖16 坐在椅子上向后跌倒角速度圖
(3)讓實驗者站立時向前倒下并以膝蓋著地時儀器采集到的加速度和角速度數據如圖17和圖18所示。

圖17 站立時向前跌倒膝蓋著地加速度圖

圖18 站立時向前跌倒膝蓋著地角速度圖
(4)讓實驗者站立時向前倒下并以雙手抑制跌倒時儀器采集到的加速度和角速度數據如圖19和圖20所示。

圖19 站立時向前跌倒用手抑制著地加速度圖

圖20 站立時向前跌倒用手抑制著地角速度圖
(5)讓實驗者站立時彎曲雙腿向前倒時儀器采集到的加速度和角速度數據如圖21和圖22所示。

圖21 站立時雙腿彎曲向外倒加速度圖

圖22 站立時雙腿彎曲向外倒角速度圖
實驗測試結果如表1所示,從結果可以看出,該裝置可以對日常行為與跌倒行為進行預測,并對不同的跌倒行為進行有效的區分,系統跌倒預測準確率在90%以上,識別率較高。

表1 測試結果
對于跌倒預測模型建立時,本文將數據庫中2/3的數據進行訓練,1/3的數據用于驗證,從表一可以看出,對于日常行為的預測準確率很高,對于跌倒具體行為的預測準確度還有待提高,可以通過增加訓練集中跌倒的樣本來提高識別準確率。
通過對人體運動行為與跌倒預測原理的研究[15],設計了穿戴式跌倒預測裝置,通過MPU6050傳感器采集運動信息,并通過Android手機發送到PC端進行支持向量機算法處理,跌倒預測的準確率達到91.18%。本設計可以將預測的結果等實時發送到手機app中,方便老年人隨時查看運動信息,醫護人員可以通過定期采集到的運動數據給出相關的運動和飲食意見等,給老年人帶來更大的便利和健康。