CK1201 / mobile_mpc

Code parts for the publication "Coupled Mobile Manipulation via Trajectory Optimization with Free Space Decomposition"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MPC Trajectory Optimization for Mobile Manipulators

Warning

This code is not maintained or recently tested

Code for paper "Cupled Mobile Manipulation via Trajectory Optimization with Free Space Decomposition".

If you are using this repository, please cite the paper:

@INPROCEEDINGS{9561821,
  author={Spahn, Max and Brito, Bruno and Alonso-Mora, Javier},
  booktitle={2021 IEEE International Conference on Robotics and Automation (ICRA)}, 
  title={Coupled Mobile Manipulation via Trajectory Optimization with Free Space Decomposition}, 
  year={2021},
  volume={},
  number={},
  pages={12759-12765},
  doi={10.1109/ICRA48506.2021.9561821}}

Preliminaries

MATLAB forcesPro optional: casadi

##External dependencies

decompUtilRos ros_mm

pip install geomdl

Code generation

The underlying optimization problem is solved using FORCESPro. The corresponding c-code is generated in MATLAB. First, the path to your forces pro needs to be defined in the file addCustomPaths(). You can also specify the path to your casadi installation. This is optional as matlab will automatically install a casadi version if this is not specified. In mobile_mpc/forcesLib/simpleMPC you find createSimpleMPC.m. This script must be executed once from exactly this folder. In mobile_mpc/forcesLib/sphereMPC you find createSphereMPC.m. This script must be executed once from exactly this folder.

Building the ros Node

bash
catkin build mobile_mpc

You might build it twice, due to the message generation.

Launching

Setting update frequency of move_base to 0 to avoid mulitple updates of the global path

roslaunch mobile_mpc mpc_gazebo.launch
roslaunch mobile_mpc mpc_components.launch
roslaunch mobile_mpc mpc_planner.launch
roscd mobile_mpc/scripts
./simpleMpcActionClient 3.0 0.0 0.0

About

Code parts for the publication "Coupled Mobile Manipulation via Trajectory Optimization with Free Space Decomposition"


Languages

Language:MATLAB 66.3%Language:C++ 25.9%Language:Python 7.1%Language:CMake 0.6%Language:Shell 0.2%