目录
Apollo 工程概述
目录结构
软件架构
硬件架构
AUTOSAR架构
Apollo 概述
目录结构
|-cyber 消息中间件,替换ros作为消息层
|-docker 容器相关
|-docs 文档相关
|-modules 自动驾驶模块,主要的定位,预测,感知,规划都在这里
|-calibration 校准,主要用于传感器坐标的校准,用于感知模块做传感器融合
|-canbus 通讯总线,工业领域的标准总线,鉴于工业界的保守,我估计后面会有新的总线来取代
|-common
|-contrib
|-control 控制模块,根据planning生成的路径对车辆轨迹进行控制,再底层就是发送命令到can总线,实现车辆的控制。
|-data 地图等数据
|-dreamview 仿真,能够对自动驾驶过程中的数据进行回放
|-drivers 雷达,lidar,GPS, canbus,camera等驱动
|-guardian 有点类似action factory
|-localization 定位,获取汽车的当前位置
|-map 地图模块
|-monitor 监控模块,主要是监控汽车状态用于故障定位,健康检查等,对标fault detector
|-perception 感知,获取汽车当前的环境,行人,车辆,红绿灯等,给planning模块规划线路
|-planning 规划,针对感知到的情况,对路径做规划,只规划100-200M的距离,路径给control模块
|-prediction 预测,属于感知模块,对运动物体的轨迹做预测
|-routing 导航线路,就是百度地图上查询2点之间的线路,是粗粒度的路线规划
|-third_party_perception 第三方感知模块
|-tools 工具,有运行状态下检测的工具,以及事后复盘的工具,很有参考价值
|-transform 坐标转化
|-v2x 顾名思义就vehicle-to-everything,其希望实现车辆与一切可能影响车辆的实体实现信息交互,
目的是减少事故发生,减缓交通拥堵,降低环境污染以及提供其他信息服务.
|-scripts 脚本
|-third_party 第三方库
|-tools 编译工具的目录
软件架构
硬件架构
AUTOSAR架构
AUTOSAR是Automotive Open System Architecture(汽车开放系统架构)的首字母缩写,是一家致力于制定汽车电子软件标准的联盟,基于汽车开发的Apollo系统自然得符合这一标准。而这一标准的目标便是:
1)建立独立于硬件的分层软件架构;
2)为实施应用提供方法论,包括制定无缝的软件架构堆叠流程并将应用软件整合至ECU;
3)制定各种车辆应用接口规范,作为应用软件整合标准,以便软件构件在不同汽车平台复用。