VSLAM, navigation et fusion de capteurs utilisant ADI ToF et IMU avec NVIDIA AGX Orin

Les robots mobiles autonomes (AMR) continuent de gagner en popularité et en capacités, d'autant plus que les fabricants comme Analog Devices développer des capteurs et des systèmes de contrôle de plus en plus intelligents pour aider à la navigation. Dans cet article, découvrez plus en détail comment le package ROS2, le capteur ADI ToF, l'unité de mesure inertielle ADI et le kit de développement NVIDIA Jetson AGX Orin permettent la navigation AMR sur les robots équipés de ROS2.

À propos

Sommaire

  • La rubrique Présentation de l'AMR explique de façon sommaire le schéma fonctionnel du système, qui montre l'interconnexion des différentes parties.
  • Des prérequis doivent être mis en place pour le kit AGX Orin, le module EVAL-ADTF3175D-NXZ et ADIS16470 IMU avant d'exécuter l'intégralité du pipeline de navigation. Des informations sur la configuration de ROS2 et les packages logiciels dépendants nécessaires sont disponibles sous Logiciels requis.
  • Pour éviter toute erreur de dépendance logicielle à l’avenir, nous vous conseillons de suivre attentivement cette étape. La Configuration pour ToF fournit la méthode standard de flashage d'une image pour le capteur EVAL-ADTF3175D-NXZ.
  • Pour connecter la centrale inertielle ADIS16470 via USB sur AGX Orin, une connexion supplémentaire est nécessaire. Dans Configuration pour l'IMU, vous trouverez les instructions de configuration spécifiques pour ADIS16470.
  • Il faut pouvoir accéder aux données IR et de profondeur provenant du capteur EVAL-ADTF3175D-NXZ dans AGX Orin pour suivre les instructions de la rubrique Interfacer Tof avec AGX Orin. Pour simplifier l'intégration aux piles logicielles ROS2, ces données seront présentées sous forme de points ROS2.
  • De même, en suivant les instructions de la rubrique Interfacer Imu avec AGX Orin, les données ADIS16470 IMU sont accessibles dans les points ROS2.
  • La création d’une carte des environs est essentielle pour que l’AMR puisse naviguer de façon autonome. Dans notre cas, nous avons utilisé l'algorithme bien connu RTAB-Map pour créer une carte à partir des données du capteur Time-of-Flight. La bibliothèque RTAB-Map est disponible sous forme de packages ROS2. Suivez les instructions de la rubrique Interfacer TOF avec RTABMAP pour déterminer si RTAB-Map fonctionne uniquement avec le capteur EVAL-ADTF3175D-NXZ.
  • Le tutoriel Navigation avec TOF sur l'AMR et le tutoriel sur la fusion de capteurs et la navigation avec TOF sur l'AMR fournissent tous deux un didacticiel complet sur la navigation autonome réalisée sur un AMR développé par EIC. Cet AMR est contrôlé par AGX Orin et des capteurs externes EVAL-ADTF3175D-NXZ et ADIS16470 étaient connectés.
  • Les clients qui possèdent leur propre AMR personnalisé peuvent consulter le guide spécial de la rubrique Travailler avec un AMR NON-EIC pour savoir comment intégrer leur AMR au système mentionné dans ce guide. Cette section traite également des modifications apportées au logiciel afin que le système puisse être personnalisé selon les besoins.

Présentation du système

  • La Figure 1 montre le schéma fonctionnel général d'un système de navigation AMR basé sur ToF. L'ensemble de la pile logicielle est conçu avec le système d'exploitation du robot (ROS). Dans notre AMR, le kit AGX Orin servait de processeur central, sur lequel tous les nœuds ROS2 Humble via Docker fonctionnaient, et le mouvement de l'AMR était contrôlé. En tant que capteurs externes, EVAL-ADTF3175D-NXZ et ADIS16470 étaient connectés à AGX Orin. Le capteur EVAL-ADTF3175D-NXZ est équipé d'une carte intégrée I.MX8 comprenant des packages de pilote de capteur et de nœud ROS. Il est connecté par USB à l'AGX Orin et publie tous les points au format ROS1.
Figure 1 Block Diagram of ToF-based AMR navigation system
Figure 1 : Schéma fonctionnel du système de navigation AMR basé sur ToF

Schéma fonctionnel du système de navigation AMR

  • Étant donné que le système a été développé dans ROS2, nous avons utilisé le package de pont ros1 dans AGX Orin pour porter les points ROS1 de ToF vers ROS2. Les autres nœuds ROS2 Humble utilisés pour la navigation comprennent le nœud RTAB-Map, le nœud ROBOT LOCALIZATION, le nœud NAV2 et le nœud IMU Driver qui s'exécutent dans le conteneur Docker humble ROS2, comme le montre la figure ci-dessus.
  • Dans l'AMR développé par EIC, le contrôle moteur de niveau inférieur et l'odométrie des roues ont été gérés à l'aide d'un agent micro-ROS. Sur Jetson AGX Orin, un agent micro-ROS était en cours d'exécution et communiquait avec un microcontrôleur via l'interface série. De plus, le microcontrôleur envoie le signal de commande provenant de Jetson au pilote du moteur et fournit un retour d'information de l'encodeur de roue à Jetson. Cette configuration s’applique uniquement aux AMR développés par EIC. Pour un AMR personnalisé, la configuration de gestion du contrôle moteur de niveau inférieur et du mécanisme de retour d'information de l'encodeur de roue peut différer. Pour plus de détails, vous pouvez vous référer au blog : cliquez ici

    Remarque : RTAB-Map prend l'odométrie externe comme entrée pour utiliser son algorithme SLAM (Simultaneous Localization and Mapping). Dans l’AMR développé par EIC, nous avons utilisé l’odométrie des roues comme source d’odométrie externe. Nous avons utilisé la fusion de capteurs pour améliorer l'odométrie en combinant les données IMU avec l'odométrie des roues à l'aide du package ROBOT_LOCALIZATION (EKF).

Actualité

Sorry, your filter selection returned no results.

Nous avons mis à jour notre politique de confidentialité. Prenez un moment pour lire les changements. En cliquant sur "J'accepte", vous acceptez la clause de confidentialité d'Arrow Electronics ainsi que les conditions d'utilisation.

Notre site Internet place des cookies sur votre appareil pour améliorer votre expérience et pour améliorer notre site. Pour en savoir plus sur les cookies que nous utilisons et la façon de les désactiver, cliquez ici. Des cookies et des technologies de suivi peuvent être utilisés à des fins de marketing. En cliquant sur « Accepter », vous consentez au placement de cookies sur votre appareil et à notre utilisation de technologies de suivi. Cliquez sur « En savoir plus » pour de plus amples informations et instructions sur la façon de désactiver les cookies et les technologies de suivi. Même si l'acceptation des cookies et technologies de suivi est volontaire, leur désactivation peut entraîner un mauvais fonctionnement du site Internet et certaines publicités peuvent être moins pertinentes pour vous. Nous respectons votre confidentialité. Lisez notre politique de confidentialité ici.