6 轴惯性模块LSM6DSL 或 LSM6DSM,以及eCompass LSM303AH. 这些 MEMS(微机电系统)因其精确的传感器而深受移动设备制造商的欢迎。它们还可以从主 MCU 卸载一些计算,并且它们消耗的能量非常少(在低功耗模式下仅为 0.4 µA)。它们的特别之处在于两者都可以充当计步器,这意味着设备可以跟踪用户的跑步或步行步数,而对性能或电池寿命的影响很小。为了更好地了解 ST 如何能够以最小的封装提供如此强大的功能,让我们了解计步器的工作原理。
LSM6DSL/M 和 LSM303AH 都使用加速度计,通过测量电势的变化来感知运动。当用户迈出一步时,一个由硅制成并附在锚上的自由元件沿感应的方向移动。当它移动时,它会接近或远离基础结构,这会影响它们的电容。这足以测量速度变化,还可以测量绝对手腕倾斜和相对倾斜。 数据在标准 SPI 或 I2C 串行总线上以数字形式输出到主机 MCU。
自定义计步器
ST 的组件很特别,因为它们不仅可以感应运动,还包括特殊的硬件单元来处理加速度计收集的数据。例如,计步器功能有自己特定的 IP 块。因此,当 MEMS 检测到运动时,该单元使用专有算法处理信息以确定它是否对应于一个步骤,而无需使用主机 MCU 的资源。ST 甚至允许工程师通过更改“去抖动步骤”和“最小阈值”来调整算法的某些方面。
最小阈值如何影响计步器
去抖步数是在计数器开始增加之前必须检测到的最小连续步数。如果没有这个功能,就无法区分真假步骤。例如,如果一个人在跑步时必须在人行横道上停下来,那么在等待信号改变时计算所做的动作是没有意义的。去抖动步骤可以确保计数器仅在用户恢复其步伐时才增加。工程师还可以自定义最小阈值,这意味着可以作为一个步骤的最小力。因此,开发人员可以创建具有针对各种活动调整的特定设置的不同配置文件,以更准确地测量步骤并产生有意义的结果。
系统优化
每检测到一步,计步器就会向计步器发送一个中断。中断是传输到特定组件(通常是主机)的信号,指示事件需要其注意。在该系统中,计步器使用其 INT1 引脚(LSM6DSL 和 LSM6DSM)向主机上的特定引脚发送中断。因此,主机的其余部分可以处于睡眠模式,或执行其他任务,而只有一小部分架构检测到中断的存在,对其进行处理,并决定是否需要唤醒 MCU 的其余部分。该系统还确保数据采集过程的同步,以避免任何信息丢失。
例如,可以仅在超过去抖动步骤后才发送中断,以确保系统不会在琐碎的运动上浪费能量。随着越来越多的用户戴着健身手环睡觉,浪费电池寿命试图测量睡着时发生的小而零星的手势将毫无意义。通过正确设置系统的去抖步长和最小阈值,工程师可以确保没有中断唤醒系统,即使用户在睡眠期间移动。
模块化效率
在一个移动设备中同时包含 6 轴惯性模块和指南针是很常见的。因此,ST 为什么选择在两者中都包含一个加速度计和一个特定的计步器单元?原因是它们是模块化的,这意味着可以同时使用它们以获得更高的精度,或者禁用一个加速度计以节省能量,同时仍然受益于强大的计步器。这种设计还允许更大的灵活性。例如,如果其中一个组件已经关闭,系统仍然可以依靠唤醒组件的计步器 IP 来计算步数,无论它是哪一个。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !