Avant de commencer
Connaissances de départ
- Utilisation de base de Python ou C++ et de la ligne de commande.
- Comprendre les observations, les commandes et les cadres de coordonnées.
Équipement & environnement
Utilisez une distribution prise en charge et ses didacticiels correspondants. Commencez par les versions de simulation et d’environnement de capture.
Pas de délai de réalisation fixe : utilisez les portes de preuves ci-dessous pour décider quand avancer. Les liens vers les ressources ouvrent l'entrée du répertoire botstest ; consultez la documentation de son éditeur pour connaître la version et la configuration exactes.
Débutant
Apprendre le modèle de communication
Rendre explicites les responsabilités des interfaces et des composants.
Comment fonctionne cette étape
Une frontière de composant est un contrat sur le sens et la responsabilité. Définir l'interface d'observation, de commande et de configuration avant d'étendre l'application.
Travailler sur un exemple
Exercice d'étude illustratif · rédigé par botstest
Dans un mobile simulé, le composant de détection rapporte une observation tandis que le composant de comportement choisit une action. Enregistrez la trame, les unités et l'horloge utilisées par chaque interface et à qui appartient une entrée indisponible.
- Dessinez le graphique des composants.
- Précisez la signification et la fraîcheur du message.
- Exécutez un exemple minimal de correspondance de version.
Les nœuds qui apparaissent lors de la découverte peuvent toujours être en désaccord sur la signification ou l'heure du message.
Base de référence : Présentation de l'intégration ROS 2. L'exemple et la procédure pas à pas sont des applications éditoriales de la source.
Apprenez dans cet ordre
- Nœuds, sujets, services et actions
- Types de messages, paramètres et découverte
- Espaces de travail, packages et configuration de lancement
Lisez, puis postulez
Gazebo project · Tutoriel technique
Présentation de l'intégration ROS 2
Lire : Commencez par l'architecture d'intégration et suivez les instructions liées correspondant à votre paire de versions.
Utilisez la présentation de l'interface pour distinguer les responsabilités de modèle, de pont, d'observation, de commandement et d'horloge.
Appliquez-le : Mappez les interfaces de nœud, de message et d'horloge de simulation pour une application minimale.
Mettez-le en pratique
- Créez un exemple d'éditeur/abonné à partir de la documentation correspondante.
- Dessinez la propriété des composants et enregistrez une courte trace d’entrée/sortie.
Un package à deux nœuds et un diagramme d’interface.
Prêt pour la prochaine étape quand…
Ressources pour cette étape
Intermédiaire
Intégrer une tâche et exposer les échecs
Ajoutez un état, une géométrie et des diagnostics à une application limitée.
Comment fonctionne cette étape
Les échecs d’intégration impliquent souvent la relation entre les composants plutôt qu’un bug au sein d’une fonction. Enregistrez suffisamment de contexte pour reconstruire cette relation.
Travailler sur un exemple
Exercice d'étude illustratif · rédigé par botstest
Redémarrez un capteur pendant que le nœud de comportement est actif. Comparez l'heure de la dernière observation, l'état actuel et la commande sortante. Vérifiez qu'un composant manquant devient une panne visible au lieu d'une réutilisation silencieuse de données obsolètes.
- Capturez les événements d’entrée et de sortie corrélés.
- Introduisez une interruption à la fois.
- Délai d'expiration du document, annulation et propriété de récupération.
Si un défaut ne peut pas être reproduit, conservez l'enregistrement et la configuration avant de modifier plusieurs nœuds.
Base de référence : Intégration du système. L'exemple et la procédure pas à pas sont des applications éditoriales de la source.
Apprenez dans cet ordre
- Transformations, horodatages et fraîcheur des données
- Cycle de vie, délais d'attente et annulation
- Débogage et configuration des données enregistrées
Lisez, puis postulez
Kris Hauser · University of Illinois · Chapitre du cours
Intégration du système
Lire : Concentrez-vous sur le comportement en temps réel, les choix de communication et les outils de développement.
Utilisez les concepts de synchronisation et de communication pour décider où enregistrer les défauts et quel composant est responsable de la récupération.
Appliquez-le : Testez une observation obsolète et identifiez quel composant possède le délai d'attente et l'état de repli.
Mettez-le en pratique
- Connectez la détection simulée à un comportement de navigation ou de manipulation.
- Injectez un message obsolète ou redémarrez un nœud et inspectez la réponse.
Une application intégrée avec fichiers de lancement et enregistrements de défauts.
Prêt pour la prochaine étape quand…
Ressources pour cette étape
Suivez le parcours d'apprentissage officiel du middleware ; utilisez la documentation correspondant à votre distribution installée.
Inspectez les signaux de robot enregistrés et créez des vues qui exposent les défaillances de synchronisation et du système.
Étudiez les composants de navigation, les cartes, la localisation, l'orchestration des comportements et la récupération dans la version correspondante.
Professionnel
Préparer une version testée et un plan de support
Rendre l'application récupérable entre les versions et les opérateurs.
Comment fonctionne cette étape
Une version est une combinaison testée de code et de configuration. Le transfert doit expliquer comment reconnaître un mauvais déploiement et restaurer un état connu.
Travailler sur un exemple
Exercice d'étude illustratif · rédigé par botstest
Demandez à un autre ingénieur de démarrer une build balisée, d'exécuter un scénario enregistré et de restaurer la configuration précédente après une régression simulée. Leurs instructions ne devraient pas dépendre d’un historique non publié du shell.
- Dépendances et configuration du package.
- Exécutez des scénarios normaux et de panne.
- Répétez le diagnostic et la restauration avec le propriétaire du support.
Un processus qui redémarre avec succès peut toujours être défectueux ; vérifier le comportement au niveau de la tâche après la récupération.
Base de référence : Liste de contrôle de coordination du lancement. L'exemple et la procédure pas à pas sont des applications éditoriales de la source.
Apprenez dans cet ordre
- Tests unitaires, d'intégration et de scénarios
- Versions de sortie, restauration et propriété de la configuration
- Observabilité et escalade de l'opérateur
Lisez, puis postulez
Google Site Reliability Engineering · Guide pratique
Liste de contrôle de coordination du lancement
Lire : Lisez la liste de contrôle pour vous aider à identifier les preuves de propriété et de récupération manquantes.
Utilisez la liste de contrôle pour rechercher les décisions manquantes en matière de propriété, d’observabilité et de récupération avant le transfert.
Appliquez-le : Examinez les dépendances de lancement, l’observabilité, la restauration et la propriété du support avant de remettre une version.
Mettez-le en pratique
- Exécutez une suite de scénarios à partir d’un nouvel environnement.
- Rédigez une procédure de libération et de récupération et demandez à un autre ingénieur de la répéter.
Un package de version, un rapport de test et un runbook opérationnel.
Prêt pour la prochaine étape quand…
Ressources pour cette étape
Suivez le parcours d'apprentissage officiel du middleware ; utilisez la documentation correspondant à votre distribution installée.
Étudiez un format d'enregistrement des données du robot et vérifiez l'interopérabilité avec vos outils de journalisation actuels.
Visualisez les observations spatiales et comparez-les avec les résultats du modèle et de la trajectoire.
Pièges courants
- Mélange des conventions de message/cadre entre les composants.
- Utiliser un lancement réussi comme preuve d’un comportement correct.
Où aller ensuite
Continuez vers la navigation, la manipulation ou les opérations de flotte avec la même interface et la même discipline de récupération.
Explorer d'autres construire chemins →