基于6轴加速度传感器的步态分析研究.docx
- 文档编号:4047552
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:11
- 大小:27.82KB
基于6轴加速度传感器的步态分析研究.docx
《基于6轴加速度传感器的步态分析研究.docx》由会员分享,可在线阅读,更多相关《基于6轴加速度传感器的步态分析研究.docx(11页珍藏版)》请在冰豆网上搜索。
基于6轴加速度传感器的步态分析研究
基于6轴加速度传感器的步态分析研究
基于6轴加速度传感器的步态分析课程:
现代检测技术学院:
信息工程学院专业:
学号:
姓名:
老师:
课程:
现代检测技术学院:
信息工程学院专业:
学号:
姓名:
老师:
目录基于6轴加速度传感器的步态分析........................................................11.绪论........................................................................................................11.1课题研究背景和意义..................................................................11.2国内外研究现状..........................................................................12.MPU6050.................................................................................................32.1MPU6050简介.............................................................................32.2MPU6050引脚图、轴向及其说明.............................................32.3MPU6050外围电路及其内部结构.............................................52.4MPU6050时钟及其中断机制.....................................................63.方案设计及原理说明.............................................................................83.1系统的总体设计..........................................................................83.2系统的硬件设计..........................................................................93.2.1主控制电路.......................................................................93.2.2电源模块.........................................................................103.2.3传感器模块.....................................................................103.2.4开关模块.........................................................................113.3系统的软件设计........................................................................124.数据传输与上位机简介.....................................................................144.1主从机交互及数据输出............................................................144.2上位机界面及其使用简介.......................................................175.软件系统原理与测试...........................................................................205.1卡尔曼滤波................................................................................205.2离散数据的绘制.......................................................................225.3步态分析...................................................................................256.总结........................................................................................................27致谢...........................................................................................................28参考文献...................................................................................................29第1页1.绪论随着社会的发展,人的健康问题受到的重视越来越多。
通过对人步态的研究,并且对其步态情况做出评价,可以为患有异常步态病的人的康复提供可靠的资料,具有对人体健康状况的监测作用和警示作用,以防止慢性病的发展。
1.1课题研究背景和意义步态,即人走路的姿势。
作为一种生物特征,它具有不受距离影响、非侵犯性、难以伪装、受环境影响小等独特的优点,因而近年来备受关注。
步态分析是对人类运动功能的综合研究,包括对人类运动特征的测量、描述和数量的评估。
国内外的许多知名大学和研究机构,如美国麻省理工学院、中国科学院自动化研究所等,都广泛展开了步态识别研究工作。
步态的独特性对医疗的异步病态、偏瘫等疾病的预防、诊断和康复可以起到很显著的辅助作用。
而且,在现代化的体育训练中,也可以通过步态特征来监测运动员的体能消耗情况、动作准确程度等,制定科学的训练方案。
此外,步态在机器人的行走、人的行为理解等科学研究上也占有举足轻重的地位。
1.2国内外研究现状在国内,许多大学和机构正在进行步态识别技术的研究,其中于领军地位的是由归国博士谭铁牛领导的中科院自动化研究所,其研究取得了令人鼓舞的成果,如王亮和胡卫明提出的基于统计主元分析的第2页方法,使用14个相互连接的圆台对人体建模,通过一定的运动约束,将人体用一个12维的动态特征向量表示,通过姿态评价函数对视频中的人体姿势进行恢复,提取模型参数进行步态识别。
在国外,同样也有很多的学校和研究机构对步态的识别进行研究。
最早识别行人的方法是由Niyogi与Adelson提出的;Cunado等不仅考虑人行走过程中双腿的运动情况,用链接的钟摆模拟腿部的运动变化,而且从其倾斜角度信号的频率分量中获取步态特征;Lee采用7个椭圆表达人的侧面二值化图像的身体的不同部分,每个椭圆用质心等4个特征表示,加上整个身体图像的质心的高度一共29个特征表示整个人体侧面图像,通过模板匹配的方法进行步态识别;Yoo等人根据解剖学的知识提取除头、脖颈、肩、胸、膝盖和脚踝的位置。
然后计算各个位置的运动学特征进行步态的分类识别。
对不同运动方式的加速度信号进行分类,属于步态识别的范畴。
步态识别,根据获取人体生理信息的方式不同,可以分为基于图像的步态识别和基于加速度信号的步态识别。
基于图像的步态识别,是通过对视频/图像序列进行一系列处理,实现自身动作的识别。
基于加速度信号的步态分类,是将加速度传感器放在身体的某些部位,如腰部、大腿、手臂、脖子、手腕等,提取人体的运动加速度信号,并对加速度信号进行算法处理,以实现对不同运动方式的分类。
第3页2.MPU60502.1MPU6050简介MPU6050模块是InvenSense公司推出的一款低成本的6轴传感器模块,包括三轴加速度,三轴角速度,以及三轴角度,其体积小巧,用途非常广。
做平衡小车,四轴飞行器,飞行鼠标等等,都是必不可少而且是最优的传感器解决方案。
MPU-6050对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。
为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的。
一个片上1024字节的FIFO,有助于降低系统功耗。
和所有设备寄存器之间的通信采用400kHz的I2C接口或1MHz的SPI接口。
对于需要高速传输的应用,对寄存器的读取和中断可用20MHz的SPI。
另外,片上还内嵌了一个温度传感器和在工作环境下仅有1%变动的振荡器。
关于电源,MPU-6050可支持VDD范围2.5V5%,3.0V5%,或3.3V5%。
另外MPU-6050还有一个VLOGIC引脚,用来为I2C输出提供逻辑电平。
VLOGIC电压可取1.85%或者VDD。
2.2MPU6050引脚图、轴向及其说明MPU6050能分别检测x、y、z三个轴向的加速度,角度,角加速度,其轴向和贴片封装如下图2-1所示。
第4页图2-1MPU6050管脚图及其轴向总的来说,MPU6050算是现在比较便宜好用的加速度陀螺仪芯片,但是其直接读取时噪声大,需要进行滤波。
因此采用卡尔曼动态滤波算法,将其输出改成串口,这种方法非常好,有些参数可以根据实际应用进行调整,改进效果。
第5页2.3MPU6050外围电路及其内部结构图2-2MPU6050常用外围电路接法图2-3MPU6050内部构造图第6页2.4MPU6050时钟及其中断机制MPU-6050它有着比较灵活的时钟机制,内部的同步电路不仅可使用内部的时钟源还可以使用外部的时钟源。
内部的同步电路包括信号调整、ADC、DMP以及各样的控制电路与寄存器,它的时钟可由一个片上的PLL产生。
时钟源的选择不光考虑的是外部时钟的有效性,还有功率损耗,时钟精确性等因素。
例如,如果功率损耗是主要考虑因素,当用DMP处理加速度计数据时,使陀螺仪关闭,此时最好选择内部振荡器作时钟;然而陀螺仪工作的时候,使用其自带时钟可以保证更好的时钟精确性。
当MPU-6050初次启动时,要先使用其内部时钟,直到系统设置准备好使其他时钟源,比方说要使用MEMS振荡器,就必须等到它可以稳定工作。
1)运动中断:
与自由落体中断相似。
为了排除重力所产生的误差,加速度计所测值都要通过一个可配置数字高通滤波器(DHPF)。
通过高通滤波器后的值如果大于事先规定的阈值,那么就会被认为是有效的。
对于每一个有效的采样值,计数器加1,而对无效值则计数器减1。
一旦计数器累加值达到用户设定的计数阈值,则触发运动中断。
产生运动中断的坐标轴及其方向可在寄存器MOT_DETECT_STATUS中读出。
类似于自由落体中断,运动中断也有一个可设置的加速阈值寄存器MOT_THR,精确到1mg,以及一个计数阈值寄存器MOT_DUR,精确到1ms。
同样也有一个寄存器来设置刷新率,MOT_DETECT_CTRL。
第7页2)自由落体中断:
通过检测3个轴上的加速度测量值是否在所规定的阈值内来判断自由落体运动是否发生。
对每一次的采样值,如果没达到阈值将会被忽略。
一旦达到阈值,就会触发自由落体中断,而且会产生标志位。
直到计数器降到0,标志才会被清楚。
计数器的取值范围在0和规定的阈值之间。
可用FF_THR寄存器设置阈值,精确到1ms。
使用MOT_DETECT_CTRL寄存器,可以设置是否用一个无效的采样值使计数器清零,或者以1、2或4的量衰减。
3)静止中断:
静止中断也采用数字高通滤波器(DHPF)以及同样的阈值、计数机制。
每根轴上的测量值通过DHFT后必须小于事先规定的阈值,可在ZRMOT_THR寄存器设置。
这会使计数器值加1,当达到在ZRMOT_DUR中设置的计数器阈值时,则产生静止中断。
和自由落体中断及运动中断不同的是,当第一次检测到静止以及不再检测到时,静止中断都会被触发。
另外,自由落体中断和运动中断的标志位在读取后就会被清零,而从寄存器MOT_DETECT_STATUS读取静止标志位后不会清零。
4)可编程中断:
MPU-6050有一个可编程的中断系统,可在INT脚上产生中断信号。
状态标志可以表明中断的来源。
第8页3.方案设计及原理说明为了方便提取步态信息,并减少提取的干扰,本文设计了一种基于六轴加速度传感器的步态分析系统,将6轴运动传感器MPU6050提取的信号传达给电脑的上位机,再经由MATLAB处理其离散数据,绘制特征曲线,继而提取步态特征来进行步态的分析。
3.1系统的总体设计本文设计出一种可以采集人运动数据的无线采集装置,无线接收终端可以通过ZigBee无线网络接收无线节点传来的数据,然后通过RS232与电脑终端进行串口通信。
所以,系统的总体结构设计可以分为2个部分:
一个是数据采集节点,一个是数据接收终端。
主要功能是首先通过MPU6050六轴数据传感器采集三轴的加速度和角速度信息,也就是人体下肢的运动信息;其次是实现数据的ZigBee无线传输,通过CC2530无线ZigBee传输芯片,将采集到的运动数据传输到ZigBee无线接收终端中;然后利用上位机软件,将采集到的数据进行处理,实现存储和实时显示功能,如图3-1所示。
第9页图3-1系统设计框图3.2系统的硬件设计3.2.1主控制电路本文采用TI的CC2530作为数据采集节点的主控核心,控制传感器模块的数据采集和数据的无线传输,CC2530是一种真正的IEEE802.15.4的片上系统解决方案,用于ZigBee和RF4CE的应用,它可以以非常低的材料消耗建立一个非常稳定的网络节点系统。
CC2530具有性能优良的RF收发器,整合了增强型8051MCU,系统可编程闪存,8kB的RAM,主控电路如图3-2所示。
第10页图3-2主控电路电路图3.2.2电源模块电源模块采用了300mA的锂电池对系统进行供电,供电电压为3.7~4.2V而CC2530的工作电压为1.8~3.8V,MPU6050的工作电压为3.3V。
所以选取TPS71733降压和稳压芯片,为MPU6050提供稳定的3.3V工作电压,如图3-3所示。
图3-3电源模块电路图3.2.3传感器模块传感器模块选用MPU6050作为六轴数据传感器,该传感器为全球首例整合性六轴运动处理组件,相较于多组件方案,免除了组合陀螺仪与第11页加速器时之轴间差的问题,减少了大量的包装空间。
MPU6050整合了三轴陀螺仪、三轴加速器,并含可藉由第二个I2C端口连接其他厂牌的加速器、磁力传感器,或其他传感器的数字运动处理器硬件加速引擎,由主要I2C端口以单一数据流的形式,向应用端输出完整的九轴融合演算技术,如图3-4所示。
图3-4传感器模块电路图3.2.4开关模块开关模块的作用是控制整个节点系统的上电和掉电,实现的功能是短按开关S1时,系统上电,长按开关5s以上,系统掉电。
实现方法是通过硬件电路和下位机程序配合共同完成。
当短按开关S1时,整个开关电路导通;当要关闭系统时,长按开关,这时CC2530主控芯片会检测与CC2530相连接的端口P11,如果检测到低电平,则认为开关已被按下,此时CC2530会给P10发送一个低电平,使Q3不再导通,所以系统断电,如图3-5所示。
第12页图3-5开关模块电路图3.3系统的软件设计软件部分主要是对硬件部分采集的数据进行处理分析,以及采集过程中的的滤波所涉及到的计算方法。
其中MCU读取MPU6050数据时候,使用的是动态卡尔曼滤波的算法,保证了杂波的滤除和读取的准确性。
Matlab方面,使用PLOT函数对离散数据进行曲线绘制,通过对波形规律的观察,进而对步态特征进行选择和读取。
第13页图3-6操作流程图检测帧头提取偏差量将偏差带入公式得出数据传到PC开始结束第14页4.数据传输与上位机简介4.1主从机交互及数据输出主从机交互的电平为TTL电平,波特率为115200/9600,停止位为1,校验位为0。
表4-1上位机与数据接收模块指令表数据接收模块发至上位机每帧数据分为三个数据包,分别为加速度数据包,角速度数据包,角度数据包,三个数据包顺序输出。
波特率为115200时每个10ms输出一帧数据,波特率为9600时每隔50ms输出一帧数据。
1)加速度输出指令内容功能备注0FF0xAA0x52角度初始化使z轴的角度归零0FF0xAA0x61使用串口禁用I2C掉电保存0FF0xAA0x62禁用串口使用I2C掉电保存0FF0xAA0x63使用波特率115200采样频率100HZ掉电保存0FF0xAA0x64使用波特率9600采样频率20HZ掉电保存第15页表4-2加速度输出数据表ax=((AxH8)|AxL)/32768*16g(g为重力加速度,可取9.8m/s2)ay=((AyH8)|AyL)/32768*16g(g为重力加速度,可取9.8m/s2)az=((AzH8)|AzL)/32768*16g(g为重力加速度,可取9.8m/s2)温度计算公式:
T=((TH8)|TL)/340+36.53℃校验和:
Sum=0x55+0x51+AxH+AxL+AyH+AyL+AzH+AzL+TH+TL数据编号数据内容含义00x55包头10x51说明这个包是加速度包2AxLx轴加速度低字节3AxHx轴加速度高字节4AyLy轴加速度低字节5AyHy轴加速度高字节6AzLz轴加速度低字节7AzHz轴加速度高字节8TL温度低字节9TH温度高字节10Sum校验和第16页2)角速度输出表4-3角速度输出数据表数据编号数据内容含义00x55包头10x52识别这个包是加速度包2wxLx轴角速度低字节3wxHx轴角速度高字节4wyLy轴角速度低字节5wyHy轴角速度低高节6wzLz轴角速度低字节7wzHz轴角速度低高节角速度计算公式:
wx=((wxH8)|wxL)/32768*2019(/s)wy=((wyH8)|wyL)/32768*2019(/s)wz=((wzH8)|wzL)/32768*2019(/s)滚转角的范围虽然是180度,但实际上由于坐标旋转顺序是Z-Y-X,在表示姿态的时候,俯仰角(Y轴)的范围只有90度,超过90度后会变换到小于90度,同时让X轴的角度大于180度。
第17页3)角度输出表4-4角度输出数据表数据编号数据内容含义00x55包头10x53说明这个包是角速度2RollL轴角度低字节3RollH轴角度低高节4PithL轴角度低字节5PithH轴角度低高节6YawL轴角度低字节7YawH轴角度低高节角度计算公式:
滚转角(x轴)Roll=((RollH8)|RollL)/32768*180()俯仰角(y轴)Pitch=((PitchH8)|PitchL)/32768*180()偏航角(z轴)Yaw=((YawH8)|YawL)/32768*180()由于三轴是耦合的,只有在小角度的时候会表现出独立变化,在大角度的时候姿态角度会耦合变化,比如当X轴接近90度时,即使姿态只绕X轴转动,Y轴的角度也会跟着发生较大变化,这是欧拉角表示姿态的固有问题。
4.2上位机界面及其使用简介首先要选择合适的串口,本设计中默认选择COM3端口,正常情况下,当步态提取部分正常工作的时候,大约五秒左右,两者就能匹配到,随后就能观察各个方向的各种信息曲线。
若需要调节波特率,也可以通过上位机提高或者降低波特率,来更改信号读取的频率,本设计方案采用都是9600的波特率,配置完成够即可读取数据。
第18页图4-1上位机读取的姿态曲线图4-2配置操作如上图2,点击记录/停止,即可记录这段时间内的离散数据,所得结果保存在PC机,并且以文本的形式保存,如图4-3所示为上位机所测传感器动作变化图。
第19页图4-3记录区间内离散数据到此为止,步态信号的从采集部分到PC机的传输部分基本结束。
第20页5.软件系统原理与测试本设计方案需要设计到软件系统的有提取部分的滤波算法,还有就是绘制离散数据时候所需的matlab语言,以及提取特征时候的算法,这些算法可以形成一些分类器。
5.1卡尔曼滤波简单来说,卡尔曼滤波器是一个最优化自回归数据处理算法。
对于解决很大部分的问题,他是最优,效率最高甚至是最有用的。
它的广泛应用已经超过30年,包括机器人导航、控制、传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等,近来更被应用于计算机图像处理,例如头脸识别、图像分割、图像边缘检测等等。
卡尔曼滤波利用目标的动态信息,设法去掉噪声的影响,得到一个关于目标位置的好的估计。
这个估计可以是对当前目标位置的估计,也可以是对将来位置的估计,也可以是对过去位置的估计。
为了6轴传感器提取的动态信号更加准确的被传输到PC机,所以本设计添加了一个卡尔曼滤波的环节,这样就能得到更加准确的动态信号。
具体算法可以归纳为以下:
首先,我们先要引入一个离散控制过程的系统。
该系统可用一个线性随机微分方程来描述:
X(k)=AX(k-1)+BU(k)+W(k)再加上系统的测量值:
Z(k)=HX(k)+V(k)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 加速度 传感器 步态 分析研究