Paquetes desarrollados como parte de la tesis de pregrado de Jose Manuel Fajardo denominada control de cuerpo completo en espacio operacional de robots tipo manipulador móvil.
Los paquetes desarrollados necesitan tener instaladas las librerías Eigen y DART de C++. Para instalarlas se pueden utilizar los comandos:
sudo apt-get install libeigen3-dev
sudo apt-add-repository ppa:dartsim/ppa
sudo apt-get update
sudo apt-get install libdart6-dev
Además de las anteriores librerías, se utilizaron los paquetes de ROS-Control y robot_localization. Para instalarlos se puede utilizar los siguientes comandos:
sudo apt-get install ros-melodic-ros-control
sudo apt-get install ros-melodic-ros-controllers
sudo apt-get install ros-melodic-robot-localization
Para compilar el código se recomienda utilizar la herramienta catkin_tools, la cual puede ser instalada utilizando los comandos:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu
lsb_release -sc
main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install python-catkin-tools
Con esta herramienta se recomienda compilar los paquetes utilizando máximo la mitad de los hilos disponibles de CPU, utilizando el modificador -j. Como ejemplo, en caso de que se tengan ocho hilos disponibles se debe utilizar el siguiente comando estando dentro del workspace.
catkin build -j 4
Para el uso se debe iniciar el simulador y cargar el modelo a través del comando:
roslaunch mobile_manipulator_unal_description gazebo_view.launch
Después se debe iniciar el controlador utilizando el comando:
roslaunch mob_manipulator_controller osc_controller.launch
Teniendo el controlador se puede pasar a publicar la trayectoria deseada en el tópico /mobile_manipulator/desired_traj y suscribirse al tópico de información del robot /mobile_manipulator/data.
TODO