Plan du cours
Semaine 01
Jour 01
Introduction
- Qu'est-ce qui rend un robot intelligent ?
Robots physiques vs robots virtuels
- Robots intelligents, machines intelligentes, machines conscientes et automatisation des processus robotiques (RPA), etc.
Le rôle de l'intelligence artificielle (IA) dans la robotique
- Au-delà du "si-alors-sinon" et de la machine d'apprentissage
- Les algorithmes derrière l'IA
- L'apprentissage automatique, la vision par ordinateur, le traitement du langage naturel (NLP), etc.
- La robotique cognitive
Jour 02
Le rôle des Big Data dans la robotique
- Prise de décision basée sur les données et les modèles
Le Cloud et la robotique
- Lien entre la robotique et l'informatique
- Construction de robots plus fonctionnels qui accèdent à plus d'informations et collaborent
Étude de cas : Robots industriels
-
Robots mécaniques
- Baxter
-
Robots dans les installations nucléaires
- Détection et protection contre les radiations
-
Robots dans les réacteurs nucléaires
- Détection et protection contre les radiations
Jour 03
Composants matériels d'un robot
- Moteurs, capteurs, microcontrôleurs, caméras, etc.
Éléments communs des robots
- Vision par machine, reconnaissance vocale, synthèse de la parole, détection de proximité, capteurs de pression, etc.
Jour 04
Frameworks de développement pour programmer un robot
- Frameworks open source et commerciaux
-
Robot Operating System (ROS)
- Architecture : espace de travail, sujets, messages, services, nœuds, actionlibs, outils, etc.
Langages pour programmer un robot
- C++ pour le contrôle de bas niveau
- Python pour l'orchestration
- Programmation des nœuds ROS en Python et C++
- Autres langages
Jour 05
Outils pour simuler un robot physique
- Logiciels de simulation et de visualisation 3D commerciaux et open source
Outils pour concevoir les caractéristiques physiques d'un robot
- Logiciels CAD commerciaux et open source
Étude de cas : Robots mécaniques
- Robots dans le domaine de la technologie nucléaire
- Robots dans les systèmes environnementaux
Semaine 02
Jour 06
Cours accéléré en Python
- Installation et configuration du logiciel
- Paquets et utilitaires utiles
- Travail avec les structures de données Python, opérateurs, boucles, conditions, fonctions, méthodes, etc.
- Écriture d'un programme d'exemple
- Projet en équipe
Jour 07
Préparation au développement de robots
- Configuration de l'environnement de développement (par exemple, Arduino IDE)
- Exploration de la syntaxe du langage Arduino (C/C++)
- Codage, compilation et téléchargement sur le microcontrôleur
- Assemblage des composants matériels d'un robot Arduino
Jour 08
Travail avec les composants Arduino
- Capteurs analogiques
- Capteurs numériques
Travail avec les modules de communication Arduino
- Modules Bluetooth
- Modules Wi-Fi
- Modules RFID
- I2C et SPI
- Internet mobile
Jour 09
Construction d'un robot
- Planification des fonctionnalités et caractéristiques d'un robot
- Implémentation du mouvement du robot
Projet en équipe
- Discussion et revue
Jour 10
Contrôle du robot
- Implémentation du contrôleur
- Connexion au robot (filée et sans fil)
Projet en équipe
- Discussion et revue
Semaine 03
Jour 11
Programmation du robot
- Simulation d'un robot avec Gazebo / ROS
- Compréhension d'un nœud ROS
- Programmation d'un nœud en Python et C++
- Messages et sujets dans ROS
- Paradigme de publication / abonnement
Projet en équipe
- Bump & Go avec un robot réel
- Discussion et revue
Jour 12
Programmation du robot (suite...)
- Cadres dans ROS et changements de référence
- Traitement de l'information 2D des caméras avec OpenCV
- Traitement de l'information d'un laser
Projet en équipe
- Suivi sécurisé des objets par couleur
- Discussion et revue
Jour 13
Test du robot
- Outils pour tester votre code
- Tests unitaires
- Création d'un jeu de tests
- Automatisation de vos tests
- Dépannage
Projet en équipe
- Suivi sécurisé des objets par couleur
- Discussion et revue
Jour 14
Programmation du robot (suite...)
- Services dans ROS
- Traitement de l'information 3D des capteurs RGB-D avec PCL
- Cartes et navigation avec ROS
Jour 15
Programmation du robot (suite...)
- Réalisation de tâches avec ActionLib
Projet en équipe
- Recherche d'objets dans l'environnement
Semaine 04
Jour 16
Programmation du robot (suite...)
- Réalisation de tâches avec ActionLib
Jour 17
Programmation du robot (suite...)
- Reconnaissance vocale et génération de parole
- Dépannage
Projet en équipe
- Contrôle d'un robot par la voix
Jour 18
Programmation du robot (suite...)
- Contrôle des bras robotiques avec MoveIt!
- Contrôle de la nuque robotique pour une vision active
- Dépannage
Projet en équipe
- Recherche et collecte d'objets
Jour 19
Déploiement du robot
- Déploiement du robot dans le monde physique
- Surveillance et maintenance des robots sur le terrain
- Utilisation d'une application mobile pour contrôler un robot
Sécurisation du robot
- Prévention des manipulations non autorisées
- Prévention de l'accès par des pirates à des données sensibles
Jour 20
Analyse des données
- Collecte et organisation des données générées par le robot
- Interprétation des données grâce à des outils de visualisation et des processus d'analyse
Construction collaborative d'un robot
- Construction d'un robot dans le cloud
- Construction d'une application mobile pour interagir avec votre robot
- Participation à la communauté robotique
Perspectives futures des robots dans les domaines scientifique et énergétique
Résumé et conclusion
Pré requis
- Expérience en programmation en C ou C++
- Expérience en programmation Python (utile mais non nécessaire ; peut être enseignée dans le cadre du cours)
- Expérience avec la ligne de commande Linux
Public cible
- Développeurs
- Ingénieurs
- Scientifiques
- Techniciens
Nos clients témoignent (2)
Fourniture des matériels (machine virtuelle) pour passer directement aux exercices, et explication des fondamentaux de ROS2. Comprendre pourquoi les choses fonctionnent d'une manière particulière.
Arjan Bakema
Formation - Autonomous Navigation & SLAM with ROS 2
Traduction automatique
ses connaissances et son utilisation de l'IA pour la robotique dans le futur.
Ryle - PHILIPPINE MILITARY ACADEMY
Formation - Artificial Intelligence (AI) for Robotics
Traduction automatique