Example: bankruptcy

Introduction à MATLAB et Simulink

Introduction MATLAB et SimulinkHoang Le-HuyProfesseurD partement de g nie lectrique et de g nie informatiqueUniversit LavalQu bec, CANADAS eptembre 1998 Introduction MATLAB et SimulinkHoang Le-Huy2 Table des mati res1 Introduction 3 Introduction MATLAB 3 Une session de travail MATLAB 52 Op rations math matiques 8 Nombres et op rations arithm tiques 8 Vecteurs et matrices 9 Variables et fonctions 113 Graphiques 13 Graphiques 2D 13 Graphiques 3D 174 Programmation avec MATLAB 195 Introduction Simulink 22 Simulation avec Simulink 26 Introduction MATLAB et SimulinkHoang Le-Huy31 IntroductionCe document est un guide simplifi de MATLAB et Simulink . Les notions de base sont pr sen-t es de fa on simple pour permettre aux lecteurs de d marrer rapidement. Les exemplesseront illustr s utilisant MATLAB Version et Simulink Version Plus de d tails surMATLAB et Simulink se trouvent dans les manuels de Mathworks Inc.

Neural Network Toolbox, Spline Toolbox, Chemometrics Toolbox, Fuzzy Logic Toolbox, etc.) Simulink: C'est l'extension graphique de MATLAB permettant de travailler avec des diagram-mes en blocs. Blocksets: Ce sont des collections de blocs …

Tags:

  Logic, Simulink, Toolbox, Fuzzy, Fuzzy logic toolbox

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Advertisement

Transcription of Introduction à MATLAB et Simulink

1 Introduction MATLAB et SimulinkHoang Le-HuyProfesseurD partement de g nie lectrique et de g nie informatiqueUniversit LavalQu bec, CANADAS eptembre 1998 Introduction MATLAB et SimulinkHoang Le-Huy2 Table des mati res1 Introduction 3 Introduction MATLAB 3 Une session de travail MATLAB 52 Op rations math matiques 8 Nombres et op rations arithm tiques 8 Vecteurs et matrices 9 Variables et fonctions 113 Graphiques 13 Graphiques 2D 13 Graphiques 3D 174 Programmation avec MATLAB 195 Introduction Simulink 22 Simulation avec Simulink 26 Introduction MATLAB et SimulinkHoang Le-Huy31 IntroductionCe document est un guide simplifi de MATLAB et Simulink . Les notions de base sont pr sen-t es de fa on simple pour permettre aux lecteurs de d marrer rapidement. Les exemplesseront illustr s utilisant MATLAB Version et Simulink Version Plus de d tails surMATLAB et Simulink se trouvent dans les manuels de Mathworks Inc.

2 : Using MATLAB , UsingMATLAB Graphics, et Using peut se procurer la COOP une version tudiant de MATLAB et Simulink (environ$ chaque) pour Windows ou Macintosh (avec document complet). Cette version com-porte des limitations concernant les dimensions de matrices (dans MATLAB ) et le nombre deblocs (dans Simulink ). Cependant, elle est largement suffisante pour les probl mes les pluscomplexes rencontr s durant les tudes de g vos commentaires sur ce document Introduction MATLAB et Simulink MATLABMATLAB est un logiciel de calcul matriciel syntaxe simple. Avec ses fonctions sp cialis es, MATLAB peut tre aussi consid r comme un langage de programmation adapt pour les pro-bl mes est un interpr teur: les instructions sont interpr t es et ex cut es ligne par fonctionne dans plusieurs environnements tels que X-Windows, Windows, existe deux modes de fonctionnement:1.

3 Mode interactif: MATLAB ex cute les instructions au fur et mesure qu'elles sontdonn es par l' mode ex cutif: MATLAB ex cute ligne par ligne un "fichier M" (programme en lan-gage MATLAB ). Introduction MATLAB et SimulinkHoang Le-Huy4 Fen tre Commande: Dans cette fen tre, l'usager donne les instructions et MATLAB retourneles r tres Graphique: MATLAB trace les graphiques dans ces fen M: Ce sont des programmes en langage MATLAB ( crits par l'usager).Toolboxes: Ce sont des collections de fichiers M d velopp s pour des domaines d'applicationsp cifiques (Signal Processing toolbox , System Identification toolbox , Control System Tool-box, u-Synthesis and Analysis toolbox , Robust Control toolbox , Optimization toolbox ,Neural Network toolbox , Spline toolbox , Chemometrics toolbox , fuzzy logic toolbox , etc.) Simulink : C'est l'extension graphique de MATLAB permettant de travailler avec des diagram-mes en : Ce sont des collections de blocs Simulink d velopp s pour des domaines d'applica-tion sp cifiques (DSP Blockset, Power System Blockset, etc.)

4 Figure 1 Environnement MATLABI ntroduction MATLAB et SimulinkHoang Le-Huy5 Une session de travail MATLABD MARRER MATLABDans une fen tre cmdtool, taper MATLAB . MATLAB r pondra par un symbole >>. Dans cettefen tre Commande, on tape les instructions une ligne la fois:Chaque ligne est ex cut e imm diatement apr s la touche "Return".Une ligne peut contenir plusieurs instructions s par es par des virgules (,).Des boucles FOR, WHILE, IF .. ELSE peuvent tre sur plusieurs les fonctions graphiques sont appel es, la fen tre Graphique s'ouvrira: Introduction MATLAB et SimulinkHoang Le-Huy6 FONCTION "HELP"Pour obtenir de l'aide sur un sujet, une instruction ou une fonction, on tape help suivi par lesujet, l'instruction ou la fonction d sir 1: help atan2 ATAN2 Four quadrant inverse tangent. ATAN2(Y,X) is the four quadrant arctangent of the real parts of the elements of X and Y.

5 -pi <= ATAN2(Y,X) <= pi. See also DE TRAVAIL (Workspace)Les variables sont d finies au fur et mesure que l'on donne leurs noms et leurs valeurs num -riques ou leurs expressions math variables ainsi d finies sont stock es dans l'espace de travail et peuvent tre utilis es dansles calculs subs MATLAB et SimulinkHoang Le-Huy7 INFORMATION SUR L'ESPACE DE TRAVAILPour obtenir une liste des variables dans l'espace de travail, on utilise les instructionssuivantes:whoAffichage des variables dans l'espace de d taill des variables dans l'espace de LES VARIABLES DE L ESPACE DE TRAVAIL DANS UN FICHIERPour enregistrer les variables de l'espace de travail dans un fichier, on utilise les instructionssuivantes:saveEnregistrer toutes les variables dans un fichier Dans une session ult -rieure, taper load pour ramener l'espace de travail enregistr x y z A XEnregistrer les variables x, y, z, A, X dans le fichier une session ult rieure, taper load fichier1 pour ramenerles variables x, y, z, A, X dans l'espace de whoInstruction whosIntroduction MATLAB et SimulinkHoang Le-Huy82Op rations math matiquesNombres et op rations arithm tiquesNOMBRESLes nombres r els peuvent tre crits sous diff rents nombres complexes peuvent tre crits sous forme cart sienne ou polaire:Forme cart + i* + j* + *exp(j* )FORMATS D'AFFICHAGEPour choisir le format d'affichage pour les nombres, on utilise l'instruction format.

6 Format short +002format long +002format hexABCDEF0123456789OP RATIONS ARITHM TIQUES+Addition-Soustraction*Multiplicat ion/Division droite\Division gauche^PuissanceIntroduction MATLAB et SimulinkHoang Le-Huy9 Vecteurs et matricesVECTEURSOn peut d finir un vecteur x en donnant la liste de ses l ments:>> x=[ ]x = en donnant la suite qui forme le vecteur:>> x=2 :5x = en utilisant une fonction qui g n re un vecteur:>> x=linspace(1,10,6)x = :>> y=logspace(1,3,7)y = +003 * : Lors qu'on ajoute un ; la fin d'une instruction, elle est ex cut e mais le r sultat n'est pasaffich :>> a=[1 2 3 4 5];>> b= ;>> c=b*a;>> Lors qu'il n'y a pas de ; la fin d'une instruction, elle est ex cut e et le r sultat est affich :>> a=[1 2 3 4 5]a = 1 2 3 4 5>> b= = >> c=b*ac = >> Introduction MATLAB et SimulinkHoang Le-Huy10 MATRICES On d finit une matrice A en donnant ses l ments:>> A=[ ; ; ]A = unitaire:>> B=eye(4)B = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 EMPLOI DES INDICESLes l ments d'un vecteur ou d'une matrice peuvent tre adress s en utilisant les indices sousla forme suivante:t(10) l ment no.

7 10 du vecteur tA(2,9) l ment se trouvant ligne 2, colonne 9 de la matrice AB(:,7)la colonne 7 de la matrice BC(3,:)la ligne 3 de la matrice BOP RATIONS MATRICIELLESLes op rations matricielles ex cut es par MATLAB sont illustr es dans le tableau suivant:B = A'La matrice B est gale la matrice A transpos eE = inv(A)La matrice E est gale la matrice A invers eC = A + BAdditionD = A - BSoustractionZ = X*YMultiplicationX = A\B quivalent inv(A)*BX = B/A quivalent B*inv(A) Introduction MATLAB et SimulinkHoang Le-Huy11OP RATION L MENT PAR L MENT Les op rations l ment par l ment des vecteurs et des matrices sont effectu es en ajoutantun point (.) avant les op rations * / \ ^ ' Exemple 2:>> A=[1 2 3 4 5];>> B=[6 7 8 9 10];>> C=A.*BC = 6 14 24 36 50>> D= = et fonctionsVARIABLESOn d finit une variable en donnant son nom et sa valeur num rique ou son expression math -matique :a = ;x = 0 :10;y = a*x;z = y.

8 ^2;EXPRESSIONS MATH MATIQUESOn crit les expressions math matiques de la fa on habituelle:z = 5*exp( *x).*sin( *y);FONCTIONS MATH MATIQUESLes fonctions math matiques de base sont donn es dans le tableau suivant:absvaleur absoluemodule (nb. complexe)angleargument (nb. com-plexe)sqrtracine carr erealpartie r elleimagpartie imaginaireconjconjugu e (nb. complexe)roundarrondirfixarrondir (vers z ro)floorarrondir (vers - )ceilarrondir (vers )signsigneremresteexpexponentielleloglog arithme base elog10logarithme base 10 Introduction MATLAB et SimulinkHoang Le-Huy12 Les fonctions trigonom triques sont donn es dans le tableau suivant:Exemple 3:>> x=-2+5ix = + >> a=real(x)a = -2>> b=imag(x)b = 5>> X=abs(x)X = >> alfa=angle(x)alfa = 4:>> w=50;>> t= ;>> y=25*exp(-4*t)*cos(w*t)y = ATION DE FONCTIONSL'usager peut cr er des fonctions particuli res pour ses applications.

9 Voir Programmationavec MATLAB .sincostanasinacosatanatan2sinhcoshtanha sinhacoshatanhIntroduction MATLAB et SimulinkHoang Le-Huy133 GraphiquesGraphiques 2 DTRA AGE DE COURBESOn utilise l'instruction plot pour tracer un graphique 2D:plot(x,y)Tracer le vecteur y en fonction du vecteur xplot(t,x,t,y,t,z)Tracer x(t), y(t) et z(t) sur le m me graphiqueplot(t,z,'r--')Tracer z(t) en trait pointill rougeFORMAT DE GRAPHIQUE On peut choisir le format du graphique:plot(x,y)Tracer y(x) avec chelles lin airessemilogx(f,A)Tracer A(f) avec chelle log(f)semilogy(w,B)Tracer B(w) avec chelle log(B)polar(theta,r)Tracer r(theta) en coordonn es polairesbar(x,y)Tracer y(x) sous forme des barresgridAjouter une grilleExemple 5:>> t=0 ;>> y=10*exp(-60*t).*cos(120*pi*t);>> z=10*exp(-60*t).*sin(120*pi*t);>> plot(t,y,'r',t,z,'g'),grid>> a=10*exp(-60*t);>> holdCurrent plot held>> plot(t,a,'b--') Introduction MATLAB et SimulinkHoang Le-Huy14>> plot(t,-a,'b--')>> title('Fonctions sinusoidales amorties')>> xlabel('Temps , s'),ylabel('Tension , V')>> hold off>> plot(y,z),grid>> axis equal>> xlabel('y'),ylabel('z') Introduction MATLAB et SimulinkHoang Le-Huy15 GRAPHIQUE MULTIPLEOn peut tracer plusieurs graphiques dans la m me fen tre en utilisant l instruction subplotpour diviser la fen tre en plusieurs Diviser la fen tre en deux parties (2 x 1)Exemple 6:>> w=logspace(0,3,1000);>> s=j*w;>> H= (s.)

10 *s+3*s+225);>> AdB=20*log10(abs(H));>> phase=angle(H)*(180/pi);>> subplot(2,1,1),semilogx(w,AdB),grid>> xlabel('w , rad/s'),ylabel('Amplitude , dB')>> subplot(2,1,2),semilogx(w,phase),grid >> xlabel('w , rad/s'),ylabel('Phase , degre')subplot(2,1,1)subplot(2,1,2)Intro duction MATLAB et SimulinkHoang Le-Huy16- Diviser la fen tre en deux parties (1 x 2)- Diviser la fen tre en quatre parties (2 x 2)- Diviser la fen tre en quatre parties (4 x 1)AJOUT DU TEXTE AU GRAPHIQUE title('Titre du graphique')Donner un titre au graphiquexlabel('Temps') tiquette de l'axe xylabel('Tension') tiquette de l'axe ygtext('Valeur absolue')Ajouter du texte au graphique avec la sourissubplot(1,2,1)subplot(1,2,2)subplo t(2,2,1)subplot(2,2,2)subplot(2,2,4)subp lot(2,2,3)subplot(4,1,1)subplot(4,1,2)su bplot(4,1,4)subplot(4,1,3) Introduction MATLAB et SimulinkHoang Le-Huy17 MANIPULATION DE GRAPHIQUES axis([-1 5 -10 10])Choix des chelles x = (-1,5)