LaDissertation.com - Dissertations, fiches de lectures, exemples du BAC
Recherche

Modélisation des drones

Analyse sectorielle : Modélisation des drones. Recherche parmi 300 000+ dissertations

Par   •  15 Novembre 2014  •  Analyse sectorielle  •  1 894 Mots (8 Pages)  •  1 206 Vues

Page 1 sur 8

Introduction

Tout d’abord, le mini projet proposé est basé sur un article de conférence sur la commande d’un micro drone quadrirotor. Avec l’utilisation du logiciel Matlab/Simulink, nous avons pu simuler les différentes commandes de ce dernier.

Ensuite, cette étude est réalisée en trois parties :

Partie mécanique

Partie électrique

Partie régulatrice (PID)

Lors de la partie sur la simulation du drone d’un point de vu mécanique, nous avons réalisé la simulation des dynamiques de roulis, de tangage et de lacet du drone. Nous avons donc programmé en fonction des vitesses de rotations des quatre moteurs cette partie.

Puis, lors de la partie électrique, nous avons cette fois-ci considéré les entrées comme des tensions appliquées aux différents moteurs à courant continu. Cette partie permet la stabilité du drone.

Pour finir, lors de la partie régulatrice nous avons ajouté des PID pour augmenter la précision des résultats. Cette dernière partie permet ainsi de contrôler l’attitude du drone de façon pointilleuse.

Enfin nous simulerons quelques mouvements du micro drone pour étudier son comportement en adéquation avec les différentes parties vues énumérées précédemment.

Première partie :

Nous nous intéressons à la simulation des dynamiques de roulis, de tangage et de lacet du drone, et non pas à celle des mouvements de translation (selon les axes x, y et z). Pour cette partie, les équations de l’annexe sont suffisantes pour permettre l’étude demandée. Voici les systèmes d’équations qui nous ont servis à la réalisation de cette partie :

{█( ̈= ̇ ̇((I_y-I_z)/I_x )-J/I_x  ̇+l/I_x U_1@ ̈= ̇ ̇((I_z-I_x)/I_y )-J/I_y  ̇+l/I_y U_2@ ̈= ̇ ̇((I_x-I_y)/I_z )+l/I_z U_3 )┤

{█(U_1=b(_4^2-_2^2 )@U_2=b(_3^2-_1^2 )@U_3=d(_1^2+_3^2-_2^2-_4^2)@=_2+_4-_1-_3 )┤

 : mouvement de tangage

 : mouvement de roulis

 : mouvement de lacet

Représentation d’état du système (modèle interne) :X ̇=f(X,)

Tout d’abord, nous avons dû déduire des équations vue précédemment, la représentation d’état du système avec comme vecteur d’état X. Les éléments du vecteur d’entrée  représentent les vitesses de rotation des quatre hélices. Nous avons donc :

X=(█(ϕ@θ@ψ@ϕ ̇@θ ̇ )¦ψ ̇ )et=(█(_1@_2@_3 )¦_4 ) avec █((ϕ ) ̇: vitesse de roulis @θ ̇ ∶ vitesse de tangage)¦((ψ ) ̇: vitesse de lacet )

En assimilant la représentation d’état du système donné avec les équations écrites avant nous avons obtenu :

X=■(■(ϕ=x1@θ=x2)@■(ψ=x3@ϕ ̇=x4)@■(θ ̇=x5@ψ ̇=x6))

■(■(■(ϕ ̇=x4)@■(θ ̇=x5@ϕ ̇=x6))@ϕ ̈=x5×x6((Iy-Iz)/Ix)-J/Ix×x5×Ω+l/Ix×U1@■(θ ̈=x4×x6((Iz-Ix)/Iy)-J/Iy×x4×Ω+l/Iy×U2@ψ ̈=x4×x5((Ix-Iy)/Iz)+1/Iz×U3))

Ceci va nous permettre de réaliser le modèle Simulink de la partie mécanique.

Modélisation sous Simulink de la partie mécanique :

Ce modèle peut se réaliser de trois façons différentes : soit avec une Embedded Function, soit avec un Subsystem ou encore soit avec Matlab Function. Nous avons réalisé les trois versions pour nous familiariser d’avantage à l’utilisation du logiciel.

Embedded Function

Nous avons commencé l’Embedded Function car elle est directement liée aux équations que nous avons écrites dans la partie I.1.

Voici le modèle pour l’Embedded Function :

Il est très important de ne pas oublier de mettre les To Workspaces en mode Array (structure). Ces derniers permettent de communiquer directement entre Matlab et Simulink.

Voici la fonction écrite dans l’Embedded Function :

functiondX = fcn(X,U, b, Iy, Iz, J, l, d, Ix)

% Dans la fonction ne pas oublier les paramètres d'entrée, de sortie

% et caractéristiques

%Vecteur Omega

w1=U(1);

w2=U(2);

w3=U(3);

w4=U(4);

% Système associé au système (10)

U1=b*(w4*w4-w2*w2);

U2=b*(w3*w3-w1*w1);

U3=d*(w1*w1+w3*w3-w2*w2-w4*w4);

W=w2+w4-w1-w3;

%Vecteur dX selon le système (9)

dX=zeros(6,1);

dX(1)=X(4);

dX(2)=X(5);

dX(3)=X(6);

dX(4)=X(5)*X(6)*((Iy-Iz)/Ix)-(J/Ix)*X(5)*W+(l/Ix)*U1;

dX(5)=X(4)*X(6)*((Iz-Ix)/Iy)+(J/Iy)*X(4)*W+(l/Iy)*U2;

dX(6)=X(6)*X(5)*((Ix-Iy)/Iz)+(1/Iz)*U3;

End

Nous remarquons bien qu’elle est directement reliée à la partie I.1. Par ailleurs, nous avons décidé de noter les différentes valeurs des paramètres dans un script pour ensuite pouvoir représenter les différents mouvements (roulis, tangage, lacet), avec les vitesses associées, du mini drone, sous Matlab plutôt que dans le scope de Simulink. Nous avons donc écrit ce script :

clearall;clc;

%Données caractéristiques du projet.

b=3.13e-05; % Coefficient de poussée.

d=7.5e-07; % Coefficient de trainée.

Ix=7.5e-03;

...

Télécharger au format  txt (13.9 Kb)   pdf (260.4 Kb)   docx (15.3 Kb)  
Voir 7 pages de plus »
Uniquement disponible sur LaDissertation.com