自动驾驶硬件系统- Inertial Measurement Unit (IMU)

自动驾驶硬件系统- Inertial Measurement Unit (IMU)

image

附赠自动驾驶学习资料和量产经验:链接

惯性测量单元(Inertial measurement unit,简称 IMU),是测量物体三轴姿态角及加速度的装置。一般IMU包括三轴陀螺仪及三轴加速度计,部分IMU还包括三轴磁力计。IMU在小至手机、VR,大至航空、航天领域都得到了广泛的应用。手机中的微信运动记录步数使用了IMU;VR中随着头部姿态变换切换视野场景用到了IMU;在GPS之前,航运轮船跨海航行确认航向依赖IMU;Apollo登月中依赖IMU实现位置追踪和朝向确认等等。

image

IMU在Apollo登月和VR中的应用

在自动驾驶中,IMU同样不可或缺,它在其它传感器不可用的情况下,提供车辆位置和姿态信息。

IMU通常包含陀螺仪(Gyroscope)、加速度计(Accelermeters),有的还包含磁力计(Magnetometers)。陀螺仪用来测量三轴的角速度,加速度计用来测量三轴的加速度,磁力计提供朝向信息。

1.陀螺仪(Gyroscope)

陀螺仪历史悠久,它对于弹道导弹、飞机、无人驾驶飞机、火星探测器等所有航空航天设备至关重要。

image

V2火箭中的陀螺仪应用

image

现代的晶体管陀螺仪

现代的陀螺仪(MEMS)输出的是旋转变化率(Rotational Rate),而不是Rotation本身,所以需要对陀螺仪的输出对时间积分才能得到朝向信息,在积分的过程中,随着时间的积累,误差也会持续累积,最终使得朝向发生偏移(Drift)。

image

陀螺仪的测量模型(忽略地球旋转):

image

2.加速度计(Accelermeters)

image

加速度计的原理图

image

加速度计可以通过一个通俗易懂的盒子模型来理解,我们假设在失重环境下有一个球放在一个方盒子中,在没有收到任何其它外力的作用下,圆球漂浮在盒子的中央位置。

image

假设盒子的每个面都是压力敏感的,如果我们突然向左移动盒子(比如我们用加速度1g=9.8m/s^2加速它),球会撞到墙X-,然后我们测量球施加到墙壁上的压力,并在x轴上输出-1g的值。

image

在地球上,所有物体都要收到地球引力的作用。所以在地球上,球会落在Z型壁上,并在底部壁上施加1g的力,如下图所示:

image

作用于多轴的加速度计如下:

image

加速度计的测量模型(忽略地球旋转):

image

3.磁力计

image

简单来说磁力计就是一个指南针,它弥补了加速度计无法测量的水平方向的偏航角Heading(Yaw)的问题。它的缺点在于,容易受到金属、磁场扭曲的影响。

4. IMU在自动驾驶中的应用

严格来讲,IMU只提供相对定位信息,即自体从某时刻开始相对于某个起始位置的运动轨迹和姿态。然而,将IMU的相对定位与RTK GPS的绝对定位进行融合后,就产生了两个无可替代的优点:

1)IMU可以验证RTK GPS结果的自洽性,并对无法自洽的绝对定位数据进行滤波和修正;比如如果RTK GPS输出汽车的绝对位置在短时间内发生了很大的变化,这意味着汽车有很大的加速度,而此时IMU发现汽车并不具备这样的加速度,就表明RTK GPS的定位出了问题,应该由IMU来接管绝对定位系统;

2)IMU可以在RTK GPS失效后仍能提供持续若干秒的亚米级定位精度,为自动驾驶汽车争取宝贵的异常处理的时间。IMU可以在相对定位失效时,对相对定位的结果进行航迹推演,在一段时间内保持相对定位的精度,从而能够保障自动驾驶的安全行驶。

image

自动驾驶汽车驶入高楼林立的区域,失去了卫星信号,无法由GPS提供绝对定位,此时,IMU可以发挥其延续绝对定位的作用,在没有GPS信号的区域为汽车提供绝对定位信息,这些信息包括汽车的实时经纬度和海拔高度。

image

自动驾驶汽车通过车道线识别功能确保自身在道路中行驶,在遇到强烈太阳光照射的情况下,车道线识别功能失效。此时,IMU可以发挥其延续相对定位的作用,根据历史记录中的道路曲率与汽车相对于车道边界的历史位置,确保汽车在一段时间内继续行驶在车道中。

5.IMU是自动驾驶的最后一道防线

为什么IMU是自动驾驶系统在定位领域的最后一道防线呢?主要原因有三个:

第一,IMU对相对和绝对位置的推演没有任何外部依赖,是一个类似于黑匣子的完备系统;相比而言,基于GPS的绝对定位依赖于卫星信号的覆盖效果,基于高精地图的绝对定位依赖于感知的质量和算法的性能,而感知的质量与天气有关,都有一定的不确定性。

第二,同样是由于IMU不需要任何外部信号,它可以被安装在汽车底盘等不外露的区域,可以对抗外来的电子或机械攻击;相比而言,视觉、激光和毫米波在提供相对或绝对定位时必须接收来自汽车外部的电磁波或光波信号,这样就很容易被来自攻击者的电磁波或强光信号干扰而致盲,也容易被石子、刮蹭等意外情况损坏。

第三,IMU对角速度和加速度的测量值之间本就具有一定的冗余性,再加上轮速计和方向盘转角等冗余信息,使其输出结果的置信度远高于其它传感器提供的绝对或相对定位结果。

参考链接

1.http://stanford.edu/class/ee267/lectures/lecture9.pdf

2.http://www.starlino.com/imu_guide.html

3.State Estimation and Localization for Self-Driving Cars: The Inertial Measurement Unit (IMU)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/799724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小米汽车:搅动市场的鲶鱼or价格战砧板上的鱼肉?

3月28日晚,备受关注的小米汽车上市发布会召开,小米集团董事长雷军宣布小米SU7正式发布。小米汽车在带飞股价的同时,二轮订购迅速售尽。 图一:小米集团股价 雷军口中“小米汽车迈出的第一步,也是人生最后一战的开篇”&a…

蓝桥杯 经验技巧篇

1. 注意事项 👨‍🏫 官方通知 👨‍🏫 资料文档 时间:4月13日 9:00~13:00 (时长 4小时)物品 准考证(赛前一周开放下载,自行打印)学生证身份证笔、水、外套&a…

知识推理技术解析与实战

目录 一、引言二、知识推理基础知识表示方法本体论语义网络图形数据库 推理机制概述演绎推理归纳推理类比推理 实践代码示例 三、知识推理的核心技术自动推理系统规则引擎推理算法 知识图谱的运用构建知识图谱知识推理与查询 推理算法深度分析转导推理逻辑推理概率推理 实践代码…

关键节点组挖掘(附Python实现)

一、实验内容简介 该实验主要利用基于度的排序和基于投票策略的排序分别挖掘出一组重要节点作为种子节点,然后在给定的网络中传播,一直到稳态,然后统计感染的规模NR。最后通过比较两种方法的感染规模给出相应的评价,给出不同感染…

合资红利耗尽,海外喜忧参半:上汽2023有点“遗憾”

作者 |老缅 编辑 |德新 3月29日,上汽集团发布2023年全年财报。 数据显示,2023年上汽集团实现总营收7447.05亿元,同比增加0.09%;归属于上市公司股东的净利润141.06亿元,同比减少12.48%;基本每股收益1.226元…

CSS - 你实现过宽高自适应的正方形吗

难度 难度级别:中高级及以上 提问概率:80% 宽高自适应的需求并不少见,尤其是在当今流行的大屏系统开发中更是随处可见,很显然已经超越了我们日常将div写死100px这样的范畴,那么如何实现一个宽高自适应的正方形呢?这里提出两种实现方案。…

景区云旅游/视频慢直播方案设计与平台搭建

一、行业背景 经文化和旅游部数据中心测算,今年清明节假期3天全国国内旅游出游1.19亿人次,按可比口径较2019年同期增长11.5%;国内游客出游花费539.5亿元,较2019年同期增长12.7%。踏青赏花和户外徒步成为假期的热门出游主题。随着…

VSCode SSH 连接 Could not establish connection to “XXX“: spawn UNKNOWN.

1. 确认问题: 拉取vscode终端:快捷键 ctrl(数字1旁边那个) 输入:ssh -V 2. 解决方法 2.1 找到本地SSH 位置 默认本地路径: C:\Windows\System32\OpenSSH 2.2 找到要修改的位置 进入 ssh 插件的设置(可以通过在插…

VIM支持C/C++/Verilog/SystemVerilog配置并支持Win/Linux环境的配置

作为一个芯片公司打杂人口,往往需要一个皮实耐打上天入地的编辑器… 一、先附上github路径,方便取走 git clone gitgithub.com:qqqw4549/vim_config_c_verilog.git 二、效果展示 支持ctrl]函数/模块跳转,支持cscope字串全局代码搜索 依赖&am…

The C programming language (second edition,KR) exercise(CHAPTER 2)

E x c e r c i s e 2 − 1 Excercise\quad 2-1 Excercise2−1&#xff1a;输出结果如图1和图2所示&#xff0c;这道练习题需要文章1和文章2的知识。 #include <stdio.h> #include <limits.h>float getFloat(char sign, unsigned char exp, unsigned mantissa); do…

数字人直播系统是什么?AI数字人直播间搭建方法来了!

无人直播的时代&#xff0c;短视频和直播平台正在风口&#xff0c;各条赛道内也早已人满为患&#xff0c;很多线下商家都想参与其中&#xff0c;因为时间、地方、设备等限制久久不能去实行起来。所以&#xff0c;数字人直播新模式成为了线下商家的救星&#xff0c;线下商家方法…

go语言实现无头单向链表

什么是无头单向链表 无头单向链表是一种线性数据结构&#xff0c;它的每个元素都是一个节点&#xff0c;每个节点都有一个指向下一个节点的指针。"无头"意味着这个链表没有一个特殊的头节点&#xff0c;链表的第一个节点就是链表的头。 优点&#xff1a; 动态大小&…

企业如何做好数字化?

企业进行数字化转型是一个复杂且系统性的过程&#xff0c;涉及战略规划、技术应用、组织变革、文化建设等多个方面。以下步骤和建议可以帮助企业做好数字化转型&#xff1a; 1、明确转型愿景和目标&#xff1a;确定企业的数字化愿景&#xff0c;明确转型的长期目标和短期里程碑…

烤羊肉串引来的思考--命令模式

1.1 吃羊肉串&#xff01; 烧烤摊旁边等着拿肉串的人七嘴八舌地叫开了。场面有些混乱&#xff0c;由于人实在太多&#xff0c;烤羊肉串的老板已经分不清谁是谁&#xff0c;造成分发错误&#xff0c;收钱错误&#xff0c;烤肉质量不过关等。 外面打游击烤羊肉串和这种开门店做烤…

基于Springboot4S店车辆管理系统

采用技术 基于Springboot4S店车辆管理系统的设计与实现~ 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBootMyBatis 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 页面展示效果 管理员功能 首页 销售员管理 维修员管理 客户管理 供应…

Altair®(澳汰尔)Inspire™ Extrude Metal 专为进行高效金属挤压设计

所有挤压公司都希望消除成本高昂的原型设计&#xff0c;缩短重新设计周期。现在&#xff0c;各种规模的企业组织均可获得高等物理特性仿真技术。Inspire Extrude Metal 易于掌握&#xff0c;让所有工程师或设计师都能通过仿真&#xff0c;更好地了解任何特定金属合金的型材特性…

【问题处理】银河麒麟操作系统实例分享,银河麒麟高级服务器操作系统mellanox 网卡驱动编译

1.Mellanox 网卡源码驱动下载链接&#xff1a; https://www.mellanox.com/downloads/ofed/MLNX_EN-5.7-1.0.2.0/MLNX_EN_SRC-5.7-1.0.2.0.tgz 2.系统及内核版本如下截图&#xff1a; 3.未升级前 mellanox 网卡驱动版本如下&#xff1a; 4.解压 “MLNX_EN_SRC-5.7-1.0.2.0.tg…

JavaWeb后端——Mybatis

概述 Mybatis&#xff1a;Java程序来对数据库进行操作&#xff0c;一款优秀的持久层框架&#xff0c;用于简化JDBC的开发 SSM&#xff1a;SpringMVC、Spring、Mybatis 快速入门 步骤2&#xff1a;注意数据库连接的四要素 application.properties&#xff1a;springboot 的默…

【leetcode】动态规划::前缀和

标题&#xff1a;【leetcode】前缀和 水墨不写bug 正文开始&#xff1a; &#xff08;一&#xff09;简单前缀和 描述 给定一个长度为n的数组a1​,a2​,....an​. 接下来有q次查询, 每次查询有两个参数l, r. 对于每个询问, 请输出al​al1​....ar​ 输入描述&#xff1a; 第一…