将新6轴IMU与DSP结合实现高性能运动跟踪精度

描述

高性能运动跟踪技术已从深奥的军事,航空电子,船舶和工业应用转移到不断扩展的消费应用领域。尽管如此,将高性能运动跟踪引入消费者市场往往迫使设计人员协调相互冲突的目标,特别是在成本,功耗和计算资源方面。

然而,由于MEMS设计和制造的进步新一代惯性测量单元(IMU)正在帮助设计人员提供更高水平的性能,同时减少妥协。

本文将在介绍新的6轴IMU之前概述设计问题和权衡。承诺从主处理器卸载计算密集型操作。它还将讨论新的计算分区策略,帮助设计人员在显着降低的系统功率水平下实现更高水平的运动跟踪精度。最后,将讨论新的最佳估计算法和开发工具包,以便开发人员构建更高效的传感器融合解决方案。

传感器性能权衡

通常,消费者设备必须优化低成本。传统上,使用MEMS运动传感的消费系统设计人员在对数据进行进一步处理之前,选择将加速度计和陀螺仪样本从IMU传输到应用处理器(AP)或传感器集线器控制器。

然而,精确运动跟踪需要大量计算资源来执行与当前可用的6轴和9轴IMU的传感器融合。在这些应用中,设计人员必须支持至少几百赫兹或更高的采样率。设计人员一直在努力以低成本提供高水平的性能,而不会使系统处理器过载并破坏用户体验。

设计人员面临的另外两个问题是上市时间和最小化功耗。鉴于所有传感器随时间漂移,校准是开发高度准确和一致的运动跟踪子系统的关键。编写自动校准算法是一种选择,但它所花费的时间经常与消费者市场中常见的上市时间较短的窗口相冲突。随着高性能跟踪进入便携式和无线系统,系统功耗的限制提供了额外的障碍。开发人员努力提供高精度运动跟踪所需的大量计算资源,同时优化电池寿命。

最近的一些技术进步有望使开发人员的工作变得更加容易。新的6轴IMU现在配备了先进的矢量数字信号处理(DSP)协处理器,承诺从主处理器卸载计算密集型操作。与此同时,新的计算分区策略正在帮助设计人员在显着降低系统功率水平的情况下实现更高水平的运动跟踪精度。最后,基于扩展卡尔曼滤波理论的新的最优估计算法现在允许开发人员构建更有效的传感器融合解决方案。

智能IMU

新一代MEMS IMU的一个很好的例子是FIS1100最初由Fairchild开发,现在是安森美半导体的一部分。这款智能MEMS传感器模块集成了一个3轴加速度计和一个3轴陀螺仪,并为可选的外部第三方3D磁力计提供输入。当与XKF3传感器融合库和3D磁力计一起使用时,FIS1100提供完整的9自由度(9DOF)解决方案(图1)。

IMU的一个关键组件是AttitudeEngine,这是一种定制矢量DSP协处理器,能够以高内部采样率编码高频运动,同时保持任何输出数据速率(ODR)的完全精度。这允许协处理器以在通用系统处理器上执行相同计算所需功率的一小部分来处理惯性数据。

使用FIS1100,设计人员可以使用协处理器从主机卸载计算密集型操作处理器,无需频繁的数据中断,并允许系统处理器更长时间保持睡眠模式。这种专用硬件模块可以将运动信号处理功耗降低10倍,而不会影响精度。

传感器

图1:在典型应用中FIS1100 IMU通过主I 2 C接口将其嵌入式3轴陀螺仪和3轴加速度计与第三方磁力计集成在一起。应用处理器通过SPI 4线接口管理此9DOF解决方案。 (图像来源:安森美半导体)

卡尔曼滤波

为了在极低功率水平下开发更高精度的运动跟踪解决方案,开发人员正在采用基于卡尔曼滤波理论的新的最优估计算法。通常,卡尔曼滤波是一种算法,其使用随时间观察的一系列测量,其包含统计误差和其他不准确性以预测未知变量的估计。该系列往往比单次测量更精确。

卡尔曼滤波器通过使用两步形式的反馈控制来估计过程。滤波器在某个时间估计过程状态,然后以噪声测量的形式获得反馈。因此,卡尔曼滤波器的方程分为两组:时间更新方程和测量更新方程。时间更新方程负责预测(及时)当前状态和误差协方差估计以获得下一时间步的估计。测量方程负责反馈。

记录下一次测量的结果后,使用加权平均值更新估算值。在这个过程中,更高的确定性给予估计更多的权重。

重要的是要记住卡尔曼滤波算法是递归的。这使得实际实施更加可行。

与设计为直接针对每个估计对所有数据进行操作的其他方法不同,卡尔曼滤波器理论递归地调整所有过去测量的当前估计。它可以仅使用当前输入测量值和先前计算的状态及其不确定性矩阵实时运行。不需要额外的过去信息。

传感器融合的进展

上述卡尔曼滤波技术由XSENS的工程师使用,XSENS是Fairchild于2014年收购的传感器融合软件开发商。该团队创建了一种称为XKE3的最佳估计算法,可在极低功率下提高运动跟踪性能。 XKE3传感器融合是一个二进制软件库,集成了3D加速度计,3D陀螺仪和3D磁力计数据,用于计算地球固定参考系中的3D方向。 XKE3算法的可靠性已经确立;它们已经在军事和工业应用中使用了十多年。

通过捆绑FIS1100,其3轴加速度计和3轴陀螺仪与第三方磁力计和XKE3传感器融合软件,ON Semiconductor为开发人员提供完整的9DOF解决方案。此外,这种捆绑式解决方案通过提供滚动,俯仰和偏航方向规范,大大简化了系统开发。

传统上,需要添加运动跟踪功能的设计人员必须通过古老的传感器级规范,并学习复杂的运动处理基础知识。现在,他们有一个提供滚动,俯仰和偏航规格的解决方案,使他们能够在构建第一个原型之前了解所期望的航向性能。

在微控制器或应用处理器上运行,XKE3库收集运动来自FIS1100的数据以可配置的速率。在这个9轴解决方案中(图1,再次),FIS1100以相对较高的频率(1 kHz)对加速度计和陀螺仪数据进行采样,并将其发送到AttitudeEngine协处理器,该协处理器以高精度执行捷联式积分(SDI)计算。协处理器还将磁力计数据与惯性数据同步,以获得克隆和划分补偿方向和速度增量,以及可选的磁力计数据,并将其全部传输到XKE3引擎。

XKE3起着关键作用在传感器校准中。例如,从振动和温度到设备老化和机械应力的各种过程可以随时间改变磁力计输出。通常,校准参数的这些变化非常微妙。 XFK3使用零用户交互校准补偿这些变化,该校准可连续自动校准每个传感器以查找最重要的错误。这消除了用户中断的需要。

计算分区

FIS1100和XKE3以更低功率改善运动跟踪性能的另一个关键因素是使用创新的计算分区策略。传统上,设计人员将加速度计和陀螺仪样本从IMU流式传输到主处理器,然后主处理器执行惯性量的SDI。该架构如图2所示。然后,传感器融合算法使用积分值来提供所需的输出。

传感器

图2:在传统架构的描述中,加速度计和陀螺仪样本直接从IMU流式传输到主处理器,以执行惯性量的SDI。 (图片来源:安森美半导体)

采用这种架构,加速度计和陀螺仪信号从IMU到主处理器的高速流传输对于保持运动跟踪精度是必要的。然而,由于最终应用所需的更新速率仅为几赫兹,适用于行人导航,高达30至60赫兹的游戏,健身追踪和机器人控制等应用,因此无需向主处理器进行高速数据传输。 。甚至更高性能的应用,如虚拟和增强现实只需要大约100赫兹。在这种情况下,设计人员只需要以高速率传输数据,以便对加速度和角速度进行精确的数值积分。

然而,设计人员仍然需要为高速流数据付出代价。该架构迫使主处理器处理更频繁的数据中断,防止它尽可能频繁地进入睡眠模式。因此,整体系统功耗上升。

缓解此问题的一种方法是在IMU侧使用FIFO缓冲器。不幸的是,这种方法带来了新的问题,例如:

主机处理器需要处理更多数据

SPI/I上总线争用/冲突的可能性增加 2 当多个外设共享同一总线时

无线应用中丢包概率较高

对高速串行总线模式的需求增加主机处理器上的DMA支持

设计人员可以通过将算法分割为在FIS1100上运行的高性能部分,大大减少系统处理器的计算负荷,FIS1100是运行的低速段XKE3引擎,然后使用FIS1100在IMU端实现SDI算法(图3)。当系统以高精度,3D融合模式运行并进行全自动校准时,这种方法更有用。

传感器

图3:随着通过上述架构,设计人员可以在FIS1100 AttitudeEngine上执行高数据速率SDI计算,并将低速率方向和速度增量流式传输到主机端运行的XKF3传感器融合算法,从而获得更高的功效。 (图像来源:安森美半导体)

此外,通过在XKE3引擎上以非常低的采样率运行状态跟踪部分,设计人员可以跟踪更多的状态,实现多个校准的统计最优跟踪参数不用支付系统资源的罚金。

在AttitudeEngine模式下运行FIS1100,设计人员可以通过将加速度计和陀螺仪信号转换为数字域,以及使用宽带约200 Hz的低通滤波器来实现这一目标。这允许AttitudeEngine在硬件中以1 kHz输入速率执行SDI计算,确保来自运动积分的数字计算的任何误差都可以忽略不计。

将FIS1100流运动数据编码为方向和速度增量代替传统的角速度和加速度样本,计算是准确的,与所选择的输出速率无关。低输出率导致运动数据的较粗略时间表示,但数据保持准确。因此,可以根据特定的应用要求选择输出速率,而不是由高精度执行数值积分的需要驱动。

使用这种创新架构,设计人员可以获得多种好处:

在专用硬件而非主处理器上运行SDI可显着降低功耗

无论选择的输出数据速率如何,运动信息都保持准确

将SDI功能移至该体系结构的IMU端通过降低计算需求简化了系统集成

开发套件以启动设计

构建高精度运动跟踪解决方案可能需要大量时间和精力。为加速分析系统性能和精度,以及简化硬件集成和嵌入式软件集成,安森美半导体为FIS1100提供评估套件。该套件提供FIS1100的评估系统,结合XKE3传感器融合库,FIS1100的参考驱动程序,以及ARM®Cortex®-M微控制器的示例传感器融合项目。

评估套件是通过易于使用的MT管理器Windows GUI应用程序进行管理。评估首先将Arduino兼容的FEBFIS1100 MEMS_IMU6D3X屏蔽层安装到NXP LPCXPRESSO54102 MCU板上,如图所示(图4)。然后,MCU板通过USB电缆连接到主机PC。

图4a

图4b

图4:FIS1100评估套件通过提供安装与Arduino UNO R3兼容的FEBFIS1100MEMS_IMU6D3X屏蔽的双板组(a),简化了系统性能分析和软件与硬件集成恩智浦LPCXpresso54102 ARM Cortex-M开发板(b)。 (图片来源:安森美半导体)

安装驱动程序后,用户启动MT Manager应用程序,自动扫描已连接的系统和显示器。当开发人员在设备列表中选择评估工具包时,他们可以通过打开输出配置面板来管理系统操作参数。可以通过输出配置对话框屏幕配置FIS1100和XKE3融合库的所有主要功能。

为了帮助解释传感器数据,MT Manager提供了许多有用的可视化工具。 3D方向视图提供评估板的3D方向的表示。惯性数据视图有助于用户理解XKE3融合库输出的惯性和磁场数据。包括对典型传感器误差的校正,例如陀螺仪偏差和磁性硬铁和软铁扭曲。对于需要跟踪系统短期运动的用户,例如手臂相对于躯干的运动,速度数据视图提供了XKE3融合库的高通速度输出的图形利用。

结论

高性能运动跟踪功能不再局限于神秘的军事和航空电子应用。如今,在对成本敏感的消费者市场中开发相同功能的需求正在快速增长。如上所述,设计人员现在可以应用新一代智能,低噪声,低漂移的IMU。计算分区的新方法和传感器融合软件的进步使这种转变成为可能。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分