– 学习`apollo`框架设计
– 学习`apollo`中的控制算法
– 学习`apollo`中的规划算法
目前只针对`apollo`中部分模块进行了移植,移植模块有:
“`shell
.
├── docker
│ ├── build
│ └── scripts
├── images
├── LICENSE
├── modules
│ ├── apollo_common
│ ├── apollo_control
│ ├── apollo_map
│ ├── apollo_msgs
│ ├── apollo_planning
│ ├── apollo_routing
│ └── apollo_simulator
└── README.md
“`
目前移植版本能实现车辆在高精度地图下进行`routing`、`planning`和`control`仿真测试,与原有版本改动点如下:
– 使用原生`ros`(基于`noetic`)替代`apollo`中更改的`ros`
– 使用`ros pkg`封装`apollo`中的`module`
– 使用`ros`中的`std_msgs/String`替代`apollo`的`pd_msgs/xxx`消息
– 使用`cmake`进行编译
– 将`protobuff`版本提升到`3.6.1`
– 增加`sim_control`和`sim_pnc`仿真工具包`apollo_simulator`
– 增加高精度地图`rviz`显示
– 增加静态障碍物`rviz`设置
– 更多的高精度地图测试数据
>此移植版本,能很好的将自己的算法增加到框架中,应用于机器人或者无人驾驶中。同时,由于`apollo`中的模块抽象,每个模块之间和中间件没有耦合,中间件能很容易从`ros1`更换成`ros2`、`LCM`等,具体开发可根据自己的需求进行魔改。