目录
C1:概述
- 主要研究内容
- 无人驾驶车核心组件
- 软件如何部署运行核心组件
C2:学习内容
- Apollo无人驾驶开源平台内容
- 高精度地图
性质:支持几乎所有软件栈的模块 - 定位
实现:激光、雷达、配合高精度地图 - 感知
工具:深度学习 - 预测
方式:递归神经网络 - 规划
内容:如何生成行车轨迹 - 控制
内容:如何执行规划方案
- 高精度地图
C3:什么是无人驾驶?
- 交通发展历史
步行->马车->汽车->无人驾驶汽车 - 无人车存在意义?
人类 | 无人驾驶汽车 |
---|---|
驾驶事故几率大 | 驾驶更安全 |
驾驶需要学习 | 可自动、互相学习 |
具有停车问题 | 无停车问题 |
-
无人驾驶程度
0级:驾驶员完全控制
1级:驾驶员辅助控制,需要充分参与,但可放弃自治系统的控制;
2级:部分自动化,自动控制巡航以及保持车道;
3级:有条件的自动化,人类可以有必要的时候接入
4级:高度自动化,车辆不期望驾驶员介入,可能没有控制装置,但会控制在一定区域内
5级:完全自动化,任何地方完全自主运行 -
无人驾驶研发历史
1986 NavLab
1995 EUREKA
2005 Sebastian Thrun率队夺得DARPA冠军
2009 Google开始自动驾驶项目
2017 Baidu开源平台——Apollo
C4:Sebastian Thrun致辞
C5:无人驾驶车的运作方式
无人车核心组成
- 计算机视觉:通过摄像头看清环境
- 传感器融合
1)通过多种雷达深入、增加了解周遭环境
2)如:了解车辆运行速度等 - 定位
1)准确度:一位数厘米精度 - 路径规划
- 控制
1)对象:油门、刹车等
2)理想效果:控制路径与规划路径重合
C6:Apollo团队与架构
- Apollo定义
提供硬件规格、车载软件服务、云服务的开源软件平台 - Apollo提供
1)高精度服务
2)开源无人驾驶模拟引擎 - Apollo技术框架层次
1)开源软件平台
2)云服务平台
3)参考车辆平台
4)参考硬件平台
C7:参考车辆与硬件平台
- 参考车辆平台
线性驾驶车辆 - 硬件平台
1)控制器局域网络CAN:即内部通信网络,发送各类信号
2)全球定位系统GPS
3)惯性测量装置IMU
4)测量自身位置、速度、加速度 - 雷达
- 摄像头
1)分辨率高,用于了解环境
C8:开源软件架构
1、开放式软件层架构
1)实时操作系统RTOS
及时分析并执行操作
组成:Ubuntu Linux+Apollo内核
2)运行时操作系统
a.ROS定制版
b.用于各模块进行通信
c.如何定制,使之更适合无人驾驶?
共享内存:更快
去中心化:解决单点故障问题
数据兼容:在ROS中添加protobuf语言
3)应用程序模块层
MAP引擎
定位
感知
规划
控制
端到端
人机接口HMI
C9:云服务
1、Apollo云服务组成
1)高精度地图
2)仿真模拟
出于需要,营造仿真环境
允许开发人员配置多种道路条件
执行模式中,开发人员可以上传和验证模块
评分系统:评价各项道路事件处理的好坏
三维可视化
3)数据平台
ApolloScape允许逐像素分析
4)安全
5)空中软件升级
6)DuerOS