01
Autoware整体架构概览
理解Autoware的核心模块(感知、规划、控制、定位)及其接口关系。
架构入门
02
ROS2基础与Autoware的绑定
ROS2节点、话题、服务、动作在Autoware中的典型用法。
ROS2通信
03
传感器驱动接口适配
LiDAR、Camera、Radar、IMU、GPS驱动如何对接Autoware的Sensor Msgs。
传感器驱动
04
坐标系与TF树配置
从车辆坐标系到世界坐标系的变换,TF树常见配置错误与修复。
TF坐标
05
点云数据接口适配
PointCloud2消息格式、坐标系对齐、时间戳同步问题。
点云PCL
06
图像数据接口适配
sensor_msgs/Image与CompressedImage的转换,相机内参标定文件加载。
图像相机
07
CAN总线与车辆控制接口
如何将车辆底盘CAN信号转换为Autoware的VehicleCommand。
CAN底盘
08
定位模块接口适配
NDT定位、EKF定位的输入输出接口,GPS与IMU融合配置。
定位EKF
09
感知模块接口适配
目标检测、跟踪、分割模块的输入输出消息格式。
感知检测
10
规划模块接口适配
全局路径规划与局部路径规划的Topic与Service接口。
规划路径
11
控制模块接口适配
MPC控制器与PurePursuit控制器的输入输出接口差异。
控制MPC
12
地图数据接口适配
Lanelet2地图、PCD地图、矢量地图的加载与格式转换。
地图HD Map
13
时间同步机制
多传感器时间戳对齐,使用message_filters实现精确同步。
同步时间
14
QoS配置与网络通信问题
Reliable vs Best Effort,深度队列与丢包处理。
QoS网络
15
Launch文件与参数配置
如何编写Autoware兼容的Launch文件,参数动态重载。
Launch参数
16
自定义消息类型
创建与注册自定义msg/srv,确保与Autoware类型兼容。
msgsrv
17
生命周期节点管理
Autoware中LifecycleNode的配置与状态转换接口。
生命周期节点
18
诊断与错误日志
使用diagnostic_updater上报节点健康状态,常见错误码解读。
诊断日志
19
性能调优与实时性
CPU/GPU负载均衡,线程优先级设置,零拷贝传输。
性能实时
20
模拟器与回放工具
使用rosbag录制与回放,与Autoware模拟器对接。
模拟rosbag
21
多传感器融合接口
Radar与LiDAR融合、Camera与LiDAR融合的数据对齐策略。
融合传感器
22
行为规划接口适配
状态机与场景决策模块的输入输出接口设计。
行为决策
23
V2X与外部系统对接
V2I、V2V消息如何转换为Autoware内部Topic。
V2X车联网
24
安全与冗余机制
接口超时检测、故障降级策略、看门狗配置。
安全冗余
25
跨平台编译与依赖管理
ARM架构(Jetson/Xavier)与x86架构的接口兼容性。
ARM编译
26
Docker环境中的接口适配
容器内网络配置、设备映射、共享内存问题。
Docker容器
27
版本迁移指南
从Autoware.AI到Autoware.Universe的接口变化与适配方法。
迁移版本
28
第三方库集成接口
如何将OpenCV、PCL、Eigen等库的输出转换为Autoware消息。
OpenCVPCL
29
测试与验证框架
接口单元测试、集成测试、仿真测试的编写方法。
测试验证
30
实战案例:从零开始适配全新车型
从零开始适配一个全新车型的Autoware接口全流程。
实战全流程