理论知识参考博客.
python代码实现参考github仓库 .
推荐结合博客内容来看代码实现。
本项目在Ubuntu 20.04下运行,windows下尚未尝试过,因此推荐使用Ubuntu系统。
- python3
- matplotlib
- cmake
- Eigen
cmake的安装直接终端运行
sudo apt install cmake
如果在项目编译时报cmake版本低的错误,可参考该 博客 升级cmake。
对cmake操作不不够熟悉的同学可以先参考文档 学习。
Eigen在Linux下的安装直接使用命令
sudo apt-get install libeigen3-dev
Eigen库采用模板编程技术,仅由一些头文件组成,运行速度快。用cmake管理项目的时候,只需要在CMakeLists.txt里面添加头文件的路径即可:
find_package(Eigen3 REQUIRED)
include_directories(${EIGEN3_INCLUDE_DIR})
画图代码采用了c++ 调用python的matplotlib的方式,所以需要使用pip
的方式安装matplotlib,具体使用方式参考说明文档 。
这边直接移植了该功能。
另外,MPC代码使用了CPPAD/Ipopt优化库,如果要进行MPC的测试,需要安装CPPAD/ipopt。安装方式可参考博客 。
本项目使用Cmake编译,所使用IDE为Clion(推荐使用)。
若不使用Clion,则在项目主目录下,编译:
mkdir build
cd build
cmake ../
make