Les représentants de la NASA ont publié les détails d'Ingenuity

Il ya quelques jours des représentants de l'agence spatiale de la NASA, dans une interview avec Spectrum IEEE, a révélé des détails sur l'hélicoptère de reconnaissance autonome Ingenuity, qui a atterri avec succès sur Mars dans le cadre de la mission Mars 2020.

Une particularité projet était l'utilisation d'une carte de contrôle basée sur SoC Qualcomm Snapdragon 801, qui est utilisé dans la production de smartphones. Le logiciel Ingenuity est basé sur le noyau Linux et un logiciel de vol open source.

Il convient de noter qu'il s'agit de la première utilisation de Linux sur des vaisseaux spatiaux expédiés à Martet. De plus, l'utilisation de logiciels open source et de composants matériels disponibles dans le commerce permet aux passionnés intéressés d'assembler eux-mêmes des drones similaires.

Cette décision est due au fait que contrôler un drone volant nécessite beaucoup plus de puissance de calcul que de contrôler un rover, qui est équipé de puces spécialement conçues avec une radioprotection supplémentaire. Par exemple, le maintien du vol nécessite le fonctionnement de la boucle de contrôle à une vitesse de 500 cycles par seconde, ainsi qu'une analyse d'image à une fréquence de 30 images par seconde.

Le SoC Snapdragon 801 (Quad Core 2,26 GHz, 2 Go de RAM, 32 Go de mémoire flash) est utilisé pour fournir un environnement système basé sur Linux de base, qui est responsable des opérations de haut niveau comme la navigation visuelle basée sur l'analyse d'image de caméra, la gestion des données, le traitement des commandes, la génération de télémétrie et la maintenance des canaux de communication sans fil.

Processeur se connecte via l'interface UART à deux microcontrôleurs (MCU Texas Instruments TMS570LC43x, ARM Cortex-R5F, 300 MHz, 512 Ko de RAM, 4 Mo de mémoire Flash, UART, SPI, GPIO) qui exécutent des fonctions de contrôle de vol.

Les deux microcontrôleurs sont utilisés pour la redondance en cas de panne et recevoir des informations identiques des capteurs. Un seul microcontrôleur est actif, le second est utilisé comme pièce de rechange et en cas de panne il peut prendre le contrôle. FPGA MicroSemi ProASIC3L est responsable du transfert des données des capteurs vers les microcontrôleurs et d'interagir avec les actionneurs qui commandent les lames, qui bascule également sur un microcontrôleur de remplacement en cas de panne.

Équipe, le drone utilise un altimètre laser SparkFun Electronics, une société de matériel open source et l'un des créateurs de la définition du matériel open source (OSHW). Parmi les autres composants typiques, le gyrostabilisateur (IMU) et les caméras vidéo utilisés dans les smartphones se démarquent.

Une caméra VGA est utilisée pour suivre l'emplacement, la direction et la vitesse par des comparaisons image par image. La deuxième caméra couleur de 13 mégapixels est utilisée pour créer des images de la zone.

Apporter l'ingéniosité sur Mars en un seul morceau et le faire décoller et atterrir même une fois est une victoire définitive pour la NASA, nous dit Tim Canham du JPL.

Canham a aidé à développer l'architecture logicielle qui exécute Ingenuity. En tant que responsable des opérations d'Ingenuity, il se concentre désormais sur la planification des vols et la coordination avec l'équipe de rover Perseverance. Nous avons parlé à Canham pour mieux comprendre comment Ingenuity s'appuiera sur l'autonomie pour ses prochains vols vers Mars.

Les composants logiciels de contrôle de vol ont été développés au JPL (Jet Propulsion Laboratory) de la NASA pour les petits et ultra-petits satellites artificiels terrestres (cubsats) et ont été développés depuis plusieurs années dans le cadre de la plate-forme ouverte F Prime (F´), distribuée sous le Licence Apache 2.0.

F Prime fournit les outils pour le développement rapide des systèmes de contrôle de vol et applications embarquées associées. Le logiciel de vol est divisé en composants individuels avec des interfaces de programmation bien définies.

En plus des composants spécialisés, un framework C ++ est fourni avec l'implémentation de fonctionnalités telles que la mise en file d'attente de messages et le multi-threading, ainsi que des outils de modélisation qui vous permettent de lier des composants et de générer automatiquement du code.

Enfin si vous souhaitez en savoir plus, vous pouvez consulter le lien suivant. 


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.