现如今,很多现代人都非常注重自己的日常锻炼,计步作为一种有效记录监控锻炼的监控手段,被广泛应用在移动终端的应用中。

  目前,大部分的计步都是通过GPS信号来测算运动距离,再反推行走步数实现的。这种方法很是有效,但在室内或没有GPS信号的设备上无法工作。同时,GPS精度对结果的干扰也比较大。

  为避免上述问题的出现,我们可以考虑一种新的测步方法,即:通过设备上的加速度传感器来计算步数,在不支持GPS的设备上也可正常工作。还可以与GPS互相配合测步,这样可令使用场景变得多样。

  1.先要摸清模型的特征

  目前,大部分设备都提供了可以检测各个方向的加速度传感器。以iOS设备为例,我们利用了其三轴加速度传感器(x,y,z轴代表方向如图)的特性来分析。分别用以检测人步行中三个方向的加速度变化。

  iOS设备的三轴加速度传感器示意图

  用户在水平步行运动中,垂直和前进两个加速度会呈现周期性变化,如图所示。在步行收脚的动作中,由于重心向上单只脚触地,垂直方向加速度是呈正向增加的趋势,之后继续向前,重心下移两脚触底,加速度相反。水平加速度在收脚时减小,在迈步时增加。

  反映到图表中,可以看到,在步行运动中,垂直和前进产生的加速度与时间大致为一个正弦曲线,而且在某点有一个峰值。其中,垂直方向的加速度变化最大,通过对轨迹的峰值进行检测计算和加速度阀值决策,即可实时计算用户运动的步数,还可依此进一步估算用户步行距离。

  2.计步的合理算法

  因为用户在运动中可能用手平持设备,或者将设备置于口袋中。所以,设备的放置方向不定。为此,通过计算三个加速度的矢量长度,我们可以获得一条步行运动的正弦曲线轨迹。

  第二步是峰值检测,我们记录了上次矢量长度和运动方向,通过矢量长度的变化,可以判断目前加速度的方向,并和上一次保存的加速度方向进行比较。如果是相反的,即是刚过峰值状态,则进入计步逻辑进行计步,否则舍弃。通过对峰值的次数累加,可得到用户步行的步伐。

  最后,就是去干扰。手持设备会有一些低幅度和快速的抽动状态,或是我们俗称的手抖,或者某个恶作剧用户想通过短时快速反复摇动设备来模拟人走路,这些干扰数据如果不剔除,会影响记步的准确值,对于这种干扰,我们可以通过给检测加上阀值和步频判断来过滤。

  人体最快的跑步频率为5HZ,也就是说相邻两步的时间间隔的至少大于0.2秒,如图所示,我们设置了timespan在记步过程中我们过滤了高频噪声,即步频过快的情况。同时我们通过和上次加速度大小进行比较,设置设立一定的阀值Threshold来判断运动是否属于有效,有效运动才可进行记步。

  3.关于计步器的扩展

  以上是一个依靠加速度测算的计步器实现原理,已知步行和跑步的步伐经验值,那么稍微改进下即可变成一个测距测速计。

  通过三轴加速度传感器,我们可以知道用户的运动状态。除了计步,还可以通过加速器的变化曲线判断用户摔倒状态,做成一个老人和儿童摔倒检测自动报警器。

三轴加速度传感器的计步测算法相关推荐

  1. 基于三轴加速度传感器的计步算法

    基于三轴加速度传感器计步算法 By Sky.J 2018.08.08 概述 今天主要是想要分享利用三轴加速度传感器计步的一个算法步骤. 数据分析--->模型 这里拿到的是ADI公司的测试数据,可 ...

  2. 三轴加速度传感器和六轴惯性传感器_美泰产品推介MSV3100A三轴加速度传感器

    1 产品介绍 MSV3100A三轴加速度传感器 MSV3100A是一款三轴向模拟输出的MEMS加速度传感器.传感器由三个相互正交的微加速度计和信号变换电路组成.能够承受高达10,000g的冲击载荷和恒 ...

  3. 溢出检测单符号位法_设计经验:如何用三轴加速度传感器检测倾斜角?

    本文介绍了三轴加速度传感器的特性,并通过一个典型的应用--检测倾斜角--对单轴.双轴和三轴加速度传感器进行了比较,并给出了选型建议. 在前两篇文章中,我们介绍了单/双轴加速度传感器在来检测倾斜角上的应 ...

  4. ADI Blackfin DSP处理器-BF533的开发详解59:DSP控制ADXL345三轴加速度传感器的应用2(含源码)

    硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 MEMS三轴加速度传感器 我做了一个三轴加速度 ...

  5. ADI Blackfin DSP处理器-BF533的开发详解58:DSP控制ADXL345三轴加速度传感器的应用(含源码)

    硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 MEMS三轴加速度传感器 我做了一个三轴加速度 ...

  6. ADI Blackfin DSP处理器-BF533的开发详解60:DSP控制ADXL345三轴加速度传感器-电子水平仪(含源码)

    硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 MEMS三轴加速度传感器 我做了一个三轴加速度 ...

  7. ADI Blackfin DSP处理器-BF533的开发详解61:DSP控制ADXL345三轴加速度传感器-LCD(含源码)

    硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 MEMS三轴加速度传感器 我做了一个三轴加速度 ...

  8. ADI Blackfin DSP处理器-BF533的开发详解62:DSP控制ADXL345三轴加速度传感器-贪食蛇游戏(含源码)

    硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP++软件 硬件链接 MEMS三轴加速度传感器 我做了一个三轴加速度 ...

  9. 三轴加速度传感器bma150驱动解析

    BMA150 博世 三轴加速度传感器 SPI(4线,3线),i2c,中断引脚 频响+/- 2g,4g,8g;带宽25~1500hz,中断触发内部加速度求值 低功耗,快速唤醒 包含数据寄存器,控制寄存器 ...

  10. android SENSOR_ACCELEROMETER 三轴加速度传感器

    先看效果图: package org.ninetripods.mq.asdasdasdasdasdas; import android.content.Context; import android. ...

最新文章

  1. 如何解决java.lang.NoClassDefFoundError:Java 9中的javax / xml / bind / JAXBException
  2. [使用心得]maven2之m2eclipse使用手册之六使用Maven2插件创建一个简单的SSH2项目之jetty篇(一)...
  3. 从jquery源码中学习一些技巧
  4. WOC?老板让我从Word中复制出1000张图片?
  5. vulhub安装教程
  6. 你女朋友在买买买时,程序员小哥在干嘛?
  7. 各层作用_终于弄明白了 Singleton,Transient,Scoped 的作用域是如何实现的
  8. mysql撤销用户授权_mysql用户授权及撤销
  9. Python+tkinter设置Label字体、字号、样式、对齐方式、鼠标形状、响应鼠标事件
  10. Java程序员春招三面蚂蚁金服,丹丹丹学妹哭着对我说:学长
  11. [LeetCode] 47. Permutations II_Medium tag: DFS, backtracking
  12. python标准库——sys模块
  13. 永恒之蓝-MS17010 CVE-2017-0146
  14. 关于2020年各省市GDP和各省人均GDP的探索
  15. WordPress主题分享:The7主题v10.11免费下载 2022年最新版
  16. win10计算机到桌面显示器,win10电脑外接显示器设置
  17. 批量下载网页链接---数据集批量下载
  18. 页面中拖拽效果的实现
  19. Swift 中字符串截取的几种常见情况
  20. 朝九晚六吊打互联网企业,程序员:又开始无脑吹国企了!

热门文章

  1. 用java制作扑克牌_Java程序设计之扑克牌
  2. 支付宝小程序登录 -tp
  3. gentoo mysql_Gentoo 安装 Mysql
  4. Python学习两个月心得
  5. [leetcode] 935 Knight Dialer 骑士拨号器
  6. 1-8代酷睿全部中招,英特尔处理器再曝漏洞
  7. 现代软件工程-构建之法---第一章 练习与讨论
  8. gsm无线热点数据采集服务器,GSM无线网络优化及WLAN热点分析工具开发
  9. 用文字总结出计算机组装步骤,项目教学法在《计算机组装与维护》中的运用与反思(杜燕)...
  10. unity 打包APK 应用未安装