張文超
(東華理工大學核應用技術研究所,江西 南昌 330000)
在科技迅猛發展的今天,物聯網技術和智能化技術已經成為發展的潮流,健康醫療和可穿戴設備技術日益成熟,利用通信、網絡技術解決生活中的問題,提高生活質量,是科技發展趨勢,也是其目的。基于此設計一款老人使用智能手環,借助GPRS無線數據上傳數據,子女遠端查看,有效避免老人受到意外傷害。結合物聯網概念和醫療健康,監測老人日常健康狀態,如心率、運動狀態、睡眠、意外跌倒等,通過手環集成GPRS無線數據傳輸模塊送至云端服務器,通過服務器認證轉發機制,子女家屬等通過子端APP,即可在線實時掌握老人的身體狀況。同時實現意外狀況提醒功能。
開發流程:本設計包含軟件APP設計和硬件手環設計,其功能上的最大特點是實現了手環數據的遠程智能終端查看,借助服務器實現數據實時上傳,服務器實時分發至遠程智能終端。如下圖1。

圖1 系統運行流程圖
本系統中手環主要包括五個部分:光電反射式心率傳感器、六軸加速度傳感器、32位ARM處理器、BLE低功耗藍牙4.0、OLED彩色顯示屏。通過處理器采集心率傳感器和六軸加速度傳感器數據,進行計算分析出心率值和運動狀態,將數據打包通過TCP/IP通信協議送至網絡服務器。網絡服務器開放一個公共端口,端口允許客戶端多連,遠端智能手機在收發網絡數據時,向服務器申請建立鏈接,進行數據接收。網絡服務器根據數據包內包含的識別信息,來進行數據實時分發。遠端智能手機接收到數據包,進行數據解包,通過正則表達式提取數據,更新UI,在意外狀態出現時進行狀態報警提示。網絡服務器接收數據后進行數據解包,根據識別信息,將數據下發至遠端親屬智能手機及社區醫生,親屬及社區醫生實時掌握手環使用者健康情況。
STM32F103CBT6屬于ARM架構處理器,支持操作系統運行,有豐富的外設,片內帶有DMA控制器、通用IO口、USART接口、SPI接口、T2C接口等,所有通用IO口都可以配置成外部中斷,主控制器電路如圖2。

圖2 主控制器電路框圖
軟件設計包括手環處理器程序設計和智能手機APP設計,STM32處理器程序基于C語言,進行人體端數據捕捉和處理,和手機建立藍牙通信,發送接收數據包,同時更新手環顯示屏;智能手機APP程序基于Java編程語言,打開APP登錄成功后開啟藍牙收發數據線程,當接收到數據流,和服務器建立TCP通信隧道,將數據流發送至網絡服務器,親屬同樣打開APP進入查看模式,實時接收服務器發送的數據,進行可視化圖線顯示,首先對各個功能IO口進行初始化配置,由于STM32每個IO口都是通用IO口,所以要根據每個IO口執行的功能進行輸入輸出方式設置。軟件程序流程圖如下圖3。

圖3 系統軟件程序流程圖
APP藍牙通信設計。實現藍牙功能需要調用的核心類BluetoothAdapter,由于手環藍牙需要發送數據到智能手機,智能手機需要發數據到手環藍牙,因此雙方藍牙為主從機模式。首先讀取手機藍牙狀態信息,判斷藍牙是否打開,若沒有則打開藍牙,掃描周圍設備,發現新設備,點擊選擇連接,驗證UUID碼是否一致,驗證PIN碼是否正確,如果不一致則結束本次連接動作,如果UUID碼一致,PIN碼正確,則建立連接,完成連接后可以開始進行數據傳輸,由于Android操作系統的運行機制屬于多線程運行,每一個服務都可以單獨開啟一個線程,線程中又可以同時執行多個任務,通過在Acitivity中創建Handler,每個Handler有一個消息池,各個子任務的溝通以及和主線程之間通信都是通過消息池來完成。比如藍牙接收消息任務,當有藍牙輸入流時,檢測到消息就會拋出msg消息加入消息池隊列,Handler不斷掃描消息池隊列中是否有信息,根據msg消息識別消息來自于哪個子任務,然后在藍牙子線程中執行相應的程序。比如接收到msg消息識別來自于藍牙輸入流,則在主線程中將輸入流接收到的數據傳送至TCP線程。
檢測心率信號通過外部中斷IO口,檢測心率傳感器輸出信號,心率采集芯片采集到的心率信息不利于處理器處理,經過硬件電路進行信號調理放大轉換成方波信號,這樣處理器就能正常觸發中斷識別信號,但是由于手環隨身攜帶,人走路或者運動時不可避免的會造成心率信號串入噪聲。下面我們來觀察一下心率模塊在人體不同狀態下輸出的信號波形如下圖4。

圖4 運動狀態心率信號波形
對比靜止狀態的傳感器輸出波形和運動狀態傳感器輸出波形差別很大,靜止狀態的波形很完好,直接檢測相鄰兩個脈沖上升沿或者下降沿時間差即可計算出準確的心率,但是對于運動狀態的心率信息,就需要用額外的方法進行數據分析了。通過觀察波形可以看到,即使信號很雜亂,但其還是有一定的心跳特征,在一段時間的脈沖不斷跳變之后,會出現一段相對比較長時間的維持高電平時間,因此,可以通過檢測一段相對較長時間的高電平結束下降沿到先一個相對較長時間的高電平結束下降沿之間的時間差來計算心率數據,這樣可以快速又準確的得到心率數據。
手環的數據分享離不開APP,本身手環并不能和互聯網互通,但是當手環和智能手機互聯時就可以借助手機的功能對互聯網進行訪問,因此智能手機APP在這里作為一個數據溝通的紐帶。同時,該設計的APP可同時滿足手環佩戴者使用,也可完成遠端親屬查看數據使用,通過選擇父端模式或子端模式,即可進入不同模式界面執行相應功能。當進入父端模式時,APP主要執行的功能是打開手機藍牙,通過藍牙連接手環,接收手環發送的數據,對數據進行分析判斷是否為有效數據,是則建立網絡連接隧道,通過4G或者WIFI網絡將數據發送到網絡服務器上。當進入子端模式時,APP主要執行網絡數據接收功能,同樣對數據進行判斷是否有效,是則按照設定的數據范圍要求進行判斷,判斷接收測量數據是否超出正常范圍,若超出正常范圍則控制手機振動或者響鈴進行提醒,同時在交互界面上畫出心率值波動曲線,更新運動狀態信息,以便實時掌握老人狀態。
該設計實現了老人心率及運動狀態的基本功能,通過實驗得到了滿意的結果。
[1]逄淑寧.可穿戴設備技術產業發展研究[J].電信網技術,2014(005):21-24.
[2]廉小親,金亮.基于脈搏傳感器的家用智能心率監控系統[J].東南大學學報:自然科學版,2005,35(A02): 245-247.
[3]熊平,劉剛,莊彩云等.基于 WiFi 技術的嵌入式病房監護系統的設計[J].中國醫學物理學雜志,2011,28(1):2447-2449.
[4]孟藏珍,許稼,花良發等.基于接收濾波器設計的MIMOSAR 波形耦合抑制[J].電波科學學報,2014,29(3):401-407.
[5]周進波,張磊,張敏等.基于Android系統藍牙開發的研究與實現[J].光學儀器,2013,(1):34-36.
[6]李汝山,孫彥萍,顏迎金.基于光敏器件的投影法藥品包裝檢測系統研究[J].機電信息,2013,(20):43-46.