Universal Robot ROS2 Driver
Le Driver ROS2 pour les cobots Universal Robot a été développé en collaboration entre Universal Robots, le Forschungszentrum für Informatik (INRIA allemand) et PickNik Robotics. Plus précisément par nos voisins de Karlsruhe, en particulier Felix Exner (https://github.com/fmauch)). Le FZI est également à l'origine d'une proposition d'interface ROS standard pour les trajectoires Cartésiennes avec un état de l'art très intéressant des interfaces de programmation des marques de robot majeures, qui est désormais implémentée dans les contrôleurs ROS Cartésiens d'Universal Robots.
Installation de l'environnement de simulation
https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#getting-started
https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver#install-from-binary-packages
Programmation hors-ligne avec URSim et MoveIt2/RViz
Le moyen le plus simple de découvrir et commencer à utiliser un robot UR avec ROS2 est d'utiliser la simulation de la console de programmation (teach panel) de son contrôleur. URSim est le simulateur hors-ligne de Universal Robots. Il permet de reproduire le comportement réel d'un robot quasiment à l'identique en se connectant à son adresse IP. Il est possible d'installer URSim 5 sur un Ubuntu <18 ou dans une machine virtuelle (VirtualBox). Il faut se créer un compte pour télécharger le fichier URSim 5.13. Ubuntu 18 n'est plus supporté, et MoveIt2 tourne sur Ubuntu 22. En attendant la sortie de URSim/Polyscope 6, la manière la plus simple d'installer URSim 5 est un conteneur Docker.
Installer Docker
Depuis les dépôts officiels Ubuntu :
sudo apt update
sudo apt install docker-compose
Ajouter votre utilisateur au groupe docker afin de manipuler les containers sans avoir à utiliser sudo systématiquement :
sudo usermod -aG docker $USER
Tester la bonne installation :
sudo service docker start
docker run hello-world
Installer le conteneur URSim
On suit le tutoriel fournit dans la documentation du driver UR ROS. Il existe une image docker fournie sur hub.docker.com, c'est très simple :
- Télécharger l'image docker
docker pull universalrobots/ursim_e-series
- Lancer l'image sur 192.168.56.101 avec l'URCap external_control préinstallée
ros2 run ur_robot_driver start_ursim.sh
- Ouvrir l'interface URSim en suivant les instructions qui s'affichent dans la fenêtre de terminal
- Voir URSim en utilisant une application VNC, en se connectant à
192.168.56.101:5900
- Voir URSim en utilisant une application serveur web VNC http://192.168.56.101:6080/vnc.html
- Voir URSim en utilisant une application VNC, en se connectant à
Cela va lancer le conteneur docker sur 192.168.56.101 avec l'URCap external_control préinstallé. Les programmes installés et les changements d'installation seront stockés de manière persistante dans ${HOME}/.ursim/programs
.