Projet Drone

Lors de nos 6 premiers mois au sein d’InTech, nous avons eu l’occasion de travailler dans le domaine du drone et plus particulièrement dans la programmation de celui-ci. L’objectif était de voir ce qu’il était possible de faire avec un drone ‘open-source’ fait maison, un peu de connaissances dans le domaine et beaucoup d’huile de coude ! Le drone en question possédait quelques capteurs dont notamment des capteurs gyroscopiques, accéléromètres, magnétomètre, de positions (GPS et relatif) et un capteur vidéo.

ExempleApplication

De nos jours l’Internet of Thing participe activement à la vulgarisation des capteurs, en effet ils coûtent de moins en moins cher et sont plus performants. Le concept du drone part d’un simple appareil pour prise de vue mais peut désormais avoir des applications multiples suivant le type de capteurs que l’on y installe. Ses applications sont par exemple : reconnaissance d’image, détection thermique, partage d’accès internet (Facebook), circulation autonome (drone ambulancier, Amazon) et tant d’autres encore !

Comment ça marche?

Au fur et à mesure de l’extension du marché de l’embarqué, les logiciels propriétaires se développent mais bon nombre de solutions Open-Source solides font également leurs apparition. C’est le cas de la plateforme ArduPilot, créée par DIY Drones Community en 2007, qui fournit des outils Open Source au niveau hardware, firmware et software.

Il est possible de définir le comportement de notre drone grâce au firmware, ensemble d’instructions et de structures de données, qui lui est implanté. ArduPilot propose des firmwares de base pour différents types de véhicules tels que : Avion, Hélico, Voiture ou Bateau. Ici notre base sera le firmware Hélico et plus précisément celui du QuadCopter, il est nommé ArduCopter. Il est possible de définir différents comportement pour notre drone dans un firmware, on parlera ici de mode de vol. Chaque mode de vol permettra de piloter le drone d’une manière différente.

De plus il est possible via un software, MissionPlanner, de configurer les différents paramètres disponibles pour le drone comme par exemple la vitesse des moteurs au démarrage ou encore le mode d’utilisation des GPS. Ce software sert à configurer automatiquement certains paramètres sensibles notamment au niveau des accéléromètres et du compas. Il nous permet également de configurer les commandes disponibles sur la télécommande, le comportement du drone en cas de problème, de consulter les logs de vols et offre bien d’autres possibilités.

ControlerCodeInput

Le schéma ci-dessus représente le fonctionnement du drone. L’utilisateur envoie ses commandes via la télécommande, le contrôleur de vol va récupérer ces inputs via son récepteur radio. Il va également tenir compte des données de ses capteurs et de l’électronique de bord (GPS, accéléromètres, …). Une fois les données récoltées, il va devoir choisir la manière de réagir. Il va donc utiliser le code que nous lui avons chargé et réagir selon les instructions contenues dans celui-ci, plus précisément dans le mode de vol sélectionné. Après avoir déterminé sa réaction, il va envoyer les consignes moteur pour appliquer sa trajectoire.

C’est bien beau mais on en fait quoi ?

Lors de notre stage nous avons donc été amenés à développer deux modes de vol. Petit rappel, les modes de vol influent sur le comportement du drone dans l’air. Ils vont déterminer les réactions de celui-ci en fonction des informations que l’on lui envoie en entrée.

La démarche pour reconstruire le modèle 3D d’un bâtiment consiste à prendre des photos successives de celui-ci en se décalant un peu entre chaque prise de vue. Il faut ainsi effectuer plusieurs cercles à des altitudes différentes autour du sujet pour être sûr de l’avoir capturé sous tous les angles.

Notre premier mode de vol est destiné à faciliter cette prise de vue. Il existe déjà un mode similaire sous Arducopter, le mode ‘circle’. Dans ce mode on demande au drone d’effectuer une trajectoire en cercle autour d’un point mais l’utilisateur n’a plus la main sur la trajectoire de l’appareil une fois le mode engagé. Notre mode permet d’intervenir sur le rayon du cercle ainsi que la vitesse et le sens de rotation autour de l’objet, le pilote à donc la liberté de modifier les déplacements à tout moment.

PhotoMode

C’est avec ce mode de vol, et l’aide de logiciel Autodesk 123D, que nous avons pu obtenir la modélisation 3D de plusieurs objet.

Voiture Maison

Le deuxième mode de vol nous a permit de tester la manipulation des données du GPS, nous nous sommes fixés l’objectif de créer une fonction qui permet au drone de ‘revenir sur ses pas’. On va donc relever des positions GPS à des intervalles de distance réguliers lors d’un vol libre et à chaud on va traduire ces positions en vecteurs, définis par rapport au point de décollage, et les enregistrer. Une fois le retour déclenché on dépile le tout et le drone revient graduellement sur sa trajectoire.

La librairie étant assez flexible et complètement Open-Source, elle est en constante évolution. Il existe par exemple un mode ‘Follow-Me’, très utilisé par les sportifs, qui va faire en sorte que le drone suive la position GPS de l’utilisateur. Ce mode est actuellement en test afin qu’il puisse suivre la personne uniquement grâce à sa caméra sans utiliser de GPS.

Parlons IoT !

L’une des premières applications mixant l’IoT et le Drone consistait à utiliser un beacon afin d’améliorer la précision d’atterrissage automatique de celui-ci. L’idée était de permettre au drone d’atterrir sur une cible en mouvement comme par exemple une voiture ou encore un bateau dans le cas du sauvetage en mer.

Le drone a aussi été rapidement couplé à des puces SigFox pour permettre la collecte de donnée passive sur de vastes terrains. Par exemple l’automatisation d’un système d’irrigation des cultures ou encore pour de la surveillance de zones difficiles d’accès.

Avec l’aide de quelques composants il est possible de réaliser un drone « espion » qui va sniffer les appareils connectés sur un rayon de 50 à 100 mètres. Il va analyser les communications ZigBee environnantes afin de récupérer diverses informations puis il va réaliser une carte des zones de dangers (niveau de protection faible voire inexistant) des appareils connectés. Bien entendu un projet de la sorte soulève de nombreux problèmes de réglementation : sécurité des zones surveillées, cohabitation avec d’autres engins volants, … ces questions étaient encore en cours de résolution en fin d’année 2015.

Le mot de la fin !

Le drone se démocratise de plus et en plus et la législation est en constante évolution autour de ce sujet qui fait tant parler de lui. De plus le drone est un véritable couteau suisse : en fonction du résultat final désiré il suffit de rajouter les capteurs nécessaires et quelques lignes de codes pour obtenir une application concrète. C’est donc une tendance à surveiller car les utilisations du drone civil s’étendent désormais à un bon nombre de domaines différents et tendent à évoluer rapidement.

Voilà pour une première présentation sur le drone, ses applications potentielles et notre retour d’expérience, nous espérons que cet article à piqué votre curiosité et réveillé des instincts d’aéromodélistes chez certains d’entre-vous 🙂

Suivant vos retours, nous pourrons faire une présentation plus en détail des éléments du drone et vous guider afin que vous puissiez dimensionner et choisir les composants adaptés pour votre drone en fonction du type d’application souhaitée.

Nous pouvons également vous aider à mettre un environnement de travail en place et vous apprendre comment le code est exécuté, comment le tester, comment l’intégrer et vous partager plus en détails notre expérience sur la partie codage.

Allan & Anthony

This entry was posted in Non classé. Bookmark the permalink.

Laisser un commentaire

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


*