Initiation à Matlab automatique

Quelques matrices utiles

– matrice identite´ de dimension n : eye(n)
– matrice de zeros´ de dimension m × n : zeros(m,n)
– matrice de uns de dimension m × n : ones(m,n)
De tres` nombreux algorithmes de calcul sont par ailleurs disponibles pour resoudre´ la plupart des problemes` courants (ou non . . . ) en mathematiques´. Parmi ceux-ci, on peut citer les fonctions sur les polynomesˆ (qui sont definis´ comme des vecteurs lignes compos es´ des coefficients du polyn omeˆ entres´ par ordre decroissant´ du degre)´. Par exemple, si on cherche les racines (complexes) de x2 − x + 1 = 0 :

>roots([1 -1 1])
>>ans=
0.5000 + 0.8660i
0.5000 – 0.8660i

Aide en ligne

La bonne utilisation de l’aide en ligne est fondamentale pour travailler correctement avec Matlab.
Si l’on souhaite obtenir de l’aide sur certaines fonctions dont on connaˆıt le nom, on utilise la fonction help. Par exemple :

> help conv
CONV Convolution and polynomial multiplication.
C = CONV(A, B) convolves vectors A and B. The resulting vector is length LENGTH(A)+LENGTH(B)-1.

If A and B are vectors of polynomial coefficients, convolving them is equivalent to multiplying the two polynomials.
See also XCORR, DECONV, CONV2, FILTER, and CONVMTX in the Signal Processing Toolbox.
Si l’on cherche les noms des fonctions se rapportant à un sujet precis,´ on utilise la fonction lookfor (puis le mot en anglais). Par exemple :

>lookfor polynom
>>POLYEIG Polynomial eigenvalue problem.
>>CONV Convolution and polynomial multiplication.
>>DECONV Deconvolution and polynomial division.
… … … …

Utilisation de la Control Toolbox

Genéralités

La boˆıte à outils dediée´ à la commande (Control Toolbox) permet de disposer de nom-breux outils d’analyse pour l’automatique.
Definition´ du syst eme` par sa fonction de transfert Soit le systeme` decrit´ par :
G(s) = 2s + 1 = 2 s + 1/2 ,
s2 + 2s + 1 (s + 1)2
ou` s designe´ la variable de Laplace. A l’aide de Matlab, on peut definir´ alternativement :

>F=tf([2 1],[1 2 1]) (numerateur´ et denominateur´ de la fonction de transfert) ou
>>F=zpk([-1/2],[-1 -1],2) (zeros,´ polesˆ et facteur de gain de la fonction de trans-fert)

Pour constituer un systeme` à l’aide de differents´ sous-systemes` on peut effectuer differentes´ operations´. Soit G1 et G2 les representations´ des deux systemes`. Les combinaisons de base sont :

>G1*G2 ou >>series(G1,G2) G1 en serie´ avec G2
>>G1+G2 ou >>parallel(G1,G2) G1 en parallele` avec G2
>>feedback(G1,G2) G1 boucle´ par G2

On peut obtenir diverses informations sur le systeme` defini´ par sa repr esentation´ G :

>pole(G) donne les polesˆ du systeme`
>>step(G) trace la reponse´ indicielle
>>impulse(G) trace la reponse´ impulsionnelle
>>bode(G) trace le diagramme de Bode
>>nyquist(G) trace le diagramme de Nyquist
>>nichols(G) trace le diagramme de Black-Nichols
>>rlocus(G) trace le lieu d’Evans
>>rlocfind(G) donne les valeurs des polesˆ et du gain correspondant sur le lieu d’Evans
>>damp(G) donne les poles,ˆ ainsi que la pulsation propre et l’amortissement associes´ à chaque poleˆ
>>pzmap(G) place les polesˆ et les zeros´ dans le plan complexe

Prise en main de Matlab et de la Control Toolbox

On rappelle ici la modelisation´ du moteur à courant continu (MCC) dont l’etude´ va per-mettre d’illustrer les concepts fondamentaux de la Control Toolbox de Matlab. La fonction de transfert reliant la vitesse de rotation du rotor à la tension appliquee´ à l’induit s’ecrit´ :
G(s) = Ω(s) = K ,
U(s) (1 + τels)(1 + τems)
avec :
K = Kem gain statique du systeme,`
Rf + Kem2
τem = RJ constante de temps electromécanique,´
Rf + Kem2
et τel = L constante de temps electrique´. R
On rappelle que dans ce modele` R represente´ la resistance´ de l’induit du moteur, L son induc-tance ; f est le coefficient de frottement visqueux et J le moment d’inertie du rotor ; K est le rapport couple-courant (suppose´ egal´ au rapport force electromotrice´-vitesse de rotation).
Pour la mise au point d’un programme ou des calculs tres` ponctuels, vous pouvez taper vos instructions sur la ligne de commande. Neanmoins´ :
A RETENIR – Des` que l’on a une sequence´ d’instructions a executer,´ on a tout interétˆ à les regrouper sous forme d’un fichier script (fichier *.m).
Si un fichier a l’extension .m (par exemple nomFichier.m), alors il sera executé´ en tapant son nom

>nomFichier) sur la ligne de commande.

1. Eteindre sa calculatrice et l’enfouir dans son sac pour le reste du TP (et des autres TPs d’ailleurs). En cas de non respect de cette consigne s’attendre à de graves represailles´. . .
2. Creer´ un script qui comporte les differentes´ operations´ detaillées´ ci-dessous Pour cela on peut utiliser l’editeur´ de Matlab (>>edit). Des commentaires peuvent etreˆ introduits à l’aide du symbole %.
3. Definir´ tout d’abord les diverses constantes du probl eme` (dans un script nomme´ cal-cul constantes mmc.m par exemple). Les valeurs numeriques´ choisies correspondent à un MCC un Maxon F 2260, numero´ 885 etudié´ en cours :
R = 1,44 Ω
L = 5,6 10−4 H
J = 1, 29 10−4 kg.m2 f = 7, 2 10−5 m.N.s
Kem = 0, 10 m.N.A−1
4. Calculer le gain K et les constantes de temps electrique´ τel et electromécanique´ τem du MCC. Definir´ alors sa fonction de transfert. Pour cela, on note Num et Den le numerateur´ et le denominateur´ de la fonction de transfert.
5. Par la fonction appropriee,´ calculer les polesˆ de cette fonction de transfert. Verifier´ que ces poles valent −τel−1 et −τem−1.

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

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