Plan du cours
Semaine 01
Jour 01
Introduction
- Qu'est-ce qui rend un robot intelligent ?
Robots physiques et virtuels
- Smart Robots, Machines intelligentes, Machines sensibles et Robotic Process Automation (RPA), etc.
Le rôle de Artificial Intelligence (AI) dans Robotics
- Au-delà du "if-then-else" et du machine learning
- Les algorithmes qui sous-tendent l'IA
- Apprentissage automatique, vision par ordinateur, traitement du langage naturel (NLP), etc.
- Robotique cognitive
Jour 02
Le rôle de Big Data dans Robotics
- Prise de décision basée sur des données et des modèles
L'informatique en nuage et Robotics
- Relier la robotique aux technologies de l'information
- Construire des robots plus fonctionnels qui accèdent à davantage 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 rayonnements
- Robots dans les Reactors nucléaires
- Détection et protection contre les rayonnements
Jour 03
Composants matériels d'un robot
- Moteurs, capteurs, microcontrôleurs, caméras, etc.
Elements communs aux robots
- Vision artificielle, reconnaissance vocale, synthèse vocale, détection de proximité, détection de pression, etc.
Jour 04
Cadres de développement pour Programming un robot
- Cadres open source et commerciaux
- Système d'exploitation de robot (ROS)
- Architecture : espace de travail, sujets, messages, services, nœuds, actionlibs, outils, etc.
Languages pour Programming un robot
- C++ pour le contrôle de bas niveau
- Python pour l'orchestration
- Programming ROS nœuds en Python et C ++
- Autres langages
Jour 05
Outils de simulation d'un robot physique
- Logiciels de simulation et de visualisation 3D commerciaux et libres
Outils de conception des caractéristiques physiques d'un robot
- Logiciel commercial et open source CAD.
É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é sur Python
- Installation et configuration du logiciel
- Paquets et utilitaires utiles
- Travailler avec les structures de données Python, les opérateurs, les boucles, les conditionnelles, les fonctions, les méthodes, etc.
- Rédaction d'un exemple de programme
- Projet d'équipe
Jour 07
Préparation du développement du robot
- 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 vers le microcontrôleur
- Assembler les composants matériels d'un robot Arduino.
Jour 08
Travailler avec des composants Arduino
- Capteurs analogiques
- Capteurs numériques
Travailler avec des modules Arduino Communication
- Modules Bluetooth
- Modules Wi-Fi
- Modules RFID
- I2C et SPI
- Internet mobile
Jour 09
Construction d'un robot
- Planifier les fonctions et les caractéristiques d'un robot
- Mise en œuvre des mouvements du robot
Projet d'équipe
- Discussion et révision
Jour 10
Contrôle du robot
- Mise en œuvre du contrôleur
- Connexion au robot (avec ou sans fil)
Projet d'équipe
- Discussion et révision
Semaine 03
Jour 11
Programming le robot
- Simuler un robot avec Gazebo / ROS
- Comprendre le nœud ROS
- Programming un noeud dans Python et C ++
- Messages et sujets dans ROS
- Paradigme de publication / d'abonnement
Projet d'équipe
- Bump & Go avec un vrai robot
- Discussion et révision
Jour 12
Programming le robot (suite...)
- Images 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 d'équipe
- Suivi sécurisé d'objets par couleur
- Discussion et révision
Jour 13
Tester le robot
- Outils pour tester votre code
- Tests unitaires
- Créer une suite de tests
- Automatiser vos tests
- Résolution des problèmes
Projet d'équipe
- Suivi sécurisé d'objets par couleur
- Discussion et révision
Jour 14
Programming le robot (suite...)
- Services dans ROS
- Traitement de l'information 3D des capteurs RVB-D avec PCL
- Cartes et navigation avec ROS
Jour 15
Programming le robot (Suite...)
- Exécution de tâches avec ActionLib
Projet d'équipe
- Recherche d'objets dans l'environnement
Semaine 04
Jour 16
Programming le robot (Suite...)
- Réaliser des tâches avec ActionLib
Jour 17
Programming le robot (suite...)
- Jour 16 Speech Recognition et la génération de la parole
- Résolution des problèmes
Projet d'équipe
- Contrôler un robot à l'aide de la voix
Jour 18
Programming le robot (Suite...)
- Contrôler des bras robotiques avec MoveIt !
- Contrôler le cou d'un robot pour une vision active
- Résolution des problèmes
Projet d'équipe
- Recherche et collecte d'objets
Jour 19
Déploiement du robot
- Déployer le robot dans le monde physique
- Surveillance et entretien des robots sur le terrain
- Utiliser une application mobile pour contrôler un robot
Sécuriser le robot
- Empêcher les manipulations non autorisées
- Empêcher les pirates de consulter et de voler des données sensibles
Jour 20
Analyse des données
- Collecte et organisation des données générées par le robot
- Donner un sens aux données à l'aide d'outils et de processus de visualisation
Construire un robot en collaboration
- Construire un robot dans le nuage
- Créer une application mobile pour interagir avec votre robot
- Rejoindre la communauté de la robotique
L'avenir Outlook des robots dans le domaine de la science et de l'énergie
Résumé et conclusion
Pré requis
- Programming expérience en C ou C++
- Programming expérience en Python (utile mais pas nécessaire ; peut être enseigné dans le cadre du cours)
- Expérience avec la ligne de commande Linux
Public
- Développeurs
- Ingénieurs
- Scientifiques
- Techniciens
Nos clients témoignent (1)
Je sens que j'acquiers les compétences de base nécessaires pour comprendre comment le ROS s'assemble et comment structurer des projets à l'intérieur.
Dan Goldsmith - Coventry University
Formation - ROS: Programming for Robotics
Traduction automatique