Relation entre les forces et les couples du drone et des moteurs

Le centre inertiel

Le centre inertiel est une des composantes les plus importantes du drone. Il permet de recuperer les angles dโ€™orientation ainsi que les vitesses angulaires. Le centre inertiel contient trois capteurs ou deux capteurs : un gyroscope, un accelerometre et un magnetometre si lโ€™on parle dโ€™un centre inertiel a 9 degres de liberte. Le magnetometre nโ€™est pas inclus lorsque lโ€™on parle dโ€™un centre inertiel a 6 degres de liberte. Le gyroscope mesure la vitesse angulaire du drone. Ce capteur a lโ€™avantage de ne pas etre trop bruite et nโ€™est pas influence par le champ electromagnetique. Lโ€™integration directe pour avoir les angles dโ€™orientation est deconseillee. Lโ€™integration cumule en effet les erreurs au cours du temps. Un decalage entre lโ€™angle actuel et lโ€™angle mesure se fera au cours du temps. Lโ€™ accelerometre mesure lโ€™acceleration lineaire exercee par le drone. Ce capteur mesure correctement lโ€™acceleration si le dispositif ne vibre pas fortement. Les accelerometres sont tres sensibles aux forces exterieures ce qui peut causer des erreurs dโ€™interpolation (Woodman (2007)). Ils ne peuvent donc pas etre utilises pour recuperer directement la position en integrant deux fois ou etre utilises uniquement pour trouver les angles dโ€™orientation.

Les capteurs ne peuvent individuellement mesurer les angles dโ€™orientation du drone. Une solution proposee dans la litterature est de faire une fusion de capteur (sensor fusion en anglais). Cette methode permet de combiner les informations donnees par les deux capteurs en meme temps afin dโ€™avoir un resultat plus precis sur les angles dโ€™orientation. La fusion de capteur peut se faire de differentes manieres. Lโ€™utilisation du filtre complementaire a ete utilisee dans de nombreuses recherches (Euston et al. (2008) ; Mahony et al. (2005)). Le filtre complementaire permet de donner un poids entre la valeur fournie par lโ€™accelerometre et la valeur du gyroscope. Il peut etre cependant difficile a avoir de bons resultats, le filtre etant trop simpliste. Le filtre de Kalman a ete beaucoup utilise pour ce genre de probleme et est considere comme une reference (Kalman et al. (1960) et Grover & Hwang (2012)). Une comparaison entre le filtre de Kalman et le filtre complementaire a ete faite par Higgins (1975). Le filtre de Kalman peut cependant etre complique a realiser lorsque lโ€™on utilise des modeles non lineaires.

Le filtre de Kalman etendue doit etre utilise (Marins et al. (2001)). Le temps dโ€™execution et la complexite de lโ€™implementation de ce filtre peuvent devenir problematiques. Dโ€™autres solutions existent, notamment lโ€™utilisation de systeme flou (Sung (2003)). Ce projet utilisera cependant le filtre utilise par Madgwick et al. (2011). Ce filtre se base sur les quaternions afin dโ€™eviter les problemes lies aux angles dโ€™Euler. Il utilise un algorithme simple et rapide dโ€™execution. Lโ€™utilisation de ces algorithmes sur le gyroscope et lโ€™accelerometre fonctionne correctement lorsque les experiences se font sur un repere local. Les drones sont cependant beaucoup utilises a lโ€™exterieur avec comme coordonnees une position precise par rapport a la Terre. Il faut alors connaitre la direction du drone par rapport a celle-ci. On utilise pour cela le magnetometre avec le gyroscope et lโ€™accelerometre. On parle alors dโ€™un ensemble AHRS (Attitude and Heading Reference System). Les filtres evoques precedemment peuvent etre utilises pour ajouter le magnetometre.

Fonctionnement thรฉorique du drone

Le quadcopter est constitue de 4 moteurs permettant dโ€™orienter le drone (Figure 2.1). Les vitesses ฯ‰1 et ฯ‰3 des moteurs M1 et M3 vont dans le sens inverse des aiguilles dโ€™une montre et les vitesses ฯ‰2 et ฯ‰4 des moteurs M2 et M4 dans le sens des aiguilles dโ€™une montre. Le quadcopter peut sโ€™orienter de differentes manieres : la configuration dite en plus, dans laquelle le nez du drone se situe en face du moteur M1 et la configuration en croix (ou cross en anglais) ou le nez se trouve entre les moteurs M1 et M2. Une rotation positive de lโ€™angle en lacet sโ€™effectue en augmentant les vitesses des moteurs M2 et M4 par rapport aux vitesses des moteurs M1 et M3. Une augmentation des vitesses des moteurs M1 et M3 par rapport aux vitesses des moteurs M2 et M4 produira une rotation en lacet negative. Lorsque le drone est dans une configuration en croix, la difference de vitesses des quatre moteurs est utilisee pour effectuer une rotation en roulis ou en tangage. En effet, une augmentation des vitesses des moteursM1 etM4 par rapport aux vitesses des moteursM2 etM3 permet dโ€™avoir une rotation en tangage positive et inversement pour une rotation negative. Une augmentation des vitesses des moteurs M1 et M2 par rapport aux vitesses des moteurs M3 et M4 realise une rotation positive en roulis et inversement pour une rotation negative.

Lorsque le drone est dans une configuration en plus, la difference de vitesses de deux moteurs est utilisee pour faire les rotations en roulis et en tangage. Une augmentation de vitesse du moteur M1 par rapport a M3 fera une rotation positive en tangage. Une augmentation de la vitesse du moteur M4 par rapport a M2 fera une rotation positive en roulis. Deux reperes principaux sont utilises pour decrire le mouvement du drone. Le repere {i} represente le repere inertiel. Il est fixe par rapport a la Terre. Le repere {b} represente le repere du corps du drone. Lโ€™axe z du le repere {b} est toujours normal au corps du drone. Le repere {b} a ete pris de sorte a etre dans une configuration en croix. Lโ€™orientation du drone peut etre representee de manieres differentes. On peut, en effet, utiliser les quaternions (Jia (2016)) ou les angles dโ€™Euler. Contrairement aux angles dโ€™Euler, les quaternions nโ€™ont pas besoin dโ€™avoir des reperes auxiliaires pour etre decrits proprement. Ils peuvent aussi eviter le phenomene, dit blocage de cadran (ou gimbal lock en anglais), qui enleve deux degres de liberte au drone. Ce phenomene ainsi que les quaternions seront expliques plus en detail dans la suite de ce chapitre.

Dรฉtermination de la position du drone

On peut, a partir de (5.7), retrouver une coordonnee dans le repere inertiel en millimetre pour un pixel donne dans le repere {c}. On doit cependant traiter lโ€™image recue de sorte a pouvoir isoler le drone de lโ€™environnement. On pourra alors recuperer le centre du drone comme point de reference afin de recevoir une coordonnee unique dans le repere {c}. On peut utiliser, pour isoler le drone, un algorithme appele soustraction de lโ€™arriere-plan (Background subtraction dans la litterature (Sobral & Vacavant (2014))). Le principe de cet algorithme est demontre dans la Figure 5.3. La Figure 5.4 presente un example dโ€™image de reference a savoir un arriere plan. On peut alors, une fois lโ€™image de reference generee, mettre lโ€™objet dont la position doit etre mesuree devant la camera (Figure 5.5). La Figure 5.6 montre le resultat de lโ€™algorithme. Cet algorithme fonctionne sous plusieurs conditions. Lโ€™environnement et la camera doivent etre fixes pendant toute lโ€™experimentation. Les objets nโ€™appartenant pas a lโ€™environnement doivent etre des objets dont lโ€™on souhaite mesurer. Les objets doivent etre suffisamment grands pour ne pas etre confondus avec du bruit. Des recherches sur ce domaine ont ete menees afin de corriger ces problemes (arriere-plan dynamique, prise en compte de plusieurs cameras…). Les solutions complexifient cependant les algorithmes et peuvent augmenter le temps de calcul de la position.

Lโ€™utilisation de lโ€™algorithme classique pour notre projet est suffisante etant donne lโ€™environnement utilise pour les experimentations (enclos ferme dans un laboratoire). Une synthese des differentes techniques sur la soustraction de lโ€™arriere-plan a ete faite par Bouwmans (2014). On utilise, pour realiser la soustraction de lโ€™arriere-plan, la matrice Ia generee par la Kinect. Afin de faciliter les calculs, il peut etre preferable de normaliser les images de la profondeur pour avoir des valeurs comprises entre 0 et 1. La matrice Ia genere du bruit. Une portion du bruit peut etre filtree facilement en placant les valeurs en dessous de 0.01 a 1 lorsque lโ€™image est normalisee (Algorithme 5.1). On peut choisir une profondeur maximale arbitraire selon lโ€™attente de lโ€™experimentation. Ceci permet notamment de ne pas traiter des objets etant dans le champ de vision de la Kinect, mais nโ€™etant pas dans la zone dโ€™experimentation. Du bruit produit par les capteurs de la Kinect peut modifier les valeurs des elements de la matrice de profondeur. On risque alors de comparer lโ€™image actuelle avec du bruit, on aura alors produit une mauvaise image de reference. Pour pallier a ce probleme, la generation de lโ€™arriere-plan ne se basera pas sur une image, mais sur plusieurs (Algorithme 5.2). Le nombre dโ€™images doit etre suffisamment grand pour avoir un resultat optimal (une centaine dโ€™images doit etre produite). La difference entre lโ€™image actuelle et lโ€™arriere-plan peut alors etre faite. Il est necessaire dโ€™utiliser des images binaires pour traiter lโ€™image. La matrice finale aura alors une valeur de 1. On choisira alors de mettre a 1 les elements de la matrice dont la valeur est superieure a une certaine limite et a 0 si ce nโ€™est pas le cas. Cette limite est determinee arbitrairement. Elle doit etre suffisamment elevee pour pouvoir differencier les objets du bruit, mais suffisamment faible pour differencier les objets a lโ€™arriere-plan. Du bruit peut tout de meme exister (Figure 5.7). On utilise alors la morphologie dโ€™ouverture qui consiste a faire une erosion entre lโ€™image generee et une forme geometrique (ici un carre contenant de dimension 3 pixels par 3 pixels) suivi dโ€™une dilation (Figure 5.6). Une explication plus poussee peut etre lue en suivant Dougherty & Lotufo (2003).

Le rapport de stage ou le pfe est un document dโ€™analyse, de synthรจse et dโ€™รฉvaluation de votre apprentissage, cโ€™est pour cela chatpfe.com propose le tรฉlรฉchargement des modรจles complet de projet de fin dโ€™รฉtude, rapport de stage, mรฉmoire, pfe, thรจse, pour connaรฎtre la mรฉthodologie ร  avoir et savoir comment construire les parties dโ€™un projet de fin dโ€™รฉtude.

Table des matiรจres

INTRODUCTION
CHAPITRE 1 REVUE DE LITTร‰RATURE
1.1Introduction
1.2Le quadcopter
1.3Les moteurs utilisรฉs
1.4Le centre inertiel
1.5La carte รฉlectronique
1.5.1NAVIO
1.5.2Erle-Brain
1.5.3Pixhawk
1.5.4Autres
1.6Unitรฉ de gestion de vol
1.6.1PX4
1.6.2Ardupilot
1.7Technologies dรฉveloppรฉes pour rรฉcupรฉrer la position
1.7.1Vision par ordinateur
1.7.2Capture des mouvements
1.7.2.1Optitrack
1.7.2.2Vicon
1.7.2.3Kinect
1.8Commandes utilisรฉes pour contrรดler un quadcopter
1.8.1Commandes linรฉaires
1.8.2Commande non linรฉaire par backstepping
1.8.3Commande par mode glissant
1.8.4Linรฉarisation entrรฉe-sortie
1.9Conclusion
CHAPITRE 2 MODร‰LISATION DU QUADCOPTER
2.1Fonctionnement thรฉorique du drone
2.2Changement de repรจre entre le repรจre inertiel et le repรจre du corps du drone
2.3Vitesses angulaires
2.4Relation entre les angles dโ€™Euler et les quaternions
2.5Dynamique du drone
2.6Relation entre les forces et les couples du drone et des moteurs
2.7Conclusion
CHAPITRE 3 MESURE DES PARAMรˆTRES
3.1Drone basรฉ sur le chรขssis S500
3.2Mesure des moments dโ€™inertie
3.2.1Mรฉthode thรฉorique
3.2.2Mรฉthode expรฉrimentale
3.2.3Mรฉthode par modรฉlisation 3D
3.3Relation entre les forces et les signaux MLI
3.4Conclusion
CHAPITRE 4 COMMANDE DU QUADCOPTER
4.1Structure de la commande
4.2Linรฉarisation du modรจle et conception des contrรดleurs du drone
4.2.1Linรฉarisation entrรฉe-sortie et conception du contrรดleur dโ€™attitude
4.2.2Conception du contrรดleur de position
4.3Conclusion
CHAPITRE 5 Dร‰TECTION DE LA POSITION ET ESTIMATION DE LA VITESSE DU DRONE AVEC LA KINECT2
5.1Modรฉlisation de la Kinect V2
5.1.1Modรจle du stรฉnopรฉ
5.2Dรฉtermination de la position du drone
5.3Estimation de la vitesse
5.3.1Estimation de la vitesse ร  lโ€™aide dโ€™un filtre passe-bas de deuxiรจme ordre
5.3.2Estimation de la vitesse ร  lโ€™aide dโ€™un filtre de Kalman discret
CHAPITRE 6 PLATFORME Dโ€™EXPร‰RIMENTATION ET VALIDATION DE LA COMMANDE
6.1Simulation
6.2Implรฉmentation
6.2.1Robot Operating System (ROS)
6.2.2Implรฉmentation de la commande sur le Crazyflie
6.2.2.1Protocole de communication du Crazyflie
6.2.2.2Rรฉsultats de lโ€™implรฉmentation sur le Crazyflie
6.2.2.3Conclusion
6.2.3Implรฉmentation de la commande sur le drone S500
6.2.3.1Protocole de communication Mavlink
6.2.3.2Rรฉsultats expรฉrimentaux du drone S500
6.2.3.3Conclusion
CONCLUSION
RECOMMANDATIONS
ANNEXE I COEFFICIENTS DU FILTRE PASSE-BAS EN DISCRET
ANNEXE II LEMME DE BARBALAT

Rapport PFE, mรฉmoire et thรจse PDFTรฉlรฉcharger le rapport complet

Tรฉlรฉcharger aussi :

Laisser un commentaire

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