• Apollo 应用与源码分析:Apollo工程概述与AUTOSAR架构


    目录

    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)制定各种车辆应用接口规范,作为应用软件整合标准,以便软件构件在不同汽车平台复用。

  • 相关阅读:
    操作系统——多处理器和多核架构
    【Rust指南】use关键字妙用|模块内容拆分
    算法练习16——O(1) 时间插入、删除和获取随机元素
    APP稳定性测试-monkey日志分析及内存泄漏分析
    估计、偏差和方差
    Linux运维相关基础知识
    C++11 - 3 - lambda表达式
    Mysql DATETIME与TIMESTAMP的区别
    pytorch pso优化cnn-lstm 智慧海洋-渔船轨迹识别
    极简极速-Bitset (bitmap)实现考勤打卡场景
  • 原文地址:https://blog.csdn.net/qq_32378713/article/details/127949289