以智能手机为主,包括智能腕表、健身追踪器和可听戴设备等在内的各类便携式联网电子设备,彻底改变了我们的生活。这些设备在数据采集中融入了处理功能和无线联网技术。
但是,相比其他所有功能特性,运动传感器对于便携式设备的实用和直观的重要性很容易被忽略。无论是在手机上改变屏幕方向、在智能腕表上统计步数、匹配头部运动和扩展现实(XR)眼镜,还是轻敲耳塞式耳机来更换歌曲,动作感测始终是用户体验和界面的重要组成部分。
对于嵌入式工程师而言,选择和集成运动传感器可能会很棘手。如何确保在不增加不必要的成本或功耗的前提下,选择正确的技术以获得所需的精确度?以及如何确保最大限度地利用传感器,并且不会错过可以改进最终产品的性能或功能?
运动传感器基本原理
首先,快速回顾一下我们所说的运动传感器。常用的有三种:加速计、陀螺仪和磁强计。
加速计用于测量加速度(包括重力加速度)。这意味着它可以感测重力相对于传感器的方向(基本上是朝上的方向)。陀螺仪通过测量角速度来测量角位置的变化。
加速计和陀螺仪各有3个自由度(或3个轴),两者结合就可以得到一个6轴运动传感器,或称IMU(惯性测量单元,见图1)。在许多应用中,我们还需要增加一个测量地球磁场强度和方向的磁强计,以便于估计我们前进的方向。在加速计和陀螺仪上添加一个3轴磁强计,就可以得到一个9轴IMU。
因此,本文我们将深入探讨IMU。虽然我们讨论的某些特性可以单独应用于加速计、陀螺仪或磁强计本身,但我们想要阐述的是将至少两种传感器结合起来所面临的挑战。
图 1:IMU实现运动感测 (来源: CEVA)
保持精确
现在我们已经回顾了IMU的理论知识,如何在实践中实施?我们如何才能获得所需的精确度?
对于IMU来说,在确定设备行进方向时所获得的精确度是一个我们可以作为起始点的基础度量标准。我们的要求可能在一到两度范围内,而较低的精确度可以被其他应用程序接受。例如,XR耳机的精确度要求远远超过儿童的机器人玩具。然后我们应该考虑该数据的稳定性,以及它是否会随时间和温度发生变化。
从我们的IMU获得最高精确度输出需要应用感测融合概念,即融合多个传感器的数据以创建整体大于部分的总和。IMU的每个传感器都各有优劣势,将其融合在一起可形成更好的解决方案。
考虑感测融合的一种方式是基于“信任”。在这种情况下,我们可以使用“信任”表示,来自特定传感器的数据在准确性和相关性方面具有合理的可信度。假设你是一个国家的“总统”,则必须由你决定相关政策。你有经济、卫生和军事顾问。每个人都可以为你提供一份信息,但他们分属不同领域。他们会考虑各自的观点将如何影响“同僚”,但仅限于猜想。最终要由你来处理和融合他们的信息,以形成最佳决策。
你同样有两至三个可以从IMU获得定向数据的“顾问”:加速计、陀螺仪以及磁强计。陀螺仪最容易解释。消费级陀螺仪无疑可以在短短几秒钟内进行相对方向的更改,但输出将漂移较长的时间间隔,甚至会达到数十秒以上。加速计有助于长期测量重力,但可能无法识别特定场景,比如汽车的恒定加速度。我们可以在稳定的磁场环境中(例如乡村或森林)使用磁强计,但如果有磁场干扰,比如在钢结构建筑物内,可信度就会降低。
总之,陀螺仪适用于短期测量,加速度计和磁强计适用于长期测量。详细了解它们的局限性后,就可以把它们的数据融合在一起,获得更准确的设备方位图。
对于多个传感器输出信息(如9轴IMU),感测融合使我们有机会整合并对比数据,从而提高精确度。例如,如果我们的感测融合软件包含一种算法,可以检测由于磁场干扰而导致磁强计输出发生的意外或突然变化,那么在磁强计恢复稳定之前,算法可以自动提升对加速计和陀螺仪数据的信心。
采样率对于精确度也很重要——所选传感器提供的数据是否足够满足需求?当然,这具体取决于应用程序:例如,对于一个基础计步器而言,每秒几次读数可能已经足够,但对于大多数应用来说,建议采样频率达到100Hz到400Hz。然而,在XR应用中,精确的头部跟踪可能需要1kHz或更高的采样率(此处XR是VR、MR和AR的统称)。快速采样率对于实现低延迟同样重要,在我们的头部跟踪示例中,这代表着沉浸式VR体验和运动晕眩感受之间的本质区别!
我们还需要考虑校准。许多传感器都是按“原样”提供,输出信息比仅供参考的数据表没有太多变化。任何类型的校准都将有助于最大限度保持不同个体传感器之间的性能一致性。工厂校准是提高个体性能的一种强有力方式,但成本相对昂贵。现场动态校准是另一种方案,需要对传感器本身或至少对应用程序有详细的了解。传感器的应用偏差如果不解释清楚,就会对整体输出产生可能加剧现有任何错误的负面影响。
最后,我们需要考虑如何验证我们获得的传感器数据,并将它们融合在一起。虽然这取决于我们的追踪目标,但基本原则是利用另一个独立的信息源来提供真实状态支持我们检查传感器输出。例如,机器人的手臂可以非常精确地重复移动到已知点,然后我们可以查看传感器是否给我们提供相同的位置数据。当我们检测到错误时,有可能通过计算进行弥补,或者将其标记为需要进一步关注的错误。
启用新功能
一旦我们获得了高精度测量运动的能力,它不仅有助于现有的应用程序,还可以让便携式设备的新功能付诸实现。例如,可听戴设备(图2)的传统用户界面存在问题:用户不想取出手机进行控制,而且可听戴设备本身太小,没有方便的按钮。相反,轻敲可听戴设备可以用来跳过曲目,探测从耳朵里取出的动作可以用来静音所有音频——因为该动作很可能表明希望音频停止播放。利用运动跟踪以及“遥感分类器”等识别不同动作的算法,提供更方便和直观的用户体验。
运动传感器提供的精确信息同样意味着便携式设备可以更好地了解周围发生的事情,或者携带者正在进行的活动。这就是所谓的情境感知,可以用来提供更身临其境的体验,比如当你走到人行横道时,音乐音量会自动调低,以便让你听到附近救护车的警报声。
对于健身跟踪应用程序,提高精确度可以区分不同的用户活动。例如,如果你的步动跟踪器可以测量运动的规模、速度或其他特征,它就可以判断出你是正常行走,还是爬楼梯或下楼梯。融合其他传感器数据,如气压和GPS定位,软件可以建立详细的运动图像,并估算出燃烧的卡路里。
合而为一:感测融合与软件
正如我们所讨论的,为了最大化运动数据的精确度和有效性,仅仅生成一个原始数据提要是不够的。设备需要处理数据,补偿系统的不精确性,并整合来自多个传感器的信息。
其中有很多信息需要处理。感测融合非常复杂,需要特定的专业技术才能在小身躯的设备中达到最佳效果。然而,目前有各种产品集成了所需的传感器和处理程序——例如,由Bosch和CEVA Hillcrest Labs合作开发的BNO080/085,集成了高性能加速计、磁强计和陀螺仪,以及低功耗MCU。
Hillcrest Labs的MotionEngine™ 传感器中心软件在BNO085上预先编程,提供6轴和9轴运动跟踪,以及其他智能功能,例如对行走、跑步和站立等用户活动进行分类(图3)。MotionEngine传感器中心兼容领先的嵌入式处理架构和操作系统,专业版适用于可听戴设备、智能电视、机器人、移动计算、遥控、低功耗移动应用程序等。
实时整合所有数据具有很大挑战性,并且所需的处理性能非同小可。最好选择集成传感器在传感器设备本身的MCU核心上运行这些算法,而不是通过一个主应用处理器来承担这些繁琐事项。尤其是对于像计步这样“始终开启”的任务,如果我们能够避免每次检测到移动时都唤醒主处理器,就可以保持睡眠模式,从而可以减少总功耗,并延长电池寿命。回到我们前面的“总统”类比,专注于感测融合的SiP(系统级封装)就像让一位“副总统”来处理某些决策,以便作为“总统”的主处理器可以专注于更紧迫的任务。
结论
运动传感器在诸多应用中都扮演着重要角色,至于说如何选择适当的设备以及如何达到应用所需的精确度,乃至需要多高的精确度,则并不总是那么简单明确。不同的用例需要不同的精确度级别,并且需要不同的数据类型。
集成传感器和感测融合通常可以为这一问题提供解决方案。通过与适当的供应商合作,可以确保毫无保留地获得精确、可靠的数据以及特定应用程序的增值功能——同时将成本和功耗限制在最低水平。