准确可靠地感测位置、方向和运动已经成为许多细分市场(包括消费、工业和军用/航空)各种应用领域的必要需求。要提供这种复杂的数据,适用的传感器系统除了整合来自基本的陀螺仪传感器或加速计的结果外,还需其他方面的结果。

从这些单独的传感器获得准确的读数本身就很难,系统设计人员还需进一步组合多个传感元件的输出,并通过传感器融合来整合其输出。然而,实施传感器融合的复杂性极易造成系统开发停滞不前。

为此,设计人员可以转而使用Bosch Sensortec的两款方向传感器器件。这些器件提供了一种比定制传感器融合设计更简单的替代方案,通过现成的解决方案加快传感器融合功能的开发。

传感器融合的需求

感知方向和运动的能力在依赖虚拟或物理运动的应用中起着至关重要的作用。智能手机依靠这种能力来进行各种操作,简单如纵向显示切换到横向显示,复杂如无需GPS辅助即可操作的惯性导航应用。除了智能手机及许多其他消费品和工业物联网(IoT)产品外,医疗和汽车应用越来越需要一定程度的方向感知功能。虽然在实施具有方向感知的传感器融合设计上会有所起伏,但这让设计人员有机会提供与众不同的设计。

在硬件层面,底层传感系统用加速计检测运动,用陀螺仪感测旋转,并用磁力仪识别航向。理论上,这些传感器可以提供确定方向、位置和航向所需的所有必要信息。

然而在实践中,每种传感器在其传输必要数据的能力方面都表现出严重的局限性。加速计的高灵敏度会带来高噪声。陀螺仪会随时间产生漂移,因此不能提供绝对旋转数据。磁力仪会响应所有磁场并会因给定设置中发现的磁性材料产生异常结果。

此外,这些传感器类型中没有一个能够明确地测量偏航等更复杂的运动,更不用说根据地球的磁场识别传感器的绝对方向。要取得这些更复杂的结果,需要在所谓的“传感器融合”的过程中组合传感器数据。

传感器融合方法

传感器融合会合并来自多个传感器的数据,以得出从单个传感器无法得出的结果。方向和惯性导航专家采用为特定类别的应用设计的一系列传感器融合算法。这些算法的细节不在本文的探讨范围内,但每种算法都力求优化原始传感器数据的合并,这些数据经传感器噪声和精度等各种特性进行了静态或动态加权。结果是使用诸如欧拉角或四元数等抽象概念的方向和运动的数学投影。

幸运的是,开发人员不必成为传感器融合算法的专家就能利用这些算法的功能。在构建传感器融合应用时,开发人员可以使用现有的软件解决方案,如NXP Semiconductors传感器融合库。设计用于在Kinetis K20之类的MCU上运行的NXP软件可以组合使用由可编程增益放大器(PGA)、比较器和模数转换器(ADC)组成的MCU集成模拟信号链采集的传感器数据。

这种基于MCU的方法在满足特定应用需求方面具有极大的灵活性。没有传感器融合理论经验的开发人员可以使用现成的库开发经过优化的系统。希望实施更专业算法的专家可以在目标应用程序中替换其代码。即使如此,所有开发人员在前端传感器系统自身的设计上仍面临重大挑战。

不管算法如何,传感器融合结果的精度很大程度上取决于底层传感器设计。作为传感器融合的基本要求,传感器测量值需要紧密/或足够紧密地同步,以满足时间分辨率的应用要求。目标传感器的物理布局等问题会影响同步,特别是对于传感器远离传感器处理设备的应用而言。在这些情况下,传感器及其各自的信号处理链之间的不同时序路径会导致同步中出现系统定时误差。虽然开发人员可以解释这些差异,但基于集成传感器的方法化解了这个问题。

集成传感器模块简化了融合

集成传感器器件将每个目标传感器放置在同一个模块上,消除了有关不同时序路径的实际问题。此外,使用这种器件,开发人员可以依赖于其传感器模块设计人员来尽量减少噪声源或会影响传感器精度的其他设计因素。事实上,Bosch Sensortec通过其BMF055 9轴方向传感器使这种方法更进一步。这种系统级封装(SiP)器件将Atmel ATSAMD20J18A 32位MCU和与其BMA280加速计、BMG160陀螺仪和BMM150地磁传感器(图1)大致相当的传感器加以集成。(注意,BMF055的传感器在某些性能值方面与其独立的等效产品有所不同。)

图1:Bosch Sensortec BMF055将传感器与基于Atmel Cortex-M0+的MCU相结合,收集原始传感器数据并执行传感器融合,简化了方向和惯性测量应用的传感器系统设计。

基于ARM®Cortex®-M0+内核的内置Atmel ATSAMD20J18A MCU集成了32 KB的SRAM和256 KB的闪存。它用作本地主机,通过SPI总线获取原始传感器数据,并在模块内执行传感器融合软件算法。反过来,Atmel MCU通过USART接口与外部主机通信,以传输最终的传感器融合结果。

硬件设计简单明了。BMF055只需要一个外部32 KHz晶体和电容即可完成传感器融合设计(图2)。事实上,Bosch Sensortec BMF055评估套件提供了一个简单的即用型开发平台,将分线板与包含BMF055和所有必要组件的小板组合在一起。

图2:Bosch Sensortec BMF055几乎不需要额外组件来实施方向传感器系统,并提供串行接口用于开发及将传感器融合结果传输到主机系统。

BMF055 SiP消除了传感器融合设计硬件实施的重大障碍。需要自行编写传感器融合算法的开发人员可以使用BMF055作为集成替代方案,不用再创建基于MCU的传感器融合设计。事实上,Bosch Sensortec在基于Atmel软件框架(ASF)的分层架构中提供了BSX-Lite传感器融合库。

该软件包在每一层上都公开了一系列API,用于访问BSX-Lite库、传感器驱动程序和底层ASF驱动程序(图3)。实际的运行时间代码驻留在随分发包提供的封装库中。开发人员可以在提供的堆栈上快速构建其应用程序,根据特定应用程序需求替换自己的专有传感器融合库。

图3:Bosch Sensortec提供传感器融合软件包,允许通过API访问BSX-Lite传感器融合库、传感器和Atmel软件框架(ASF)。

Bosch Sensortec软件包甚至包含示例代码,该代码能展现用于执行各种器件操作(代码列表)的高级调用。软件为每个传感器提供了分类,因此从特定传感器读取数据就像为相应类别的实例调用适当的方法一样简单。传感器支持库中的低级例程执行必要的总线读取,由嵌入式MCU执行,以通过SiP模块的内部SPI总线访问传感器器件寄存器。

直接替代型解决方案

凭借完整的可编程性,BMF055为需要定制功能,甚至专门的传感器融合计算的应用提供了有效的解决方案。对于寻求快速直接替代型解决方案的开发人员,Bosch Sensortec BNO055将传感器融合固件与传感器和MCU集成,直接输出固件所生成的高级信息。BNO055使用基于寄存器的方法,能让主机获得最终的结果,包括加速度、线性加速度、重力矢量、磁场强度、角速率、温度,以及欧拉角或四元数的方向。

对于硬件集成,模块提供I2C和UART端口用于连接到主机,并需要与BMF055相同的基本晶体和电容器补充。与BMF055一样,Bosch Sensortec还提供了一个BNO055开发板,其中包括该器件和所有必需的组件。

因为BNO055执行传感器融合计算并提供最终结果,所以软件界面相对简单。基本器件驱动程序处理外部主机通过I2C或UART硬件接口访问器件所需的总线读写操作。

低级软件例程会访问BNO055的专用寄存器来检索特定的传感器融合结果。

增强现实、无人机和智能手机等应用依赖于确定方向和运动的能力。传感器融合基于不能单独生成信息或者不能明确和快速生成信息的传感器来提供这些信息。对于设计人员来说,创建合适的传感器解决方案在硬件设计和软件开发方面都面临重大挑战。

BMF055和BNO055器件能满足快速开发传感器融合设计的定制和直接替代型解决方案的需求。

注:文章内的所有配图皆为网络转载图片,侵权即删!

bno055传感器数据不更新_BMF055和BNO055器件:快速开发传感器融合设计的定制相关推荐

  1. 软件开发全套视频教程汇总(javaSE,javaEE,linux,android开发,C# ,web前端,大数据云计算,数据挖掘,web前端,php开发,UI设计,C++开发,3D视频)

    软件开发全套视频教程汇总(javaSE,javaEE,linux,android开发,C# ,web前端,大数据云计算,数据挖掘,web前端,php开发,UI设计,C++开发,3D视频) 这是我以前学 ...

  2. bno055传感器数据不更新_Bosch BNO055 应用特定型传感器节点实现智能化 9 轴绝对方向感应...

    用户喜欢... Maxim 的 MAX-HEALTH-BAND 开发平台优化了设计周期,用于开发高精度小型高功效可穿戴健康和健身应用 Maxim的 MAX-HEALTH-BAND 是一个开发和评估平台 ...

  3. bno055传感器数据不更新_博世传感器BNO055智能9轴 的绝对方向传感器

    用户喜欢... SGM8139 圣邦微热释电传感器专用模拟前端产品信息和电路图 SGM8139可以在1.4V到5.5V的电压范围内工作,超低工作电流的性质让它非常适合单节或者双节干电池供电的应用,有效 ...

  4. 新大陆物联网-Android实现网关功能-连接云平台并上传传感器数据-获取执行器指令并执行-Android网关开发-通信-数据上传云平台-JAVA原理讲解-免费云平台使用-竞赛2022国赛真题

    目录 一.任务要求 二.开发环境 三.网关上线 四.数据上传与命令下发 五.JSON命令解析思路 六.总结 一.任务要求 我们将要实现的效果是:Android开发平板与Lora板进行有线串口通信,解析 ...

  5. python qt5 gui快速编程_现货正版 Python Qt GUI与数据可视化编程 pyqt5教程书籍 pyqt5快速开发与实战Qt5 GUI快速编程 计算机网络程序设计人民邮电出版社...

    热销单品 查看更多 > RMB:85.00 立即购买 RMB:63.50 立即购买 RMB:73.50 立即购买 RMB:49.50 立即购买 RMB:127.80 立即购买 RMB:66.00 ...

  6. gazebo 直接获取传感器数据_Gazebo软件简介

    点击蓝字关注我们 1.什么是Gazebo? Gazebo是一款开源的3D动态模拟器,能够在复杂的室内和室外环境中准确有效地模拟机器人群.提供高保真度的物理模拟,其提供一整套传感器模型,以及对用户和程序 ...

  7. 用Arduino玩转掌控板(ESP32):Siri语音识别读取传感器数据→WebServer应用示例2

    众所周知,掌控板在创客教育中用的非常广泛,它是一块基于 ESP32 的学习开发板.大家对掌控板编程,用的比较多的都是图形化编程的方式,比如 mPython.Mind+ 等.但是,既然掌控板是基于 ES ...

  8. 基于STM32的光敏传感器数据采集系统-嵌入式系统与设计课程设计

    目录 1 项目概述 1.1 项目介绍 1.2 项目开发环境 1.3 小组人员及分工 2 需求分析 2.1 系统需求分析 2.2 可行性分析 2.3 项目实施安排 3 系统硬件设计 3.1 系统整体硬件 ...

  9. WebServer应用示例2:Siri语音识别读取传感器数据 | ESP32轻松学(Arduino版)

    本系列历史文章目录: ESP32 概述与 Arduino 软件准备 ESP32与掌控板IO接口编程入门 蓝牙翻页笔(PPT 控制器) B 站粉丝计数器 Siri 语音识别控制 LED 灯 Siri 语 ...

最新文章

  1. 机器视觉:图像与视频朝向检测
  2. MySQL子查询优化思路
  3. 研究称语言能力比数学能力更重
  4. 计算机一级高级技师,高级工程师与高级技师职称有什么区别?快来了解一下吧...
  5. html渲染json的插件,[ json editor] 如何在网页中使用Json editor 插件
  6. 其他转成十进制,十进制转其他进制
  7. CMake编译protobuf
  8. 计算机工程制图课程安排,2017工程制图课程简介
  9. C/C++ _beginthreadex 多线程操作 - 线程同步
  10. 18650锂电池保护板接线图_锂电池保护板的过流保护测试方案
  11. Java 中status意思_struts2中iterator里属性status=stat什么意思
  12. 程序阅读_全面详解LTE:MATLAB建模仿真与实现_自学笔记(1)调制与编码_程序阅读
  13. 电脑黑屏只有鼠标箭头怎么修复 电脑开机黑屏的修复办法
  14. Altium Designer(二)——原理图(SchDoc)的绘制
  15. Element el-icon 图标组件详解
  16. javascript运算符:==与===的区别,||和特殊用法
  17. linux scsi相关的一些学习笔记
  18. do还是doing imagine加to_问个问题imaginetodo/doing哪个是对的?imaginedo/doing的区别?
  19. 【题解】力扣78.子集
  20. c语言和plc编程,PLC编程-C语言PPT学习课件

热门文章

  1. ssm java上传图片预览_基于JAVA的SSM图片浏览系统
  2. [STM32 ]内部独立看门狗IWDG
  3. java 环境变量 linux_怎么配置java环境变量 linux
  4. Apache反向代理
  5. 三级无刷交流发电机matlab模型,三级无刷交流发电机调压系统的建模及其仿真
  6. Histcite使用的几点注意
  7. 基于windows中委派的攻击思路(上)-约束性委派与非约束性委派
  8. 短视频直播源码,EditText输入框的使用
  9. ARM的Nand Flash入门使用手册(以K9F2G08X0M为例)
  10. 百度高德地图全国poi数据