ArduPilot : à la découverte de AP_Periph

adupilot fondbleuParce que l’univers ArduPilot est trop peu représenté sur Helicomicro, j’ai laissé le clavier à Pierre Kancir de Hivebotics, ingénieur en robotique et expert ArduPilot, spécialiste dans le domaine. Dans ce post, il vous présente le projet AP_Periph, basé sur ArduPilot

Andrew Tridgell (alias Tridge), chef de projet d’ArduPilot, vient de sortir la version 1.2.0 de AP_Periph. Cette nouvelle version apporte plusieurs améliorations notables comme :

●         La simulation Software-In-The-Loop (SITL) pour les périphériques AP_Periph.
●         Le support des modules batterie.
●         Le support du protocole MSP pour les autres autopilotes type Betaflight.
●         Ajout du support de plusieurs cartes disponible à la vente.

Super. Mais qu’est ce que c’est que AP_Periph ? 

MRO10042 2
Un exemple de carte AP_Periph : mRo CAN Node F303.

AP_Periph vient de ArduPilot Peripheric. L’idée principale était de fournir un socle logiciel de base pour créer plus simplement des périphériques utilisant le protocole UAVCAN. Le projet utilise maintenant l’ensemble des librairies logicielles disponibles dans ArduPilot, tant capteurs (capteur de distance, GNSS, etc.) qu’effecteurs (PWM, ESC, LED, etc) pour construire de nouveaux périphériques. 

Le logiciel est basé sur le système de construction mis en place pour le système d’exploitation embarqué Chibios, qui est utilisé par ArduPilot sur les cartes avec micro-contrôleurs comme les Cube ou les Pixhawk. Ainsi toute la configuration d’une carte avec AP_Periph se fait en utilisant un seul et unique fichier de configuration (hwdef.dat) qui va définir les entrées/sorties de la carte et les librairies logicielles à utiliser. Cela permet par exemple de définir un périphérique compatible avec UAVCAN avec seulement un micro-contrôleur de type STM32F103 et 128 Ko de mémoire flash.

Exemple de carte AP_Periph

Qu’est-ce qui est disponible actuellement comme librairies ?

●         matek gnssModules GNSS (dont  le support du RTK)
●         Magnetomètres (SPI ou I2C)
●         Baromètres (SPI ou I2C)
●         Capteurs de vitesse d’air (I2C)
●         Capteurs de distances (UART or I2C)
●         ADSB (Ping ADSB sur UART)
●         Moniteur de Batterie (Analog, I2C/SMBus, UART)
●         LEDs (GPIO, I2C or WS2812 serial)
●         Switch de sécurité et notification LED associés
●         Buzzer (tonealarm ou simple GPIO)
●         Sortie RC (Tous les protocoles standard)

La partie UAVCAN supporte les fonctionnalités suivantes :

●         ap periph firmwareGénération du bootloader
●         Mise à jour du bootloader par port série ou CAN
●         Mise à jour du firmware
●         Allocation de noeud CAN dynamique ou statiques
●         Stockage des paramètres dans la mémoire flash
●         Auto-diagnostique et sécurité : watchdog, CRC, autotest, etc.
●         Mise à jour avec MissionPlanner ou les outils UAVCAN comme uavcan-gui-tool

Les firmwares pour les différentes cartes maintenus par le projet se trouvent sur le site de firmwares d’ArduPilot.

Quelques revendeurs de cartes basées sur AP_Periph ?

La suite ? 

Beaucoup de projets sont en cours sur AP_Periph : Mavlink à travers UAVCAN, support Ethernet, AHRS sur UAVCAN, etc. 

Le code ?

ap periph githubComme tout le code d’ArduPilot, le code AP_Periph est disponible sur le Github. Le code est sous licence GPLv3. Il n’est pas nécessaire de le mettre en ligne sur un dépôt public comme Github, mais si vous vendez un module basé sur AP_Periph, vous devez proposer le code à votre client ! On vous encourage aussi à proposer vos modules sur ArduPilot afin qu’ils profitent des améliorations continues du code du projet.

Plus de questions ?

Rendez-vous sur le serveur Discord d’ArduPilot !

Laisser un commentaire

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Ads Blocker Image Powered by Code Help Pro

Bloqueur de publicités détecté !!!

Nous avons détecté que vous utilisez des extensions pour bloquer les publicités.

Veuillez nous soutenir en désactivant ce bloqueur de publicités.

 
×