Skip to content

JingyanXing/MPC_TrajectoryPlanning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

项目采用横纵向解耦的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模式(跟驰+变道)

About

基于c++实现的横纵向解耦MPC轨迹规划

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published