馬衛民



關鍵詞:ADS1292;溫度傳感器LMT70;MPU6050 加速度傳感器模塊;STM32 單片機;藍牙模塊
中圖分類號: TP274 文獻標識碼: A
文章編號:1009-3044(2023)14-0066-03
隨著當今社會的不斷發展,人民生活水平的日益提高,人口老齡化問題愈發突出,人們對健康的需求越來越多,更多的人群參加各種運動以達到鍛煉身體、預防疾病的目的,但是運動也要量力而行,適當的運動會給我們帶來方方面面的好處,過度運動則會損害健康,并且還會讓我們老得更快。因此通過運動檢測提示運動者合理地控制運動量才能達到運動健身的目的。目前市面上已有的運動健康監測設備所能采集的人體運動健康數據不夠完善,很多實際的運動健康監測功能仍有待進一步改進、提高。因此設計一種基于藍牙技術的無線運動傳感系統非常有必要[1]。
無線傳感器網絡是由大量微型傳感器節點通過無線自組織方式構成的一種新型信息獲取網絡。它是傳感器、微電子和無線通信三大技術的綜合,可以實時地采集和處理傳感器網絡范圍內的所有對象的信息,并通過無線通信發送給用戶。每個傳感節點都具有一定計算處理能力、通信能力,同時功耗小,成本低。由相互協作的大量節點構成高度統一的網絡結構,可以提高數據采集的準確度以及整個系統運行的可靠性,在人力不可到達的一些特殊區域通過該網絡可以進行數據的采集、傳輸,其具有其他網絡所不具備的特性,廣泛用于國防、環境監測、智能家居、智慧農業等各種領域[2]。
設計采用無線傳感技術,通過ADS1292、LMT70、MPU6050等芯片測量使用者心電信號,體表溫度,運動步數,運動路程信息,利用藍牙無線通信方式把傳感器芯片實測的數據信息發送到服務器(手機)端,實現移動端數據的實時顯示,使用者可以很好地觀測自己的身體狀況和運動情況。系統采集的人體運動健康數據較為完善,數據檢測、處理精度能達到設計要求,藍牙通信的有效距離、穩定性、系統抗干擾性以及設備的可佩戴性能有待于進一步地提高,同時系統的最小化也是后期需要改進的。
1 方案設計
1.1 設計思路
系統核心為STM32單片機,通過ADS1292芯片、LMT70溫度傳感器、MPU6050加速度計傳感器將使用者心電信號,體表溫度信號,運動步數信號進行實時采樣,再經過調節電路、A/D模塊轉化后將數據送給STM32單片機處理,處理后的數據由TFT屏幕顯示出來,再通過藍牙模塊將處理后的數據上傳給后端服務器,并在移動服務端上顯示測試者的體表溫度、動態心電圖和各種運動信息[3]。
圖1為本設計無線運動傳感系統的原理框圖。
1.2 總體方案
設計是利用ADS1292自身的D/A轉換得出心電圖,LMT70傳感器輸出信號通過STM32內部A/D分析得出使用者體表溫度,使用MPU6050速度傳感器測得使用者運動步數,從而根據步幅計算出運動路程,STM32將采集到信號進行處理整合輸出到TFT顯示屏上進行顯示。再通過藍牙通信模塊將處理后的數據上傳給后端服務器,并在移動服務器端(手機)實時顯示使用者的動態心電圖以及體表溫度和各種運動信息。
1.3 電路設計
1.3.1 測量心電信號電路設計方案
將ADS1292采集數據導入Excel統計表格,得到一個波形圖。從波形中取相鄰2個極限值分別作為波峰、波谷,同時設置一個標志位,再設置一個定時器和一個心率計數器,數據采集時,當取到低于波谷界限值的數時標志自動位置1,當下一個取到高于波峰界限值時,標志位自動清零,定時器定時結束時由心率計數器計數次數可求得心率。
ADS1292心電傳感器是TI公司2012年出產的一款具有ADC 的芯片,主要應用在醫療儀器(心電圖ECG)。ADS1292內部由兩個可編程、低噪聲增益的放大器(PGA)和兩個高分辨率的模—數轉換器(ADC)組成,具有串行口外接(SPI)的兼容串口,集成了心電采集所需要的部件。本設計采用ADS1292芯片測量使用者的心電信號。
1.3.2 測量運動信息電路設計方案
方案采用MPU6050加速度傳感器測量使用者的運動信息。
MPU6050是一種目前主流用于運動測量的傳感器芯片。它內部集成了3軸的陀螺儀微電子機械系統和3軸速度計微電子機械系統,同時還包含一個數字處理器DMP[4]。測量角度選用陀螺儀傳感器,測量加速度使用加速度傳感器。MPU6050內部用了三個16 位的模式轉換器ADC,將測量的角度以及加速度模擬信號轉換為可輸出的數字信號,通過DMP處理分析可以精確跟蹤快速和慢速的運動,用以測量相關運動信息,同時減少了元件封裝所占用的空間。
1.3.3 測量體表溫度電路設計方案
本設計采用LMT70 測量運動者的體表溫度。LMT70是一款高精度、超小型、低功耗的模擬溫度傳感器,可用于大多數高精度,低功耗的溫度感測應用。其具有良好的溫度匹配性能,兩個相同制造工藝生產的LMT70的溫度誤差最多為0.1°C。因此LMT70是一個理想解決體表溫度測量的元件。
LMT70輸出的模擬信號經ADS1118芯片轉換為數字信號送入后方的32位微處理器,STM32處理后數據送給TFT屏進行溫度顯示。ADS1118一款精密的模擬-數字轉換器(ADC),它可以進行溫度采集,精度高,數值準確。STM32系列專為要求高性能、低成本、低功耗的嵌入式應用設計的ARM。
1.3.4 無線通信模塊選型
方案一:使用ESP8266[5]模塊ESP8266內部集成MCU能實現單片機之間串口通信,是一款串口Wi-Fi 模塊;模塊簡單易學、體積小、便于嵌入式開發。
方案二:藍牙模塊藍牙模塊是一種集成了藍牙功能的PCBA電路板,可以進行距離較短的無線通信。
出于藍牙模塊配置簡單,功耗低,穿透力強,可以同時連接多種設備,不過多占用CPU內存等優點的考慮,本設計選用方案二。具體設計電路原理圖如圖2。
根據以上設計的電路原理圖,組裝制作實際電路,電路板實物圖如圖3。
1.4 軟件流程圖(見圖4)
具體源程序略。
2 采樣信號分析與處理
2.1 心電信號產生的機理及測量方法。
2.1.1 心電信號產生的基本原理
心臟的電活動使心臟收縮。心臟的舒張、收縮活動可以在體表產生心電信號,心電信號作為一種生物電能可以通過放置在體表的心電電極傳導到心電設備上進行檢測。
2.1.2 心率檢測的分析方法
心率檢測的分析是通過檢測心電信號相鄰兩次峰值(如圖5,R峰-R峰)間期點數來進行分析的。圖5 中,R峰-R峰間期時間定義為每個心動間隔時間,根據R峰-R峰間期點數和采樣頻率就計算出R峰-R峰間期時間,STM32單片機先采樣1分鐘內的心電數據,然后分析、計算得到1分鐘的心電波的平均峰值。在采樣過程中,判斷采集到的數據是否達到0.7倍的心電波的平均峰值,若達到則計數器1加自動1,直至數據小于設定的閾值,記錄計數器數值然后清零。如果計數器1中的值(S1)在4~12之間,則認為檢測到心電波。心電波峰閾值檢測法原理如圖6所示。
由于一個心電波期間內心電波波峰值存在且唯一,求心電波峰所處點采用的是求斜率的方法。根據在一個心電波期間內心電波峰值所在的點斜率最小,將一個點與其左右相鄰兩點分別求差,比較兩次差的大小絕對值即可求得該點斜率大小。同理檢測出下一個相鄰的心電波峰,記錄下計數器2 的值(S2),即可求出兩個相鄰心電波峰值間期點數。在采樣頻率(f)一定情況下,即可求得相鄰兩個心電波峰值間期時間,從而利用公式(1)計算得到心率(M)。
2.2 運動量測量方法
設定“加速度”參量作為判斷分析跑步或步行特征的相關參數。個體的運動包括前向(“滾動”)、豎向(“偏航”)和側向(“俯仰”)三個分量,MPU6050分別檢測其x、y和z三個軸方向上的加速度大小。使用者攜帶計步器運動時,傳感器至少在一個坐標軸方向上會產生加速度的周期性變化,因此通過三個軸方向上加速度的動態峰值測量和閾值計算可以檢測、分析每步距離(L1)大小與跑步(或行走)的步數(X)。
動態閾值和動態精度[6]分析:測量系統每檢測100次自動更新一次三軸加速度測量的最小值和最大值。“動態閾值”為平均值。可以通過此閾值來判斷后面對使用者的多次采樣是否邁出步伐。
距離參數(L):運動者的運動距離。
依據上面計算的步伐數值,我們利用公式(2)計算得到距離參數數值。
3 測試結果
3.1 心率測量(數據見表1)
在室內環境下,分別針對使用者在不同運動場景下的心電檢測和心率測量,通過多次測量,力求達到準確性,心率測量相對誤差能達到小于3%。
3.2 溫度測量(數據見表2)
對使用者的體表溫度進行實時采集,溫度采樣率為12次/分鐘;體表溫度測量誤差絕對值可以達到不大于0.5℃。
3.3 步數測量(數據見表3)
對運動者的運動步數進行多次測量,測量相對誤差可以達到不大于4%。
3.4 距離測量(數據見表4)
通過多次測試,運動距離檢測相對誤差可以達到不大于3%。
3.5 藍牙模塊的調試
無線運動傳感系統各節點能通過藍牙無線網絡上傳所監測的使用者的基本心電信號、體表溫度信號和運動信息,并可以在移動服務器(手機)端實時顯示動態使用者的心電圖、體表溫度和運動信息,實現傳輸時延短的優點。
測試結果分析:
1)本設計的無線運動傳感系統能實時采集使用者的心電信號,實現動態心電圖的顯示;可以通過STM32單片機的分析計算得到使用者的心率,心率測量相對誤差能達到小于5%。
2)可以對使用者的體表溫度進行實時采集,溫度采樣率為12次/分鐘;體表溫度測量誤差絕對值可以達到不大于0.5℃。
3)運動距離檢測相對誤差可以達到不大于3%;運動步數記錄相對誤差可以達到不大于4%。
4 結論
基于藍牙技術的無線運動傳感系統設計采用了先進的無線傳感技術,由ADS1292、LMT70、MPU6050 等傳感器芯片測量使用者身體狀況和運動情況等相關數據,由STM32單片機處理后利用藍牙無線通信方式把心電信息、溫度信息和相關的運動信息發送到移動服務器(手機)端,實現在移動端數據的實時顯示,使用者可以很好地觀測自己的身體狀況和運動情況。設計從方案選擇、元器件的選定、程序的編寫、電路板的仿真、制作到最終的調試,通過不斷的調試、改進,系統基本達到了預期的設計效果,使用者身體狀況和運動情況等相關數據采集結果均在設計允許誤差的范圍之內,基本實現了系統的設計要求。后期會針對系統各項數據的檢測精度,藍牙通信的有效距離、穩定性以及系統抗干擾性能做進一步的優化,同時系統的最小化也是后期需要改進的。