ROS moveit tutorial

Existem tutoriais diferentes conforme a versão do ROS que temos instalado, Kinetic ou Melodic, e que  se encontram disponiveis nos seguintes endereços (respectivamente):

  • http://docs.ros.org/kinetic/api/moveit_tutorials/html/index.html
  • http://docs.ros.org/melodic/api/moveit_tutorials/html/index.html

No meu caso vou seguir os tutoriais para o ROS Melodic.

O primeiro tutorial é Getting Started disponivel no seguinte endereço:

http://docs.ros.org/melodic/api/moveit_tutorials/html/doc/getting_started/getting_started.html

Este tutorial tem informações em como actualizar o ROS e instalar o moveit.

Primeiro, actualizar o sistema e instalar software

# actualizar o sistema
rosdep update
sudo apt-get update
sudo apt-get upgrade

# instalar moveit e requisitos básicos
sudo apt-get install ros-melodic-catkin python-catkin-tools
sudo apt install ros-melodic-moveit

Segundo, criar um Catkin Workspace e preparar o software de exemplo

mkdir -p ~/ws_moveit/src
cd ~/ws_moveit/src
git clone https://github.com/ros-planning/moveit_tutorials.git -b melodic-devel
git clone https://github.com/ros-planning/panda_moveit_config.git -b melodic-devel

Terceiro, obter as dependências para os pacotes instalados

cd ~/ws_moveit/src
rosdep install -y --from-paths . --ignore-src --rosdistro melodic

Quarto, configurar o catkin workspace:

cd ~/ws_moveit
catkin config --extend /opt/ros/${ROS_DISTRO} --cmake-args -DCMAKE_BUILD_TYPE=Release
catkin build

Quinto, declarar o Source do catkin workspace:

source ~/ws_moveit/devel/setup.bash

Opcionalmente pode ser efectuado a execução automática ao adicionar a linha acima ao .bashrc, executando o seguinte comando:

echo 'source ~/ws_moveit/devel/setup.bash' >> ~/.bashrc

 


 

Depois de instalado o ROS moveit e o software de exemplo, está na hora de abordar o plugin de planeamento do movimento para o RViz.

As informações detalhadas em como proceder estão disponiveis no seguinte endereço:

http://docs.ros.org/melodic/api/moveit_tutorials/html/doc/quickstart_in_rviz/quickstart_in_rviz_tutorial.html

roslaunch panda_moveit_config demo.launch rviz_tutorial:=true

Nos displays adicionar os seguintes plugins:

  • MotionPlanning
  • PlanningScene
  • Trajectory

O display principal para explorarmos um braço robótico no moveit e rviz é o MotionPlanning

Nota sobre a compilação e o efeito no path quando usamos o workspace ws_moveit. Após a compilação ser exectuada deveremos fazer a source do setup.bash outra vez. Caso contrario o ROS não encontra os pacotes compilados neste workspace. Exemplo completo nos seguintes comandos:

cd ~/ws_moveit
catkin build
source devel/setup.bash

Nota sobre o uso do joint_state_publisher_gui no rviz. Quando se usa o moveit, o interface deixa de aparecer no rviz, mesmo quando já se deixou de usar o moveit. Por outro lado, o launch file deve ser actualizado de modo a lançar directametent o joint_state_publisher_gui, caso contrario recebemos o seguitne aviso:

The ‘use_gui’ parameter was specified, which is deprecated. We’ll attempt to find and run the GUI, but if this fails you should install the ‘joint_state_publisher_gui’ package instead and run that. This backwards compatibility option will be removed in Noetic.