ACADO Toolkit

本文最后更新于:2021年8月31日

Toolkit for Automatic Control and Dynamic Optimization

ACADO Toolkit is a software environment and algorithm collection for automatic control and dynamic optimization. It provides a general framework for using a great variety of algorithms for direct optimal control, including model predictive control, state and parameter estimation and robust optimization.

1. 安装

参考:http://acado.github.io/install_linux.html

首先进行ACADO的安装。

1
2
3
4
5
6
7
sudo apt-get install gcc g++ cmake git gnuplot doxygen graphviz
git clone https://github.com/acado/acado.git -b stable ACADOtoolkit
cd ACADOtoolkit
mkdir build
cd build
cmake ..
make

2. 代码生成

参考:http://acado.sourceforge.net/doc/html/db/daf/cgt_getting_started.html

  • ACADOtoolkit/examples/code_generation/mpc_mhe/getting_started.cpp为例,这个文件使用ACADO的语法描述了一个非线性模型预测控制问题

  • 我们需要将自己的问题使用ACADO的语法进行描述,编写完成后进行编译,运行编译出来的文件来进行C代码的生成

  • 生成的代码被放置在getting_started_export文件夹中,具体由以下代码段控制

1
2
if (mpc.exportCode( "getting_started_export" ) != SUCCESSFUL_RETURN)
exit( EXIT_FAILURE );

执行步骤如下:

1
2
3
4
cd ACADOtoolkit/build
make
cd ACADOtoolkit/examples/code_generation/mpc_mhe/
./code_generation_getting_started

执行完成后,可以看到生成的C代码被放置在getting_started_export文件夹下。

参考资料