很多朋友是第一次接触像小米手环这类运动计步产品,对于那么轻盈小巧的手环能够精准计步,甚至能详细完整的记录睡眠时间觉得非常神奇,本文就和大家详细说说在看不见的小米手环背板下,它是怎么工作的。
1、 手机上的运动步数是怎么来的?
A:简单来说:小米手环能够精准计步由硬件和软件算法两方面组成,缺一不可。
硬件 是指小米手环里内置的那枚强悍的三轴加速度传感器ADXL362 (注1),军用级,大家知道想要达到军用级,这得有多苛刻。其实三轴加速度传感器不神秘,在大多数中高档手机里都有配备加速度传感器,只是在侦测精度上达不到到小米手环的级别。
三轴加速度传感器(注2)的三轴是指空间中的X,Y,Z三个维度,有了这3个维度,手环就可以捕捉到手环在使用中的加速度变化,从而生成数据。重力加速度大家初中物理课上都学过,在此就不多说了。
软件算法:华米程序猿根据三轴加速度实时捕捉到的三个维度的各项数据,经过滤波、峰谷检测等过程,使用各种算法和科学缜密的逻辑运算,最终将这些数据转变成手表APP端的可读数字,步数、距离、消耗的卡路里数值等呈现在最终用户面前。
2、 小米手环上的运动计步功能和哪些因素有关?
A:手环内置的加速度传感器和算法是极其微妙的东西。总体上来说,大家在拿到手环第一次设定时,一定要诚实准确填写各项信息!包括性别,身高,体重,年龄,这些稍微不准都会直接影响到加速度传感器的数据捕捉,进一步影响到算法运算,导致的结果则是计步不准、距离数据不对,消耗卡路里数值欠准度,从而得出不理想的数据,影响到您的个人运动数据。
您的摆臂姿势、步幅、身形、路面的平整度、上坡下坡都会影响到计步数值。
3、 为什么一小部分同学觉得手环不够精确?
A;事情是这样的,手环在一定范围内存在公差是正常现象,殊不知物理学上还有“测不准定律”(注释3),各家手环均使用加速度传感器来作为计步的主要依据,但是由于采用的器件和算法水平不同,于是就产生了各款手环记录步数不一致的状况。
小米手环在研发过程中专门找过各类人群(含职业运动员)对比过各家运动手环,还包括带有GPS模块、海拔计、气压计等各类传感器的运动手表,对比结果显示:小米手环具有极高的计步器精度,与佳明、松拓的专业运动计步手表数据能基本上保持一致。当然,这跟军用级传感器和卓越的算法密不可分。
即使是这样,我们觉得还不够好,华米程序猿仍然在进一步优化运动算法,尽可能的过滤掉日常生活中无规律的运动手势、动作(我们称为“过滤杂波”),以使得小米手环的精度达到最佳。
手环内的传感器太过精密,甚至跟人的走路姿势,步行习惯都有关联,所以大家在遇到您认为不准的数据时,尽管反馈给华米研发同学,他们会认真分析原因的。只为将小米手环做到极致!
如果还觉得不放心的同学,欢迎就近找标准的体育场跑道对比测试,小米手环有信心!
4、 骑行时要能计步就好了?
A:是的,我们看到了,并且已经开始着实开发更多运动模式,以便为用户带来更多的运动场景和体验,但是请给我们一点点时间,都会有的,小米手环将来取代骑行车上的码表并不是空谈。
延伸阅读
注1:ADXL362
ADXL362是一款超低功耗、3轴MEMS加速度计,输出数据速率为100 Hz时功耗低于2 μA,在运动触发唤醒模式下功耗为270 nA。与使用功率占空比来实现低功耗的加速度计不同,ADXL362没有通过欠采样混叠输入信号;它采用全数据速率对传感器的整个带宽进行采样。
ADXL362通常提供12位输出分辨率;在较低分辨率足够时,还提供8位格式化数据以实现更高效的单字节传送。测量范围为±2 g、±4 g及±8 g,±2 g范围内的分辨率为1mg/LSB。噪声电平要求低于ADXL362正常值550 μg/√Hz的应用可以选择两个低噪声模式(典型值低至175 μg/√Hz)之一,电源电流增加极小。
除了超低功耗以外,ADXL362还具有许多特性来实现真正的系统级节能。该器件包含了一个深度多模式输出FIFO、一个内置微功耗温度传感器和几个运动检测模式,其中包括可调阙值的睡眠和唤醒工作模式,在该模式下当测量速率为6HZ(大约)时功耗低至270nA。如有需要,可在检测到运动时提供一个引脚输出来直接控制外部开关。此外,ADXL362还支持对采样时间和/或外部时钟进行外部控制。
ADXL362可以在1.6V至3.5V的宽电源电压范围内工作,并且必要时可以与采用独立低电源电压工作的主机接口。
资料来源:ADI官方网站
注2:三轴加速度传感器
基于重力加速度的基本原理去实现工作的,加速度是个空间矢量,一方面,要准确了解物体的运动状态,必须测得其三个坐标轴上的分量;另一方面,在预先不知道物体运动方向的场合下,只有应用三轴加速度传感器来检测加速度信号。三轴加速度传感器具有体积小和重量轻特点,可以测量空间加速度,能够全面准确反映物体的运动性质,在航空航天、机器人、汽车和医学等领域得到广泛的应用。
注3:“测不准定律”
由于物体运动的时候,时时刻刻都会受到毗邻阻力的影响。而这种毗邻阻力又与物体的运动状态有关,因而物体运动的时候,其状态就不可能准确测量。
大家陆续拿到了手环,对手环的睡眠检测功能还是有不少疑问,这里集中回复一下。

虽然每个人的睡眠状态是不一样的,但是人类的睡眠状态还是有规律可循,而手环主要的判断依据是从入睡到睡眠到醒来这几个阶段的运动变量来判断的。

每个人从上床到真正睡着,身体总会有各种各样的变化,手环佩戴在手腕上,必然会随着身体运动变化而产生各种各样的位移,重力点变化,手环则会记录并判断人是不是在睡觉。

我们设定了至少6个条件,当手环里的数据符合这6个要件时,手环则认为人开始睡觉了。

那么,深睡眠和浅睡眠是怎么判断的呢,一样的,人处于深度睡眠时,基本上不会产生运动量,运动量改变的时间变得更长。

科普:人一生中有很长时间在睡觉,深度睡眠才能真正起到恢复身体体能,促进身体健康的作用,当然,深度和浅度睡眠是交替的,在没有小米手环之前,我们不知道自己到底睡的怎样,休息的好不好,现在可以量化了,只要打开手机端的APP就一目了然。一般来说,晚上梦特别多的同学,基本上都是出于浅睡状态的,早上起床人都会觉得比较疲惫,没睡好。
所以,追求黄金睡眠(深睡觉)对我们尤其重要。

几个具体问题。

1、白天睡觉时间如果足够长,手环是会记录的,午睡就半小时,手环一般不认为您是在睡觉的。

2、纠正下大家的误会,手环不是靠光线识别睡眠状态的,广告画上的那张美女图只是烘托环境啦。

3、早上起来看,发现昨晚梦游了?运动计步里有200多步的记录,其实这真的很有可能,晚上睡着了摆臂,身体有移动是很正常的事儿。

4、目前看,我们的睡眠分析做的还行,不知道大家升级最新版固件没有,我们有加入手动修正功能哦,这样会更加精确。后续我们会不断优化,睡眠分析的精度还会有提高的。

认为睡眠分析有严重不靠谱的欢迎私信给我们,我们来跟进。

 

(附睡眠时间手动修正按钮位置)

强烈建议大家养成随手升级手环新固件的习惯,我们每周都会更新手环固件,增加新功能,

  • 自从有了智能手环,我们的运动量就可以精确到以“步”计算了。想想看,从早上出门到晚上回到家,看看手机上显示出几千步的运动量是不是很有成就感。主打健康运动功能的智能手环就抓住了人们渴望知道精确的运动数据这一需求,从而获得了成功。那么,一个小小的手环蕴藏着怎样的玄机?它是如何实现对运动量的监测呢?3 z* u3 M- h2 X% h: p9 v" O6 o

  • 运动手环有个最重要的“大家伙”:三轴加速传感器,这也是手环的最核心的组件之一,这个组件的作用是计步测量。简单来说,三轴加速器的工作原理是,当人在正常行走时其实会产生水平和垂直两个加速度,当用户迈步时,单脚着地重心上提,垂直方向呈向上加速度,而继续往前走重心回落,加速度方向。而在水平方向,则是迈步时向前加速,收脚是减小。当用户迈步时,单脚着地重心上提,垂直方向呈向上加速度,并向前加速。而手环中的三轴加速器,就是通过人体这样不同的加速度变化可以绘制出一条正弦曲线。以垂直方向加速度正弦波为例,从波谷到波峰再到波谷就是正常人一个步伐的过程,如此就可以推算出用户行进的步数。' Z! Y) k6 `6 b$ z/ F
  • 你可能会说,这样的方式统计是否准确?比如我在刷牙、或是快速抖动手臂,是否会记录成为非法步数。通过实验来看,这种担心可以消除,当在原地快速摆动手臂或是刷牙等操作,并没有增加额外步伐。不出意外的话,UP的算法已经过滤掉了“干扰”信号。人体跑步频率最快为5Hz,那么相邻两步时间间隔一定要大于0.2秒,而如果设置了高频噪声过滤,就可以将短于这一时间的步数消除,只记录有效步数。- j' M1 O( l" X1 g" t$ ~* P

    & [- [2 e$ Z5 Y0 C6 I8 u4 a

  • 因此,对于数据的精确性你完全不用担心,只要老老实实的保持运动量,小米手环都能一一为你准确记录。凡事贵在持之以恒,若想保持健康体魄,还要日复一日的保持锻炼,其他的就交给小米手环给你做吧!6 M+ Y0 V6 C6 l$ q

    & q$ o4 T! e" O" p

    KIO-5.png (0 Bytes, 下载次数: 37)

    下载附件  保存到相册

    2014-9-16 22:51 上传

    【附件原图EXIF信息】
    制造商 : 
    型号 : 
    拍摄时间 : 
    光圈 : 
    曝光时间 : 
    ISO感光度 : 
    焦距 : mm

记得绑定时设定了身高体重了么,非常重要的数据,结合加速度传感器和算法,就可以算出人的步长了,累积起来就是距离数量,当然,这只是原理,算法会非常复杂。

小米手环 / 运动手环 记步功能原理相关推荐

  1. Python自动化小米手环运动数据导出

    捣鼓小米手环,做了个小项目,想导出小米手环的数据显示在Web网页,这里对网上老旧教程进行一波更新换代,还利用Python实现数据导出的自动化(从用户端的角度考虑,原来的教程其交互模式不够优雅,但事实上 ...

  2. 模拟智能手环的时间显示功能 c语言,HT1635AHT1635B在穿戴式运动手环的LED显示之C语言版.PDF...

    HT1635AHT1635B在穿戴式运动手环的LED显示之C语言版.PDF HT1635A/HT1635B 在穿戴式运动手环的LED 显示之C 语言版应用范例 HT1635A/HT1635B 在穿戴式 ...

  3. 【开发教程9】疯壳·开源蓝牙心率防水运动手环-心率监测

    开源蓝牙心率防水运动手环 --疯壳·智能穿戴开发系列    心率监测 1心率测量原理简介          我们手环的心率测量, 采用的是 PPG 光电容积脉搏波描记法原理(PhotoPlethysm ...

  4. 道德绑架?抹杀激情?听我的,别再给孩子买运动手环了

    全文共3477字,预计学习时长10分钟 图源:Unsplash 不管是华为.苹果抑或是小米,这几年的侧重点除了手机,电脑这些传统设备之外,手环手表也渐渐成为了重点对象. 前几日,华为手环4Pro降临, ...

  5. 【开源教程11】疯壳·开源蓝牙心率防水运动手环-整机功能代码讲解

    开源蓝牙心率防水运动手环 --疯壳·智能穿戴开发系列 整机功能代码讲解 整机代码 1 软件设计    本节,我们将融合前面的蓝牙收发.三轴记步.电量检测.外部 Flash 读写. 心率检测和 Led ...

  6. 【开发教程11】疯壳·开源蓝牙心率防水运动手环-整机功能代码讲解

    开源蓝牙心率防水运动手环 --疯壳·智能穿戴开发系列 整机功能代码讲解 整机代码 1 软件设计    本节,我们将融合前面的蓝牙收发.三轴记步.电量检测.外部 Flash 读写. 心率检测和 Led ...

  7. 【开源教程8】疯壳·开源蓝牙心率防水运动手环-三轴计步伐

    开源蓝牙心率防水运动手环 --疯壳·智能穿戴开发系列 三轴计步伐 三轴记步     1相关简介          本次,我们将使用 DA14580 的硬件 I2C 读取三轴传感器的步数.        ...

  8. 【开发教程8】疯壳·开源蓝牙心率防水运动手环-三轴计步伐

    蓝牙心率防水运动手环 --疯壳·智能穿戴开发系列 三轴计步伐 三轴记步     1相关简介          本次,我们将使用 DA14580 的硬件 I2C 读取三轴传感器的步数.          ...

  9. 开发者的福利,报名即可领取代金券,赢运动手环

    开发者们福利来了,笔者发现一个很不错的活动,现在报名即可获得代金券,还可以有机会抽取运动手环,这么好的活动,必须要和大家分享. 点击报名↓↓ 2019华为开发者大赛·CDN&媒体云赛道下包含媒 ...

  10. 蓝牙运动手环app开发方案

    所谓智能蓝牙手环app软件开发,  就是内置蓝牙操作系统.通过连接网络来实现多种功能的手环产品,蓝牙手环一般能同步手机中的电话.短信.邮件.照片.音乐等相关数据.其实早在1982年,日本精工就通过其收 ...

最新文章

  1. 服务器性能好的笔记本电脑,2020高性价比笔记本推荐-1万以上笔记本电脑排行
  2. C#支持中文的格式化字符长度方法
  3. 操作api_币安多币种自动化策略API操作指南
  4. 每天一道LeetCode-----存在一个由加油站组成的环路,判断是否可以从某个加油站出发环绕一周
  5. 【转载】ASP.NET自定义404和500错误页面
  6. Redis分布锁原理简介和实现过程
  7. 测试停止线程(Java)
  8. 1.Oracle 安装教程及使用
  9. neatupload 控件上传大文件
  10. MATLAB中四阶单位矩阵,matlab-线性代数 创建 N阶数量矩阵 N阶单位矩阵 对角矩阵 范德蒙矩阵 等差数列......
  11. Bitset 源码解析
  12. 淘宝差评回复模板,最新最全差评回复话术
  13. 译文 | 通俗易懂的机器学习(1)
  14. Ablation study消融实验
  15. qt无边框窗体的移动
  16. 清扫重复文件夹的数据刷
  17. 解读全球免费化:是众望所归还是坑死不赔
  18. php处理emoji表情方法,PHP实战:3种方法轻松处理php开发中emoji表情的问题
  19. 论文发表的刊物级别怎么查询呢
  20. MySQL中Count和Sum的区别

热门文章

  1. HTML表单颜色选择器
  2. ROS仿真环境安装与配置
  3. vbs教程《变量使用》
  4. python需要学什么-学习python需要什么基础吗?老男孩Python
  5. Hadoop下载、安装与遇到问题
  6. switch常用的交换机配置命令
  7. swfobject参数详解
  8. 直升机救援机制的发展
  9. 爬虫~爬爬爬~task1
  10. Jrebel激活破解