A nonlinear model predictive controller for ROV disturbance rejection control.
This package requires the following software packages
- control-toolbox
- ORCA Control simulation, visulisation
additional packages for extra features:
- sympy symbolic controller model development
- rqt_multiplot_plugin realtime data plot
Since this is a standard C++ ROS package, you can build it via catkin build
with gcc >= 7
.
roslaunch orca_advance_control manual_control.launch
roslaunch orca_advance_control lqr_controller.launch
roslaunch orca_advance_control ilqr_controller.launch
roslaunch orca_advance_control mpc_controller.launch
If you not yet feel comfortable with work with high-dimensional MPC problem, I have an introductory repository https://github.com/tsaoyu/ct_example for you.
Please cite this paper if you use this code and/or data for your research.
Early access version: https://ieeexplore.ieee.org/document/9180253 (We have made this paper open access, so please have a look, it is free.)
The author release the code WITHOUT ANY GUARANTEE. The user takes the sole responsibilities including but not limited to the injure, casualty and other losses.
This work was funded by the EPSRC as part of the UK Robotics and Artificial Intelligence Hub for Offshore Energy Asset Integrity Management (ORCA-Hub) under grant EP/R026173/1.