Chefs de projet robotique, ingénieurs et techniciens en automatisation industrielle, développeurs et toute personne souhaitant utiliser le système ROS 2 pour concevoir une application robotique en environnement industriel.
Comprendre l'architecture de ROS 2, savoir choisir et mettre en oeuvre les composants adaptés à un projet robotique industriel. Les travaux pratiques sont réalisés avec ROS 2 (distribution LTS Humble/Jazzy).
Connaissance générale des systèmes d'information, d'un langage de développement comme Python ou C++. Notions de base sur Linux.
|
| Introduction |
Durée : 3h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation de ROS (Robot Operating System), historique, évolution de ROS 1 vers ROS 2, contraintes, fonctionnalités, licence (Apache 2.0). Objectifs des créateurs de ROS et apports de ROS 2 pour l'industrie : temps réel, sécurité, fiabilité. Point sur les distributions LTS de ROS 2 (Humble, Jazzy). Tour d'horizon des robots et plateformes industrielles compatibles (bras manipulateurs, AGV, cobots). Exemples d'utilisation de ROS 2 en milieu industriel.
|
|
| Architecture |
Durée : 3h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Principe de fonctionnement de ROS 2 : modularité, légèreté, interopérabilité. DDS (Data Distribution Service) et la qualité de service (QoS). Les différents éléments : noeuds, topics, messages, services, actions, paramètres. Organisation des fichiers, installation, paquets, espace de travail. Présentation des paquets disponibles et de l'écosystème (Nav2, MoveIt 2, ros2_control).
|
|
| Mise en oeuvre |
Durée : 3h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Installation sur Ubuntu LTS. Configuration de l'environnement et sourcing. Présentation du filesystem ROS 2 et des commandes ros2 (ros2 pkg, ros2 node, ros2 topic). Premiers pas : création d'un package en Python et en C++ avec colcon. Gestion des noeuds : utilisation de ros2 run et ros2 launch. Création de topics, de services et d'actions.
|
|
| Développement |
Durée : 3h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Programmation en Python (rclpy) et C++ (rclcpp) d'outils de publication et réception de messages (topics). Implémentation de services et de clients. Mise en place d'actions pour les tâches de longue durée. Utilisation des fichiers de lancement (launch files).
|
|
| Exploitation |
Durée : 3h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Utilisation de fichiers .bag (rosbag2) pour enregistrer et rejouer des messages, intérêt pour le diagnostic industriel. Gestion des dépendances entre packages avec rosdep. Configuration des QoS pour des contraintes industrielles (fiabilité, latence). Exécution distribuée de ROS 2 sur plusieurs machines via DDS. Sécurité avec SROS 2.
|
|
| Extensions |
Durée : 3h30 Méthodes pédagogiques : exposé/échanges Matériels et moyens : video-projecteur en présentiel, tableau partagé en classe virtuelle | Présentation des librairies et frameworks principaux : MoveIt 2 (manipulation), Nav2 (navigation), ros2_control (contrôle moteur). Intégration avec les systèmes industriels : passerelles vers PLC, OPC-UA, protocoles industriels. Outils de simulation : Gazebo, RViz 2.
|