- 基于加速度传感器的计步器系统
- 来源:赛斯维传感器网 发表于 2014/7/31
摘要:随着手机功能的逐漸增多,在手机上实现一些与健康有关的功能也已成为一种热点,例如计步器 功能可以根据计算人的运动情况来分析人体的健康状况•而人的运动情况可以通过很多特性来进行分析比如人在运动时会产生加速度,因此采集到加速度数据以后加以适当的算法就可以实现计步功能. 设计了一款基于加速度传感器ADXL340的计步器.详细介绍了计步器的软件算法的实现和硬件设计方 案•同时,该计步器系统上还具有USB接口,可与PC机进行高速数据传输.
关键词:计步器;加速度传感器;USB接口
手机在现代生活中的使用越来越为广泛,其功能 也越来越多,如现在很多的手机都有MP3及照相功能, 有的还具有闪信和计步器功能。而手机要想实现闪信 和计步器这类功能,需要处理器能够实现多路模拟输 入、数据的实时处理等,原有的手机很难直接实现这 些功能,这就需要MCU配合完成其功能。本文将以计 步器为例,介绍了计步器的硬件设计和软件算法的实 现。该计步器系统采用ADI的At>UC7026作为主控芯 片,采用ADXL340来采集加速度数据,最后通过USB 接口 4上位机进行高速数据传输。
1 计步器软件算法的实现
人在行走或者跑步的时候,可通过很多特性来分析这种行为,本系统中利用了加速度特性来进行分析。
行走或者跑步过程中,人体的多处部位都在运动,它 们的运动会产生相应的加速度,加速度与时间大致成 为一个正弦曲线,且会在某点有一个峰值。因此利用 加速度传感器来检测运动的加速度,通过一定的算法可以计算步数,还可根据步幅进而估算所走的距离等。
为了达到准确性,在运动过程中,分析了3个不同方向的加速度数据:前向、纵向和侧向(见图1)。
图1人体运动时加速度的3个方向Analog Devices公司的ADXL340芯片即为一个3 轴(A:轴、F轴、Z轴)的加速度传感器可检测出3个坐标轴的加速度变化,这3个轴正好可以分别代表人体运动时3个方向。图2所示为ADXL340 检测到的A:轴和K轴的加速度变化,由图中可以看出, 加速度变化曲线(X轴)具有明显的周期特性。
在任意时刻可以得到加速度传感器采集来的3个 轴的加速度数据,利用适当的算法可计算此3个轴中 的哪个轴的加速度改变最大。由此来进行计步,模拟 行走的过程。当然,如果加速度的改变过小,可忽略。
图2 X轴和y轴加速度变化曲线
具体算法如下:正常情况下可以假定如果是跑步. 人们每秒最多不会超过5步,如果为走路则最迟每两 秒可以走1步。这就意味着.合理的计步器输出范围为0.5~5 Hz。这样需要设计滤波器来对此范围以外的 频率进行滤波。在模拟电路部分,本研究采用5 Hz的 抗混叠带宽来过滤髙频噪声;在数字电路部分,采用5 Hz截止频率的FIR低通滤波器来过滤高频噪声。
图3低通滤波器的频率响应
另外,为了抛弃无效的振动,还采用了时间窗算 法,前面提到过,相邻两步之间的时间间隔必须在0.2~2 s这个时间窗范围内。也就是说,需判定新检测到 的一步与其前面相邻的有效步之间的时间间隔是否处 于这个时间窗范围之内.如果在此时间窗之外则认为此步无效。
此外,在软件算法上还采用了通过设置动态参数 来提供一种自适应方法。其中,动态参数包括动态峰 峰值输出,动态精度以及动态阈值。动态精度是用来 a化采样数据以去除高频的噪声。软件中设定了2个移位寄存器。其中一个寄存器用于保存新得到的加速度采样值,根据动态峰峰值,可以确定动态阈值的大 小,当新得到一个加速度采样值时,将其与新数据寄存器中的数值进行比较,当二者的差值的绝对值大于 绝对精度时,则新数据寄存器的值移位到旧数据寄存 器,而新得到的加速度值就可以移位到新数据寄存器; 当加速度变化值小于或者等于动态精度时,此变化值被抛弃,新数据寄存器保持不变。旧数据寄存器则不断 的更新采样的数据。
图4动态参数算法的示意图
为了保证数据的准确性,在算法中还设定了一个 计步校准值,开始时假定系统处于査询状态,当有效 步值大于此计步校准值后,系统进入正式计步状态, 此后系统开始计步。
经过上述算法以后,可以看到图6为行走时前向 的加速度波形分析a。
图7所示为前向原始采样加速度数据和经过处理 后的加速度数据的比较。
图8和图9分别为人体跑步时前向加速度波形分 析以及跑步时前向加速度的原采样数据和经过处理后 的加速度数据的比较。
2 硬件实现
图10所示为硬件设计的模块图。本设计中选用的 ADXL340包括ADC,则从传感器采样得到的数据不 必再专门选用芯片来做模数转换,传感器芯片本身可 以直接将数据处理成为8位的二进制数据,并经过SPI 总线或者I²C总线传给MCU。
经过MCU处理过的数据可以通过USB接口高效 地传给上位机系统,基于USB接口的数据采集系统可 以采取多种不同的方案。本设计采用内置USB接口的 微处理器芯片,也就是具备USB接口的单片机来实现。 此类单片机处理速度完全可以达到USB的速度,设计和调试比较简单,电磁兼容性好,器件成本和设计开发成本都比较低廉。
图6行走时前向加速度波形分析
图8跑步时前向加速度波形分析
图9跑步时原始加速度和处理后数据的比较
图10硬件模块图
CY7C68013 是 CYPRESS 公司在 2000 年 11 月推 出的世界第1块USB2.0功能设备芯片,完全适用于 USB2.0,并向下兼容USB1.1,其内置增强型.8051微 控制芯片。3种可编程端点;控制传输的SETUP和 DATA缓冲区是分幵的;多达40个通用I/O口。它提 供了一个基于RAM的软解决方案,允许无限制地配置 与升级。另外,CY7C68013使用的是智能型的SIE (串行接口引擎),能够执行所有的USB枚举过程,通过 预设的端点和可选的设置创建一个缺省的USB设备, 这样,就可以将USB的固件存储在主机上,而不必存 入USB芯片中,大大减轻了固件的工作,简化了固件 的编程。集成〖2C兼容的控制模块,在USB设备接入 主机后,USB是根据外部I2C总线接口上的一个串行 EkOM中进行配置的。
在硬件设计过程中,需要重点注意一下问题:与标准USB接口连接时,CY7C68013的DPLUS和 DMINUS引脚要通过22Ω电阻与USB接口的D+和D-两根数据线连接,实现阻抗匹配。
3 结论
介绍了利用人运动时产生加速度变化来检测步数 的计步器实现方案,利用具有体积小,功耗低,三轴高精度加速度传感器ADXL340,芯片内部即可把数据 采集来的数据处理为数字数据,同时芯片中还集成了 SPI和12C接口,可以方便地将数据传输到主控芯片。 该系统设计简单,实现方便。该芯片也可以扩展到其 它需要测量加速度的应用场合,具有广阔的应用前景。(作者:苏丽娜,董金明,赵琦)
转载请注明来源:赛斯维传感器网(www.sensorway.cn)