Positionnement absolu sans GPS


23

À l'aide d'un IMU, un robot peut estimer sa position actuelle par rapport à sa position de départ, mais cela entraîne une erreur dans le temps. Le GPS est particulièrement utile pour fournir des informations de position non biaisées par l'accumulation d'erreurs locales. Mais le GPS ne peut pas être utilisé à l'intérieur, et même à l'extérieur, il peut être irrégulier.

Alors, quelles sont les méthodes ou les capteurs qu'un robot peut utiliser pour localiser (par rapport à un cadre de référence) sans utiliser de GPS?


Ajout de la balise SLAM (localisation et mappage simultanés), car les deux premières réponses s'y réfèrent
Andrew

Je ne sais pas quel type d'échelle de ce robot, mais s'il s'agit d'un objet massif qui se déplace lentement dans des zones intérieures de terrain inconnues refusées par GPS (ex: tunnel de mine), vous pouvez chercher à obtenir un positionnement précis du robot en utilisant une station totale et deux prismes de suivi.
JJerome

Réponses:


20

Principalement, le calcul des morts est utilisé avec une autre technique, généralement similaire à SLAM. Le robot construit une carte, puis essaie de se localiser dans cette carte. Par exemple, à l'aide de scanners laser à distance, et sur la base d'un calcul à mort, le robot a une idée de l'endroit où il se trouve. En comparant les données de portée laser à la carte, il peut améliorer son estimation.

Les ressources pertinentes sont:

Les méthodes comprennent:

  • SLAM (ou au moins localisation) avec
    • laser
    • vision (caméras, stéréo-vision)
    • environnements structurés
  • signaux cellulaires
  • signaux wifi
  • Balises RF (radiofréquence) et triangulation (plus d'informations sur http://www.wpi.edu/Images/CMS/PPL/ITT.pdf ).
  • systèmes de suivi par caméra (suivi optique des marqueurs dans un espace)

Pour développer ronalchn, vous avez essentiellement besoin d'une forme quelconque de balises à des emplacements connus pour obtenir une correction relative ou une carte et un moyen de détecter des objets connus (tels que des murs ou des portes). Les balises peuvent être spécifiques à votre robot ou à double usage (routeurs wifi connus, emplacements des tours de
téléphonie

9

Je comprends que votre problème est de trouver différents moyens de GPS pour trouver votre position dans un cadre de référence donné. Ce problème isolé est appelé localisation, et il existe de nombreuses façons de le faire. Tout d'abord, vous devrez différencier les méthodes relatives, donc les mesures qui fournissent un changement de position à une position précédemment connue. Cette méthode a le problème, que toutes les erreurs sont évidemment accumulées et vont croître sans limite.

  • Le calcul des morts est probablement l'un des plus anciens moyens de localisation relative. Si vous utilisez le cap, la vitesse et le temps (afin d'estimer la distance parcourue), vous pouvez résumer vos changements de position à partir d'une position de départ.

  • En plus d'utiliser le calcul des morts, vous ne pouvez pas non plus repérer et les suivre sur une carte. Retrouver ces repères vous permettra de réduire votre erreur de position relative. Il s'agit du problème SLAM (Simultaneous Localisation and Mapping). C'est encore une navigation relative.

Venons-en maintenant à votre question réelle sur la navigation absolue. Le GPS ne fait que vous fournir des estimations de distance par rapport aux repères avec une information de position connue dans votre cadre de référence (dans ce cas, géocentrique). Les récepteurs GPS prendront ces informations et généreront une solution de position, qui contient également une erreur. La bonne chose est que cette erreur est limitée dans votre cadre de référence. C'est ce qui en fait un système de positionnement absolu. Donc, que ce soit à l'intérieur ou à l'extérieur et quel que soit votre cadre de référence souhaité, tout ce dont vous avez besoin pour des systèmes de positionnement absolus sont des mesures qui vous mettent en relation avec une position de repère connue dans vos cadres de référence. Certaines de ces méthodes ont été données dans une réponse précédente . Bien que, comme je l'ai dit, SLAM n'est pas une méthode absolue.

  • La forme la plus simple est la reconnaissance directe des points de repère. Si vous voyez une tour Eiffel, vous devriez avoir une bonne idée de votre position absolue (au moins avec une limite d'erreur absolue) dans le cadre fixe de la terre (si vous connaissez la position de la tour Eiffel). Vous devrez peut-être faire un peu d' homonymie , cependant.

  • Si vous souhaitez améliorer votre erreur de position absolue, vous pouvez utiliser plusieurs repères en même temps. La triangulation classique en est un exemple. Un autre utilise des cratères pour un véhicule de descente lunaire. Les repères n'ont pas à être visuels, et vous pouvez utiliser des éléments tels que la force du signal RF pour des signaux connus, comme dans la localisation WiFi ou cellulaire.

  • Toutes les méthodes ci-dessus nécessitent des repères, qui doivent être identifiés et associés de manière unique. En cas de problème, vous pouvez également utiliser différentes méthodes, comme le profil de terrain . Cela a par exemple été appliqué pour la navigation de missile de croisière précoce . J'ai également utilisé cette méthode pour la localisation sur une carte d'élévation sans détection visuelle ou de portée.

Avec toutes les méthodes ci-dessus: tant que l'un de vos documents cartographiques est associé à des informations géoréférencées, vous pouvez évidemment vous géoréférencer sans utiliser de GPS. Le facteur le plus important pour différencier les méthodes est leurs caractéristiques d'erreur.


4

Je sais que c'est une vieille question, mais je vais juste ajouter un peu aux réponses existantes. Tout d'abord, c'est un problème très complexe que tout le monde essaie de résoudre, y compris Google avec son projet Tango . En général, pour localiser l'intérieur, vous devez soit vous fier à vos capteurs internes, soit obtenir l'aide d'une infrastructure intérieure déployée pour vous aider à vous localiser.

  • S'appuyant sur des capteurs embarqués:
    • Utilisation de capteurs tels que LIDAR / Lasers, caméras, capteurs RGBD, IMU
    • Effectuez une fusion de capteurs algorithmique complexe pour effectuer une sorte de localisation itérative précise. SLAM (localisation simultanée et création de cartes) est couramment utilisé. J'ai précédemment développé une méthode appelée MRICP (Map Reference Iterative Closest Point) pour effectuer une localisation simple mais sujette aux erreurs. Beaucoup de littérature à regarder sur ce front, y compris la récente odométrie visuelle monoculaire et stéréoscopique qui est assez prometteuse (vérifiez le capteur vi de skybotix ou svo ).
  • Comptez sur les infrastructures:
    • Balises (bluetooth, ultraband, sans fil ...)
    • Mocap (caméras de capture de mouvement: vicon, visualeyez ...)
    • Positionnement codé dans les ampoules (philips expérimente récemment avec cela)

En général, cela dépend vraiment de la précision que vous essayez d'atteindre. En robotique mobile, d'après mon expérience, vous devez vraiment vous concentrer sur des cartes cohérentes à l'échelle mondiale et un positionnement localement précis. Cela signifie que vous devez savoir à peu près d'où vous venez d'une manière topologique de haut niveau (cette pièce est connectée à l'autre pièce à gauche, par rapport à la pièce suivante à gauche à 2,323 m), mais localement, vous devriez avoir une précision estimation de la position (les lasers + IMU peuvent le faire avec précision).

J'espère que cela t'aides.


3

Si votre objectif est d'avoir une localisation géoréférencée, vous devrez utiliser le GPS à un moment donné. Les autres techniques (dead reckoning, SLAM, ...) ne seront utiles que pour "combler" la réception GPS / positionnement absolu inégal.


2

Vous demandez comment utiliser un capteur d'accélération pour effectuer de meilleures mesures de position. Comme vous l'avez correctement souligné, ces erreurs s'accumulent au fil du temps.

Une façon d'améliorer cela est d'avoir des mises à jour périodiques de la position absolue, comme à partir du GPS, ou des techniques dans de nombreuses réponses ici.

Cependant, n'oubliez pas les capacités dont vous disposez pour obtenir des mises à jour à vitesse absolue. Tout capteur de vitesse par rapport au sol, ou tout simplement les données brutes de position / vitesse des roues (si vous avez des roues) peut améliorer votre précision d'estimation.


2

http://www.locatacorp.com/ pourrait être la solution que vous recherchez. Ils offrent la technologie pour créer une constellation locale à l'intérieur. Il émule les satellites pour les applications GPS intérieures. Je crois qu'il peut utiliser des récepteurs GPS à l'intérieur sans avoir besoin de matériel supplémentaire sur les robots.


2

Les capteurs de débit optiques (tels que ceux utilisés dans les souris d'ordinateur) sont bons pour cette situation. La plupart donneront une sortie en termes de traduction.

Alternativement, vous pouvez simplement utiliser une caméra de base et exécuter des algorithmes de flux optique sur les données. Cela vous donnera les mêmes informations de base. Il pourrait être plus facile de procéder de cette façon, pour adapter un algorithme qui offrira un mouvement de rotation ainsi qu'une translation.

Certains circuits intégrés à flux optique ont la capacité de vous fournir les données d'image (par exemple, l'ADNS-3080), que vous pouvez analyser davantage pour des informations sur la rotation.


1

Les progrès récents dans la SLAM basée sur la vision monoculaire (ORB_SLAM, LSD_SLAM, SVO) ont permis de déterminer la pose d'une caméra par rapport à une image initiale arbitrairement mise à l'échelle et pivotée. Si vous combinez ces informations avec un système IMU et EKF tel que celui d'ETH (ethzasl_msf), vous pouvez obtenir une estimation de position même lorsqu'il n'y a pas de GPS disponible. Encore mieux, vous pouvez combiner plusieurs postures / positions / attitudes / etc. capteurs dans le MSF.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.