Rejoignez nos 155 000 followers (pour IMP)

Articles techniques

www.eautomation.fr

Comment les robots mobiles autonomes se localisent en s’appuyant sur le SLAM

Voici comment fonctionne la technologie SLAM utilisée par de nombreux robots mobiles autonomes pour se localiser et cartographier leur environnement.

  induportals-media-publishing.com
Comment les robots mobiles autonomes se localisent en s’appuyant sur le SLAM
ABB Robotics a intégré à ses robots mobiles autonomes (AMR) la technologie de localisation et de cartographie simultanées visuelles (Visual SLAM), leur permettant ainsi de prendre des décisions de navigation en fonction de leur environnement.

Les robots mobiles autonomes (AMR, Autonomous Mobile Robots) doivent pouvoir se déplacer dans des environnements dont la configuration peut évoluer : présence d'opérateurs, déplacement de palettes, changement d'emplacement des équipements ou modification des zones de circulation. Pour assurer leur navigation, ils doivent simultanément déterminer leur position et construire une représentation de leur environnement. C'est précisément le rôle du SLAM (Simultaneous Localization and Mapping), une famille de méthodes permettant à un robot de réaliser ces deux opérations en parallèle.

Contrairement aux systèmes guidés par des rails, des bandes magnétiques ou des marqueurs disposés au sol, un système SLAM s'appuie principalement sur les informations fournies par des capteurs embarqués. Le robot observe son environnement, estime ses déplacements successifs, identifie des éléments caractéristiques et met progressivement à jour une carte. Il peut ensuite utiliser cette carte pour se localiser et planifier ses déplacements.

Le problème posé par la navigation autonome
Pour se déplacer de manière autonome, un robot doit connaître deux informations : où il se trouve et comment son environnement est structuré. Le problème devient plus complexe lorsque le robot ne dispose pas au départ d'une carte précise de son environnement.
Le SLAM répond à ce problème en traitant simultanément la localisation et la cartographie. À mesure que le robot se déplace, ses capteurs acquièrent des données sur son environnement. Le système exploite ces observations pour estimer le mouvement du robot et déterminer la position des éléments observés. Ces informations servent à construire ou à compléter une carte, qui devient à son tour une référence pour les estimations de position ultérieures.

Il existe plusieurs familles d'algorithmes SLAM, adaptées à différents types de capteurs et d'environnements. Le terme SLAM ne désigne donc pas un capteur ou un algorithme unique, mais une classe de méthodes de localisation et de cartographie.

Les principaux capteurs nécessaires à un système SLAM
Un système SLAM combine généralement plusieurs sources d'information. Le choix dépend du type de robot, de son environnement et du niveau de précision recherché.

Le LiDAR (Light Detection and Ranging) est fréquemment utilisé sur les AMR industriels. Il émet des impulsions laser et mesure leur temps de retour afin d'estimer la distance aux obstacles. Un LiDAR 2D fournit une coupe de l'environnement dans un plan horizontal, tandis qu'un LiDAR 3D produit un nuage de points permettant de représenter des structures selon les trois dimensions.

Les caméras peuvent également fournir les informations nécessaires au SLAM. Dans un système de visual SLAM, des images successives sont analysées pour identifier des caractéristiques visuelles et suivre leur déplacement. Une caméra stéréoscopique ou un système équipé de plusieurs caméras peut en outre fournir des informations permettant d'estimer la profondeur.

Les centrales inertielles, ou IMU (Inertial Measurement Unit), mesurent les accélérations et les vitesses angulaires du robot à l'aide d'accéléromètres et de gyroscopes. Elles permettent d'estimer les mouvements rapides du robot et sont particulièrement utiles lorsque les observations visuelles ou LiDAR sont momentanément insuffisantes.

Enfin, les encodeurs des roues fournissent une estimation du déplacement du robot à partir de la rotation des roues. Cette technique, appelée odométrie, est simple à mettre en œuvre et apporte une information continue sur le mouvement. Elle présente cependant une dérive : un léger glissement d'une roue ou une erreur de mesure finit par provoquer un écart entre la position calculée et la position réelle.
Dans les systèmes industriels, ces différentes sources peuvent être fusionnées. Le LiDAR ou les caméras apportent des observations de l'environnement, tandis que l'odométrie et l'IMU fournissent des informations sur le mouvement du robot.

Comment les robots mobiles autonomes se localisent en s’appuyant sur le SLAM
Sick propose notamment une gamme de capteurs et de solutions logicielles pour la navigation, la localisation ainsi que le positionnement des robots mobiles.

Principe de fonctionnement du SLAM
Le fonctionnement peut être décomposé en plusieurs opérations qui sont réalisées de manière itérative pendant le déplacement du robot.
1. Acquisition des données
Les capteurs embarqués observent l'environnement à intervalles réguliers. Un LiDAR peut par exemple fournir une série de distances correspondant aux murs, aux rayonnages, aux machines ou à d'autres obstacles. Une caméra fournit quant à elle des images successives.
Le système dispose simultanément des données d'odométrie et, selon l'architecture, des mesures de l'IMU.

2. Estimation du déplacement
À partir de deux observations successives, l'algorithme cherche à déterminer comment le robot s'est déplacé.
Avec un LiDAR, il peut comparer deux acquisitions et rechercher la transformation géométrique qui permet de faire correspondre les deux ensembles de points. Avec une caméra, il peut suivre des points caractéristiques présents dans plusieurs images et estimer le mouvement correspondant.
Cette estimation constitue l'odométrie du système. Elle est cependant susceptible d'accumuler une erreur au fil du déplacement.

3. Identification des caractéristiques de l'environnement
Le système doit ensuite identifier des éléments qui peuvent servir de repères. Il peut s'agir, selon la technologie utilisée, de points ou de surfaces détectés par un LiDAR, de caractéristiques visuelles identifiées dans des images ou de structures géométriques telles que des murs et des angles. La répétition de ces observations permet au système de relier les différentes positions du robot à un même environnement.

4. Construction de la carte
Les observations sont intégrées dans une représentation numérique de l'environnement. Dans un entrepôt, il peut par exemple s'agir d'une grille d'occupation dans laquelle chaque cellule indique si une zone est considérée comme libre, occupée ou inconnue.

D'autres représentations sont possibles, notamment des cartes constituées de caractéristiques géométriques ou des représentations 3D sous forme de nuages de points.

La carte n'est donc pas nécessairement une image au sens classique. Il s'agit d'une structure de données utilisée par les algorithmes de localisation et de navigation.

5. Recalage et correction de la trajectoire
Un problème important apparaît lorsque l'erreur d'odométrie s'accumule. Si le robot se déplace longtemps sans corriger son estimation, sa position calculée peut progressivement s'éloigner de sa position réelle.

Le SLAM exploite pour cela les observations répétées de l'environnement. Lorsqu'un élément déjà observé est retrouvé, le système peut reconnaître qu'il se trouve dans une zone connue. Cette détection, appelée fermeture de boucle (loop closure), permet de corriger les erreurs accumulées dans la trajectoire et dans la carte.

Des algorithmes d'optimisation sont alors utilisés pour ajuster simultanément les positions estimées du robot et celles des éléments de la carte. Les systèmes SLAM modernes peuvent notamment représenter le problème sous forme de graphe de poses, dans lequel les nœuds correspondent aux différentes positions du robot et les contraintes représentent les observations ou les déplacements entre ces positions.

Localisation et navigation : deux fonctions différentes
Il est important de distinguer le SLAM de l'ensemble du système de navigation d'un AMR. Le SLAM produit une estimation de la position du robot et une représentation de son environnement. La navigation utilise ensuite ces informations pour déterminer comment atteindre une destination.

Une architecture complète peut ainsi comprendre une couche de localisation, une couche de planification globale et une couche de planification locale. Le planificateur global recherche un itinéraire entre la position actuelle et la destination en tenant compte de la carte. Le planificateur local adapte ensuite la trajectoire aux obstacles détectés en temps réel.

Le robot peut donc suivre une trajectoire générale tout en la modifiant lorsqu'un opérateur, un chariot ou une palette apparaît sur son chemin.

Avantages par rapport aux systèmes de guidage traditionnels
Le principal intérêt du SLAM est de ne pas dépendre nécessairement d'une infrastructure de guidage installée sur le sol ou dans l'environnement.

Avec un filoguidage, un câble installé dans le sol génère un champ détecté par le robot. Avec une bande magnétique, le parcours est matérialisé physiquement au sol. Les systèmes utilisant des marqueurs, des réflecteurs ou des balises fournissent également des repères fixes au robot.

Ces solutions peuvent être efficaces dans des environnements dont les flux et les parcours sont relativement stables. En contrepartie, toute modification du parcours peut nécessiter une intervention sur l'infrastructure.

Avec le SLAM, la carte est essentiellement définie par les données numériques acquises par le robot. Une modification de l'environnement peut donc être intégrée au système sans nécessairement modifier le sol ou installer un nouveau dispositif de guidage.

Le SLAM permet également à plusieurs robots de partager une représentation numérique de l'environnement dans certaines architectures. Les systèmes de gestion de flotte peuvent alors attribuer des missions et coordonner les déplacements tout en utilisant les informations de localisation fournies par les robots.

Il faut toutefois distinguer cette souplesse logicielle de la capacité réelle d'un robot à évoluer dans n'importe quel environnement : les performances de navigation restent directement liées aux capteurs, aux algorithmes et aux caractéristiques du site.

Comment les robots mobiles autonomes se localisent en s’appuyant sur le SLAM
Pilz propose des scrutateurs laser de sécurité, des relais de sécurité modulaire ainsi que les organes de commande et de signalisation permettant de garantir la sécurité de déplacement des AMR.

Les limites du SLAM
Le SLAM ne supprime pas les difficultés liées à la perception de l'environnement. Il les déplace en grande partie vers les capteurs et le traitement des données.

Un premier problème concerne les environnements pauvres en caractéristiques. Un long mur uniforme, une surface très réfléchissante ou une zone présentant peu de détails visuels peut compliquer l'identification de repères. Les systèmes reposant principalement sur la vision peuvent notamment rencontrer des difficultés dans des zones peu éclairées ou dont l'apparence change fortement.

Les objets mobiles constituent une autre difficulté. Une personne, un chariot ou une palette qui se déplace peut être interprété comme une modification de l'environnement alors qu'il ne s'agit pas d'un élément fixe de la carte. Les algorithmes doivent donc distinguer autant que possible les structures statiques des objets en mouvement.

La dérive de localisation reste également un problème fondamental. Même lorsqu'un système dispose d'un LiDAR ou d'une caméra, les erreurs de mesure et d'estimation s'accumulent lorsque les observations sont insuffisantes. Les mécanismes de fermeture de boucle permettent de limiter cette dérive, mais leur efficacité dépend de la possibilité de reconnaître correctement une zone déjà cartographiée.

Les conditions environnementales peuvent aussi influencer les capteurs. La poussière, la vapeur, les surfaces transparentes ou réfléchissantes et certaines configurations géométriques peuvent perturber les mesures LiDAR. Pour les systèmes utilisant la vision, l'éclairage, les ombres ou les changements d'apparence peuvent avoir une influence comparable.

Des contraintes de déploiement à prendre en compte
La mise en œuvre d'un AMR basé sur le SLAM commence généralement par la cartographie du site. Le robot doit parcourir l'environnement afin d'acquérir les données nécessaires à la construction de sa carte.

La qualité de cette carte dépend notamment de la configuration du bâtiment, de la visibilité des structures fixes et de la précision des capteurs. Il faut également définir les zones accessibles, les zones interdites, les voies de circulation et les éventuelles règles de priorité entre robots et autres équipements.

Le dimensionnement du système informatique constitue une autre contrainte. Les données provenant d'un ou plusieurs LiDAR, de caméras et de capteurs inertiels doivent être traitées avec une latence suffisamment faible pour que le robot puisse réagir pendant son déplacement. L'augmentation du nombre de capteurs ou l'utilisation de données 3D accroît généralement les besoins en calcul et en stockage.

Enfin, le SLAM ne constitue qu'une partie de la chaîne de sécurité d'un AMR. La détection d'un obstacle et sa prise en compte dans la trajectoire relèvent de fonctions de navigation et de sécurité qui doivent être conçues et validées séparément. Dans un environnement industriel, le système doit notamment prendre en compte la coexistence avec les opérateurs et les autres équipements mobiles.

Le SLAM, une brique de la navigation autonome
Le SLAM fournit donc une réponse au problème fondamental de la navigation dans un environnement inconnu ou évolutif : estimer simultanément la position du robot et la structure de son environnement. Il associe pour cela des capteurs, de l'odométrie, des algorithmes de perception et d'optimisation ainsi qu'une représentation numérique de l'espace.

Son intérêt par rapport aux systèmes de guidage reposant sur une infrastructure fixe réside principalement dans la possibilité de construire et d'exploiter une carte numérique sans imposer un parcours physique au robot. Cette caractéristique facilite l'adaptation des itinéraires lorsque l'organisation d'un site évolue.

En revanche, un système SLAM reste dépendant de la qualité des observations disponibles et de la capacité des algorithmes à distinguer les éléments fixes des objets mobiles. Le choix des capteurs, leur implantation, la puissance de calcul disponible et la préparation du site sont donc aussi importants que l'algorithme SLAM lui-même. Pour un AMR industriel, la navigation autonome résulte ainsi de l'intégration de plusieurs briques — perception, localisation, cartographie, planification et sécurité — plutôt que d'une technologie unique.

Publié par Youssef Belgnaoui, rédacteur pour Induportals.

 
 

  Demander plus d’information…

LinkedIn
Pinterest

Rejoignez nos 155 000 followers (pour IMP)