O Robot Operating System (ROS) é uma estrutura sofisticada para o desenvolvimento de aplicações robóticas. Uma de suas principais características é a capacidade de descrever e simular corretamente robôs. O ROS depende de dois componentes principais para fazer isso: URDF (Unified Robot Description Format), que vimos na última aula, e XACRO (eXtensible Access Control Markup Language). Essas tecnologias permitem a descrição e modelagem padronizada e flexível de robôs, tornando mais simples simular, visualizar e operar sistemas robóticos.
Nesta aula, vamos aprender o que é Xacro e como parametrizar robôs no ROS 2 com ele, configurar simulações no Gazebo, e integrar o robô com o MoveIt2 para realizar simulações de planejamento de movimento. Iremos abordar os tópicos abaixo, também tem os comandos de instalação nativa ou via docker.
Parametrização de arquivos URDF com Xacro
sudp apt install ros-humble-xacro
ros-humble-xacro
Simulação no Gazebo
sudo apt update
sudo apt install -y \\
ros-humble-gazebo-ros \\
ros-humble-gazebo-ros-pkgs \\
ros-humble-gazebo-ros-control \\
ros-humble-gazebo-ros2-control \\
ros-humble-ros2-control \\
ros-humble-ros2-controllers \\
ros-humble-joint-state-broadcaster \\
ros-humble-joint-trajectory-controller
ros-humble-gazebo-ros
ros-humble-gazebo-ros-pkgs
ros-humble-gazebo-ros-control
ros-humble-gazebo-ros2-control
ros-humble-ros2-control
ros-humble-ros2-controllers
ros-humble-joint-state-broadcaster
ros-humble-joint-trajectory-controller
Em um projeto robótico, as descrições dos robôs podem rapidamente se tornar longas e difíceis de gerenciar. Além disso, muitas vezes é necessário repetir informações que podem ser parametrizadas. O Xacro permite usar constantes, expressões matemáticas e macros para reduzir esse trabalho repetitivo, permitindo uma modelagem mais modular e eficiente dos robôs.