【学习笔记】传感技术(2):基于人体传感和Android技术的运动监测系统设计与实现
2015年电子技术应用第9期
作者: 蔡 靖,田入运,刘 磊,周 瑞
摘 要: 为了避免运动过程中和比赛中运动姿态不正确以及运动过量对身体造成的伤害,提出了基于人体传感和Android技术的运动监测系统的设计,在运动过程中对人体运动参数和运动姿态实时监测,通过Android平台实现卡路里消耗计算和运动姿态建模评估,以避免出现运动损伤和体能透支现象。监测系统以MSP430单片机为控制核心,采用MPU6050三轴加速度传感器实时测量人体三轴加速度,利用Android平台计算加速度、速度、里程等运动参数、运动中消耗的卡路里能量,以及人体运动轨迹跟踪、定位;并通过人体运动模型识别算法评估人体运动姿态,实现危险动作预判。实验证明系统能够实现实时运动监测、运动跟踪定位,保护运动者的身体健康。
0 引言
运动竞技和健康锻炼中的运动过量和运动姿态不正确,会导致人体体能下降,平衡感降低,严重时会导致肌肉萎缩、软骨损伤等永久性伤害。三轴加速度传感器可全面有效地反应人体运动情况,结合Android平台,构建运动模型,可有效纠正运动员不标准的运动姿态,优化运动训练、提高效率,防止运动损伤与运动过量。将该系统应用于运动锻炼中,还可有效预防老年人摔倒受伤,并为慢性病和肥胖症患者提供评估自身运动量的相关帮助。
1 运动信息数学建模分析
1.1 运动过程能量消耗建模
每t1秒的步数n:第t1秒末人体的速度V1=V0+a1t1(m/s),t1秒内的里程为x1=v0t1+a1(m),设一个成年人的步长为a(单位:m),则该人在t1秒内所走步数可近似为n=x1/a。
运动平均速度V:由公式V=步频n×步长l,可得到1 s内平均速度,同时由于步长往往随着步频的改变而变化,因而不同步频运动过程中的平均速度也不尽相同。由此,运动过程能量消耗也将随步频及运动速度的改变而产生变化。以大量身高相仿的运动对象为例,对其运动过程中的各运动参数进行汇总分析,得到步长l(单位:m)与步频n(单位:步/s)的关系大致如表1所示 。
能量消耗W:依据上述对平均速度的求导办法,对运动过程中的平均速度与能量消耗进行分析,得到如表2所示数据,由表2可推导n秒内卡路里消耗总量W=4.5w1i/1 800(C),其中w1(单位kg)为个体体重,由此便完成了对运动过程中能量消耗的建模分析。
1.2 人体运动模型的识别
1.2.1 基于三轴加速度校准的人体姿态角计算
人体周围区域的划分以人体坐标系为基准,判断人体姿态主要利用俯仰角和翻滚角,在人体姿态角的计算过程中,设g为重力加速度,GX、GY、GZ为加速度传感器三个正交测量轴上的测量值,俯仰角为,翻滚角为,求导办法如下所示,由式(1)求得,由式(2)求得。
1.2.2 基于三轴加速度传感器的运动模式的识别
人体运动模型可以看作是由转身、步行、原地跳跃、下蹲等几个基本的运动元素有机组合而成。人体运动模式识别是以人体姿态作为主要提取特征,以人体坐标系为基准,进而对人体周围空间分别进行水平和垂直划分的,划分方法如图1所示。
人体周围空间在XY平面上被平均分成四个区域,A、B、C、D区域分别为人体正面、左面、后面、右面空间。站立/蹲下/站立,站立/坐下/站立,以及前倾跑步等多种运动方式发生在A区域。仰卧、仰坐等动作发生在C区域。侧卧或跌倒等动作发生在B、D区域。垂直轴到水平面共90°的空间被划分为3个区域,为偏离垂直轴的角度。判定方法见表3。垂直方向上的划分更加强调人体在某一方向运动的强烈程度。
位于D区。使用三维向量[X1,X2,X3]代表初始状态、中间状态和最终状态,获取了人体的姿态序列,从而进一步确定运动中躯干部分姿态变化的过程。
2 系统总体结构设计
系统通过测量三轴加速度(GX、GY、GZ),完成卡路里消耗计算,利用运动模式识别算法实现对人体姿态判断以及跌倒警报预判,利用GPS定位技术实现人体运动轨迹跟踪。综合计算,以满足人体运动状态的监测。
系统总体结构流程图如图2所示。
2.1 硬件系统的设计
硬件系统由监测人体运动的三轴加速度传感器MPU6050、Micro SD卡、温度传感器DS18B20、有机发光二极管OLED显示屏、处理数据的微处理器MSP430、以及蓝牙模块HC05等组成。系统框架和信息流向如图3所示。
由图3可知,微处理器通过温度传感器获取人体体温参数,通过三轴加速度传感器获取人体在不同运动状态时的三轴加速度以及人体所处的环境温度。微处理器一方面将这些数据通过显示屏显示出来,另一方面又将这些数据存储到SD卡中,以便对所获取的数据进行离线分析;同时还可将这些数据通过蓝牙模块传送到手机安卓平台,通过算法分析和安卓手机编程将三轴加速度进行整合计算出人体在不同运动状态下的速度,里程、卡路里消耗以及运动姿态情况,并在手机上显示出来。
2.2 软件系统的设计
系统软件流程图如图4所示。
2.2.1 Android平台的创建
Android平台的服务端采用 Struts2+Hibernate 框架架构,数据存储采用 MySQL 数据库。服务器端架构图如图5所示。
整个服务端采用多层次的架构,从上到下依次是控制器层、模型层、持久化层和数据库层。Struts2 充当控制层和模型层,Hibernate 充当持久层。Struts2 框架中的FiltrDispatcher 作为控制器,它作为 Selvert 过滤器,接收用户请求,过滤并转发。Action 作为 Struts2 中的模型层,用来调用业务逻辑处理请求,还可以进行数据的传递。
2.2.2 GPS定位技术
GPS全球定位系统是通过分析GPS接收机终端和基站之间所传播信号的特征参数来实现位置获取功能的。当前Android手机大都配备了完备的GPS接收系统,该定位技术利用空间距离后方交会的方法,把GPS定位卫星的瞬间位置当作已知数据,进而确定GPS接收机的所处位置。在此基础上本系统通过对百度Map API技术的调用,构建相应的配套服务体系,通过百度Map API便可将设备所处的地理位置信息实时显示在app界面,同时还能够实现地图的加载、缩放及浏览功能,满足用户在使用该系统过程中的定位需求。
3 实验结果与分析
基于人体传感和Android技术的运动监测系统的设计实验样本为10名身体健康、身高在160 cm~180 cm,体重在50 kg~60 kg的志愿者,实验距离为50 m,实验方法为直立行走、慢跑、跌倒三种运动状态,采集到的瞬时加速度实验数据(忽略方向)如表4所示。将此过程中的能量消耗作为实验变量,以此同标准跑步机所测得的能量消耗数据进行对比,进而便可分析系统测试结果的准确程度。
3.1 实验准确性分析
实验中,志愿者佩戴运动监测系统与兄弟牌跑步机WL-195运动进行对比测试,测试结果数据如表5、表6、表7所示。
3.2 实验数据分析
X、Y、Z轴的加速度为10名测试者在相同运动状态下的平均值,而合成的加速度为三轴加速度,位于A区,符合人体正常走步时的运动姿态;当人体慢跑时,?琢的平均值为37.64°,处于过渡态,并且位于D区,符合人体跌倒时的运动姿态。实验测得三分钟内人体运动时的实时三轴加速度,由此合成得到人体正常行走、慢跑、正常行走时突然跌倒等阶段的加速度曲线图如分别图6、图7、图8所示。
图6~图8三个曲线图直观地显示了正常行走、跑步状态以及跌倒状态下的加速度变化情况。此外,由于人体运动过程中的合加速度是由X、Y、Z三轴加速度进行矢量合成求得的,当人体正常行走和跑步时,X轴加速度明显大于Y轴和Z轴的加速度,且人体跑步过程中的三轴加速度分量都要明显高于人体正常正常行走过程中的三轴加速度分量。人体在跌倒时处于失重状态,由于受到重力加速度影响,此时Z轴加速度出现明显变化。人体跌倒时有不同姿态,因此人体跌倒时的三轴加速度不尽相同,由图8可知跌倒时的加速度与正常行走和跑步时的合速度出现明显区别。
4 结论
本文提出一种便携式运动监测系统的设计方案,通过MSP430微控制器结合Android手机平台实现人体运动的三轴加速度、速度、里程等参数测量,并通过运动模式识别算法判断人体运动姿态,并发出跌倒警报,并且利用GPS定位技术对运动路线进行实时跟踪。系统对运动参数分析处理可得到运动消耗的卡路里,评估人体运动量,以防止运动过度和运动损伤对健康造成威胁。
参考文献
[1] 吴黎明,张力锴,李怡凡.基于ANN和单个三轴加速度传感器的汽车运动姿态测量[J].传感技术学报,2011,24(6):923-927.
[2] 陆乐,戴剑松,徐波,等.加速度传感器测量不同速度运动时能量消耗的研究[J].西安体育学院学报,2013,30(1):104-107.
[3] 杜喆.基于接近式传感器电子计步器的设计[J].机械与电子,2014(1):80-81.
[4] 刘鹏,卢潭城,吕愿愿,等.基于MEMS三轴加速度传感器的摔倒检测[J].传感技术学报,2014,27(4):570-574.
[5] 黄棉波,杨丰,王磊,等.基于无线传感器的患者运动信号检测系统设计及其应用[J].医疗卫生装备,2011,32(1):4-7.
[6] 朱国忠,韦彩虹,潘敏.基于三维加速度传感器的人体运动能耗检测算法的研究[J].传感技术学报,2001,24(8):1217-1222.
[7] 蔡忠建.人体活动量的测量[J].渝州大学学报,1997,14(2):66-70.
[8] 邱淑敏,王欢,江崇民.运动健身能量消耗简易测量方法的效度研究[J].体育科学,2013,32(6):69-76.
[9] 朱弋,郑尔信.人体运动量及能耗的测量[J].国外医学生物医学工程分册,1997,17(4):202-206.
[10] 薛洋.基于单个加速度传感器的人体运动模式识别[D].广州:华南理工大学,2011.
[11] 李路.基于多传感器的人体运动模式识别研究[D].济南:山东大学,2010.
[12] 吴忠泽.基于智能移动终端的人体运动状态监测系统的设计与实现[D].广州:华南理工大学,2011.