范俊成
(浙江紡織服裝職業技術學院 機電與軌道交通學院,浙江 寧波)
隨著全球人口老齡化問題日益突出,老年人在日常生活中的安全性也受到了越來越多的重視,他們面臨著更加嚴峻的挑戰。老人在身邊沒有看護人員時會出現體溫過高、心率失常、意外摔倒甚至走失等問題,讓家人擔憂的同時對自身的健康也是一種隱患。為了能夠實時監測老年人的身體狀況,避免上述潛在問題的發生,本研究設計了一套基于STM32 的多體征參數監測系統,該系統分為硬件系統和軟件系統兩個部分,通過軟硬件系統的信息交互達到監測老人實時安全的目的。系統總體結構見圖1。

圖1 系統總體結構
為了確保系統能夠實時、準確地采集、存儲和傳輸各類信號,本研究提出了一種新型的STM32F407ZG T6 主控芯片,它具有1 MB 內部flash,192+4 KB 的運行內存,并且內含16 MHz 和32 KHz 的晶振,能夠適應各種功率的要求,從而使得系統的性能更加優異[1]。
本研究設計的系統采用了心率傳感器、溫度傳感器、傾角傳感器來采集相關信息,通過內部程序判斷達到實時監測使用者狀態的目的。
1.2.1 心率傳感器
MAX30102 是一款集成了ppg 光電容積脈搏波描記法和心率監測儀的生物傳感器模塊,它可以實時監測手腕處的血氧水平,并將測量結果通過I2C 或UART 接口傳輸至主控芯片,從而有效地減少了傳感器的使用量,節省了主控系統的資源。此外,該模塊還具有功耗低、抗干擾能力強等優點,采集到的數據可以準確的反應出使用者的身體狀態[2]。
1.2.2 溫度傳感器
溫度傳感器主要負責采集使用者所處環境的溫度信號以及體溫信號,方便判斷是否有溫度報警的產生。在所有的溫度傳感器中,DS18B20 具有體積小、適用電壓寬、測量范圍滿足設計要求等優點[3]。其被導熱材料包裹并密封與使用者直接接觸,利用溫度敏感元件的導熱性獲取溫度值。
1.2.3 傾角傳感器
老年人因腿腳不便利或其他健康問題,經常會出現摔倒甚至暈倒等情況,極大的威脅了生命安全,所以,通過使用傾角傳感器監測老人的身體狀態,達到預防的目的。
當身體摔倒時,會出現失重現象,加車速矢量和會顯著增加;而當身體與地板產生碰撞時,加車速矢量和會到達最大,從而可以判斷出身體的狀態。為了防止因揮手、彎腰等動作觸發報警,將加速度增加到出現峰值的這段時間設定時間限定,確保人體狀態監測的精確度[4]。摔倒后,人體三個軸向的加速度會發生變化,z 軸接近g,x 軸和y 軸接近0,這些變化量會超過一定的閾值,從而判斷為一次摔倒。因此,在摔倒后,應該仔細觀察三個軸向的加速度及其矢量和,以確保它們之間的差異不超過閾值,以便及時采取有效的措施來防止摔倒。圖2 為傾角傳感器實物圖及判別流程圖。

圖2 傾角傳感器實物圖及判定流程
1.2.4 輸入輸出模塊
為了完善本研究設計的多參數監測系統,除了可以實時監測使用者的身體狀況外,還可以通過設置的輸入輸出模塊主動測量心率、血氧、體溫,在集成的顯示模塊上進行讀值[5]。同時,還設置了主動呼叫功能,防止老人走失后,無法與家屬聯系,進一步保障了使用者的安全。此外,該模塊還集成了警報功能,通過蜂鳴器發出聲音吸引周圍的人第一時間提供幫助。
1.2.5 傳輸模塊
為了能夠實時監測使用者的身體狀態,不受距離及所處位置的限制,采用無線傳輸模塊進行數據的傳輸,為了滿足本系統要求的對采樣數據的多種查詢方式,采用Cat-1 模塊進行數據傳輸。該模塊擁有出色的傳輸速度、低延時、安全可靠,并且得到三大運行商的大力支持,保證了信號傳輸的實時性,此外它還支援使用GPS、北斗、GLONASS、GALILEO 和QZSS 等多操作系統共同進行定位,在獲取定位信息后,可以通過網絡或短信進行遠程傳輸。該模塊采用NTP 協議,自動獲取NTP 系統的時間,以確保消息傳送的及時性。采用短信透傳方式,客戶能夠輕松地將串口設備的報警信息以短信的方式發送到特定的電腦,從而達到即時的消息傳送,大大提高了安全和可信度的實時性。圖3 為Cat-1 模塊的傳輸示意圖。

圖3 Cat-1 模塊數據傳輸示意
軟件系統主要分為設備端、服務器端和移動客戶端三部分,設備端的軟件系統主要負責數據的采集處理及傳輸,通過與云端服務器的信息交互達到監測的目的;服務器端主要負責收集所有終端設備的數據并進行分類匯總,同時可以檢測終端設備的工作狀態;移動客戶端是為了方便實時查看終端設備采集的數據,更進一步的突出了實時性的特點。
為了使多體征監測系統能夠滿足使用要求,不僅需要良好的硬件系統,還需要相應軟件程序與硬件電路進行配合,才能發揮系統真正的監測作用。本研究設計的系統是以嵌入式系統為基礎進行設計開發的,而嵌入式系統最大的優點是可以對軟件系統進行模塊化編程,且擁有良好的兼容性,通過模塊程序間的相互配合、協調工作,可以有效的對信號進行采集、診斷,達到對體征信息進行監測的目的。圖4 為設備軟件的總體流程圖。

圖4 設備端軟件總體流程
服務器端軟件主要完成設備管理、管理用戶、數據統計和數據處理等功能。軟件設計采用Java 編程,MVC 設計模式,由MySQL 數據庫管理系統進行數據管理,在Eclipse 集成開發環境中進行開發。MVC 模式將系統劃分為三個層次:數據模型層,完成處理與數據分析相關的業務,包括增刪、改、查等操作;視圖模型層,提供使用者較友好的操作界面;控制器層,完成監聽用戶事件,調取建模層和視圖模型層的數據信息,并對用戶界面進行修改。采用MVC 架構模式的多體征監測系統軟件具有多種邏輯控制和豐富的反饋操作界面,可以有效地解耦數據模型、業務邏輯處理、圖形用戶界面和數據通信,大大提升了系統的靈活性和組件的可重用性,使得服務器端軟件操作更加簡單易懂,顯示更加直觀。圖5 為服務器端軟件MVC 分層架構示意圖,圖6 為服務器端軟件系統主界面。

圖5 服務器端軟件MVC 分層架構示意

圖6 服務器端軟件系統主界面
移動客戶端的功能包括查詢實時狀態、查詢實時位置、數據統計、主動呼叫以及接收報警信息等功能。通過在HBuilder 軟件的入口首頁 index.html 中編寫功能代碼,通過設置IP 地址,以此來實現互相通信[6]。為了實現使用移動端進行相關操作,借助HBuilder軟件進行打包,生成.apk 文件,可直接在移動端進行安裝。達到軟件可以擴展多個終端同時進行查看的效果。
用戶打開APP 后,即可對多體征監測系統的實時數據進行查看,點擊刷新按鈕,移動終端將會讀取服務器中存儲的最新數據并顯示在界面上。實時顯示界面的布局文件仍使用login.xml,需要使用線性布局,在數據顯示界面中使用TextView控件,來顯示對于測量值的文字描述。同時,使用自定義Spinner 控件來實現下拉框功能,在下拉框中選擇不同的終端設備進行數據查看。圖7 為移動客戶端軟件主界面。

圖7 移動客戶端軟件主界面
本研究設計的基于STM32 的多體征參數監測系統可以很好的采集人體狀態信息,若出現身體特征參數異常、走失或摔倒等緊急情況時可通過網絡服務器管理系統向移動客戶端發送報警信息,也可通過移動客戶端發送測量身體體征參數、查看實時位置、主動呼叫等指令,達到實時監測的目的,進一步對老年人的身體安全提供了保障。