完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
摘要:介绍了基于MMA8452Q加速度传感器的计步器设计。MMA8452Q是一款具有12位分辨率的智能低功耗、三轴、电容式微机械加速度传感器。本设计充分利用了该传感器对被检测模拟信号的滤波处理能力,并配合软件抗干扰措施,通过检测人行走时腰部产生的垂直加速度的变化,实现间接检测步数的目的。设计硬件简单,计步精度较高,稳定性好,已经通过实际调试,具有实用价值。
关键词:MMA8452Q;计步器;单片机;抗干扰 伴随着人们生活质量和科技水平的提高,辅助锻炼设备不断出现,计步器就是一种日常锻炼监测器,通过记录人们行走的步数,监测自己的健身强度,方便实用。加速度传感器可用于间接步数检测。由于近年来MEMS加速度传感器发展很快,并具有价格低、体积小、功耗低、精度高的特点,利用其来设计电子计步器,已经多有报道,市场上也有产品出售。目前存在的主要问题是计步精度,尽管在加速度的检测上传感器的精度高,但是计步却受到诸多干扰影响,精度难以保证。本文以MEMS加速度传感器。MMA8452Q为基础,研究其工作特性,针对计步干扰信号特点,采取抗干扰措施完成电子式计步器设计。 1 系统方案设计 1.1 基于加速度信号检测的计步器原理 距离、速度、加速度等都可以作为描述人体行走状态的的参数。近年来由于MEMS加速度传感器的快速发展和其特性,使其用于人体运动检测更加方便。 行走时,脚、腿、腰部,手臂都在运动,它们的运动都会产生相应的加速度,垂直方向的加速度信号变化最大。人行走一步过程,如图1所示。脚蹬地离开地面是一步的开始(如图1(a),此时由于地面的反作用力垂直加速度开始增大,身体重心上移,当脚要达到最高位置时(如图1(c),垂直加速度达到最大,然后脚向下运动,垂直加速度开始减小,直至脚着地,加速度减少至最小值(如图1(e),接着下一次迈步发生。 人体腰部的垂直加速度信号如图2所示,每迈一步对应一个峰值,显然信号具有周期性。利用对加速度的峰值检测可以得到行走的步数。人行走的垂直加速度在±g之间(1g为9.8 m/s2即重力加速度),考虑到还有重力加速度g的影响,可选择测量范嗣在±2 g之间的加速度传感器来实现计步器。 1.2 硬件系统设计 计步器硬件系统框图如图3所示。MEMS传感器MMA8452Q负责检测人体加速度信号并转换为数字信号,通过I2C接口传递给控制器;经控制器分析处理,确定为有效的计步信息后,步数加1并送给LCD显示器;按键则将一些设定信息传递给控制器。 综合考虑计步器对加速度传感器精度的要求和传感器的价格,选择了飞思卡尔一款比较新的MMA8452Q加速度传感器。这是一款具有12位分辨率的智能低功耗、三轴、电容式微机械加速度传感器,其主要特性如下: 可以感受X,Y,Z 3个自由度的加速度信号,全方位感知人体运动信息。具有±2 g/±4g/±8 g的可选量程。传感器的灵敏度在±2 g量程时为1 024个数字/g,灵敏度精度为±2.5%。 采集的加速度数据可以通过传感器内部的高通滤波器实时输出,滤波器的截止频率可以软件设置。也可以不经过滤波器直接数据输出。输出信号已被转换为12位(或8位)数字量信号,经I2C接口输出,输出数据速率在1.25 Hz到800Hz之间可调。 传感器内嵌的DSP处理功能使芯片具有中断能力,当设定的“自由下落和运动检测”“瞬态变化检测”“方向检测”“轻敲检测”“数据准备好”“自动休眠”等6种事件中任意一种发生时,配置的中断引脚(INT1或INT2)就可以产生硬件唤醒的中断申请信号,通知控制器处理预定的事件。这样既减轻了控制器不断查询处理数据的负担,也可以节省整体功耗,使其大部分时间处于静止状态保持低功耗模式,同时完成监测任务。 在满足计步器功能的前提下,本设计选择价格低廉的AT89S2051单片机作为控制器,主要使用其外部事件中断、定时器中断、并行口等硬件资源。显示屏选择了8位LCD显示器,用于计步信息的实时显示,与主机采用串行方式传递数据。按键主要用于自标定设置。 2 抗干扰设计 由图2可知,人在行走时的垂直加速度信号虽然具有一定的周期性,但由于传感器灵敏度较高,原地晃动等都会产生于扰噪声,直接计步容易出错。需对信号进行处理,尽可能消除噪声影响。通常情况下,人的步频最快不会超过5步/秒,最慢为0.5步/秒。因此,可以认为原始信号中频率为0.5~5 Hz的信号为有用信号,其他信号均为噪声。我们设计的计步器从下述方面消除干扰信号。 2.1 传感器自带抗干扰功能的利用 2.1.1 高通滤波器的设置 MMA8452Q是数字式传感器,对检测信号的模拟滤波在芯片内部进行,然后转换为数字量后输出。对于“敲击”“轻弹”“摇动”“计步”等信号的检测过程中,加速度传感器只需要分析动态加速度信号,即加速度的变化情况,无需考虑静态情况,因此可以对数据做高通滤波。在传感器MMA8452Q内部有一个内嵌的高通滤波器,可以通过软件设定低频截止频率。根据选择的数据输出速率和数据过采样模式,低频截止频率可以在0.063~16 Hz之间选择。数据通过该滤波器输出,从而消除信号中直流偏置及低频信号的影响。我们设计的计步器截止频率设置在0.5 Hz。 2.1.2 中断阈值的使用 MMA8452Q传感器有两个外部引脚INT1和INT2。每个引脚通过软件设置可以和6个事件(“自由下落和运动检测”“瞬态变化检测”“方向检测” “轻敲检测”“数据准备好”“自动休眠”)绑定在一起。当传感器检测到任一事件发生时,即可发出中断申请信号,可以避免主控制器频繁读取传感器的数据,减少数据分析及处理工作。 引脚INT1和INT2可以配置成“推挽”或“开漏”输出方式,即可以“高电平有效”也可以“低电平有效”。如果被配置成“开漏”输出方式并且外带上拉电阻,该引脚就被设置为“低电平有效”,刚好与8051单片机的外部中断信号吻合。 计步器设计将中断引脚INT1与“运动检测”事件绑定在一起,当人体迈步时垂直加速度开始增加,当达到预定的阈值时,中断申请信号发出,通知控制器读取当前加速度值,经进一步分析确定是否是有效计步信号。中断使用的关键是合理阈值的确定。 该传感器在静止时显示一个g(重力加速度),当人体运动时,运动加速度与重力加速度叠加。传感器可以输出12位二进制加速度值,该数值是有符号数,正数的最大值为7FFH。本计步器量程选择的是2 g,传感器静止时感受重力加速度为g,所以显示数值为3FFH。通过实验获取了大量的数据,分析每迈一步加速度的变化情况。选取加速度值大于g的数据为研究对象,将它们显示的数据转化为十进制数。3FF对应的十进制数是1023,对应的加速度为g。从而得出1个LSB所对应的加速度值为0.000 98 g。我们试验程序采集的数据如表1所示,数据表明每走一步,可以收到2~3组数据,其中至少有一组超过1.1g,表中带下划线的数据为超过1.1 g的加速度值。 当试验人员原地晃动时,得到的10组加速度值如表2所示。 经过对人行走、跑步、晃动等加速度变化的分析,综合考虑选取1.1 g为加速度阈值。在MMA8452Q传感器中有一个阈值寄存器,数值范围为0~127,阈值最低分辨率为0.063 g/LSB。1.1 g/0.063 g=17.46.四舍五入到18,所以阈值寄存器中送阈值12H。 2.2 软件抗干扰方法 2.2.1 时间窗口的限制 利用传感器自身的滤波和阈值中断的方法,能够减少频率较低、幅度较小的干扰,但是仍然会有误计数的可能,特别是多计数。需要采取软件抗干扰滤波方法,进一步滤除无用信号。根据图2所示垂直加速度的信号波形,两次峰值是有时间间隔的,根据资料显示,人行走的频率一般在110步/分钟(1.8 Hz),跑步时的频率不会超过5 Hz。如果选择1~5 Hz,对应的时间间隔是1 000~200毫秒。利用定时中断记录两次外部中断时间间隔,如果在有效范围内,则为有效计步一次,否则无效。 实际上正常行走的任一段时间内,步频的变化都会集中在峰值频率附近的一个小范围内,而不是0.5~5 Hz这么宽。由于每个人的步频是不同的,可以采用下述的自标定方法得到个人步频的峰值频率和变动范围,再采用时间窗口的限制,检测的准确度更高。 2.2.2 自标定方法 计步器配置了两个按键:“直接计步按键”、“自标定按键”。如果计步器工作后直接按下“直接计步按键”,计步器按1~5Hz的行走频率设置时间窗口,并按这个参数进行数据分析。如果计步器工作后先按下“自标定按键”,则进入自标定过程。连续行走10步,每走1步要同时按下“自标定按键”一次。计步器会记录10次的时间间隔ti(i=0~9),求出平均值Tp,及偏差vi= |
|
相关推荐
1个回答
|
|
伴随着人们生活质量和科技水平的提高,辅助锻炼设备不断出现,计步器就是一种日常锻炼监测器,通过记录人们行走的步数,监测自己的健身强度,方便实用。加速度传感器可用于间接步数检测。由于近年来MEMS加速度传感器发展很快,并具有价格低、体积小、功耗低、精度高的特点,利用其来设计电子计步器,已经多有报道,市场上也有产品出售。目前存在的主要问题是计步精度,尽管在加速度的检测上传感器的精度高,但是计步却受到诸多干扰影响,精度难以保证。本文以MEMS加速度传感器。MMA8452Q为基础,研究其工作特性,针对计步干扰信号特点,采取抗干扰措施完成电子式计步器设计。
1 系统方案设计 1.1 基于加速度信号检测的计步器原理 距离、速度、加速度等都可以作为描述人体行走状态的的参数。近年来由于MEMS加速度传感器的快速发展和其特性,使其用于人体运动检测更加方便。 行走时,脚、腿、腰部,手臂都在运动,它们的运动都会产生相应的加速度,垂直方向的加速度信号变化最大。人行走一步过程,如图1所示。脚蹬地离开地面是一步的开始(如图1(a),此时由于地面的反作用力垂直加速度开始增大,身体重心上移,当脚要达到最高位置时(如图1(c),垂直加速度达到最大,然后脚向下运动,垂直加速度开始减小,直至脚着地,加速度减少至最小值(如图1(e),接着下一次迈步发生。 人体腰部的垂直加速度信号如图2所示,每迈一步对应一个峰值,显然信号具有周期性。利用对加速度的峰值检测可以得到行走的步数。人行走的垂直加速度在±g之间(1g为9.8 m/s2即重力加速度),考虑到还有重力加速度g的影响,可选择测量范嗣在±2 g之间的加速度传感器来实现计步器。 1.2 硬件系统设计 计步器硬件系统框图如图3所示。MEMS传感器MMA8452Q负责检测人体加速度信号并转换为数字信号,通过I2C接口传递给控制器;经控制器分析处理,确定为有效的计步信息后,步数加1并送给LCD显示器;按键则将一些设定信息传递给控制器。 综合考虑计步器对加速度传感器精度的要求和传感器的价格,选择了飞思卡尔一款比较新的MMA8452Q加速度传感器。这是一款具有12位分辨率的智能低功耗、三轴、电容式微机械加速度传感器,其主要特性如下: 可以感受X,Y,Z 3个自由度的加速度信号,全方位感知人体运动信息。具有±2 g/±4g/±8 g的可选量程。传感器的灵敏度在±2 g量程时为1 024个数字/g,灵敏度精度为±2.5%。 采集的加速度数据可以通过传感器内部的高通滤波器实时输出,滤波器的截止频率可以软件设置。也可以不经过滤波器直接数据输出。输出信号已被转换为12位(或8位)数字量信号,经I2C接口输出,输出数据速率在1.25 Hz到800Hz之间可调。 传感器内嵌的DSP处理功能使芯片具有中断能力,当设定的“自由下落和运动检测”“瞬态变化检测”“方向检测”“轻敲检测”“数据准备好”“自动休眠”等6种事件中任意一种发生时,配置的中断引脚(INT1或INT2)就可以产生硬件唤醒的中断申请信号,通知控制器处理预定的事件。这样既减轻了控制器不断查询处理数据的负担,也可以节省整体功耗,使其大部分时间处于静止状态保持低功耗模式,同时完成监测任务。 在满足计步器功能的前提下,本设计选择价格低廉的AT89S2051单片机作为控制器,主要使用其外部事件中断、定时器中断、并行口等硬件资源。显示屏选择了8位LCD显示器,用于计步信息的实时显示,与主机采用串行方式传递数据。按键主要用于自标定设置。 2 抗干扰设计 由图2可知,人在行走时的垂直加速度信号虽然具有一定的周期性,但由于传感器灵敏度较高,原地晃动等都会产生于扰噪声,直接计步容易出错。需对信号进行处理,尽可能消除噪声影响。通常情况下,人的步频最快不会超过5步/秒,最慢为0.5步/秒。因此,可以认为原始信号中频率为0.5~5 Hz的信号为有用信号,其他信号均为噪声。我们设计的计步器从下述方面消除干扰信号。 2.1 传感器自带抗干扰功能的利用 2.1.1 高通滤波器的设置 MMA8452Q是数字式传感器,对检测信号的模拟滤波在芯片内部进行,然后转换为数字量后输出。对于“敲击”“轻弹”“摇动”“计步”等信号的检测过程中,加速度传感器只需要分析动态加速度信号,即加速度的变化情况,无需考虑静态情况,因此可以对数据做高通滤波。在传感器MMA8452Q内部有一个内嵌的高通滤波器,可以通过软件设定低频截止频率。根据选择的数据输出速率和数据过采样模式,低频截止频率可以在0.063~16 Hz之间选择。数据通过该滤波器输出,从而消除信号中直流偏置及低频信号的影响。我们设计的计步器截止频率设置在0.5 Hz。 2.1.2 中断阈值的使用 MMA8452Q传感器有两个外部引脚INT1和INT2。每个引脚通过软件设置可以和6个事件(“自由下落和运动检测”“瞬态变化检测”“方向检测” “轻敲检测”“数据准备好”“自动休眠”)绑定在一起。当传感器检测到任一事件发生时,即可发出中断申请信号,可以避免主控制器频繁读取传感器的数据,减少数据分析及处理工作。 引脚INT1和INT2可以配置成“推挽”或“开漏”输出方式,即可以“高电平有效”也可以“低电平有效”。如果被配置成“开漏”输出方式并且外带上拉电阻,该引脚就被设置为“低电平有效”,刚好与8051单片机的外部中断信号吻合。 计步器设计将中断引脚INT1与“运动检测”事件绑定在一起,当人体迈步时垂直加速度开始增加,当达到预定的阈值时,中断申请信号发出,通知控制器读取当前加速度值,经进一步分析确定是否是有效计步信号。中断使用的关键是合理阈值的确定。 该传感器在静止时显示一个g(重力加速度),当人体运动时,运动加速度与重力加速度叠加。传感器可以输出12位二进制加速度值,该数值是有符号数,正数的最大值为7FFH。本计步器量程选择的是2 g,传感器静止时感受重力加速度为g,所以显示数值为3FFH。通过实验获取了大量的数据,分析每迈一步加速度的变化情况。选取加速度值大于g的数据为研究对象,将它们显示的数据转化为十进制数。3FF对应的十进制数是1023,对应的加速度为g。从而得出1个LSB所对应的加速度值为0.000 98 g。我们试验程序采集的数据如表1所示,数据表明每走一步,可以收到2~3组数据,其中至少有一组超过1.1g,表中带下划线的数据为超过1.1 g的加速度值。 当试验人员原地晃动时,得到的10组加速度值如表2所示。 经过对人行走、跑步、晃动等加速度变化的分析,综合考虑选取1.1 g为加速度阈值。在MMA8452Q传感器中有一个阈值寄存器,数值范围为0~127,阈值最低分辨率为0.063 g/LSB。1.1 g/0.063 g=17.46.四舍五入到18,所以阈值寄存器中送阈值12H。 2.2 软件抗干扰方法 2.2.1 时间窗口的限制 利用传感器自身的滤波和阈值中断的方法,能够减少频率较低、幅度较小的干扰,但是仍然会有误计数的可能,特别是多计数。需要采取软件抗干扰滤波方法,进一步滤除无用信号。根据图2所示垂直加速度的信号波形,两次峰值是有时间间隔的,根据资料显示,人行走的频率一般在110步/分钟(1.8 Hz),跑步时的频率不会超过5 Hz。如果选择1~5 Hz,对应的时间间隔是1 000~200毫秒。利用定时中断记录两次外部中断时间间隔,如果在有效范围内,则为有效计步一次,否则无效。 实际上正常行走的任一段时间内,步频的变化都会集中在峰值频率附近的一个小范围内,而不是0.5~5 Hz这么宽。由于每个人的步频是不同的,可以采用下述的自标定方法得到个人步频的峰值频率和变动范围,再采用时间窗口的限制,检测的准确度更高。 2.2.2 自标定方法 计步器配置了两个按键:“直接计步按键”、“自标定按键”。如果计步器工作后直接按下“直接计步按键”,计步器按1~5Hz的行走频率设置时间窗口,并按这个参数进行数据分析。如果计步器工作后先按下“自标定按键”,则进入自标定过程。连续行走10步,每走1步要同时按下“自标定按键”一次。计步器会记录10次的时间间隔ti(i=0~9),求出平均值Tp,及偏差vi= |
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-10-16 17:05 , Processed in 0.735003 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号