Creating a Robot That Can Navigate Complex Indoor Environments
Table of Contents
Introduction : Le rôle croissant des robots de navigation intérieure
Les robots qui peuvent naviguer dans des environnements intérieurs complexes ne sont plus confinés aux laboratoires de recherche. Ils sont devenus des outils essentiels dans les entrepôts, les hôpitaux, les bureaux et même les maisons privées. Des chariots élévateurs autonomes qui déplacent des palettes dans les centres de distribution aux robots de livraison qui apportent des médicaments dans les salles de patients, ces machines comptent sur un mélange sophistiqué de matériel et de logiciels pour se déplacer efficacement et en toute sécurité dans des espaces remplis d'obstacles, de personnes en mouvement et de changements imprévisibles. Le défi de la navigation intérieure est distinct de la navigation extérieure : le GPS est faible ou absent, les couloirs et les salles créent des contraintes serrées, et l'environnement est souvent dynamique.
Composantes clés d'un robot de navigation intérieure
La construction d'un robot qui peut naviguer à l'intérieur implique l'intégration de plusieurs systèmes de base. Les plus critiques sont les capteurs de perception, les unités de traitement pour le calcul, un système de locomotion et une alimentation électrique. Chaque composant doit être choisi en fonction de l'environnement opérationnel.
Capteurs pour la perception
La capacité du robot à percevoir son environnement est le fondement de la navigation. Plusieurs types de capteurs sont souvent combinés pour atteindre une compréhension environnementale fiable:
- LiDAR (Détection et rangage de la lumière): Utilise des impulsions laser pour mesurer les distances et générer des nuages de point 2D ou 3D à haute résolution de l'environnement. LiDAR est robuste dans des conditions d'éclairage variables et fournit des données de plage précises, ce qui en fait un choix privilégié pour la cartographie et la détection des obstacles.
- Caméras : Les caméras stéréo permettent une estimation de la profondeur par triangulation, tandis que les caméras monoculaires peuvent être utilisées avec des algorithmes SLAM visuels. Les caméras luttent en faible lumière et peuvent être intensives en calcul, mais elles fournissent de riches informations sémantiques (p. ex., identifier une poignée de porte ou une personne).
- Capteurs à ultrasons: Emettre les ondes sonores et mesurer le temps d'écho pour détecter les objets voisins. Ils fonctionnent bien pour les obstacles à portée étroite et les surfaces transparentes (comme les portes en verre) que LiDAR pourrait manquer. Cependant, ils ont une mauvaise résolution angulaire et sont sensibles à la texture de surface.
- Capteurs infrarouges (IR) : Souvent utilisé pour la détection à courte portée et la détection du sol (par exemple, pour éviter de tomber dans les escaliers).
- Unité de mesure inertielle (UMI): Combine accéléromètres et gyroscopes pour suivre l'orientation et le mouvement. Les IMU permettent de faire un arrêt mort entre les mises à jour des capteurs mais dérivent au fil du temps. Ils sont cruciaux pour les robots qui perdent de vue les fonctionnalités (par exemple, dans les longs couloirs).
La fusion des capteurs – utilisant des données de plusieurs types de capteurs – est essentielle pour une perception robuste. Par exemple, le couplage LiDAR avec un IMU permet au robot de maintenir une localisation précise même lorsque le virage est rapide. localisation et cartographie simultanées (SLAM) algorithmes qui fusionnent les flux de capteurs en temps réel.
Groupe de traitement
Le robot est un cerveau, généralement un ordinateur à une seule carte (par exemple, un Jetson NVIDIA, Raspberry Pi ou un NUC Intel), exécute la pile logicielle qui traite les données des capteurs, exécute des algorithmes de navigation et commande les moteurs. Les performances en temps réel sont critiques : des retards dans le traitement des entrées des capteurs peuvent entraîner des collisions.
Système de locomotion
Les robots intérieurs utilisent généralement des plates-formes à roues pour la simplicité et l'efficacité. Le entraînement différentiel (deux roues motrices avec roulette) est populaire pour son coût et sa maniabilité. Boston Dynamics -Spot, offrent une mobilité supérieure mais sont plus complexes et la puissance-faible. Jackal de la Robotique Clearpath Le choix dépend de l'environnement : les planchers lisses favorisent les roues, tandis que les espaces encombrés ou les bâtiments à plusieurs niveaux peuvent nécessiter des pistes ou des jambes.
Alimentation électrique
Les batteries sont la source d'énergie la plus courante. Les packs lithium-ion et lithium-polymère offrent une densité énergétique élevée. Cependant, le temps d'exécution est limité – souvent de 2 à 6 heures selon la taille et la charge du robot. Certains robots utilisent des stations d'arrimage autonomes pour recharger, tandis que d'autres intègrent des algorithmes écoénergétiques (p. ex., des modes de sommeil au ralenti) ou même des coussins de recharge sans fil.
Algorithmes et techniques de navigation
La navigation dans les espaces intérieurs est un problème multicouche. Le robot doit savoir où il est, interpréter l'espace qui l'entoure, planifier un chemin vers la cible et contrôler son mouvement pour suivre ce chemin en toute sécurité. Les trois zones algorithmiques principales sont la localisation et la cartographie, l'évitement des obstacles et la planification du chemin.
Localisation et cartographie simultanées (SLAM)
Dans un environnement inconnu, le robot doit à la fois construire une carte et estimer sa propre position à l'intérieur de cette carte, un problème de poulet et d'œuf. Les algorithmes modernes SLAM s'en servent à l'aide de techniques probabilistes :
- EKF-SLAM (Extended Kalman Filter SLAM): Utilise un vecteur d'état contenant la pose robot et des positions de repère, mis à jour via les distributions gaussiennes. Il est rapide pour les petits environnements mais se heurte à des cartes à grande échelle en raison de la complexité quadratique.
- GraphiqueSLAM : Représente la trajectoire du robot comme un graphique de contraintes. Après avoir recueilli toutes les données (en temps réel ou en dehors), il résout un gros problème d'optimisation pour produire la carte la plus cohérente. Cette approche est plus précise pour les grands espaces et les fermetures de boucles.
- Filtre à particules SLAM: Maintene de nombreuses hypothèses (particules) de la pose et de la carte du robot. Il gère bien les non-linéarités et est la base d'algorithmes comme Couverture des gaz, largement utilisé avec 2D LiDAR.
Visual SLAM (par exemple, ORB-SLAM3) utilise des images de caméra pour construire des cartes 3D denses, permettant une compréhension sémantique plus riche. LiDAR SLAM reste plus robuste dans des environnements sans fonctionnalités.
Évitement des obstacles
Même avec un plan global, le robot doit réagir aux obstacles dynamiques comme les gens ou les meubles en déplacement. L'évitement des obstacles locaux court à une fréquence élevée (10–50 Hz) pour modifier la vitesse du robot en temps réel.
- Approche dynamique de la fenêtre (DWA): Samples possibles commandes de vitesse, simule leurs trajectoires, et sélectionne celui qui évite les collisions tout en se déplaçant vers le but. Il est simple mais peut être coincé dans les minima locaux.
- Histogramme de champ vectoriel (VFH): Construit un histogramme polaire de densité d'obstacles et choisit des angles de direction avec suffisamment d'espace libre. Il fonctionne bien avec des capteurs de portée comme LiDAR.
- Champs potentiels: Suppose que le robot est tiré vers le but par une force attrayante et repoussé par des obstacles. Il est calculablement rapide mais vulnérable aux situations d'oscillation et de piège.
La combinaison d'un planificateur global (par exemple, A* sur une carte de coûts) avec un planificateur local (par exemple, DWA) est l'approche standard dans ROS Navigation Stack. Le planificateur mondial calcule un chemin du début au but, tandis que le planificateur local le suit tout en réagissant aux obstacles inattendus.
Planification des voies
Les algorithmes de planification de trajectoire trouvent une route sans collision de la position actuelle du robot à la cible. Les deux principales catégories sont:
- Recherche par grille : A* (A-star) et Dijkstra , un algorithme fonctionne sur une grille d'occupation discrétée. A* utilise une heuristique pour trouver efficacement le chemin le plus court. D* Lite et d'autres planificateurs incrémentaux recalculent les chemins rapidement lorsque l'environnement change.
- Planification fondée sur l'échantillonnage : Les arbres aléatoires (RRT) à exploration rapide et leurs variantes (RRT*, PRM) conviennent aux espaces haute dimension ou aux environnements continus. Ils ne nécessitent pas de grille et peuvent supporter des contraintes non holonomiques (p. ex., un robot à entraînement différentiel).
Pour des environnements dynamiques, les planificateurs Voies temporelles optimales suivant L'apprentissage automatique est également exploré : les réseaux neuronaux peuvent apprendre à planifier les chemins à partir de l'expérience, réduisant ainsi les coûts de calcul en cours d'exploitation.
Défis de la navigation intérieure
Malgré les algorithmes avancés, la navigation intérieure dans le monde réel reste difficile.
- Espaces encombrés et sans caractéristiques: Des portes étroites, des meubles et des mess peuvent confondre les capteurs. De longs couloirs sans caractéristiques distinctives font dériver LiDAR SLAM.
- Changements dynamiques: Les personnes qui marchent, les portes s'ouvrent et les objets qui sont déplacés nécessitent une adaptation constante.
- Interféractions limitées du GPS et du magnétique: La localisation intérieure doit reposer sur des données de comptage et de détection. Les structures métalliques peuvent déformer les lectures de compas magnétiques, ce qui complique l'estimation de cap.
- Variantes d'éclairage: La caméra doit être bien exposée ou être augmentée par un éclairage actif (projecteurs infrarouges).
- Variantes de plancher: Tapis, carreaux, seuils et pentes affectent la traction et l'odométrie. Le glissement de roue sur les planchers lisses introduit une erreur dans le calcul mort.
Pour relever ces défis, il faut souvent effectuer des analyses multimodales, une estimation de l'état robuste et une planification adaptative.
Architecture et cadres logiciels
Développer un robot de navigation à partir de zéro est une entreprise massive. La plupart des équipes s'appuient sur des intergiciels robotiques existants. Système d'exploitation robot (ROS) est la norme de facto, offrant des bibliothèques pour SLAM (par exemple, gmapping, cartographe), planification (move base) et perception (cv bridge). ROS 2 améliore les performances en temps réel et la sécurité pour les systèmes de production.
- Noeud de perception: Procéde à des données de capteur (LiDAR scanne, images de caméra, lectures IMU) et produit une grille d'occupation ou une liste de fonctionnalités.
- Noeud de localisation : Exécute SLAM ou utilise une carte connue avec la localisation Monte Carlo (AMCL) pour produire la pose du robot.
- Nœud de planification mondial : Calcule un chemin de pose à but en utilisant la dernière carte.
- Noeud local de planification : Envoie des commandes de vitesse au robot de base, en respectant les obstacles et les limites cinématiques.
- Serveur d'action & #160;: Coordonner les objectifs de navigation et surveiller les progrès (p. ex., move base).
Les nœuds communiquent via des sujets (publis-subscribe) et peuvent fonctionner sur différentes machines. Cette modularité simplifie les tests et permet l'échange d'algorithmes sans réécrire le système entier.
Conception mécanique et Locomotion
Le châssis physique du robot doit permettre de prendre en charge les capteurs, le calcul et la puissance tout en se déplaçant efficacement. à quatre roues La conception (commune chez les petits robots) est simple mais elle provoque le lavage des roues lors du tournage, réduisant ainsi la précision de l'odométrie. conception à trois roues avec deux roues motrices et une roulette offre une meilleure odométrie car le virage est réalisé par un entraînement différentiel sans glissement latéral.
Pour les robots qui doivent monter des escaliers ou traverser des décombres (p. ex. en recherche et sauvetage), la locomotion à chenilles ou à pattes est nécessaire. Les robots à chenilles ont une meilleure traction mais peuvent endommager les planchers. Les robots à pattes peuvent franchir les obstacles, mais le contrôle est complexe; ils nécessitent souvent des actionneurs à haute torque et une planification de démarche avancée. Atlas de Boston DynamicsLe budget dicte souvent le choix : une plate-forme à roues peut être construite pour moins de 500 $, tandis qu'une plate-forme à pattes peut coûter des dizaines de milliers de dollars.
Essais et validation
Avant de lancer un robot de navigation, des tests rigoureux sont obligatoires. La simulation est la première étape : Gazebo, Webots ou Isaac Sim permettent de tester des algorithmes dans une variété d'environnements intérieurs sans risque. Des mesures telles que la déviation du chemin, le nombre de collisions et le taux d'achèvement de la mission sont recueillies.
- Dérivation de localisation : Le robot croit que c'est au mauvais endroit, ce qui conduit à une mauvaise planification. Atténuation : fusion de capteurs plus serrée, utilisation de fonctionnalités visuelles, ou relocalisation périodique à l'aide de repères artificiels.
- Collisions avec objets transparents: Les portes ou les miroirs en verre peuvent tromper LiDAR et les caméras. Solutions : capteurs ultrasoniques ou caméras thermiques qui détectent le verre par la chaleur.
- Le logiciel s'écrase : Les fuites de mémoire ou les temps de sortie des capteurs peuvent arrêter la navigation.
Les tests sur le terrain doivent également évaluer le temps d'exécution de la batterie, la fiabilité de la communication (si la télécommande est utilisée) et les caractéristiques de sécurité comme les boutons d'arrêt d'urgence.
Orientations futures
Le domaine de la robotique de navigation intérieure évolue rapidement.
- Apprentissage approfondi pour la perception : Les réseaux neuronaux convolutionnels peuvent classer les objets (portes, meubles, humains) à partir des images de la caméra, permettant la navigation sémantique. Par exemple, un robot peut planifier un chemin qui évite les chaises mais passe par les portes.
- Apprentissage de bout en bout: Certains chercheurs forment des réseaux neuronaux pour cartographier directement les entrées de capteurs aux commandes motrices, en contournant les SLAM traditionnels. Bien que prometteurs, ces systèmes nécessitent de gros ensembles de données d'entraînement et sont moins interprétables.
- Coordination multi-robots: La robotique de swarm permet à plusieurs robots de cartographier plus rapidement les zones plus grandes ou de collaborer à des tâches comme la récupération d'objets.
- Formation tout au long de la vie: Les robots qui fonctionnent en continu peuvent mettre à jour leurs cartes pour refléter les changements d'environnement (p. ex., un nouveau bureau placé dans un couloir), ce qui nécessite une SLAM efficace en mémoire et une détection des changements.
- Interaction homme-robot: Les robots intérieurs devront suivre les conventions sociales (par exemple, ne pas bloquer une passerelle, attendre qu'une personne passe), ce qui implique de prévoir le mouvement humain et de planifier des chemins sociables.
À mesure que les coûts matériels diminuent et que les algorithmes deviennent plus robustes, nous pouvons nous attendre à ce que les robots de navigation intérieure deviennent omniprésents dans les milieux quotidiens, du nettoyage des maisons à l'aide aux soins aux aînés.
Conclusion
La création d'un robot capable de naviguer dans des environnements intérieurs complexes est une entreprise multidisciplinaire qui englobe l'ingénierie mécanique, l'informatique et l'ingénierie électrique. Elle nécessite une sélection minutieuse de capteurs, des algorithmes robustes pour la cartographie et la planification, et une plateforme physique bien conçue. Bien que des défis importants subsistent – en particulier dans les espaces dynamiques et non structurés – les progrès en SLAM, en apprentissage machine et en fusion de capteurs continuent de repousser les frontières.