Helper packages to use the Acados solver for non-linear optimization in ROS2 applications.
The goal is to prototype NMPC solvers in Python and to seamlessly use them in C++ ROS2 applications (i.e., ros2-control
controllers).
To date, the stack includes:
acados_solver_base
: a wrapper C++ class for Acados solvers;acados_solver_plugins
: a templated interface between the wrapper and Acados auto-generated C-code. A minimalistic Python library provides simple generation of C++ solver plugins from Python Acados models;acados_solver_plugins_example
: a package to be used as a demo and as a template when starting a project using the acados solvers.
For more information, please check the documentation.
source /opt/ros/humble/setup.bash
mkdir ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/ICube-Robotics/acados_solver_ros2.git
vcs import . < acados_solver_ros2/acados_solver_ros2.repos
rosdep install --ignore-src --from-paths . -y -r
pip install future-fstrings # Python retro-compatibility
cd ..
colcon build && colcon build
source install/setup.bash
ICube Laboratory, University of Strasbourg, France
Thibault Poignonec: tpoignonec@unistra.fr, @github: tpoignonec