epoxx-arch / simple_casadi_mpc

C++ mpc casadi examples

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

simple_casadi_mpc

C++からCasADiを用いてMPCを解くためのライブラリ

依存関係

インストール方法

git cloneして以下を実行

mkdir build
cd build
cmake ..
make
sudo make install

Examples

double_integrator_mpc_example

摩擦がない物体の直動**のようなもの
座標1、速度1から開始して座標0に収束させる

cartpole_mpc_example

cartpoleタイプの倒立振子の振り上げ
問題設定は以下のリンクのものを仕様

https://gist.github.com/mayataka/ef178130d52b5b06d4dd8bb2c8384c54 https://gist.github.com/mayataka/bc08faa63a94d8b48ceba77cc79c7ccc

cartpole.mp4

inverted_pendulum_mpc_example

回転軸にモーターがついてるタイプの倒立振子の振り上げ トルク制約からアームのように振り上げができないように設定してあるため振り上げに助走が入る

inverted_pendulum.mp4

diff_drive_mpc_example

差動二輪で左上から右下まで移動する その際に円状のオブジェクトの衝突を避けるように制約を追加している

out.mp4

About

C++ mpc casadi examples

License:Apache License 2.0


Languages

Language:C++ 95.4%Language:CMake 4.6%