项目采用横纵向解耦的MPC轨迹规划方法,在单向双车道场景下针对动、静态障碍物生成轨迹,直接使用c++调用casadi构建qp问题求解。
预期实现:
1.参考Openpilot及Apollo框架,在车辆行驶过程中考虑自车与障碍物状态的参考线动态更新
2.参考Openpilot及Apollo框架,基于简化的车辆运动学建模的横纵向解耦MPC轨迹规划
3.基于进程通信实现车辆位姿信息的动态显示
-------------------------------------------------------------- 安装说明 --------------------------------------------------------------
项目依赖
Casadi,cmake,python及相关库
项目下载:git clone https://github.com/JingyanXing/MPC_TrajectoryPlanning.git && cd MPC_TrajectoryPlanning
在项目MPC_TrajectoryPlanning目录下
cd build && cmake .. && make
测试是否安装成功:./main
项目main文件中内置两个测试:
int main(){
Test test;
// 横纵向解耦单元测试
test.latSolverUnitTest();
// 纵向单元测试
// test.lonSolverUnitTest();
return 0;
}
🟢更新于2024.03.21--------------------------------------------------------------
实现静态障碍物下参考线生成和轨迹规划
🟢更新于2024.03.26--------------------------------------------------------------
在Test.run方法中初步实现给定静态障碍物环境下车辆参考线的动态更新,规划轨迹的生成
基于socket进行进程间通信实现车辆形心位置动态图像绘制
可视化visualserver启用方法:令起终端cd进入visual目录下, 执行 python visualserver.py。可视化服务端唤起,随后在原终端调用可执行文件
🟢更新于2024.04.03--------------------------------------------------------------
visualserver实现包含车辆轮廓的动态轨迹绘制,车辆速度,航向角,轮胎转角动态曲线绘制
🟢更新于2024.04.07--------------------------------------------------------------
visualserver增加车辆规划轨迹动态绘制
🟢更新于2024.04.11--------------------------------------------------------------
reference line新增动态障碍物下参考线生成逻辑,实现动态障碍物超车
visualserver新增车辆参考线、障碍物实时更新
🟢更新于2024.04.14--------------------------------------------------------------
优化参考线生成逻辑,基于IDM模型实现变速跟驰,新增车道巡航和Auto模式(跟驰+变道)