基于MMA8452Q传感器的计步器抗干扰设计

发布者:朝霞暮雨最新更新时间:2014-08-13 来源: 21ic关键字:计步器  单片机  MMA8452Q 手机看文章 扫描二维码
随时随地手机看文章

伴随着人们生活质量和科技水平的提高,辅助锻炼设备不断出现,计步器就是一种日常锻炼监测器,通过记录人们行走的步数,监测自己的健身强度,方便实用。加速度传感器可用于间接步数检测。由于近年来MEMS加速度传感器发展很快,并具有价格低、体积小、功耗低、精度高的特点,利用其来设计电子计步器,已经多有报道,市场上也有产品出售。目前存在的主要问题是计步精度,尽管在加速度的检测上传感器的精度高,但是计步却受到诸多干扰影响,精度难以保证。本文以MEMS加速度传感器。MMA8452Q为基础,研究其工作特性,针对计步干扰信号特点,采取抗干扰措施完成电子式计步器设计。

1 系统方案设计

1.1 基于加速度信号检测的计步器原理

距离、速度、加速度等都可以作为描述人体行走状态的的参数。近年来由于MEMS加速度传感器的快速发展和其特性,使其用于人体运动检测更加方便。

行走时,脚、腿、腰部,手臂都在运动,它们的运动都会产生相应的加速度,垂直方向的加速度信号变化最大。人行走一步过程,如图1所示。脚蹬地离开地面是一步的开始(如图1(a),此时由于地面的反作用力垂直加速度开始增大,身体重心上移,当脚要达到最高位置时(如图1(c),垂直加速度达到最大,然后脚向下运动,垂直加速度开始减小,直至脚着地,加速度减少至最小值(如图1(e),接着下一次迈步发生。

基于MMA8452Q传感器的计步器抗干扰设计

人体腰部的垂直加速度信号如图2所示,每迈一步对应一个峰值,显然信号具有周期性。利用对加速度的峰值检测可以得到行走的步数。人行走的垂直加速度在±g之间(1g为9.8 m/s2即重力加速度),考虑到还有重力加速度g的影响,可选择测量范嗣在±2 g之间的加速度传感器来实现计步器。

基于MMA8452Q传感器的计步器抗干扰设计

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的加速度值。[page]

基于MMA8452Q传感器的计步器抗干扰设计

当试验人员原地晃动时,得到的10组加速度值如表2所示。

基于MMA8452Q传感器的计步器抗干扰设计

经过对人行走、跑步、晃动等加速度变化的分析,综合考虑选取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=|ti-Tp|(i=0~9).南此确定个人的行走频率范围,并利用时间窗口的限制进行数据分析,可以得到较高的准确度。

2.2.3 计步器主要程序流程图

计步器的主程序流程图如图4所示,外部中断流程图如图5所示。开始工作后首先进行初始化、显示初始界面,然后等待按键信号。如果按下“直接计步键”,则使能外部事件中断,等待外部中断的到来。当MMA8452Q加速度传感器检测到外界加速度大于所设阈值,将会产生中断信号,单片机进入中断程序后,读取传感器的加速度数据,并读取自上一次外部中断后的时间间隔,如果时间间隔在有效区间内,则本次数据有效,计步数据加1,并将计时单元清零,为下一次中断做准备。

基于MMA8452Q传感器的计步器抗干扰设计
基于MMA8452Q传感器的计步器抗干扰设计

如果先按下“自标定键”,则先进入自标定过程(如前所述),然后再按下“直接计步键”,则按照自标定过程获得的步频参数进行数据分析。

定时中断程序比较简单,单纯的计时供计步分析使用,这里不再赘述。

在传感器的初始化中,配置MMA8452Q为运动检测方式,包括如下步骤:

1)使传感器进入待机模式;2)使能垂直方向运动检测和锁存;3)设定运动检测阈值;4)设置去抖计数器以消除虚假读数;5)启用系统中的运动/自由落体中断功能;6)将传感器切换到主动模式。表3中列出了配置MMA8452Q的运动检测或自由落体检测的重要寄存器。

基于MMA8452Q传感器的计步器抗干扰设计

3 结论

文中介绍了基于MEMS加速度传感器MMA8452Q的计步器设计方案,充分利用该传感器对模拟信号检测的滤波处理能力,配合软件抗干扰措施,通过检测人行走时腰部产生的垂直加速度变化,实现间接检测步数的目的。该设计硬件简单,实现方便。试验结果表明:能够较好地适应不同步频情况,计步精度较高,稳定性好。

关键字:计步器  单片机  MMA8452Q 引用地址:基于MMA8452Q传感器的计步器抗干扰设计

上一篇:C8051F410单片机BootLoader的实现
下一篇:基于SHT11传感器的温湿度测量系统设计

推荐阅读最新更新时间:2024-03-16 13:39

PIC16C5X单片机数据存储器
程序计数器f2(PC) 程序计数器给出片内2048x12的ROM地址,不同的型号程序计数器与它们的两层堆栈为9-11位寛,如表1所示。 表1 程序计数器PC与堆栈大小 型号 PC宽度/位 堆栈宽度/位 PIC16C54/55 9 9 PIC16C56 10 10 PIC16C57 11 11 系统复位后,PC为全 1 ,程序执行每一条指令PC自动加 1 ,除非程序指令本身改变PC的内容(例如程序跳转,中断服务等),下面的指令将改变PC的值。 . GOTO 指令:允许直接装入程序
[单片机]
单片机STC12C5A60S2控制AT24C04的程序(C语言)
/************************************** 主芯片:STC12C5A60S2(1T) 工作频率:12.000MHz **************************************/ #include REG51.H #include INTRINS.H typedefunsignedcharBYTE; typedefunsignedshortWORD; sbitSCL=P3^4;//AT24C04的时钟 sbitSDA=P3^5;//AT24C04的数据 BYTEBUF ;//数据缓存区 BYTEcodeTESTDATA = { 0x00,0x11,0x22,0x33,0x44
[单片机]
ST发布首批基于超低功耗平台的8位MCU
世界领先的微控制器厂商意法半导体(纽约证券交易所代码:STM)宣布,首批整合其高性能8位架构和最近发布的超低功耗创新技术的8位微控制器开始量产。以节省运行和待机功耗为特色,STM8L系列下设三个产品线,共计26款产品,涵盖多种高性能和多功能应用。 设计工程师利用全新的STM8L系列可提高终端产品的性能和功能,同时还能满足以市场为导向的需求,例如,终端用户对节能环保产品的需求,便携设备、各种医疗设备、工业设备、电子计量设备、感应或安保设备对电池使用周期的要求。设计人员将选择STM8L这类超低功耗的微控制器,以符合低功耗产品设计标准,如“能源之星”、IEA的“1W节能计划”或欧盟的EuP法令,。 “意法半导体在
[单片机]
ST发布首批基于超低功耗平台的8位<font color='red'>MCU</font>
c51单片机中断号及中断向量
1、外部中断 0、 1;分别由引脚/INT0、/INT1的电平信号引起。 2、定时/计数器 0、1;分别由T0、 T1的溢出引起。 3、串行口发送、接收;发送完一个字节或接收到一个字节引起。 上述共5个中断源。 一、中断号 外部中断0 0 定时器T0 1 外部中断1 2 定时器T1 3 串口中断 4 二、 interrupt 和 using 在C51中断中的使用 8051 系列 MCU 的基本结构包括:32 个 I/O 口(4 组8 bit 端口);两个16 位定时计数器;全双工串行通信;6 个中断源(2 个外部中断、2 个定时/计数器中断、1 个
[单片机]
c51<font color='red'>单片机</font>中断号及中断向量
51单片机系列知识6--中断系统(1)
中断系统 一、 几个概念 ① 中断:教材p51 ② 中断源:产生中断的请求源 ③ 中断级:根据中断源(所发出的时时事件)的轻重缓急,规定的优先级别 ④ 中断嵌套:CPU在处理一个中断源请求时候,响应了更高一级中断的请求,待处理完后,再继续执行原来的低级中断处理程序,这样的过程称为中断嵌套。 ⑤ 中断系统:实现中断功能的部件。 ⑥ 多级中断系统:能够实现中断嵌套的中断系统。 1、 中断源 51单片机有5个中断源:2个是INTO、INT1(P3.2、P3.3)上输入的外部中断源;3个内部中断源,定时器∕计数器T0、T1的溢出中断源和串行的发送、接受中断。 这些中断源分别所存在TCON、SCO
[单片机]
破解MCU难于上青天?这几招告诉你什么叫大神
时序攻击可用在安全保护是基于密码的 微控制器 ,或使用确定数字的卡或密码来进行访问控制的系统,如达拉斯的iButton产品。这些系统中共有的风险是输入的连续数字在数据库进行再次校验。 首先明白 MCU 是什么——即结构与组成 Ⅰ:中央处理器CPU,包括运算器、控制器和寄存器组。是MCU内部的核心部件,由运算部件和控制部件两大部分组成。前者能完成数据的算术逻辑运算、位变量处理和数据传送操作,后者是按一定时序协调工作,是分析和执行指令的部件。 Ⅱ:存储器,包括ROM和RAM。ROM程序存储器,MCU的工作是按事先编制好的程序一条条循序执行的,ROM程序存储器即用来存放已编的程序(系统程序由制造厂家编制和写入)。存储数据掉电后不消失
[单片机]
破解<font color='red'>MCU</font>难于上青天?这几招告诉你什么叫大神
物联网部署形式下:MCU将迎来三大发展趋势
物联网将是下一个推动世界高速发展的“重要生产力”,是继通信网之后的另一个万亿级市场。物联网行业的快速发展是驱动MCU发展的一大动力。 其中又因为汽车驾驶信息系统、油门控制系统、自动泊车、先进巡航控制、防撞系统等ADAS系统对于32位MCU的大规模需求,将刺激32位MCU的大幅增长。此外,物联网领域的智能应用正方兴未艾,比如医疗电子用品(如智能血糖机、电子血压计等)、个人健康监测产品(如智能手环、智慧手表、智能衣、心率带等等)这些需要低功耗、长时间使用、无线通信的产品,也必须倚赖MCU来实现。微控制器(MCU)作为物联网的核心零组件,无论在市场规模上还是技术上都将获得进一步发展,那么,在当前物联网快速部署的大形势下MCU自身发展
[单片机]
单片机的状态迁移与复位操作
本文以经典的80C51单片机为例,利用工作状态及其状态辽移的新概念、新观点和新方法,揭示一些单片机运作的内在规律,对于单片机学习者和应用开发者具有一定的启迪作用和实际意义。 1 单片机的工作状态及其状态迁移 80C51单片机的各种活动,可以描述成多个不同的工作状态或工作模式。这里利用笔者构思的一个单片机工作状态迁移图(如图1所示)来说明。不过,这里重点关注的是复位状态。 经过仔细分析之后,从图1中可以看出: ① 把单片机经历的所有生存状态归纳和描绘成5个状态--1个非工作状态(即无电状态)和4个工作状态。 ② 只有复位状态是一个暂态,其他均为稳态;并且每次单片机进入正常运行状态时,都要经历一次复位状态。 ③ 只有在正
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved