0

0

自动驾驶惯性导航技术,你了解多少?

WBOY

WBOY

发布时间:2023-04-09 23:01:01

|

2818人浏览过

|

来源于51CTO.COM

转载

惯性导航一般集成在GPS设备中,都是由供应商集成,那在这里有什么讨论的必要呢,要知道在车辆行驶中,我们可以拿到GPS的yawrate和speed信号,而且车辆本身还有一套传感器获取yawrate和speed,又因为航迹推算是自动驾驶很重要的一部分,所以理解惯性导航的工作原理,能很好地帮助我们做基于车身的航迹推算。

惯性导航

目前GNSS+IMU构成的组合导航系统是主流的定位系统方案,惯性导航系统是唯一可以输出完备的六自由度数据的设备、数据更新频率高、是定位信息的融合中心。

惯导中使用的核心算法主要包括3种:1. 惯性导航解算算法;2. 组合导航的卡尔曼滤波器的耦合。3. 环境特征信息与惯性导航融合。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

图片

组合导航系统核心算法框架

硬件及原理

惯性导航系统(INS)是利用惯性传感器(IMU)测量载体的比力及角速度信息,结合给定的初始条件,与 GNSS等系统的信息融合,从而进行实时推算速度、位置、姿态等参数的自主式导航系统。具体来说惯性导航系统属于一种推算导航方式。即从一已知点的位置根据连续测得的运载体航向角和速度推算出其下一点的位置,因而可连续测出运动体的当前位置。

图片

惯性系统工作原理图

惯性导航系统采用加速度计和陀螺仪传感器来测量载体的运动参数。其中三个垂直布置的陀螺仪用于测量载体绕自身三个坐标轴的转动角速度,同时也敏感地球自转的角速度。

加速度计基于牛顿第二定律,采用电容式、压阻式或热对流原理,通过在加速过程中对质量块对应惯性力的测量来获得加速度值。用来测量运动体坐标系上各轴的加速度。     

图片

惯性系统工作原理图

惯导通过对陀螺仪测量的角速度进行积分运算和坐标变换,计算车体的姿态角(横滚、俯仰角)和方位角。根据姿态角可以计算出重力加速度在各个坐标轴上的分量,加速度计测量得的各轴加速度,减去重力加速度分量后积分,得到速度和位置。惯导计算得到的状态,用于预测车辆当前的位置,再和卫星定位接收机得到的位置(或观测数据)进行比较。比较的偏差包含了惯导的推算误差和卫星接收机的定位误差,通过数据融合算法进行加权后,用于修正惯导的预测,让惯导的预测越来越准确。

惯性导航解算算法

通常分以下几步:

  • 姿态更新:对陀螺仪输出的角速度进行积分得到姿态增量,叠加到上次的姿态上;
  • 坐标转换:从IMU载体坐标系到位置、速度求解坐标系(惯性坐标系);
  • 速度更新:需要考虑重力加速度的去除,得到惯性系下的加速度,通过积分得到速度;
  • 位置更新:通过速度积分得到位置。

图片

惯性导航解算算法原理图

在惯性导航中,导航方程的每一次迭代都需要利用上一次的导航结果作为初始值,因此惯导的初始化是比较重要的部分之一。姿态对准是指得到IMU的roll, pitch, yaw。roll, pitch的对准过程一般称为调平。使当车静止时,加速度计测量的比力仅由重力导致,可以通过f=C*g来求解;对于非常高精度的IMU可通过罗经对准的方式,车静止时,通过测量载体系中的地球自转来确定载体的方位(yaw)。

图片

惯性导航初始化原理图

组合导航的卡尔曼滤波器的耦合

使用Kalman滤波器的耦合,对IMU和GNSS即点云定位结果进行融合。可分为松耦合和紧耦合两种方法。

松耦合滤波器采用位置、速度量测值和解算的位置速度之差作为组合导航滤波器输入,也即卡尔曼滤波器的量测量。紧耦合的数据包括GNSS的导航参数、定位中的伪距、距离变化等。 

图片

卡尔曼滤波器的松耦合原理图

图片

卡尔曼滤波器的紧耦合原理图   

图片

卡尔曼滤波器松耦合和紧耦合的优点和不足对比

以百度阿波罗使用的惯导系统为例,采用了松耦合的方式,并且使用了一个误差卡尔曼滤波器。惯性导航解算的结果用于Kalman滤波器的时间更新,即预测;而GNSS、点云定位结果用于Kalman滤波器的量测更新。Kalman滤波会输出位置、速度、姿态的误差用来修正惯导模块,IMU期间误差用来补偿IMU原始数据。   

图片

百度阿波罗卡尔曼滤波器的松耦合

图片

卡尔曼滤波融合示意

环境特征信息与惯性导航融合

目前常用的GNSS+IMU组合惯导方案在一些场景的定位精度稳定性仍不能完全满足自动驾驶的要求。例如,城市楼宇群、地下车库等GNSS长时间信号微弱的场景下,依靠GNSS信号更新精确定位稳定性不足,因此必须引入新的精确定位更新数据源,在组合惯导中引入并融合激光雷达/视觉传感定位等环境信息进行融合定位成为必然趋势。   

图片

一种组合导航和环境感知信息融合的架构示意图

以百度阿波罗的多传感器融合定位系统解决方案为例,惯性导航系统处于定位模块的中心位置,模块将IMU、GNSS、Lidar等定位信息进行融合,通过惯性导航系统解算修正后最终输出满足自动驾驶需求的6个自由度的高精度位置信息。

图片

百度阿波罗的惯性融合定位模块框架

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
页面置换算法
页面置换算法

页面置换算法是操作系统中用来决定在内存中哪些页面应该被换出以便为新的页面提供空间的算法。本专题为大家提供页面置换算法的相关文章,大家可以免费体验。

500

2023.08.14

传感器故障解决方法
传感器故障解决方法

传感器故障排除指南:识别故障症状(如误读或错误代码)。检查电源和连接(确保连接牢固,无损坏)。校准传感器(遵循制造商说明)。诊断内部故障(目视检查、信号测试、环境影响评估)。更换传感器(选择相同规格,遵循安装说明)。验证修复(检查信号准确性,监测异常行为)。

498

2024.06.04

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

25

2026.03.13

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

44

2026.03.12

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

177

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

50

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

92

2026.03.09

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

102

2026.03.06

Rust内存安全机制与所有权模型深度实践
Rust内存安全机制与所有权模型深度实践

本专题围绕 Rust 语言核心特性展开,深入讲解所有权机制、借用规则、生命周期管理以及智能指针等关键概念。通过系统级开发案例,分析内存安全保障原理与零成本抽象优势,并结合并发场景讲解 Send 与 Sync 特性实现机制。帮助开发者真正理解 Rust 的设计哲学,掌握在高性能与安全性并重场景中的工程实践能力。

227

2026.03.05

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号