文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2015.09.017
中文引用格式: 蔡靖,田入運(yùn),劉磊,等. 基于人體傳感和Android技術(shù)的運(yùn)動(dòng)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2015,41(9):63-66.
英文引用格式: Cai Jing,Tian Ruyun,Liu Lei,et al. Design and implementation of a movement monitoring system based on the human body sensor and Android technology[J].Application of Electronic Technique,2015,41(9):63-66.
0 引言
運(yùn)動(dòng)競(jìng)技和健康鍛煉中的運(yùn)動(dòng)過(guò)量和運(yùn)動(dòng)姿態(tài)不正確,會(huì)導(dǎo)致人體體能下降,平衡感降低,嚴(yán)重時(shí)會(huì)導(dǎo)致肌肉萎縮、軟骨損傷等永久性傷害。三軸加速度傳感器可全面有效地反應(yīng)人體運(yùn)動(dòng)情況,結(jié)合Android平臺(tái),構(gòu)建運(yùn)動(dòng)模型,可有效糾正運(yùn)動(dòng)員不標(biāo)準(zhǔn)的運(yùn)動(dòng)姿態(tài),優(yōu)化運(yùn)動(dòng)訓(xùn)練、提高效率,防止運(yùn)動(dòng)損傷與運(yùn)動(dòng)過(guò)量。將該系統(tǒng)應(yīng)用于運(yùn)動(dòng)鍛煉中,還可有效預(yù)防老年人摔倒受傷,并為慢性病和肥胖癥患者提供評(píng)估自身運(yùn)動(dòng)量的相關(guān)幫助。
1 運(yùn)動(dòng)信息數(shù)學(xué)建模分析
1.1 運(yùn)動(dòng)過(guò)程能量消耗建模
每t1秒的步數(shù)n:第t1秒末人體的速度V1=V0+a1t1(m/s),t1秒內(nèi)的里程為x1=v0t1+a1(m),設(shè)一個(gè)成年人的步長(zhǎng)為a(單位:m),則該人在t1秒內(nèi)所走步數(shù)可近似為n=x1/a。
運(yùn)動(dòng)平均速度V:由公式V=步頻n×步長(zhǎng)l,可得到1 s內(nèi)平均速度,同時(shí)由于步長(zhǎng)往往隨著步頻的改變而變化,因而不同步頻運(yùn)動(dòng)過(guò)程中的平均速度也不盡相同。由此,運(yùn)動(dòng)過(guò)程能量消耗也將隨步頻及運(yùn)動(dòng)速度的改變而產(chǎn)生變化。以大量身高相仿的運(yùn)動(dòng)對(duì)象為例,對(duì)其運(yùn)動(dòng)過(guò)程中的各運(yùn)動(dòng)參數(shù)進(jìn)行匯總分析,得到步長(zhǎng)l(單位:m)與步頻n(單位:步/s)的關(guān)系大致如表1所示 。
能量消耗W:依據(jù)上述對(duì)平均速度的求導(dǎo)辦法,對(duì)運(yùn)動(dòng)過(guò)程中的平均速度與能量消耗進(jìn)行分析,得到如表2所示數(shù)據(jù),由表2可推導(dǎo)n秒內(nèi)卡路里消耗總量W=4.5w1i/1 800(C),其中w1(單位kg)為個(gè)體體重,由此便完成了對(duì)運(yùn)動(dòng)過(guò)程中能量消耗的建模分析。
1.2 人體運(yùn)動(dòng)模型的識(shí)別
1.2.1 基于三軸加速度校準(zhǔn)的人體姿態(tài)角計(jì)算
人體周?chē)鷧^(qū)域的劃分以人體坐標(biāo)系為基準(zhǔn),判斷人體姿態(tài)主要利用俯仰角和翻滾角,在人體姿態(tài)角的計(jì)算過(guò)程中,設(shè)g為重力加速度,GX、GY、GZ為加速度傳感器三個(gè)正交測(cè)量軸上的測(cè)量值,俯仰角為,翻滾角為,求導(dǎo)辦法如下所示,由式(1)求得,由式(2)求得。
1.2.2 基于三軸加速度傳感器的運(yùn)動(dòng)模式的識(shí)別
人體運(yùn)動(dòng)模型可以看作是由轉(zhuǎn)身、步行、原地跳躍、下蹲等幾個(gè)基本的運(yùn)動(dòng)元素有機(jī)組合而成。人體運(yùn)動(dòng)模式識(shí)別是以人體姿態(tài)作為主要提取特征,以人體坐標(biāo)系為基準(zhǔn),進(jìn)而對(duì)人體周?chē)臻g分別進(jìn)行水平和垂直劃分的,劃分方法如圖1所示。
人體周?chē)臻g在XY平面上被平均分成四個(gè)區(qū)域,A、B、C、D區(qū)域分別為人體正面、左面、后面、右面空間。站立/蹲下/站立,站立/坐下/站立,以及前傾跑步等多種運(yùn)動(dòng)方式發(fā)生在A區(qū)域。仰臥、仰坐等動(dòng)作發(fā)生在C區(qū)域。側(cè)臥或跌倒等動(dòng)作發(fā)生在B、D區(qū)域。垂直軸到水平面共90°的空間被劃分為3個(gè)區(qū)域,為偏離垂直軸的角度。判定方法見(jiàn)表3。垂直方向上的劃分更加強(qiáng)調(diào)人體在某一方向運(yùn)動(dòng)的強(qiáng)烈程度。
位于D區(qū)。使用三維向量[X1,X2,X3]代表初始狀態(tài)、中間狀態(tài)和最終狀態(tài),獲取了人體的姿態(tài)序列,從而進(jìn)一步確定運(yùn)動(dòng)中軀干部分姿態(tài)變化的過(guò)程。
2 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)
系統(tǒng)通過(guò)測(cè)量三軸加速度(GX、GY、GZ),完成卡路里消耗計(jì)算,利用運(yùn)動(dòng)模式識(shí)別算法實(shí)現(xiàn)對(duì)人體姿態(tài)判斷以及跌倒警報(bào)預(yù)判,利用GPS定位技術(shù)實(shí)現(xiàn)人體運(yùn)動(dòng)軌跡跟蹤。綜合計(jì)算,以滿足人體運(yùn)動(dòng)狀態(tài)的監(jiān)測(cè)。
系統(tǒng)總體結(jié)構(gòu)流程圖如圖2所示。
2.1 硬件系統(tǒng)的設(shè)計(jì)
硬件系統(tǒng)由監(jiān)測(cè)人體運(yùn)動(dòng)的三軸加速度傳感器MPU6050、Micro SD卡、溫度傳感器DS18B20、有機(jī)發(fā)光二極管OLED顯示屏、處理數(shù)據(jù)的微處理器MSP430、以及藍(lán)牙模塊HC05等組成。系統(tǒng)框架和信息流向如圖3所示。
由圖3可知,微處理器通過(guò)溫度傳感器獲取人體體溫參數(shù),通過(guò)三軸加速度傳感器獲取人體在不同運(yùn)動(dòng)狀態(tài)時(shí)的三軸加速度以及人體所處的環(huán)境溫度。微處理器一方面將這些數(shù)據(jù)通過(guò)顯示屏顯示出來(lái),另一方面又將這些數(shù)據(jù)存儲(chǔ)到SD卡中,以便對(duì)所獲取的數(shù)據(jù)進(jìn)行離線分析;同時(shí)還可將這些數(shù)據(jù)通過(guò)藍(lán)牙模塊傳送到手機(jī)安卓平臺(tái),通過(guò)算法分析和安卓手機(jī)編程將三軸加速度進(jìn)行整合計(jì)算出人體在不同運(yùn)動(dòng)狀態(tài)下的速度,里程、卡路里消耗以及運(yùn)動(dòng)姿態(tài)情況,并在手機(jī)上顯示出來(lái)。
2.2 軟件系統(tǒng)的設(shè)計(jì)
系統(tǒng)軟件流程圖如圖4所示。
2.2.1 Android平臺(tái)的創(chuàng)建
Android平臺(tái)的服務(wù)端采用 Struts2+Hibernate 框架架構(gòu),數(shù)據(jù)存儲(chǔ)采用 MySQL 數(shù)據(jù)庫(kù)。服務(wù)器端架構(gòu)圖如圖5所示。
整個(gè)服務(wù)端采用多層次的架構(gòu),從上到下依次是控制器層、模型層、持久化層和數(shù)據(jù)庫(kù)層。Struts2 充當(dāng)控制層和模型層,Hibernate 充當(dāng)持久層。Struts2 框架中的FiltrDispatcher 作為控制器,它作為 Selvert 過(guò)濾器,接收用戶請(qǐng)求,過(guò)濾并轉(zhuǎn)發(fā)。Action 作為 Struts2 中的模型層,用來(lái)調(diào)用業(yè)務(wù)邏輯處理請(qǐng)求,還可以進(jìn)行數(shù)據(jù)的傳遞。
2.2.2 GPS定位技術(shù)
GPS全球定位系統(tǒng)是通過(guò)分析GPS接收機(jī)終端和基站之間所傳播信號(hào)的特征參數(shù)來(lái)實(shí)現(xiàn)位置獲取功能的。當(dāng)前Android手機(jī)大都配備了完備的GPS接收系統(tǒng),該定位技術(shù)利用空間距離后方交會(huì)的方法,把GPS定位衛(wèi)星的瞬間位置當(dāng)作已知數(shù)據(jù),進(jìn)而確定GPS接收機(jī)的所處位置。在此基礎(chǔ)上本系統(tǒng)通過(guò)對(duì)百度Map API技術(shù)的調(diào)用,構(gòu)建相應(yīng)的配套服務(wù)體系,通過(guò)百度Map API便可將設(shè)備所處的地理位置信息實(shí)時(shí)顯示在app界面,同時(shí)還能夠?qū)崿F(xiàn)地圖的加載、縮放及瀏覽功能,滿足用戶在使用該系統(tǒng)過(guò)程中的定位需求。
3 實(shí)驗(yàn)結(jié)果與分析
基于人體傳感和Android技術(shù)的運(yùn)動(dòng)監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)實(shí)驗(yàn)樣本為10名身體健康、身高在160 cm~180 cm,體重在50 kg~60 kg的志愿者,實(shí)驗(yàn)距離為50 m,實(shí)驗(yàn)方法為直立行走、慢跑、跌倒三種運(yùn)動(dòng)狀態(tài),采集到的瞬時(shí)加速度實(shí)驗(yàn)數(shù)據(jù)(忽略方向)如表4所示。將此過(guò)程中的能量消耗作為實(shí)驗(yàn)變量,以此同標(biāo)準(zhǔn)跑步機(jī)所測(cè)得的能量消耗數(shù)據(jù)進(jìn)行對(duì)比,進(jìn)而便可分析系統(tǒng)測(cè)試結(jié)果的準(zhǔn)確程度。
3.1 實(shí)驗(yàn)準(zhǔn)確性分析
實(shí)驗(yàn)中,志愿者佩戴運(yùn)動(dòng)監(jiān)測(cè)系統(tǒng)與兄弟牌跑步機(jī)WL-195運(yùn)動(dòng)進(jìn)行對(duì)比測(cè)試,測(cè)試結(jié)果數(shù)據(jù)如表5、表6、表7所示。
3.2 實(shí)驗(yàn)數(shù)據(jù)分析
X、Y、Z軸的加速度為10名測(cè)試者在相同運(yùn)動(dòng)狀態(tài)下的平均值,而合成的加速度為三軸加速度,位于A區(qū),符合人體正常走步時(shí)的運(yùn)動(dòng)姿態(tài);當(dāng)人體慢跑時(shí),?琢的平均值為37.64°,處于過(guò)渡態(tài),并且位于D區(qū),符合人體跌倒時(shí)的運(yùn)動(dòng)姿態(tài)。實(shí)驗(yàn)測(cè)得三分鐘內(nèi)人體運(yùn)動(dòng)時(shí)的實(shí)時(shí)三軸加速度,由此合成得到人體正常行走、慢跑、正常行走時(shí)突然跌倒等階段的加速度曲線圖如分別圖6、圖7、圖8所示。
圖6~圖8三個(gè)曲線圖直觀地顯示了正常行走、跑步狀態(tài)以及跌倒?fàn)顟B(tài)下的加速度變化情況。此外,由于人體運(yùn)動(dòng)過(guò)程中的合加速度是由X、Y、Z三軸加速度進(jìn)行矢量合成求得的,當(dāng)人體正常行走和跑步時(shí),X軸加速度明顯大于Y軸和Z軸的加速度,且人體跑步過(guò)程中的三軸加速度分量都要明顯高于人體正常正常行走過(guò)程中的三軸加速度分量。人體在跌倒時(shí)處于失重狀態(tài),由于受到重力加速度影響,此時(shí)Z軸加速度出現(xiàn)明顯變化。人體跌倒時(shí)有不同姿態(tài),因此人體跌倒時(shí)的三軸加速度不盡相同,由圖8可知跌倒時(shí)的加速度與正常行走和跑步時(shí)的合速度出現(xiàn)明顯區(qū)別。
4 結(jié)論
本文提出一種便攜式運(yùn)動(dòng)監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)方案,通過(guò)MSP430微控制器結(jié)合Android手機(jī)平臺(tái)實(shí)現(xiàn)人體運(yùn)動(dòng)的三軸加速度、速度、里程等參數(shù)測(cè)量,并通過(guò)運(yùn)動(dòng)模式識(shí)別算法判斷人體運(yùn)動(dòng)姿態(tài),并發(fā)出跌倒警報(bào),并且利用GPS定位技術(shù)對(duì)運(yùn)動(dòng)路線進(jìn)行實(shí)時(shí)跟蹤。系統(tǒng)對(duì)運(yùn)動(dòng)參數(shù)分析處理可得到運(yùn)動(dòng)消耗的卡路里,評(píng)估人體運(yùn)動(dòng)量,以防止運(yùn)動(dòng)過(guò)度和運(yùn)動(dòng)損傷對(duì)健康造成威脅。
參考文獻(xiàn)
[1] 吳黎明,張力鍇,李怡凡.基于ANN和單個(gè)三軸加速度傳感器的汽車(chē)運(yùn)動(dòng)姿態(tài)測(cè)量[J].傳感技術(shù)學(xué)報(bào),2011,24(6):923-927.
[2] 陸樂(lè),戴劍松,徐波,等.加速度傳感器測(cè)量不同速度運(yùn)動(dòng)時(shí)能量消耗的研究[J].西安體育學(xué)院學(xué)報(bào),2013,30(1):104-107.
[3] 杜喆.基于接近式傳感器電子計(jì)步器的設(shè)計(jì)[J].機(jī)械與電子,2014(1):80-81.
[4] 劉鵬,盧潭城,呂愿愿,等.基于MEMS三軸加速度傳感器的摔倒檢測(cè)[J].傳感技術(shù)學(xué)報(bào),2014,27(4):570-574.
[5] 黃棉波,楊豐,王磊,等.基于無(wú)線傳感器的患者運(yùn)動(dòng)信號(hào)檢測(cè)系統(tǒng)設(shè)計(jì)及其應(yīng)用[J].醫(yī)療衛(wèi)生裝備,2011,32(1):4-7.
[6] 朱國(guó)忠,韋彩虹,潘敏.基于三維加速度傳感器的人體運(yùn)動(dòng)能耗檢測(cè)算法的研究[J].傳感技術(shù)學(xué)報(bào),2001,24(8):1217-1222.
[7] 蔡忠建.人體活動(dòng)量的測(cè)量[J].渝州大學(xué)學(xué)報(bào),1997,14(2):66-70.
[8] 邱淑敏,王歡,江崇民.運(yùn)動(dòng)健身能量消耗簡(jiǎn)易測(cè)量方法的效度研究[J].體育科學(xué),2013,32(6):69-76.
[9] 朱弋,鄭爾信.人體運(yùn)動(dòng)量及能耗的測(cè)量[J].國(guó)外醫(yī)學(xué)生物醫(yī)學(xué)工程分冊(cè),1997,17(4):202-206.
[10] 薛洋.基于單個(gè)加速度傳感器的人體運(yùn)動(dòng)模式識(shí)別[D].廣州:華南理工大學(xué),2011.
[11] 李路.基于多傳感器的人體運(yùn)動(dòng)模式識(shí)別研究[D].濟(jì)南:山東大學(xué),2010.
[12] 吳忠澤.基于智能移動(dòng)終端的人體運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),2011.