高性能运动跟踪技术已经从深奥的军事、航空电子设备、海洋和工业应用领域,发展到越来越多的消费者应用领域。然而,将高性能的运动跟踪带到消费者市场往往会迫使设计师们协调一致的目标,特别是在成本、功耗和计算资源方面。

  然而,由于MEMS设计和制造工艺的进步,新一代惯性测量单元(IMUs)正在帮助设计师们提供更高水平的性能,更少的妥协。

  本文将概述设计问题和折衷方案,然后引入一个新的6轴IMU,它承诺从主机处理器卸载计算密集型操作。它还将讨论新的计算分区策略,帮助设计者在显著降低系统功率的水平上达到更高的运动跟踪精度。最后,将讨论新的最优估计算法和一个开发工具包,它将允许开发人员构建更高效的传感器融合解决方案。

  传感器的性能权衡

  和典型的一样,消费设备必须以低成本进行优化。传统上,使用MEMS运动传感的消费者系统的设计者选择了从IMU到应用处理器(AP)或传感器集线器控制器的流加速计和陀螺仪样本,然后再对数据进行进一步处理。

  然而,精确的运动跟踪需要大量的计算资源来完成传感器的融合,目前有6和9轴的imu。在这些应用程序中,设计人员必须支持至少几百赫兹以上的采样频率。设计人员一直努力在低成本的情况下实现高水平的性能,而不会过多地加载系统处理器并破坏用户体验。

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

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

  聪明的艾莫斯

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

  IMU的一个关键部件是AttitudeEngine,它是一个定制的矢量DSP协处理器,能够在高的内部采样率下编码高频运动,同时在任何输出数据速率(ODR)上保持完全的精度。这使得协处理器能够以一定比例的功率处理惯性数据,从而在通用系统处理器上执行相同的计算。

  使用这个裂缝,设计者可以使用协处理器来从主机处理器上卸载计算密集型操作,消除频繁的数据中断的需要,并允许系统处理器在休眠模式中保持更长时间。这个专用的硬件块可以将运动信号处理功耗降低到10倍,而不影响精度。

  关于半导体裂隙IMU的示意图。

  图1:在一个典型的应用程序中,FIS1100 IMU通过一个主I2C接口将其嵌入的3轴陀螺仪和3轴加速度计与第三方磁强计结合在一起。一个应用程序处理器通过SPI 4线接口管理这个9DOF解决方案。(图片来源:凯利讯半导体)

  卡尔曼滤波

  为了在极低的功率水平上帮助开发更高精度的运动跟踪解决方案,开发人员采用了基于卡尔曼滤波理论的新的最优估计算法。一般来说,卡尔曼滤波是一种算法,它使用经过时间观察的一系列测量结果,其中包含统计误差和其他不准确的估计,以预测未知变量的估计。这个系列比单个测量更准确。

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

  一旦记录下一个测量的结果,估计就会使用加权平均数进行更新。在这个过程中,更多的权重被赋予了更高的确定性。

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

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

  传感器融合的发展

  上述卡尔曼滤波技术是由XSENS公司的工程师使用的,XSENS是2014年Fairchild公司收购的传感器融合软件的开发者。该团队创建了一个名为XKE3的最优估计算法,该算法可以在非常低的功率下改进运动跟踪性能。XKE3传感器融合是一个二进制软件库,集成了三维加速度计、三维陀螺仪和三维磁力仪数据,在一个地球固定的参照系中计算三维方向。建立了XKE3算法的可靠性;它们在军事和工业应用领域已经使用了10多年。

  通过将其3轴加速度计和3轴陀螺仪与第三方磁强计和XKE3传感器融合软件结合在一起,半导体为开发人员提供了一个完整的9DOF解决方案。此外,这种捆绑解决方案通过提供滚动、俯仰和偏航定向规格,极大地简化了系统开发。

  传统上,需要增加运动跟踪功能的设计师必须通过陈旧的传感器级规范,学习复杂的运动处理基础知识。现在他们有了一个解决方案,可以提供滚动、俯仰和偏航规范,让他们知道在构建第一个原型之前要期望什么性能。

  在单片机或应用程序处理器上运行,XKE3库以可配置的速率从FIS1100中收集运动数据。在这个9轴的解决方案中(图1,再次),在一个相对较高的频率(1 kHz)中,裂隙样品加速计和陀螺仪数据,并将其发送给AttitudeEngine coprocessor,它具有高精确度的strap-down集成(SDI)计算。协处理器还将磁力计数据与惯性数据同步,以获得克隆和划桨补偿方向和速度增量,以及可选的磁强计数据,并将其全部传输到XKE3发动机。

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

  计算分区

  另一个关键因素在裂缝和XKE3的能力改善运动跟踪性能在较低的功率是使用创新的计算划分策略。传统上,设计师将IMU的加速计和陀螺仪的样品从IMU传输到主机处理器,然后执行SDI的惯性量。这个体系结构如图2所示。然后,传感器融合算法使用集成的值来提供所需的输出。

  加速度计和陀螺仪传统结构示意图。

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

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

  然而,设计师们仍然为高速率的流媒体数据付费。架构迫使主机处理器处理更频繁的数据中断,防止它尽可能频繁地进入睡眠模式。因此,整个系统的耗电量增加。

  缓解这个问题的一种方法是使用IMU一侧的FIFO缓冲区。不幸的是,这种方法提出了新的问题,例如:

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

  当多个外围设备共享同一总线时,在SPI/I2C上增加总线争用/冲突的可能性增加。

  无线应用程序包丢失的较高概率。

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

  设计师可以显著减少系统处理器的计算负载分段算法到高性能节FIS1100上运行,低利率段XKE3引擎上运行,然后使用FIS1100实现IMU一边SDI算法(图3)。这种方法是更有益的高精度的系统运行时,3 d-fusion模式完整的自动校准。

  SDI计算的图上的裂缝。

  图3:在上面所描述的架构中,设计师通过在裂缝的态度上执行高速率的SDI计算,并将低速率的方向和速度增量计算到在主机端运行的XKF3传感器融合算法,从而获得更高的功率效率。(图片来源:凯利讯半导体)

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

  通过在AttitudeEngine模式中运行这个裂缝,设计者可以通过将加速计和陀螺仪信号转换为数字域来实现这一目标,并使用低通滤波器,带宽约为200hz。这使得AttitudeEngine可以在硬件上的1 kHz输入率上执行SDI计算,从而确保从数字计算中得到的所有运动的误差都是可以忽略的。

  将裂隙流运动数据编码为方向和速度增量,而不是传统的角速度和加速度样本,计算是准确的,独立于所选的输出速率。低的输出率导致了运动数据的粗糙时间表示,但是数据仍然是准确的。因此,可以根据具体的应用需求来选择输出率,而不是由于需要进行高精度的数值集成。

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

  在专用硬件上运行SDI而不是主机处理器会大大降低功耗。

  无论选择的输出数据速率如何,运动信息仍然是精确的。

  将SDI函数移动到架构的IMU一侧,通过减少计算需求简化了系统集成。

  开发工具包的kickstart设计。

  建立高精度的运动跟踪解决方案需要花费大量的时间和精力。为了加速对系统性能和精度的分析,以及简化硬件集成和嵌入式软件集成,在半导体方面提供了一个关于裂缝的评估工具。FIS1100的工具包提供了评价体系结合XKE3传感器融合图书馆参考FIS1100司机,和一个例子传感器融合项目的手臂®皮层®- m微控制器。

  评估工具包是通过一个易于使用的MT manager Windows GUI应用程序管理的。评估开始时,将Arduino兼容的FEBFIS1100 MEMS_IMU6D3X盾安装到NXP LPCXPRESSO54102 MCU板上,如图4所示。MCU板通过USB数据线连接到主机PC上。

  Arduino UNO r3兼容FEBFIS1100MEMS_IMU6D3X屏蔽图像。

  图4(图片来源:凯利讯半导体)a

  NXP LPCXpresso54102 ARM Cortex-M开发板的图像。

  图4 (图片来源:凯利讯半导体)b

  图4:在NXP LPCXpresso54102 ARM Cortex-M开发板(b)上,通过提供一个双板集,可以简化对系统性能和软硬件集成的分析。

  一旦安装了驱动程序,用户就会启动MT Manager应用程序,该应用程序自动扫描连接的系统和显示。当开发人员在设备列表中选择一个评估组件时,他们可以通过打开输出配置面板来管理系统操作参数。通过输出配置对话框,可以配置裂隙和XKE3融合库的所有主要功能。

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

  结论

  高性能的运动跟踪能力不再局限于奥术军事和航空电子设备。如今,在成本敏感的消费市场上,同样能力的发展,需求正在迅速增长。正如所描述的,设计师现在可以应用新一代的智能,低噪音,低漂移的IMUs。新的计算分割方法和传感器融合软件的进步使这种转变成为可能。

应用先进的传感器和算法进行低成本运动跟踪---凯利讯半导体相关推荐

  1. 作为传感器集线器的MCU_凯利讯半导体

    今天的手机.平板电脑和其他无线数字设备现在包括提供位置.方向.高度.接近和触摸感知能力的各种传感器.这些传感器每个都提供一个数据输出流,这些数据流必须由主机系统的主处理器捕获或处理,或者由一个芯片来优 ...

  2. MEMS传感器中的小型化_凯利讯半导体

    微机械加工已成为传感器小型化的关键技术.通过使用标准的半导体制造技术能够减小传感元件的尺寸,使得尺寸急剧减小.将信号处理与传感元件集成在一起进一步增强了减小系统尺寸的机会,消除了额外引脚连接到外部设备 ...

  3. 组合导航+多传感器融合算法

    1.INS/GPS的组合导航系统可以输出高频率的导航参数信息(位置.速度.姿态),并且在长.短期的导航过程中均能具备较高精度.(输出数据的意义什么,PDR是步长+航向) 2.误差反馈系统 (1)在开环 ...

  4. 自动驾驶中的9种传感器融合算法

    来源丨AI 修炼之路 在自动驾驶汽车中,传感器融合是融合来自多个传感器数据的过程.该步骤在机器人技术中是强制性的,因为它提供了更高的可靠性.冗余性以及最终的安全性. 为了更好地理解,让我们考虑一个简单 ...

  5. SLAM 03.多传感器融合算法

    传感器标定是自动驾驶的基本需求,一个车上装了多个/多种传感器,而它们之间的时间和空间关系需要统一,传感器数据的标定主要为了定位的准确性. 1.传感器分类 机器人有多种传感器,每种数据类型不一样,数据精 ...

  6. ethz的多传感器融合算法msf编译与安装

    ethz的多传感器融合算法msf编译与安装 1.建立工作空间 2.下载安装所有依赖 2.1 下载依赖库 2.2 安装Google的glog 2.3 安装GeographicLib 2.4 编译 3.报 ...

  7. 9种自动驾驶传感器融合算法你都知道吗?

    作者 | Alan  编辑 | 汽车人 原文链接:https://zhuanlan.zhihu.com/p/430323552 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨 ...

  8. 多传感器融合算法,雷视融合算法

    0: 设备选型 Camera选型: 如何选择视场角和焦距: Radar选型 lidar选型 1: Radar毫米波雷达和Camera视觉融合 算法要求: 图像目标检测 Radar目标检测 radar和 ...

  9. 交互式多模型算法IMM——机动目标跟踪中的应用

    机动目标跟踪--交互式多模型算法IMM 原创不易,路过的各位大佬请点个赞 WX: ZB823618313 机动目标跟踪--交互式多模型算法IMM 机动目标跟踪--交互式多模型算法IMM 1. 对机动目 ...

最新文章

  1. matlab 二阶非线性微分方程组,二阶非线性常微分方程的打靶法matlab实现.doc
  2. conda环境里安装pydot
  3. Cuda编程学习(一)
  4. [云炬创业学笔记]第二章决定成为创业者测试3
  5. php网上实训指导书,PHP网站开发技术-实训指导书2016吐血制作
  6. 21 年前濒临倒闭的苹果是如何做到今天万亿市值的?
  7. 在SqlMapConfig.xml 中typeAliases与properties的关系
  8. python下标是什么类型_python基本的数据类型
  9. 计算机视觉 - 字典学习
  10. 图书管理系统的E-R图和数据库模型图
  11. OpenCV学习笔记(三)——图像像素(图像的最大(小)值、均值、标准差、比较运算、逻辑运算、图像二值化)
  12. 邮件发送html, 分别用p,code,xmp三个标签嵌入代码段后的样式比较
  13. GHOST使用教程图解
  14. IE浏览器-官网下载地址
  15. 什么是长尾关键词567
  16. 修改matlab fig,matlab只修改fig图形属性不修改源码的方法
  17. GenZ,CXL,NVLINK,OpenCAPI,CCIX乱战
  18. 【运维面试】面试官:http的状态码你了解多少?
  19. 【niubi-job——一个开源的分布式任务调度框架】-----安装教程
  20. Zigbee基础知识介绍 - 新兵训练营(1)

热门文章

  1. 虚拟机无法建立与服务器的连接,无法通过 Vmconnect 连接到虚拟机 - Windows Server | Microsoft Docs...
  2. Phython基础语法知识点汇集
  3. JavaWeb学习:session
  4. shell高级编程笔记(第九章 变量重游)
  5. python获取文件夹下所有文件名
  6. Android Studio最完整的插件整理
  7. majicMIX realistic 模型
  8. Proxmox VE(PVE)连接WiFi及一些配置
  9. 基于CentOS系统的Crowd、jira和confluence的安装破解
  10. vue项目运行时报Error from chokidar错误解决方法