Vous êtes sur la page 1sur 28

LST-GE

Travaux Pratiques
Demi-Module :

SYSTEMES ASSERVIS

T.P. 1 : Initiation MATLAB.........2


T.P. 2 : Initiation SIMULINK........26
T.P. 3

: ANALYSE TEMPORELLE & FREQUENTIELLE DUN SYSTEME DE


PREMIER ORDRE ....28

T.P. 4 :

ANALYSE TEMPORELLE & FREQUENTIELLE DUN SYSTEME DE


DEUXIEME ORDRE .....29

Responsable ; Naji Abdenouri


Anne Universitaire 2010-2011

T.P. N1
INITIATION MATLAB
I. INTRODUCTION
Ce document constitue un support dinitiation au logiciel MATLAB. Il permet ltudiant de
se familiariser tout dabord avec les outils de base dont dispose MATLAB, puis de prendre
connaissance des possibilits offertes dans le domaine de lautomatique des systmes linaires
continus facilitant ainsi leur comprhension et leur exploitation.
MATLAB (MATrix LABoratory) est un logiciel de calcul matriciel mis au point par
luniversit dAlbuquerque (Nouveau-Mexique, Etats-Unis) et dvelopp par la socit MathWorks.
MATLAB est crit en langage C et conu la base pour tre un environnement informatique de calcul
scientifique et de visualisation de donnes. Il peut tre considr comme un langage de programmation
au mme titre que le langage C, Pascal ou Basic. Cest un langage interprt, cest--dire quil nest
pas ncessaire de compiler un programme. Les instructions, crites dans la fentre de commande, sont
excutes immdiatement aprs avoir t tapes (aprs la frappe de return).
Dans le cadre universitaire, MATLAB constitue un outil standard pour les cours dalgbre
linaire ainsi que pour des cours plus avancs dans dautres domaines. Dans lindustrie, il est utilis
pour la recherche ainsi pour la rsolution des problmes pratiques de lingnieur et des problmes
mathmatiques.
MATLAB en tant que logiciel de conception des systmes de traitement du signal est largement
rpandu, aujourdhui, autant dans les universits que dans les centres de recherche et dveloppement,
ainsi que dans lindustrie.
MATLAB est un outil puissant qui permet la rsolution de nombreux problmes en beaucoup
moins de temps quil ne faudrait pour les formuler en C ou en Pascal.
MATLAB est un langage parfaitement adapt au traitement du signal. Cest aussi un excellent
outil de traitement numrique qui prsente de nombreux avantages pour ltude et mme la conception
des systmes de traitement numriques des signaux. Parmi ces avantages on peut citer :

La syntaxe MATLAB est trs proche du formalisme de lalgbre linaire, ce qui permet de
transcrire rapidement en code des oprations comme le produit scalaire de deux vecteurs
(corrlation) ou encore le produit dune matrice et dun vecteur (transforme).

Toutes les variables sont par dfinition des matrices de complexes, ce qui signifie quon na pas
dclarer une variable avant de lutiliser (exemple la ligne a = 1 cre la variable a puis lui
affecte la valeur 1).

MATLAB comprends de nombreuses librairies, notamment pour le traitement numrique des


signaux, ce qui permet de raliser rapidement des oprations comme le filtrage numrique et les
transformes discrtes et mme de concevoir des filtres numriques (Butterworth,
Chebyshev,).

MATLAB comprend galement une bonne librairie graphique, ce qui permet dobserver
facilement les caractristiques des signaux, leur analyse spectrale et le comportement des
systmes numriques (rponse impulsionnelle, rponse en frquence, fonction de transfert,).

MATLAB compte plus de 500 fonctions prdfinis et prs de 10 000 fonctions ! dans ses
Toolbox. Leurs natures tant trs diversifies. Mme les utilisateurs les plus chevronns ne
prtendent pas connatre parfaitement la totalit des fonctions de MATLAB.
2

II. ENVIRONNEMENT DE TRAVAIL, SCRIPTS ET FONCTIONS


1 Rpertoire de travail :

Il est souhaitable de travailler dans votre rpertoire et non dans le rpertoire de MATLAB. De
mme vous pouvez organiser vos fichiers dans des sous rpertoires.

Pour que vos fonctions et scripts soient accessibles partir de la ligne de commande MATLAB
il faut, au dbut de chaque session MATLAB, dclarer vos rpertoires de travail. Ceci est
ralis laide de la commande path. Cette commande permet de dclarer le chemin suivre
par MATLAB pour excuter vos fichiers.

Il faut aussi se placer dans votre rpertoire de travail. Pour cela il est possible de se dplacer
dans larborescence du disque de travail laide des commandes cd et dir (mme syntaxe que
MS-DOS).

Par dfaut, les scripts et fonctions sont enregistrs dans le rpertoire work sous MATLAB.

2 Sauvegarde et chargement de variables

Lorsque le nombre de variables dclars dans une cession MATLAB est lev, il se peut quil
soit utile de les sauvegarder dans un fichier dextension .mat pour une rutilisation ultrieure.
Ceci est rendu possible laide de la commande save dont la syntaxe est :
save nom du fichier noms des variables

Exemple :
save toto.mat A, B, C

Si le nom des variables est omis, tout lespace de travail est sauv.

Si lextension du fichier est omise elle sera automatiquement .mat

Si de plus, le nom du fichier est omis, la sauvegarde se fera dans le fichier matlab.mat.

Pour recharger les variables sauves dans un fichier .mat, il suffit de taper : load nom
du fichier.

Si le nom du fichier est omis, MATLAB chargera le fichier matlab.mat

Pour effacer plusieurs variables dans lespace de travail on utilise la commande clear.

Exemple :
clear x  supprime la variable x
3 Scripts

Il est parfois (souvent) souhaitable, pour ne pas avoir taper plusieurs fois une mme squence
dinstructions, de la stocker dans un fichier. Ainsi on pourra rutiliser cette squence dans une
autre session de travail. Un tel fichier est dnomm script ou fichier de commande.

Sous windows, Pour crer un nouveau fichier de commande, choisir New M-file dans
le menu File. Une fentre Untitled apparat alors, dans laquelle la suite de commande dsires
peut tre dite comme dans un traitement de texte et de sauver le fichier avec une extension .m

Pour ouvrir un fichier script, toto.m par exemple, dans la fentre de commande MATLAB il
suffit de taper open toto.m

Pour enregistrer le fichier, choisir Save as dans le menu File, introduire le nom dsir, par
exemple toto, slectionner le dossier de destination, puis enregistrer. Le nom du fichier doit
comporter l'extension .m

Par dfaut, les fichiers .m sont stocks dans le dossier work.


3

En tapant le nom du fichier sous MATLAB, la suite dinstructions sexcute.

Si la fentre du script est active, par exemple lors de ldition du fichier, il suffit de choisir la
commande save dans le menu File pour enregistrer les modifications.

Les variables dfinies dans lespace de travail sont accessibles pour le script. De mme les
variables dfinies dans le script sont accessibles dans lespace de travail. Les fichiers de
commandes partagent les variables dfinis dans la fentre de commande. Il sagit donc de
variables globales.

Dans le fichier script, il est possible, et mme recommand, dintroduire des commentaires.
Ceci est ralis laide du caractre %. Toute commande situe aprs % nest pas prise en
compte par MATLAB jusqu la ligne suivante.

MATLAB ne voit pas les espaces blancs entre les diffrents caractres des instructions de
commandes. Par consquent on peut arer suffisamment le fichier pour quil soit facilement
lisible.

4 Fonctions

MATLAB dispose de bibliothques supplmentaires de fonctions appeles toolboxes, ou bote


outils, qui contiennent des fonctions spcialises permettant dutiliser lenvironnement
MATLAB pour rsoudre des problmes bien spcifiques.

MATLAB compte plus de 500 fonctions prdfinies, mais il se peut quon ait besoin dune
fonction ne figurant pas dans son catalogue. Alors il est possible de crer de telles fonctions
dans un fichier spar et les appeler de la mme faon que les fonctions prexistantes.

Si la premire ligne est une ligne de commentaire alors elle sera affiche chaque fois que le
help de cette fonction est sollicit.

La premire ligne (hormis la ligne de commentaires) dune fonction doit imprativement avoir
la syntaxe suivante :
function [S1, S2,] = nom fonction (E1, E2,).

nom fonction est une chane de caractre qui correspond au nom de la fonction. Ce nom doit
tre diffrent de celui des autres fonctions dj disponibles. Le fichier de commandes doit
porter le mme nom que la fonction. E1, E2, sont les variables transmises la fonction
lorsquelle est invoque. S1, S2, sont les variables retournes par la fonction aprs son
excution. Ces dernires variables dfinies lintrieur de la fonction sont locales.

Par dfaut, les fichiers .m contenant les fonctions sont stocks dans le dossier work.

Exemple :
% la fonction calcul la somme et le produit de deux nombres.
function [a, b] = somprod (x,y)
% Cette fonction retourne la somme et le produit de deux nombres.
a=x+y;
b=x*y;
>> [u, v] = somprod (3,4)
>> u =
7
v=
12
4

Le nom de la fonction doit imprativement tre le mme que le nom du fichier dans lequel elle
est stocke, sinon MATLAB ne prendra pas en compte ce nom mais uniquement celui du
fichier.

Les variables de lespace de travail ne sont pas accessibles la fonction sauf si elles sont
entres comme variable dentre. De mme les variables dfinies dans une fonction ne sont pas
accessibles dans lespace de travail.

Il est vivement recommand, avant dcrire une fonction, de consulter la documentation ou le


help afin de savoir sil nexiste pas dj une fonction similaire et peut tre mieux crite.

Avant dutiliser une fonction MATLAB pour la premire fois il est souhaitable de consulter la
documentation ou le help pour vrifier quelle ralise bien ce que vous dsirez.

5 Help

MATLAB est pourvu dune fonction daide trs utile : help. Ainsi si vous tapez help sur la
ligne de commande apparaissent tous les rpertoires accessibles depuis MATLAB ainsi quune
explication (en anglais) concernant ces rpertoires.

Si vous tapez help suivi du nom du rpertoire, MATLAB affiche une explication brve sur
toutes les fonctions et scripts de ce rpertoire.

Enfin si vous tapez help suivi du fichier script ou fonction apparat une explication dtaille sur
lutilisation de la fonction ou du script.
III. OUTILS DE BASE

1 - Commandes gnrales :
who

Affiche les variables actuellement prsentes en mmoire.

whos

Affiche les variables actuellement prsentes en mmoire ainsi


quune srie dinformations comme leur nature, leur taille en nombre de
lignes et de colonnes pour les matrices, leur taille en bytes, etc...

exist (Nom variable) :

Affiche la valeur 1 si la variable Nom Variable existe, et la valeur 0 si la


variable nexiste pas.

clear Nom variable :

Efface de la mmoire la variable Nom Variable.

clear

Efface toutes les variables en mmoire.

help Nom Fonction :

Affiche la description et la syntaxe de la fonction Nom Fonction

save Nom Fichier

Enregistre dans le fichier Nom Fichier lensemble des variables

dfinies et actuellement prsentes en mmoire.


Load Nom Fichier

X = input (message) :

Charge les variables stockes dans le fichier Nom Fichier.


Cette commande permet de saisir une donne, elle produit
lapparition lcran du message et attend lintroduction des lments
de X. Essayer avec ou sans point virgule.

fprintf (bonjour)

Produit lapparition lcran du message : bonjour.

pause

provoque un arrte momentan sur lcran.Presser surimporte


quelle touche pour reprendre la main sur le clavier.

2 - Caractres spciaux
;

Utilis la suite dune commande, ce caractre supprime lcho


lcran de cette commande et de son rsultat.
5

...

Ajout au cours dune commande, ce caractre permet la


continuation de la commande la ligne suivante.

3 - Valeur particulires
ans

Variable cre automatiquement quand le rsultat dune


expression nest pas affect une variable.

pi

Constante correspondant au nombre .

i, j

Constantes correspondant

1 .

4 - Dfinitions de scalaires
z = 1 +2*i

Dfinit le nombre z = 1 + 2i.

a=2

Dfinit la variable a = 2.

En actionnant la touche RETURN, on visualise la valeur de a.

5 - Dfinition de vecteurs
x = [-1 0 2] ou x = [-1, 0, 2] : Dfinit le vecteur ligne : x = [-1 0 2].
x = [-1; 0; 2]

1
Dfinit le vecteur colonne : x = 0
2

x = [-1.3 sqrt(3) 6*4/5] :

Dfinit le vecteur : x = [-1.3 1 .7321 4.8]

x (5) = x(1)

Etend la dimension de x jusqu' 5 et assigne la valeur prescrite

la dernire composante. Llment x (4) ntant pas dfini, il vaut 0 par


dfaut : x = [-1.3 1.7321 4.8 0 -1.3].
y = [y0 : D : yMax]

Dfinit un vecteur ligne dont la premire composante est y0 et la


dernire yMax. Les valeurs intermdiaires sont obtenues par adjonction
successive de lincrment D.

y = [y0 : yMax]

Si lincrment D est omis, il vaut par dfaut 1.


Donc y = [y0, y0+1, ..., yMax-1, yMax].

y = [1 : 5]

Dfinit le vecteur : y = [1 2 3 4 5].

y = linspace ( y0, yMax, n):

Dfinit un vecteur ligne dont les n composantes sont linairement


espaces entre les valeurs y0 et yMax.

y = linspace (-pi, pi, 4) :

Dfinit le vecteur y = [-3.1416 -1.0472 1.0472 3.1416]

w = logspace (d1, d2, n) :

Dfinit un vecteur ligne dont les n composantes sont


logarithmiquement espaces entre les valeur 10dl et 10 d2. Cest une
fonction adapte la cration de vecteurs de pulsations utilises pour
visualiser des rponses frquentielles.

w = logspace(-2, 1, 50) :

Gnre 50 points compris entre 0.01 et 10.

6 - Dfinitions de matrices
A = [1 2 3 ; 4 5 6; 7 8 9]

1 2 3
Dfinit la matrice : A = 4 5 6
7 8 9

r = [10, 11, 12]


6

A = [A; r]

Modifie A par adjonction de r comme nouvelle ligne


1
4
A=
7

10

ones (n, m)

2 3
5 6
8 9

11 12

Dfinit une matrice de dimension n x m avec tous les lments


gaux 1

O = ones (2, 3)

1 1 1
Dfinit la matrice : O =

1 1 1

zeros (n, m)

Dfinit une matrice de dimension n x m avec tous les lments


gaux 0

size (A)

Dfinit un vecteur dont la premire composante est le nombre de


lignes de A et la seconde son nombre de colonnes.

eye (n, m)

Dfinit une matrice identit de dimension n x m.

E = eye (size (A))

Dfinit une matrice E de mme dimension que A, qui contient


des 1 sur la diagonale principale et des 0 partout ailleurs.
1
0
E=
0

diag(v)

0 0
1 0
0 1

0 0

Si v est un vecteur n composantes, alors diag(v) est une


matrice carre de dimension n qui porte sur la diagonale principale les
lments du vecteur v.

D = diag ([1 2 3])

1 0 0
Dfinit la matrice diagonale : D = 0 2 0
0 0 3

V = []

Dfinit une matrice V de dimension 0 x 0.

7 - Manipulations de matrices ou de vecteurs


A (:, J)

Reprsente la j-ime colonne de A.

A (i, :)

Reprsente la i-ime ligne de A.

A (:, k : m)

Reprsente [A(:, k), A(:, k+1), , A(:, m)]

A (:, 2)= []

1
4
Efface la 2me colonne de la matrice A. On obtient : A =
7

10

A (i, j)

En actionnant la touche RETURN on visualise la valeur de


llment (i, j) de la matrice A.

3
6
9

12

Exemple :
Soit A = [1 2 3; 4 5 6; 7 8 9; 10 11 12];
A = A (1 : 3, :)

1 2 3
Produit la matrice A = 4 5 6
7 8 9

A = A (3, 2)

Visualise la valeur 8

8 - Oprations matricielle ou vectorielles


Soient x = [-1 0 2] , A = [ 1 2 3; 4 5 6; 7 8 0] et Z = [1+5*i, 2+6*i; 3 + 7* i, 4+8*i];

Complexe conjugu transpos


:

1 4 7
Correspond B = A = 2 5 8
3 6 0

x = x

1
Produit le vecteur x = 0
2

W = Z

1 5i 3 7i
Produit la matrice W =

2 6i 4 8i

B = A

Transpos

W = Z.

1 + 5i 3 + 7i
Produit la matrice W =

2 + 6i 4 + 8i

Addition et soustraction

Les oprations sont dfinies uniquement si les variables ont la mme dimension ou si une des
variables est un scalaire .
C = A+B

y = x 1

2 6 10
Produit la matrice C = 6 10 14
10 14 0

2
Produit le vecteur y = 1
1

Multiplication et division
Les dimensions des variables doivent tre compatibles.

x*y
x*y

Produit le scalaire ans = 4

2 1 1
0 0
Produit la matrice ans = 0
4 2 2

5
Produit le vecteur b = 8
7

pi*x

3.1416

Produit le vecteur ans = 0

6.2832

C = A.*B

Correspond la multiplication, lment par lment, des matrice A et

b = A*x

B, cij = aij bij.

1 8 21
C = 8 25 48
21 48 0
B/A

Correspond formellement BA-1, si A est une matrice carre inversible.

z = x. /y

Correspond la division, lment par lment, des vecteur x et y.


Donne le vecteur :

0.5
z = 0
2

Puissance

A^n

correspond An. Cette opration est dfinie si A est une matrice carre
et si n est un scalaire.

Z = y.^x

Correspond une lvation en puissance lment par lment. Donne le


vecteur :

0.5
z = 1
1

z = x.^2

1
Donne le vecteur z = 0
4

9 - Fonctions

Fonctions matricielles lmentaires

Ces fonctions sont dfinies uniquement pour des matrices carres. Soit A une matrice de
dimension n x n ;
det(A)
inv(A)
expm(A)
logm(A)

:
:
:
:

Dterminant de la matrice A.
Inverse de la matrice A.
Exponentielle de la matrice A.
Logarithme naturel de la matrice A.
9

-1

sqrtm(A)

Racine carre de la matrice A. Donne A = P BP. Avec P matrice de


1/2

poly(A)

eig(A)
:
[V, D] = eig(A)

-1 1/2

1/2

passage et B matrice diagonale. A = P B P. B sera calcul lment par


lment.
Vecteur ligne de dimension n+1 dont les lments sont les coefficients
du polynme caractristique det(sI-A) ordonns en puissances dcroissantes. .
Vecteur colonne contenant les valeurs propres de la matrice A.
Calcule les vecteurs propres et les valeurs propres de la matrice A et les
retourne respectivement dans les matrices V et D. Chaque colonne de la matrice
V correspond un vecteur propre associ la valeur propre se trouvant dans la
colonne correspondante de la matrice D. Ceci peut tre crit de la manire
suivante : A V = V D.

Exemple :
Considrons la matrice A tels que A = [2 0 4 ; 3 4 12 ; 1 2 5]

[V, D] = eig(A) donne

0.8944 0.9701 0.7428

V = 0.4472
0
0.5571

0
0.2425 0.3714

et

2 0 0

D = 0 1 0
0 0 0

Fonctions Mathmatiques lmentaires

Il existe un ensemble de fonctions mathmatiques lmentaires qui sappliquent aux lments


de vecteurs ou de matrices.
sin (A)
cos (A)
tan (A)
asin (A)
acos(A)
atan (A)
abs (A)
sqrt (A)
real (A)
imag (A)
conj (A)
exp (A)
log (A)
log10 (A)

:
:
:
:
:
:
:
:
:
:
:
:
:
:

Sinus des lments de la matrice A.


Cosinus des lments de la matrice A.
tangente des lments de la matrice A.
Arc sinus des lments de la matrice A.
Arc cosinus des lments de la matrice A.
Arc tangente des lments de la matrice A.
Valeur absolue des lments de la matrice A.
Racine carr des lments de la matrice A.
Partie relle des lments de la matrice A.
Partie imaginaire des lments de la matrice A.
Complexe conjugu des lments de la matrice A.
Exponentielle des lments de la matrice A.
Logarithme naturel des lments de la matrice A.
Logarithme dcimal base de 10 des lments de la matrice A.

Fonctions pour lanalyse des donnes

Les fonctions suivantes oprent sur les colonnes dune matrice ou sur les lments dun vecteur
ligne ou colonne.
Soient x = [ 6 4 1 2 5 3 ] et A = [ 9 8 4; 1 6 5; 3 2 7 ]
mx = max (x)
mA = max (A)

:
:

mvx = mean (x)


mvA = mean (A)

:
:

sx = sort(A)

Fournit llment le plus grand du vecteur x, mx = 6.


Dfinit un vecteur contenant la valeur maximale de chaque
colonne de la matrice A, mA = [ 9 8 7].
Calcule la valeur moyenne du vecteur x, mvx = 3.5.
Dfinit un vecteur contenant la valeur moyenne calcule sur
chaque colonne de la matrice A, . mvA = [ 4.333 5.333 5.333].
Classe les lments de chaque colonne de la matrice A selon
10

lordre croissant, sx = [1 2 3 4 5 6 ]
Classe les lments de chaque colonne de la matrice A
1 2 4
selon lordre croissant sA = 3 6 5
9 8 7

sA = sort(A)

sux = sum(x)

Calcule la somme de tous les lments du vecteur x, sux = 21.

suA = sum(A)

Dfinit le vecteur contenant la somme calcule sur chaque


colonne de la matrice A, sux = [13 16 16]

Fonctions oprant sur des polynmes

MATLAB dispose galement de fonctions qui oprent sur des polynmes reprsents par des
vecteurs de coefficients.
Soient p = [1 6 72 27], a = [1 2 3] et
r = roots (p)

b = [4 5 6]

Dfinit un vecteur colonne dont les composantes sont les racines


du polynme s3 6s2 72s 27,

12.1229
r = 5.7345
0.3884
p2 = poly (r)

Calcule les coefficients dun polynme dfinit par ses racines,


p2 = [1 6 72 27].

v = polyval (p, x)

Retourne, dans v, les valeurs calcules du polynme p en chaque


point de x.

c = conv (a, b)

Effectue le produit des polynmes a(s) = s2 + 2s + 3 et


b(s) = 4s2 + 5s + 6 puis fournit un vecteur contenant les coefficients du
polynme rsultant, c = [4 13 28 27 18].

[q, r] = deconv (B, A) :

Ralise la division polynomiale B/A et retourne dans q les


coefficients du polynme quotient et dans r ceux du reste. Cest--dire B
=Aq+r

Exemple :
[q, r] = deconv(c, a)
ans

q=

r=

Ainsi c = q a + r

4x4 + 13x3 + 28x2 + 27x + 18 = (4s2 + 5s + 6 ) (s2 + 2s + 3) + 0


11

On peut vrifier ce rsultat en utilisant la commande conv entre les polynmes q et a pour voir
si le rsultat donne bien le polynme c.

Fonctions oprant sur les fractions rationnelles.

Soient les polynmes A = [1 5 6] et B = [1],


[r, p, k] = residue (B, A)

effectue la division des polynmes B par A et la retourne


sous la forme suivante :
B( x)
r (1)
r ( 2)
r ( n)
=
+
+ ... +
+ k ( x)
A( x) x p (1) x p (2)
x p ( n)
Ainsi :

[B, A] = residue (r, p, k)

1
1
1
=
+
x + 5x + 6 x + 3 x + 2
2

Effectue lopration inverse et retourne dans B les


coefficients de B(x) et dans A ceux de A(x).

IV. DOMAINE DE LAUTOMATIQUE


Il sera question de savoir comment dcrire et manipuler un systme dynamique SLTI.
MATLAB dispose dune reprsentation objet des SLTI continus ou discrets.

1 - graphiques
Avec MATLAB les donnes peuvent tre examines graphiquement. Pour la reprsentation
dun graphe lcran il est possible de choisir le type dchelle dsir pour les axes x et y.

Plot (x, y)

Plot (x, y, s1s2s3) :

Graphe linaire de y en fonction de x. x et y doivent tre deux


vecteurs de mme dimension.
Donne la courbe y(x). s1 et s2 et s3 sont trois paramtres qui
prcisent la couleur, le type de point et la nature de lignes dinterpolation
choisies.

s1 (couleur)

y
m
c
r
g
b
w
k

jaune
magenta
bleu ciel
rouge
vert
bleu
blanc
noir

s2 (type de point)

.
o
x
+
*
s
d
^
v
<
>
p
h

point
cercle
marque x
plus
toile
carreau
diamant
triangle (haut)
triangle (bas)
triangle (gauche)
triangle (droite)
pentagone
hexagone

12

s3 (nature de lignes)

:
-.
--

solide
pointill
tiret point
2 tirets

Plot (x, y, t, z)

Donne la courbe y(x) et la courbe z(t) sur le mme graphique.


Eventuellement on peut ajouter les donnes concernant la couleur, le type
point et la nature dinterpolation choisies.
stem (n, y)
:
analogue la commande plot sauf quelle trace la courbe du
signal numrique y en fonction du pas d'chantillonnage n.
subplot (nml)
:
subdivise la fentre du graphe en n lignes et m colonnes et
choisie la lme pour tre active. Les zones graphiques sont numrotes de
la gauche vers la droite et de haut vers le bas.
loglog (x, y)
:
Graphe logarithmique en x et y.
semilogx (x, y)
:
Graphe logarithmique en x, linaire en y.
semilogy (x, y)
:
Graphe linaire en x, logarithmique en y.
Une fois le graphe est visualis lcran, il est possible dintroduire un titre et des noms
indicatifs pour les axes x et y.
title (texte)
:
Ajoute la phrase crite entre apostrophe au sommet du graphe.
gtext (texte)
:
Place le message entre apostrophe sur le graphique en cours.
Une fois la position choisie est indique par le tmoin de la souris, il
suffit dy cliquer ou dappuyer sur une touche du clavier.
xlabel (texte)
:
Ajoute le texte crit entre apostrophe sur le graphe pour la
lgende de laxe des x.
ylabel (texte)
:
Ajoute le texte crit entre apostrophe sur le graphe pour la
lgende de laxe des y.
clf
:
Efface toutes les courbes du graphe.
grid ou grid on
:
Place les lignes du quadrillage sur la courbe courante.
grid off
:
Supprime les quadrillages placs sur la courbe.
axis ([xmin xmax ymin ymax]): Dfinit les limites des coordonnes des axes x et y en tenant
compte des limites mentionnes par xmin, xmax, ymin et ymax
Exemple :
t = 0 : 0.05 : 4*pi ;
x = cos (t) ;
y = sin(t) ;
plot ( t, x, r., t, y, g*)
xlabel (t en radian)
ylabel (cos(t) en rouge et sin(t) en vert)
ou encore :
t = 0 : 0.05 : 4*pi ;
x = cos (t) ;
y = sin(t) ;
subplot (2,1,1)
plot ( t, x, y.)
xlabel (t en radian)
ylabel (cos(t) en jaune)
subplot (2, 1, 2)
plot (t, y, b*)
xlabel (t en radian)
ylabel (sin(t) en bleu)
2 Fonction de transfert :
La fonction de transfert est une reprsentation trs utilise pour la description des systmes.
a - Forme polynomiale dune fonction de transfert analogique :
Soit : H ( s ) =

n0 s m + n1 s m 1 + ... + n m
d 0 s n + d 1 s n 1 + .... + d n
13

Noter que la variable p, couramment utilis en tant que variable de la fonction de transfert
analogique H, est remplace dans MATLAB par la variable s.
Dans MATLAB, nous dcrivons ce systme par les deux vecteurs lignes suivants :
num = [n0 , n1 ,...n m ] et
sys = tf(num, den)

den = [d 0 , d 1 ,...d n ]
cre le systme sys dont la fonction de transfert continu a pour
numrateur num et pour dnominateur den.

get (sys)

permet de lister les caractristiques du systme sys.

Exemple :
Considrons le systme dfini par la fonction de transfert : H ( s ) =

s 3 + 2s + 5
3s 3 + 4 s 2 + 2 s + 1

Lintroduction de ce systme dans MATLAB se fait par les commandes suivantes :


num = [1 0 2 5]
den = [3 4 2 1]
sys = tf(num,den)
b - Reprsentation ples zros dune fonction de transfert analogique :
Soit : H ( s ) =

K 0 ( s + z1 )...( s + z m )
( s + p1 )...( s + p n )

Dans MATLAB, nous dcrivons ce systme par les deux vecteurs colonnes et un scalaire
comme suit :
K = K0

; Z = [ z1 , z1 ,... z m ] et

P = [ p1 , p 2 ,... p n ]

Exemple : Considrons le systme H ( s ) =

4( s + 1).( s + 2)
( s + 3).( s + 4).( s + 5)

Lintroduction de ce systme dans MATLAB se fait par les commandes suivantes :


K=4;
Z = [-1 ; 2] ;
P = [-3 ; 4 ; 5] ;
La reprsentation ples zros (p, z) peut tre convertis sous forme polynomiale (num, den) en
appliquant la commande poly.
num = poly (Z)*K ;
den = poly (P) ;
Lopration inverse seffectue en appliquant la commande roots.
Z = roots (num)
P = roots (den)
d Systmes avec retard
La reprsentation objet de MATLAB permet de dfinir des systmes avec retard.
14

Soit H ( s ) = e rs

n0 s m + n1s m1 + ... + nm
o r est le retad pur en secondes du systme.
d 0 s n + d1s n 1 + ... + d n

Le numrateur et le dnominateur sont toujours dcrits de la mme manire. La commande tf


est utilise pour dcrire le systme sans retard sys.
Sys = tf (num, den)
La fonction set permet de changer quelques paramtres de lobjet sys et en particulier son
retard pur initialement mis zro. Le retard pur est repr par le paramtre Td :
set (sys, Td,r)

Assigne la valeur r secondes au retard pur du systme (analogique).

Exemple : considrons le systme analogique dfini par : H ( s ) =

s3 + 2s + 5
3s 3 + 4 s 2 + 2 s + 1

num = [1 0 2 5]
den = [3 4 2 1]
sys = tf(num, den)
subplot (2,1,1)
impulse (sys)
set (sys, Td,5)
subplot (2,1,2)
impulse (sys)
e - Combinaison de fonctions de transfert
MATLAB fournit la possibilit de connecter deux systmes dynamiques qui sont dcrits
chacun par une fonction de transfert.
Cette opration qui consiste rduire plusieurs systmes dynamiques connects en srie en un
seul systme quivalent est intressante car elle facilite, entre autre, lanalyse de la rponse du systme
globale.
Soit (num1, den1) et (num2, den2) la reprsentation de deux systmes dynamiques 1 et 2
connects en srie.

S 1(p)

S 2(p)

La fonction de transfert du systme quivalent est reprsente par deux vecteurs ligne, num et
den, dfinis comme suit :
num = conv (num1, num2)
den = conv (den1, den2)
O conv est la fonction ralisant le produit de convolution de deux polynmes. Plus
simplement, avec la reprsentation objet de MATLAB des systmes linaires, la mise en srie de deux
systmes peut tre ralise de la faon suivante :
sys1 = tf(num1, den1)
sys2 = tf(num2, den2)
sys = sys1*sys2
15

Exemple :
Soit : H 1 ( s ) =

s+2
et
2
0 .5 s + s + 0 .5

H 2 ( s) =

s 2 + 0 .4 s + 4
deux systmes mis en srie.
s 2 + 0 .5 s + 2

Calculer la fonction de transfert H(s) des systmes 1 et 2 et du systme quivalent et tracer


leurs rponses impulsionnelles.
num1 = [1 2]
den1 = [0.5 1 0.5]
num2 = [1 0.4 4]
den2 = [1 0.5 2]
sys1 = tf (num1, den1)
sys2 = tf (num2, den2)
sys = sys1*sys2
subplot (3,1,1)
impulse (sys1)
subplot (3,1,2)
impulse (sys2)
subplot (3,1,3)
impulse (sys)
sys

H ( s) =

donne

s 3 + 2.4 s 2 + 4.8s + 8
0.5s 4 + 1.25s 3 + 2 s 2 + 2.25s + 1

e - Quelques commandes utiles de plus :


printsys (num,den)

crit sur lcran la fonction de transfert sous forme dun rapport


de deux polynmes dont les coefficients sont contenus dans les vecteurs
num et den en prenant s comme variable de la transformation.

printsys (num, den,v) :

la variable s est remplace cette fois ci par v.

Exemple :
num = [1 2]

den = [3 4]

printsys (num, den)

donne

printsys (num, den, b)

donne

s+2
3s + 4
b+2
3b + 4

3 Rponse temporelle des systmes SLTI :


MATLAB fournit des commandes pour le calcul des rponses temporelles des systmes
dynamiques linaires et stationnaires. Nous prsentons ci-dessous le cas des systmes analogiques. Des
commandes analogues existent aussi pour le cas des systmes numriques.

a Rponse impulsionnelle
Soit un systme analogique dcrit par sys et un systme discret reprsent par sysd.

impulse (num,den)

impulse (sys)

donne la courbe de la rponse impulsionnelle, en fonction du


temps, correspondante au systme dfini par la fonction de transfert
(num, den).
idem que impulse (num, den)

16

impulse (num,den, t) :
impulse (sys, t)

y = impulse (sys)

y = impulse (sys, t) :
y = impulse (sysd, T) :

idem que impulse (num, den) sauf que le calcul est ralis sur
lintervalle de temps t choisi par lutilisateur.
idem que impulse (sys) sauf que le calcul est ralis sur
lintervalle de temps t choisi par lutilisateur.
retourne dans le vecteur y les valeurs de la sortie de la rponse
impulsionnelle.
retourne dans le vecteur y les valeurs de la sortie de la rponse
impulsionnelle en fonction du temps t choisi par l'utilisateur.
retourne dans le vecteur y les valeurs de la rponse
impulsionnelle d'un systme discret dcrit par la fonction de transfert
sysd calcules chaque pas d'chantillonnage T choisi par l'utilisateur.

Exemple :
t = 0 : 0.01 : 10 ;
num = [1] ;
den = [3 4] ;
impulse (num, den, t) ;
Le mme rsultat peut tre obtenu en remplaant la dernire instruction par :
y = impulse (num, den, t) ;
plot (t, y)
Ou encore :
sys = tf (num,den)
impulse (sys, t)
b Rponse indicielle :
step (num, den)

donne la courbe de la rponse un chelon unitaire du systme


linaire et continu, en fonction du temps, dont la fonction de transfert est
dfini par (num, den).

y= step (num, den, t) :

retourne dans le vecteur y les valeurs de la rponse un chelon


unitaire, en fonction du temps pour lintervalle de temps t, du systme
linaire et continu dont la fonction de transfert est dfini par (num, den).

Exemple :
t = 0 : 0.01 : 10 ;
num = [1] ;
den = [3 4] ;
step (num, den, t) ;
Le mme rsultat peut tre obtenu en remplaant la dernire instruction par :
y = step (num, den, t) ;
plot (t, y)
c Rponse une entre arbitraire :
lsim (sys, u, t)

donne la courbe de la rponse temporelle, au signal dentre u en


fonction du temps t, du systme dfini par la fonction de transfert sys.

y= lsim (sys, u, t)

retourne dans le vecteur y les valeurs de la rponse temporelle,


au signal dentre u en fonction du temps t, du systme dfini par la
fonction de transfert sys.
17

Exemple :
t = 0 : 0.01 : 10 ;
num = [2 1] ;
den = [3 4] ;
x = sin (t) ;
sys = tf (num,den) ;
lsim (num, den, x, t) ;
Le mme rsultat peut tre obtenu en remplaant la dernire instruction par :
y = lsim (sys, x, t) ;
plot (t, y)
3 Rponse frquentielle des systmes SLTI :
a - Diagramme de Bode
num (s)

 bode ( num, den)


produit la representation de bode de la fonction de transfert den (s) . La
gamme de frquence et le nombre de points sont choisis automatiquement.
 bode ( num, den, ) utilise la gamme de frquence choisie par l'utilisateur. Le vecteur
doit contenir les frquences en rad / s.
 [ Mag, phase, ] = bode ( num, den) retourne les amplitudes dans Mag, les phases dans
phase, et les frquences dans , sans reprsentation graphique. Pour effectuer cette dernire
nous devons utiliser l'instruction semilogx en faisant observer que les amplitudes ne sont
pas donnes en dB.
Exemple :
clear
num = input ( ' num = ') ;
den = input ( ' den = ' ) ;
bode ( num , den )
gtext ( 'diagramme de BODE ')
Les mmes reprsentations sont obtenues en remplaant l'instruction " bode
( num, den )" par la srie d'instructions suivante :
[ mag, phase , ] = bode ( num, den ) ;
subplot ( 211)
semilogx ( , 20 * log10 ( mag ) ) ;
grid
subplot ( 212 )
semilogx ( , phase )
grid.
b Lieu de Nyquist
num (s)
 nyquist ( num, den) produit la reprsentation de Nyquist de la fonction de transfert den (s)
18

 nyquist ( num, den, ) utilise la gamme de frquence impose par l'utilisateur dans le
vecteur (en rad/S).
num (j)
 [ Re, im, ] = nyquist ( num, den) retourne dans Re les parties relles de den (j) dans
im les parties imaginaires et dans les frquences prises. La reprsentation de Nyquist
s'obtient alors par le biais de l'instruction plot ( Re, im ) .
c Lieu de Black Nichols
num (j)

 nichols ( num, den)


donne la reprsentation de Black - Nichols de la fonction den (j)
 nichols ( num, den, ) donne le diagramme de Nichols pour la gamme de frquences
choisie dans ( en rad/s).
 [ Mag, phase, ] = nichols ( num, den) retourne les amplitudes dans Mag, les phases
dans phase, et les frquences dans , sans reprsentation graphique. Nous obtenons le
diagramme de Nichols l'aide de l'instruction plot.
Exemple :
clear
num = 2 ;
den = [ 1 0.5 1 ] ;
nichols ( num, den )
Le mme rsultat est obtenu en remplaant la dernire instruction par :
plot ( phase , 20*log10 ( mag) )
axis ( [ -180

- 100

20 ] )

d - Marge de Gain - Marge de phase


 [ Gm, Pm, cg, cp ] = margin ( mag, phase, ) : retourne la marge de gain dans Gm , la
marge de phase dans Pm et les frquences associes dans cg et cp . Sachant que les
vecteurs mag, phase et doivent contenir respectivement les amplitudes, les phases et les
frquences en rad /s.
 margin ( mag, phase, ) : donne le diagramme de Bode avec les marges de gain et de phase
(indiques pas des lignes verticales).
Exemple :

num = 2 ;
den = [ 1
0.25
1] ;
[ mag , phase , ] = bode (num, den ) ;
margin ( mag, phase, )
pause
[Gm, Pm, cg , cp ] = margin ( mag, phase, )

e Systme en boucle ferme


Soit le systme en boucle ferme suivant :

19

S1(p)
-

S2(p)

Linstruction feedback permet de raliser un tel systme.


Syntaxe :

>>[num,den]=feedback(num1,den1,num2,den2,sign)

V. PROGRAMMATION AVEC MATLAB


Il est possible avec MATLAB de faire des programmes. Les lignesdinstructions dun programme sont
cres avec lditeur associ MATLAB (cliquer sur File,puis New (M-File) pour crer un fichier ou
sur Open M-File pour ouvrir un fichier dj existant). Le fichier doit tre sauvegarder avec lextension
.M , il est ensuite executable dans lenvironnement MATLAB.
Les tests classiques (for, while, if, ) existent avec MATLAB, dcrivons les rapidement.
1. Tests et boucle
a. Instruction FOR
Cette instruction permet de faire une boucle de type pour .
Syntaxe : >> for variable = expression
..
>> end
b. Instruction WHILE
Cette instruction permet de faire une boucle de type tant que.
Syntaxe : >> while expression
.
>> end
c. Instruction IF
Cette instruction permet de faire des insructions diffrentes selon quun test est vrai ou
faux.
Syntaxe : >> if expression
..
>> else
..
>> end
2. Autres exemples de fonctions
break

permet de quiter anormalement une boucle FOR ou WHILE.

input

permet dintroduire une valeur dans une variable.


Ex : x = input (donner la valeur de x :)

disp(xxx)

affiche lcran la chane de caractres xxx.

clc

efface lcran.
20

pause

attend un apui sur une touche quelconque du clavier avant dexcuter linstruction
suivante.

Pause(n)

suspend le droulement du programme durant n secondes.

VI. CREATION DE FONCTION


Si une fonction, qu'on dsire utiliser frquemment, ne fait pas partie des fonctions
incorpores. Matlab dispose de structures pour crer de nouvelles fonctions sous la forme d'un fichier
M. files
Les fonctions M. files doivent suivre des rgles spcifiques parmi lesquelles on cite.
1- La premire instruction d'une fonction doit s'crire suivant la syntaxe :
function Y = Nomfon ( x1, x2 )
o :

Y est l'argument de sortie


x1, x2 sont les arguments d'entre
Nomfon le nom de la fonction.

2- Le nom de la fonction et celui du fichier doivent tre identiques. Par exemple, la fonction
Nomfon doit tre sauvegarde sous le nom Nomfon.m.
3- Les fonctions peuvent avoir zro ou plusieurs arguments d'entre et zro ou plusieurs
arguments de sortie.
4- Lorsqu'une fonction possde plus d'une variable de sortie, celles-ci sont mis entre crochets
comme [ V , D ] = eig(A)
5- Les fonctions M.files agissent comme des commandes MATLAB. Ainsi une fonction est
appele (pour excution) en plaant les variables entre parenthses comme det(A).
6- Une fonction peut tre appele de manire rcursive, c - - d qu'elle peut tre appele par elle
mme.
Exemple :
Soit Fibona une fonction M.file qui calcule les X premirs nombres de Fibonnaci.
function Fib = Fibona (X)
f=[1 1] ;
while

i=3

i <=X
f (i) = f ( i-1) + f ( i -2 )
i=i+1
end
f

Cette fonction doit tre sauvegard sous le nom Fibona.m . Le calcul des 25 premirs nombres
de Fibonnaci est obtenu l'aide de l'instruction Fibona (25).

21

T.P. N2
INITIATION SIMULINK
Simulink est lextension graphique de MATLAB permettant de reprsenter les fonctions
mathmatiques et les systmes sous forme de diagramme en blocs.
1- Pour dmarrer Simulink
Dans la fentre commande de MATLAB, taper simulink.
La fentre simulink va souvrir :

Figure 1 : Bibliothque SIMULINK.


Cette fentre contient des collections de blocs que lon peut ouvrir en cliquant dessus :
Sources
Sinks
Discrete
Continuous
Discontinuities

sources de signaux
affichage
blocs discrets
blocs linaires
blocs non linaires

2- Construction d'un modle simple


Pour commencer, dans le menu File, on choisit New-model.
Une fentre de travail Untitled souvrira ;
Ouvrir les collections de blocs en cliquant dessus deux fois.
22

Faire glisser dans la fentre de travail les blocs dont on a besoin pour construire le diagramme.
- Le bloc " signal Gen" gnre un signal [ sources library]
- Le bloc " scope" reprsente un graphique d'un oscilloscope [ sinks library]
mettre le " horizontal range " et le " vertical range" 10 et 3 respectivement
- Le braket (>) la sortie du bloc" signal Gen" reprsente son port de sortie
- Le braket (>) l'entre du bloc " scope" reprsente son port d'entre
- Pour lier ces deux blocs, utiliser le bouton de la sourie en mme temps sur le port de sortie et le port
d'entre.
- Maintenant vous pouvez commencer la simulation
- Pour slectionner la technique d'intgration et les paramtres utiliser durant la simulation, appeler le
menu Simulation et choisir Paramtres .
- Une boite est ouverte montrant tous les paramtres qui peuvent tre modifis.
- Changer la valeur du " Maximum step size" 0,01 et cliquer sur OK.
- Lancer la simulation en choisissant start partir du menu simulation
- Si la fentre du " scope bloc" n'est pas ouverte, cliquer maintenant deux fois sur le bloc.
- Le gnrateur de signaux envoi le sin(t) chaque pas de temps et l'oscilloscope le montre sous la
forme d'une onde sinusodale.
- Vous pouvez slectionner diffrentes formes de signaux sur le gnrateur de signaux et voir les
rsultats immdiatement sur l'oscilloscope.
- La simulation est arrte en choisissant la commande Stop du menu Simulation.
- Pour sauvegarder votre travail sous forme de fichier " M-file", choisir save du menu File. Choisir le
nom "Binme NG" (N = numro de Binme, G = numro de Groupe).
- Maintenant prendre une copy du " Gain bloc" du " linear subsystem" dans le bloc bibliothque.
- Ouvrir ce bloc en cliquant 2 fois.
- Changer la valeur du gain 2 et fermer le bloc.
- Maintenant lier le gnrateur de signaux au " Grain bloc"
- Ajouter un autre oscilloscope au modle en copiant l'oscilloscope dj existant en utilisant le bouton
droit de la sourie. La copie aura les mmes valeurs de paramtres.

- Lier le bloc gain au 2me oscilloscope.


- Ouvrir les deux oscilloscopes et lancer la simulation.
- Observer le rsultat des deux oscilloscopes, remarquer que le bloc gain multiplie par deux son signal
d'entre.

23

- Arrter la simulation
- Vous pouvez liminer un bloc ou une ligne en le slectionnant et en utilisant la touche Delete on en
choisissant Cut ou Clear du menu Edit
- Enlever le 2me oscilloscope, sa ligne de connexion avec le bloc gain et la ligne de connexion du
gnrateur de signaux et l'oscilloscope
- A partir de la bibliothque connections, ajouter un bloc Mux dans le modle.

- Ouvrir le bloc Mux pour changer le nombre dentres en cas de besoin


- Connecter le gnrateur de signaux et le bloc gain l'entre du bloc Mux et diriger sa sortie
l'oscilloscope.

- La fonction du bloc Mux est de multiplexer ses entres dans un seul vecteur de sortie. Dans notre
exemple, la ligne de connexion du bloc Mux et l'oscillo est une ligne multivariable ( qui transmet
plusieurs valeurs pour chaque pas de temps).
- Maintenant faire une copie du bloc Workspace de la bibliothque " Sinks" puis l'ouvrir. Le nom de la
variable apparat dans l'icne du bloc ; c'est " yout" par dfaut. On peut changer ce nom en entrant un
nouveau nom.
Le bloc To Workspace prend le vecteur d'entre est le met dans le " Workspace Matlab" sous forme
d'une matrice. La matrice a une ligne par pas en temps et une colonne par lment du vecteur d'entre
du bloc.
- Ouvrir le bloc " To Workspace"
- Changer le nom de la variable Matlab produit par la simulation de ce modle matrice1.
-

Faire la connexion de la sortie du bloc Mux l'entre de bloc " matrice1". Une autre faon de faire
la liaison est d'utiliser une ligne de sortie existante. Positionner le pointeur sur la ligne " Mux"
"Scope", utiliser le bouton droit de la sourie et mettre le pointeur l'entrer du bloc "
ToWorkspace".

24

- Lancer une simulation de ce modle.


- Stopper la simulation et sauvegarder ce modle.
- Retourner la fentre des commandes de MATLAB. Entrer la commande whos. Le rsultat est :
Name

size

Total

Complex

matrice 1

1000 by2

2000

No

Grand total is ( 2000 * 8) = 16 000 bytes.


- Entrer la commande plot ( matrice 1).
- On peut utiliser la commande Save de MATLAB pour sauvegarder les rsultats de la simulation dans
un fichier data de Matlab.
- Un vecteur reprsentant les pas en temps peut tre obtenu en connectant un bloc " Clock" au bloc "
To Workstation" ou en entrant un nom de variable (par exemple t) dans le champ " Return Variables"
de " Simulation Paramtres".
Application :
Construire le modle suivant :

 Simuler puis visualiser la variable sorties sur une figure MATLAB.

25

T.P. N3
ANALYSE TEMPORELLE & FREQUENTIELLE DUN SYSTEME DU PREMIER ORDRE
On considre le circuit RC suivant :
R

Ve

Vs

Figure 1 : Circuit RC en srie.


Analyse Temporelle
1/ Etablir la fonction de transfert H ( p ) =

Vs ( p )
en fonction de R et C ; Calculer H(p) pour les valeurs
Ve ( p )

suivantes R=3K ; C=10F.


2/ Relever exprimentalement la rponse indicielle et en dduire H(p)

Analyse Frquentielle
Pour les valeurs de T1=et =
Faites varier la frquence du signal sinusodal dentre de 0 une valeur suprieure 1/T1
Quelle est la nature du signal de sortie ?
Remplir les Tableau suivant

(rad/s)
|H(jw)|dB
Arg(H(jw))
N.B. : Le nombre de points ainsi que les frquences sont choisir.
1./ Tracer le lieu de transfert du systme sur les plans de Bode , Nyquist et Black,
2./ Comparer avec les tracs thoriques,
3./ Que peut on dire sur la stabilit du systme ?

26

T.P. N4
ANALYSE TEMPORELLE & FREQUENTIELLE DUN SYSTEME DE DEUXIEME ORDRE
I. PARTIE THEORIQUE
On considre le circuit RLC suivant :
R

Ve

Vs

Figure 1 : Circuit RLC srie.


1. Ecrire lquation diffrentielle qui rgit le fonctionnement de ce systme.
2. Dans les conditions dHeaviside, dterminer la fonction de transfert H ( p ) =
K

sous la forme : H ( p ) =
1+

p+

p2

Vs ( p )
; lcrire
Ve ( p )

, puis donner et 0 en fonction des lments du

02

montage.
3. Sachant que la bobine a une inductance L=0,1H et prsente une rsistance R=32, dterminer
et 0 pour chacun des couple (R,C) suivant :
C(nF)
R()
4. Quelle est la valeur critique du coefficient damortissement qui conditionne la rponse
temporelle du systme ?
5. Donner la rponse temporelle Vs(t) (expression et allure sur le mme graph) dans les trois cas <
critique , = critique et > critique.
6. Pour la mme valeur de C1 choisir deux valeurs R1 et R2 de R qui donnent des rponses
oscillatoires et deux autres valeurs R3 et R4 qui donnent des rponses apriodiques.
7. Etudier la fonction |H(j)|=f().
8. Quelle est la valeur critique du coefficient damortissement qui conditionne la rponse
frquentielle du systme ?
9. Pour la mme valeur de C1 choisir deux valeurs R1 et R2 de R qui donnent des rponses avec
rsonance et deux autres valeurs R3 et R4 qui donnent des rponses sans rsonance.
10. Donner le diagramme de Bode du systme pour les quatre couples (R, C) de la question9.

27

II. PARTIE PRATIQUE


Analyse Temporelle
1. Raliser le montage suivant pour chaque couple (Ri, Ci) de la question 6 :
V o ie1 de lo sc illo sco pe

GBF

Ve

V o ie2 de lo scillo sco pe

Vs

M asse

Figure 2 : Montage raliser.


avec : Ve est signal carr de frquence assez faible.
2. Relever les rponses temporelles correspondantes chaque montage.
3. En dduire :
 Le temps de rponse 5 %,
 Le temps du premier dpassement et la valeur de celui-ci en %,
 Le temps de monte,
 La pente lorigine.
4. Comparer ces rsultats avec la thorie.
5. Conclure sur linfluence des lments R et C sur la rponse du systme.
6. Relever la rponse temporelle du systme pour un seul couple (R, C) en liminant la bobine,
comparer la pente lorigine de cette rponse aux prcdentes et commenter ce rsultat.
7. Montrer comment peut-on utiliser un potentiomtre pour rgler la valeur de critique , quelle
est la valeur correspondante de la rsistance ?
Analyse frquentielle
1. Raliser le montage suivant pour chaque couple (Ri, Cj) de la figure 2 :
Avec : Ve est signal sinusodal de frquence variable.
2. Pour chaque montage relever les mesures ncessaires pour tablir la rponse en frquence du
systme.
(rad/s)
|H(j)|dB
Arg(H(j))
N.B : le nombre de point ainsi que les frquences sont choisir.
3. Tracer les diagrammes de Bode des diffrents systmes sur papier semi-logarithmique.
4. Tracer les lieux de transfert sur labaque de Black-Nichols.
5. Dterminer les caractristiques frquentielles de chacun de ces systmes
 Le gain statique,
 La pulsation de coupure -3dB,
 La pulsation de rsonance et le gain correspondant,
 Le facteur de rsonance.
6. Comparer ces rsultats avec la thorie.
7. Que deviennent ces caractristiques en boucle ferme.
8. Proposer un schma de montage en boucle ferme et vrifier 7. pour un couple (R, C).

28

Vous aimerez peut-être aussi