Vous êtes sur la page 1sur 96

Dr.

AISSI SALIM
Université Batna2

Asservissement
des Systèmes
Linéaires:
Simulations et Travaux
Pratiques Par Matlab/Simulink

Edition GANA
 

Tous Droits Réservés

Batna - Algerie
Tél. 033 25 41 16 0561 27 95 65
Fax. 033 25 30 25
E-mail:Dar_gana@yahoo.fr

Ouvrage : Asservissement des Systèmes Linéaires:


Simulations et Travaux Pratiques Par Matlab/Simulink

Auteur : AISSI Salim


Format : 16 x 23
Nombre de pages : 95 p
Edition : Dar Gana Edition 2019

N° Interne :006/2020
N° dépôt légal :10-2020
ISBN : 978 -9947 -910 -78 -8
Dédicace
Je dédie ce Modest travail à :

o A La mémoire de ma Chère Mère que DIEU


le Tous Puissant, La Prend dans son grand
paradis..
o A La mémoire de mon Cher Père AISSI
MESSAOUD que DIEU le Tous Puissant, Le
Prend dans son grand paradis..
o
o La mémoire de mon Cher Frère Nabil
o ma Chère Femme.

o mes Chers Enfants : Youcef, Taha, Yacine.

o Toute la famille
Remerciements

Ce document présente l'ensemble des travaux effectués durant


mon enseignement du module d'asservissement depuis l'année 2002 au
centre universitaire de Bordj Bou Arreridj et par la suite à l'université
de HADJ LAKHDAR Batna et l’Université CHAHID MOSTEFA
BENBOULAID Batna2.

Au début, ce document était rédiger sous forme d’un polycopié


destiné aux étudiants du département d’électronique faculté de
technologie, université Batna2, par la suite j’ai décidé de l’imprimer
sous forme de livre afin d’étaler ses avantages à d’autres utilisateurs.

Je tiens à remercier beaucoup ma femme qui ma encouragé et


insisté sur l’impression de ce travail sous forme de livre,

Je tiens à remercier également tous qui m’ont aidé pour réaliser


ce document.
Sommaire

Sommaire

Partie 1 : Prise en main avec


Matlab/simulink
Introduction générale ...................................................................... (9)
Définition de MATLAB .................................................................... (12)
Interface graphique de Matlab ......................................................... (12)
Programmer sous Matlab ................................................................. (13)
Créer un Programme Sous MATLAB ............................................. (16)
Commandes courantes de Matlab .................................................... (18)
Environnement graphique du Simulink ........................................... (19)
Différentes bibliothèques : ............................................................... (20)
Construction d’un schéma de Simulink ........................................... (21)

Partie 2 : Tp Matlab /Simulink proposés


TPN°1 : Instructions Usuelles du Logiciel Matlab ........................... (24)
TPN°2 : Instructions polynômes & Graphisme .............................. (25)
TPN°3 : Représentation des Systèmes Linéaires à l’aide
des équations différentielles ................................................. (26)
TPN°4 : Représentation des Systèmes Linéaires
à l’aide des Fonctions de Transfert .................................... (27)

TP N°5 : Génération Des Différents Signaux d'Entrées Pour Les


Systèmes Asservis à Base des Instructions Matlab............ (29)
TPN°6 : Réponse d’un Systèmes Linéaires du Premier Ordre........ (30)
TP N°7: Analyse Fréquentielle du Système Premier Ordre. ........... (32)
TPN°8 : Systèmes Second Ordre Circuit RLC ................................ (33)
Sommaire
TPN°9 : Systèmes Second Ordre Système mécanique .................... (34)
TPN°10 : comparaison entre les Systèmes Second Ordre Système
mécanique et électrique .................................................................... (36)
TP N11 : Stabilité des Systèmes Asservis ........................................ (37)
TPN12 : manipulation du Simulink ................................................. (39)
Partie 3 : Solutions des TP Proposés

Solution TPN°1 ................................................................................. (42)


Solution TPN°2 : ............................................................................... (43)
Solution TPN°3 : ............................................................................... (46)
Solution TPN°4 : ............................................................................... (52)
Solution TPN°5 : ............................................................................... (58)
Solution TP N°6:. .............................................................................. (62)
Solution TPN°7 : ............................................................................... (68)
Solution TPN°8 : .............................................................................. (72)
Solution TPN°9 : ............................................................................... (74)
Solution TP N°10 : ........................................................................... (76)
Solution TPN°11 : ............................................................................ (87)
Solution TPN°12 : ............................................................................ (89)

Conclusion générale .......................................................................... (93)

Bibliographie ..................................................................................... (95)


Introduction générale

Introduction Générale

Tous les systèmes physiques existant que se soit naturels ou industriels


doivent être contrôlés et maitrisés pour accomplir leurs tâches d'une manière
convenable. Le contrôle de ces systèmes passe par leurs modélisations
mathématiques et la connaissance des techniques des commandes.
Le but de ce document est de s'initier au logiciel
MATLAB/SIMULINK en faisant un tour sur la plupart des fonctionnalités de
ce logiciel puissant et performant afin de connaitre les instructions et les
techniques nécessaires pour la commande des systèmes.
Ce document est destiné aux étudiants Licence en E. E. A.
(Electronique électrotechnique, Automatique) concernés par l'étude et la
modélisation des systèmes à asservir dans toutes les spécialités. Il traite des
travaux pratiques par simulation sous le logiciel MATLAB/ SIMULINK des
systèmes asservis continus, en contournant l'ensemble des cours traités dans le
module d'asservissement linéaire et continus [2], et en introduisant à chaque
TP des commandes Matlab comme outils pour réaliser ses exercices. Ces
derniers touchent les thèmes suivants : les systèmes de premier ordre, les
réponses des systèmes de deuxièmes ordres, les réponses fréquentielles, le
tracé des abaques de Nichols et de Nyquist, et enfin la stabilité et la précision
des systèmes continus.

Afin de bien, maitriser et comprendre l'ensemble des TP


d'asservissement, ce livre est devisé en plusieurs parties :
La première est destinée pour un rappel sur l'environnement et
l’interfaçage graphique de Matlab et de Simulink en citant l'ensemble des
parties importantes, ainsi que les commandes usuelles pour créer et simuler un
programme sous Matlab et Simulink.
La deuxième partie offre la présentation des TP de simulation en
suivant le programme destiné aux licences déjà citées plus haut.
Finalement pour atteindre le but de ce document des solutions et
explications des TP sont proposées dont leurs scripts sont prêts à être
exécuter.

9
Partie 1 : Prise en main avec Matlab Simulink

10
Partie 1 : Prise en main avec Matlab Simulink

Partie 1

Prise en Main avec


Matlab/Simulink

11
Partie 1 : Prise en main avec Matlab Simulink

1. Definition de MATLAB
Le mot MATLAB, c'est l'initiale de (MATrix-LABoratory) en français
Laboratoire des matrices. Son environnement est de type visuel orienté pour
calcul numérique et matriciel beaucoup
plus. Un large public de chercheurs et
étudiants exploite la puissance de haute
gamme du Matlab. Il est devenu
actuellement une nécessité dans le
domaine du calcul technique.
En effet Matlab possède beaucoup
de plateformes pour le calcul numérique
et formel ou symbolique, des outils
puissants pour le graphisme. La création
des programmes à base d'instruction plus
performantes et focalisées vers des
problèmes bien précis comme :
les instructions concernant le contrôle Figure1.1 : fenêtre de lancement [1]
des systèmes linéaires non linéaires,
discrets, aléatoires, électronique de puissance, logique floue, réseaux de
neurones,…etc.
Matlab existe en plusieurs versions, portant à chaque fois de nouvelles et
puissantes fonctionnalités. La version est affichée au lancement du logiciel
comme l’indique la figure 1.1.

2. Interface graphique Matlab

 L'icône de lancement est donnée par :


 L'environnement graphique Matlab est présenté dans la fenêtre de la
figure 1.2 ou on trouve :
la barre de menu : File, Edit, Debug , Parallel, desktop ,…etc
la barre d'outil : nouveau ouvrir, lancer Simulink,…etc
l'invite de commande " >> " a partir de cet invite en lance les
commandes Matlab.
12
Partie 1 : Prise en main avec Matlab Simulink

Barre d'outils

Invite de commande Icône de lancement Répertoire courant


de Simulink

Barre de menu

Figure 1.2 : fenêtre principale de MATLAB

NB.
Il faut noter que les commandes en Matlab sont de types textuels,
alors la syntaxe doit être respectée pour que les commandes fonctionnent
correctement en évitant la génération des messages d'erreurs

3. Programmer sous Matlab


Avant de programmer sous Matlab quelques principes sur ce logiciel
doivent être connus :
a) Matlab est un logiciel qui peut exécuter des instructions ligne par
ligne à partir de l'invite ">>", il ne nécessite pas une déclaration
des types de variables à priori comme les autre langages (C, Pascal,
…) ce qui indique sa facilité.
b) Le programme est organisé sous forme de plusieurs instructions
regroupées dans un script d'extension .m . Cela donne plus de

13
Partie 1 : Prise en main avec Matlab Simulink

rapidité et de convivialité sans déclaration des bibliothèques à


priori.
Le logiciel Matlab est organisé sous forme de plusieurs Toolbox (boite à
outils) destinées à une large plage de disciplines et spécialités scientifiques.
Pour connaitre ces Toolbox taper : Help
3.1. L'Aide en Ligne de Matlab

>> help
Le résultat donne une liste des boites à outils existantes. Chaque boite à
outils sélectionnée affiche sur la partie droite son contenue. Comme l’indique la
figure 1.3

Liste Boite à outil


pour sélection

Affichage du contenu de la
boite à outils sélectionnée

Figure 1.3 : résultat d'une commande help

14
Partie 1 : Prise en main avec Matlab Simulink

Chaque boite à outil regroupe un ensemble de commande de même type


et exerçant sur un domaine précis. Pour plus d’explication, prenons les deux
exemples du tableau 1.1 suivant :

Tableau 1.1

Exemple 1: Exemple 2:
>> help elfun >> help control
"elfun : matlab\elfun Elementary math functions" "control : Control System Toolbox"
Cette boite regroupe un ensemble de commandes Cette boite regroupe l'ensemble de
destinées pour les fonctions mathématique commandes destinées pour le contrôle
élémentaire, sin exp, cos, log,…etc. des systèmes asservis comme :
déclaration des fonction de transfert tf,
Le résultat est donné par :
SS, ZPK, Eig, Roots, réponse des
systèmes Step, Impluse, Bode, …etc.
Le résultat est donné par :

15
Partie 1 : Prise en main avec Matlab Simulink

3.2. Créer un Programme Sous MATLAB

 Un programme ou script Matlab comporte plusieurs instructions pour


différentes TOOLBOX selon le but souhaité de ce programme.
 Son extension est *.m
 Sa création est à partir du menu file --New ----Script (figure 1.4)
 Les commandes sont écrites ligne par ligne

Figure 1.4 : fenêtre éditeur de script Matlab .m

 Les instructions du script sont exécutée a partir du menu : DEBUG--


RUN-->Nom de fichier (exp1_univbat.m) ou F5
 Les résultats du programme sont récupérés dans l'espace de travail si il
n'y pas d'erreurs
 les variables résultants du script Matlab sont enregistrés dans le
Workspace par leurs noms.
 Nous pouvons stocker tous les variables d'une session ouverte de l'espace
de travail dans un fichier de type *.mat (Exemple 3).

16
Partie 1 : Prise en main avec Matlab Simulink

Tableau 1.2

Exemple 3: * Pour sauvegarder les


variables de l'espace de travail
Les variables utilisés a un moment donné sont
utiliser la commande
identifiés par la commande who ou whos
File----Save Workspace as
* Pour récupérer les données
pour une éventuelle utilisation,
utiliser la commande
file----import Data

17
Partie 1 : Prise en main avec Matlab Simulink

3.3 Commandes courantes de Matlab


Comme tout langage de programmation, Matlab possède des instructions
de plusieurs types, citons quelques unes dans les tableaux 1.3 et 1.4. [6, 7].
Tableau 1.3 : fonctions graphiques
plot(t,f,’Cp’) Trace un graphe « f »en fonction de « t »
avec la couleur « c » et le symbole « p ».
C peut prendre : y (jaune), m (magenta), c (cyan), r
(rouge), g (vert), b (bleu)
P peut être : + (plus), * (étoile), o (cercle).
title(‘titre du Donne un titre du graphe tracé
graphe’)
xlabel(‘texte’) Affiche un texte sur l’axe des ‘X’
ylabel(‘texte’) Affiche un texte sur l’axe des ‘Y’
gtext(‘texte’) Création d’un texte dans la zone ou on clique sur la
souris
grid Active ou désactive la grille d'une figure
Figure(num) Création d'une nouvelle figure de numéro (num).

hold on Trace d’autres graphes sur une même figure sans


effacer les précédents, hold off annule cette
instruction superposition s).
close all ferme toutes les figures

Tableau 1.4 : programmation, (if - else) et de boucle (for, while), Instructions


d’interruption,
Donne une valeur à Z à partir du clavier
Z= input(' chaine de
aractère'')
disp(‘chaine de caractère') affiche chaine de caractère dans l'écran .
pause Bloque l'exécution d'un programme jusqu'à
un nouveau appuie du clavier
For j=1 : n … end Exécute des instructions de la boucle avec
répétition de j = 1 jusqu' à j =n
break Stop l'exécution d’une boucle de type for ou
while sans condition.
if condition 1 … elseif Exécuter les Instructions conditionnellement
cond2 … else … end selon la condition1 ou la condition2.
% texte Utilisée pour les commentaires
le texte après « le % » est considéré comme
un commentaire ou une explication
18
Partie 1 : Prise en main avec Matlab Simulink

4. Environnement graphique du Simulink


1. Simulink est un sous logiciel du Matlab ou bien son co-équipier si le
mot peut être dit, qui présente un outil très fort pour la création des
simulations et systèmes en exploitant son environnement graphique
interactif
2. Simulink par ses différentes versions progressives avec Matlab, est
fondé sur l’utilisation de schémas-blocs et boites à outil dans différents
domaines,
3. L'appuie sur le bouton de lancement de Simulink génère la
fenêtre de la figure 1.5 :

Elle contient aussi une barre de menu, une barre d'outils, un volet
concernant une recherche par mots clés.
La fenêtre Simulink est devisée en deux parties ; la première affiche la
bibliothèque du Simulink et la deuxième affiche les blocs de chaque élément
sélectionné

Volet de recherche

Liste des boites à


outil
Boite outil
sélectionnée

Figure1.5 : fenêtre principale du Simulink

19
Partie 1 : Prise en main avec Matlab Simulink

4.1 Différentes Bibliothèques de Simulink :


L'outil Simulink possède plusieurs blocs, pour notre cas nous utilisons la boite
Continuous, Discret, math opération, source, Sinks, le bloc port et Subsystems, ce
dernier contient les outils de connexions et les éléments de Mux et Demux .
Comme le montre la figure 1.6.
Sources Générateurs de signaux Sinks : Outils d'affichage

Continuous Math Operations

Figure1.6 : Bibliothèques les plus usagées en Simulink

20
Partie 1 : Prise en main avec Matlab Simulink

4.2 Construction d’un Schéma En Simulink


Les étapes pour création d'un modèle ou schéma de simulation sont données
comme suit :

 créer un nouveau modèle : dans le


menu File, on choisit New  Model.
 Une nouvelle fenêtre « Untitled.mdl
» s'affiche.
 Ouvrir les bibliothèques de blocs
voulus en cliquant sur leurs icônes
(selon l'application à simuler).
 glisser dans la fenêtre de l'espace
travail les blocs dont nous avons
besoin pour la création de notre
modèle.
 les liaisons entre les blocs sont réalisées à l'aide de glissement de la
souris, (de la sortie vers l'entrée).
 le changement des paramètres d'un bloc est accompli par un double-
clique,
 Une fois que la construction des différents blocs de simulation est
terminée le fichier correspondant doit être enregistré par File  Save,
Save as
 Le fichier sauvegardé possède l’extension .mdl.

4.3 Lancement de simulation

Après avoir construire et enregistrer un modèle il faudra lancer la


simulation par :
Simulation -Configuration Parameters (figure1.7)
Pour démarrer une simulation sous Simulink nous devons régler les paramètres
concernés comme le pas , le temps, la méthode de simulation, et en fin la tolérance.

21
Partie 1 : Prise en main avec Matlab Simulink

Méthode d'intégration : c'est le premier point


nécessaire pour avoir une convergence de la
structure du schéma de simulation. Il existe
plusieurs méthodes de simulations dont la première
est Rung-Kutta 4 (ancienne version de Simulink),
et dans les nouvelles versions on trouve ODE45,
ODE113…, etc. Comme l’indique la figure ci
contre. Le choix de la méthode dépend des
conditions de la convergence et de la complexité du système à simuler.

Type de pas de simulation :

 Nous choisissons un pas fixe ou variable,


 si le pas de simulation est variable, alors l'intervalle de pas [Min Max]
doit être configuré
 Temps de début de simulation : Temps de fin de simulation :
l'intervalle temps de la simulation calculé en seconde

figure 1.7 : paramètres de lancement de la simulation

22
Partie 2 : TP Matlab/Simulink Proposés

Partie 2

TP
Matlab/Simulink
Proposés

23
Partie 2 : TP Matlab/Simulink Proposés

TPN°1 : Instructions Usuelles du Logiciel Matlab

But du TP :

Le but du TP est de se Familiariser avec les instructions de Matlab,


ainsi que la manipulation des nombres et opérations sur les matrices.

Exercice N°1 :
Commencer votre travail en effaçant les variables, en fermant les
fenêtres graphiques et en effaçant la fenêtre MATLAB.
4 5 6
Créer la matrice A= 7 8 3
0 0 2
 Calculer le déterminant de A
 Calculer B  AT
 Calculer C= A -1
 Calculer D  A B
 Calculer E  3A
 Calculer la matrice F contenant les produits terme à terme des
coefficients de A et de B
 Créer la matrice identité de même dimension que A
 Créer une matrice G de dimension (15x10) ne contenant que des 1
 Sauvegarder A, B, C dans un fichier nommé « essai1.mat »
 Effacer toutes les variables, et vérifier qu’elles sont effacées
 Restaurer les matrices A, B, C

Exercice N°2 : Construction de Matrices.

1 2 3
Soit F2= 4 5 6
0 9 1

 Vérifier G = [F2, zeros(3, 3); ones(3), eye(3)].

24
Partie 2 : TP Matlab/Simulink Proposés

 Quelle est la taille de G.


 Remplacer la dernière colonne de G par le vecteur [7, 8, 9, 10, 5 ,7]
puis extraire la matrice correspondant aux lignes 2 et 4, et aux colonnes 2
et 6.
 Comparer W = F2 *F2 ; M = F2.*F2; N = F2^3 ; T = F2.^3; I =
exp(F2) ; J = sqrt(F2).

TPN°2 : Instructions polynômes & Graphisme.

But du TP :
Maitriser les outils nécessaires pour le traitement des polynômes et les
graphismes sous Matlab
Exercice 1 : Calculs sur les polynômes.

 Consulter l’aide en ligne sur poly, Roots, Conv, Deconv,


Polyder, Polyval, Poly.
 Entrer les polynômes p = 10x5 − 2x2 + 10x et q = x2 + 4.
 Construire un polynôme S(x) possédant les racines (-1), (-5),
(-6)
 Calculer les racines de p et q.
 Calculer p’
 Calculer le produit p*q
 Calculer le quotient et le reste de p par q.
 Calculer les valeurs de p en 0 et -1.
 Tracer la courbe d’équation y = p(x) sur [−10, 10].

Exercice 2 : Représentation Graphique.


Obtenir la représentation graphique de la fonction f1 définie par
f1(t)= sin(t)exp(-2t).

25
Partie 2 : TP Matlab/Simulink Proposés

 Créer un vecteur de type ligne t avec un pas de 0.01.


 En utilisant la commande « PLOT », tracer f1 dans une
fenêtre ‘figure(1)’
 Annoter les axes en indiquant l’abscisse x en (temps) et
l’ordonnée y en (Volts).
 Donner un titre à cette courbe.
La courbe doit être de couleur rouge et marquée « étoile ».
 Dans une même fenêtre ; figure(2) ; tracer les courbes
d’équations
f1(t)= sin(t)*exp(-2t) en bleu f2(t)= -sin(t)*exp(-2t) en vert, f3(t) =
exp(-2t) en rouge et f4(t) = -exp(-2t) en cyan sur L'intervalle t=
[−1, 1].
 En utilisant la commande « SUBPLOT » tracer f1 , f2 et f3
dans une même (figure(3))

TPN°3 : Représentation des Systèmes Dynamiques Linéaires à


l’aide des équations différentielles

But du TP :

Dans ce TP, le but est de connaitre la résolution d'une équation


différentielle du premier ordre, représentant le modèle mathématique d'un
système asservis de type linéaire continu. Les exemples prisent sont le circuit
(R-C) et le circuit (R-L).

Travail de Préparation :

1) Donner les équations différentielles qui régissent les circuits


électriques R-C, R-L pour une alimentation d’entrée Ve=E

26
Partie 2 : TP Matlab/Simulink Proposés

2) Donner les réponses temporelles des circuits (a), (b), (c), (d)
définies comme suit :
a) R1-C (entrée =E, la sortie Vs=S1=VC)
b) R1-C (entrée =E, la sortie Vs=S2=VR1)
c) R2-L (entrée =E, la sortie Vs=S3=VL)
d) R2-L (entrée =E, la sortie Vs=S4=VR2)

Programmation du Travail de Préparation.(utiliser plot)

En se basant sur les réponses temporelles ou les solutions des équations


différentielles de premier ordre des circuits R-C et R-L :
1. Tracer sous Matlab la réponse Vc1(t) du circuit (R1-C) , pour
R1=1000kΩ, C=0.9µF.
2. Tracer sous Matlab la réponse VR1(t) du circuit (R1-C) , pour
R1=1000kΩ, C=0.9µF.
3. Tracer sous Matlab la réponse VL(t) du circuit (R2-L) , pour
R2=100Ω, L=70H.
4. Tracer sous Matlab la réponse IL (t) du circuit (R2-L) , pour
R2=100Ω, L=70mH.

TPN°4 : Représentation des Systèmes Dynamiques Linéaires à


l’aide des Fonctions de Transfert

But du TP :

Maitriser la représentation des systèmes asservis de type linéaire


continus à partir de leurs modèles mathématiques, passage entre les
différentes représentations (fonction de transfert, modèle d’état, etc.…).

27
Partie 2 : TP Matlab/Simulink Proposés

Exercice N°1 : Introduction des Fonctions de Transfert Sous MATLAB

L’introduction de fonctions de transfert s’effectue sous plusieurs


formes polynomiales, forme ZPK (zéros, pôles, gain), forme d’état. Prenons
quelques types de systèmes asservis, deuxième et troisième ordre pour
s’entrainer sur la déclaration de ces systèmes.

( )= , ( )= ,
^ ^ ^

( − )( + . )
( ) = 4.25
( + . )( + )( + )
1) Consulter l’aide en ligne sur les commandes Tf, ZPK, TF2SS, TF2ZP
2) Créer un fichier de commande tp3ex1.m pour les commandes MATLAB
de l’exercice N°1
3) Introduire ( ) et ( ) sous MATLAB
4) Donner les pôles de ces deux systèmes
5) Introduire le système ( ) en utilisant la commande ZPK
6) Passer de la représentation fonction de transfert de ( ) et ( ) vers la
forme ZPK connue par la forme
( ( ))( ( ))...( ( ))
d’Evans ( ) = ).
( ( ))( ( ))...( ( ))

7) Passer de la représentation fonction de transfert de f (s) et f (s) vers la


forme d’état
Ẋ = AX + Bu, y = CX + Du.
8) Passer de la représentation ZPK de f (s) vers la forme Ẋ = AX + Bu, y
= CX + Du.
9) Enregistrer l’espace de travail de cet exercice dans tp3ex1.mat

28
Partie 2 : TP Matlab/Simulink Proposés

Exercice N°2 : Construction de Schémas Fonctionnels

Soit le schéma fonctionnel donné par la figure ci-dessous

1. Consulter l’aide en ligne sur les commandes Series, Parallel, feedback


2. Créer un fichier de commande tp3ex2.m pour les commandes
MATLAB de l’exercice N°2
3. Donner la fonction de transfert en boucle ouverte
4. Donner la fonction de transfert en boucle fermée (Y(s)/U(s))
5. Vérifier le résultat analytiquement.
6. Calculer les pôles de la fonction de transfert en boucle fermée
7. Passer de cette fonction de transfert aux différentes formes (ZPK, SS )
du système en BF
8. Enregistrer l’espace de travail de cet exercice dans tp3ex2.mat

TPN°5 : Génération Des Différents Signaux d'Entrées Pour Les


Systèmes Asservis à Base des Instructions Matlab

But du TP :

Savoir programmer un signal d'entrée sous Matlab comme le signal


carré, signal triangulaire, signal dent de scie en utilisant les outils de
programmation de Matlab (for, if-else,…etc), Zeros, ones. Cela permet à
l'étudiant de connaitre et de manipuler les étapes complètes pour générer un
signal Périodique,…etc.

29
Partie 2 : TP Matlab/Simulink Proposés

Travail demandé :

En utilisant des scripts Matlab, tracer sous MATLAB les fonctions ou


les réponses suivantes
1. Echelon Unitaire

2. Signal sinusoïdal périodique.


3. Signal carré périodique.
4. Signal périodique triangulaire.
5. Signal marche d’escalier.
6. Proposer d'autres signaux périodiques
7. Comparer les résultats de vos programmes avec les instructions
Matlab comme rectwin, triang

TPN°6 : Réponse d’Un Systèmes Linéaires Continu du Premier


Ordre

Buts du TP :

Le but souhaité de ce TP est l’étude générale des systèmes du premier


ordre excités par des entrées sous formes d’impulsions et des échelons afin
d’avoir des réponses impulsionelles et indicielles. Voir l'influence d'un pôle
dominant sur la réponse d'un système. L'exemple pris est toujours celui des
deux circuits électriques RC et RL.

30
Partie 2 : TP Matlab/Simulink Proposés

Exercice N°1

Soit les deux circuits électriques suivants :


I2
R1 VR2
R2

VE I1 C VC VE
L VL

1. Donner les équations différentielles qui régissent les deux circuits


électriques.
2. Donner les valeurs de R1, C, R2, L pour que l’équation différentielle
soit
( )
0.5 + y(t) = 15u(t) avec u(t) est l’entrée et y(t) est la sortie.

3. Résoudre ces équations et donner Vc(t), VL(t), I2(t).


4. Pour t=[0 :1.5s] tracer sous Matlab ces équations en utilisant la
commande PLOT
( ) ( )
5. Donner les fonctions de transferts h (s) = , h (s) = ,
( ) ( )
( ) ( )
h (s) = , h (s) =
( ) ( )
6. Introduire ces fonctions de transfert sous Matlab
7. Théoriquement calculer le gain statique, la constante de temps de ces
systèmes.
Exercice N°2 :

Utiliser l’aide en ligne sur les commandes IMPULSE, STEP


1. Tracer la réponse impulsionelle de h (s), h (s), h (s), h (s).
2. Tracer la réponse indicielle de h (s), h (s), h (s), h (s).
3. Expliquer physiquement les réponses temporelles trouvées.
4. Comparer ces résultats avec la question N°5 de l’exercice N°1

31
Partie 2 : TP Matlab/Simulink Proposés

Exercice N°3 :
Utiliser l’aide en ligne sur les commandes LSIM.
1. Tracer la réponse suite à une rampe r(t)=2*t du système h (s)
2. Tracer la réponse suite à une entrée u(t)=sin(4*t+pi/4) du système
h (s)
3. Tracer et comparer les réponses indicielles des deux
systèmes h (s) = et h (s) = .
^ .
4. Donner les pôles de h5(s), h6(s), que remarquez-vous ?

TP N°7 : Analyse Fréquentielle d'un Système asservis du Premier


Ordre.

Buts du TP :

La maitrise de la réponse fréquentielle en se basant sur le diagramme de


Bode. Savoir lire le de diagramme de l'amplitude en Décibel, et déduire tirer
des valeurs du signal de sortie à partir de sa fréquence, son gain Gdb, sa phase
en degré.

Travail de préparation :
Donner la réponse temporelle du système de premier ordre
y( p) k
H ( p)   suite à une entrée Echelon, et à une entrée
u ( p ) 1 p
sinusoïdale u(t)=Am sin(t+) [2].

Travail Sous Matlab


Soit le système linéaire donné par :
dy
0,5 y (t )  u (t )
dt
1. Tracer l'entrée sinusoïdale u(t)=2sin(4t+pi/4) pour t=[0: 4*pi]

32
Partie 2 : TP Matlab/Simulink Proposés

2. Dans le même graphe tracer la réponse du système ci-dessus pour


cette entrée sinusoïdale ; (utiliser la commande "hold on" pour
tracer les deux courbes).
3. En utilisant la commande BODE, tracer le diagramme de Bode de
ce système.
4. Tracer le lieu de Nyquist de ce système
5. Tracer l'abaque de Nichols de ce système
6. Tracer le lieu des racines en utilisant la commande "rlocus"
7. en utilisant le tracé de Bode déduire pour la pulsation =4rad/s le
gain en décibel et la phase de la sortie.
8. à partir des ces données est ce qu’on peut déduire la réponse y(t)
pour cette pulsation =4rad/s?
Commandes Utiles Plot, Lsim; Bode;hold on; Nyquist ;Nichols; rlocus…

TPN°8 : Systèmes Asservis du Second Ordre


Application au Circuit RLC

But du TP :

Maitriser la modélisation des systèmes asservis linéaires continus de


deuxième ordre, "étude du cas d'un circuit RLC", étudier la solution de leurs
équations différentielles et tracer leurs réponses temporelles.
Exercice 1
Nous considérons un système électrique RLC série, donné par la figure
ci-dessous 1

R L

C
ue t  us t 

 Ecrire les équations différentielles régissant la dynamique de ce


système du 2ième ordre
33
Partie 2 : TP Matlab/Simulink Proposés

 Déduire de ces équations la fonction de transfert en sa forme


canonique.
 Donner la réponse temporelle de cette transformée inverse.

n
(  n n
Exercice 2 (programmation)

Pour des valeurs R-L-C données nous proposons un système H2(p)


donné par H 2 ( p )  72
2
( p 6 p 36)
1. Calculer , n , K et déduire le type du système.
2. Tracer la réponse indicielle de ce système.
3. Calculer graphiquement le dépassement D en %.
4. Calculer analytiquement le dépassement D en %.

TPN°9 : Systèmes Asservis du Second Ordre,


Système mécanique : Masse-ressort

But du TP :
Maitriser la modélisation des systèmes asservis linéaires continus du
deuxième ordre, "étude du cas d'un système
mécanique ", étudier la solution de leurs
équations différentielles, tracer leurs réponses k f
temporelles.
M
Exercice 1 r
F
Considérons le système mécanique illustré
par la figure ci-contre. z

Avec "M" est une masse, maintenue à un mur par un amortisseur de


coefficient de frottement visqueux "f" et un ressort d’amortissement de
raideur "k" tiré par une force "F" vers le bas.

34
Partie 2 : TP Matlab/Simulink Proposés

Pour l’entrée U(t) = F(t), Force appliquée à la masse, la Sortie y(t) est
la position ou le déplacement de la masse appelée Z(t).
Avec n est la pulsation propre, est l’amortissement
,

K est le gain statique du système.

 Exprimer ces 3 paramètres en fonction des données du système ci-


dessus..
 Donner la fonction de transfert de ce système en le mettant sous la
forme canonique

n

( + 2  n + n

 à quelles conditions le facteur d’amortissement est-il inférieur à 1

Exercice 2 :
 Répéter les questions de L'EXO 2 du TP N°8 pour H2(P) en donnant
des valeurs a "f, M, K" du système mécanique correspondants.

35
Partie 2 : TP Matlab/Simulink Proposés

TPN°10 : Comparaison entre les Systèmes Second Ordre


Système mécanique et électrique

But du TP :

Comparer les résultats physiques de deux systèmes de second ordre de


même fonction de transfert, tracé et comparaison des diagrammes de Bode,
de Nyquist et de Nichols, pour différentes valeur de facteur d'amortissement.
Systèmes Physiques à Etudier
Considérons deux système physiques ; circuit électrique RLC série
donné par la figure 1, système Mécanique Masse-Ressort (figure2):.

R L
k f
C
ue  t us  t M
r
F

Figure 1 Figure 2

EXERCICE 1

en choisissant à chaque fois des valeurs différentes de R, L, C , et en utilisant


les commandes Step, Hold on.

1. Tracer les réponses indicielles dans une même figure ( exp : appelez la
fig 9.1) du système RLC pour les coefficients d'amortissements suivant
: ξ =0.25, 0.5, 0.707, 1 ,1.5 et n de 5 rad /s
2. Pour le système mécanique refaire la même opération de que (1) en
traçant les résultats dans la figure (fig9.2)
3. Comparer les deux courbes des fig9,1 et fig9,2, conclure.

36
Partie 2 : TP Matlab/Simulink Proposés

4. expliquer physiquement les courbes du fig9.1 et fig9.2

EXERCICE 2

1. dans une même figure (fig 9.3), Tracer le diagramme de BODE du


circuit RLC
pour ξ =0.25, 0.5, 0.707, 1 et 2, que remarquez vous (utiliser Hold
on)?
2. calculer la marge de gain et la marge de phase un utilisant "Margin"
pour différent ξ.
3. Pour une valeur de ξ =0.707 tracer le lieu de racines (rlocus)
4. Tracer le diagramme de Nyquist,
5. Tracer les abaques de Nichols.

TP N°11 : Stabilité des Systèmes Asservis

But du TP :
Ce TP est très important, il permet à l’étudiant de reconnaître si les
systèmes sont stables ou pas. En se basant sur leurs réponses temporelles, et
leurs pôles, et de concevoir une boucle fermée.

TRAVAIL DE PREPARATION

On considère les 2 systèmes suivants :


p 1
H 1 ( p)  2
p 2 p 3

10 ;
H 2 ( p) 
2 p 3
1. Calculer la fonction de transfert du système H1(p)xH2(p) en boucle
fermé avec retour unitaire.
2. Discuter la stabilité de ce système en calculant ces pôles.
3. Utiliser la table de Routh pour vérifier votre résultat.

37
Partie 2 : TP Matlab/Simulink Proposés

SIMULATION
1. Vérifier la stabilité de H1(p) et H2(p).
2. Calculer le système H1(p)xH2(p) en boucle fermé avec retour unitaire
via la commande "feedback".
3. Vérifier sa stabilité en utilisant la méthode de Routh [2] et la
commande Matlab.

4. H2(p) est un système instable, essayé de le stabiliser en utilisant un


correcteur indiqué par le schéma ci-contre. (Utiliser SERIES,
FEEDBACK, ROOTS)

5. Proposer le régulateur qui donne un système en boucle fermé avec un


gain =2 et une Constante du temps =0.5s

38
Partie 2 : TP Matlab/Simulink Proposés

TPN°12 : Manipulation du Simulink

But du TP :

Maitriser l’utilisation du Simulink en introduisant des systèmes asservis


linéaire continus de premier et deuxième ordre, afficher leurs différentes
réponses, connaitre les différents blocs de génération de signaux,…etc.

Simulation

1. Réaliser les schémas de simulation des figures ci-dessus :

2. Tracer les résultats de ces quatre systèmes dans un même scope

3. de la même manière tracer les réponses d'un système du deuxième ordre


pour différentes valeurs de « ksi » et voir le résultat de simulation.

39
Partie 2 : TP Matlab/Simulink Proposés

40
Partie 3 : Solution des TP Proposés

Partie 3

Solution des TP
Proposés

41
Partie 3 : Solution des TP Proposés

Solution TPN°1 : Instructions Usuelles du Logiciel Matlab

%Université de Batna2, Faculté de Technologie, Département


D'électronique
%solution de TPN°1 manipulation des instructions usuelles de Matlab
%Destiné aux utilisateurs licence et Master

clear all
clc
A=[4 5 6; 7 8 3;0 0 2]
deta=det(A)
B=A'
C=inv(A)
D=A*B
E=3*A
F=A.*B
eye(size(A))
G=ones(15,10)
save essai1.mat
clear all
clc
who
load essai1.mat
F2=[1 2 3;4 5 6;0 9 1]
G = [F2, zeros(3, 3); ones(3), eye(3)]
size(G)
G(:,6)=[7; 8 ;9;10;5;7]
H=G([2 4],[2 6])
W = F2 *F2
M = F2.*F2
N = F2^3
T = F2.^3; I = exp(F2)
J = sqrt(F2)

42
Partie 3 : Solution des TP Proposés

Solution TPN°2 : Instructions polynômes & Graphisme.

Solution de l'Exercice 1 : polynômes.


%----------------------------------
%Calculs sur les polynômes
%solution tp N°2
%proposé par Dr Aissi salim
%-------------------------------------
%-------------------------------------
P=[10 0 0 -2 10 0]
q=[1 0 4]
poly([-1 -5 -6])
roots(P)
roots(q)
polyder(P)
conv(P,q)
deconv(P,q)
polyval(P,[0 -1])
x=[-10:0.01:10];
y=10*x.^5 -2*x.^2 + 10*x;
plot(x,y)
title('TP2 polycopie 2015/2016')
grid
xlabel('Abscices')
ylabel('Ordonnées')

6 TP2 polycopie 2015/2016


x 10
1

0.5

0
Ordonnées

-0.5

-1

-1.5
-10 -8 -6 -4 -2 0 2 4 6 8 10
Abscices

43
Partie 3 : Solution des TP Proposés

Solution de l'Exercice 2 : Représentation Graphique.


%université de Batna2, faculté de technologie, département
d'électronique
%solution de TPN°2 manipulation des instructions de graphisme
%destiné aux utilisateurs licence et Master
clear all
clc
t=[0:0.01:4*pi];
f1= sin(10*t).*exp(-2.*t)
figure(1)
plot(t,f1)
xlabel('Temps')
ylabel('Volts')
title('réponse temporelle')
t=[-1:0.01:1];
f11= sin(10*t).*exp(-2.*t)
f12=-sin(10*t).*exp(-2.*t)
f13=exp(-2.*t)
f14=-exp(-2.*t)
figure(2)
plot(t,f11,'b')
hold on
plot(t,f12,'g')
plot(t,f13,'r')
plot(t,f14,'c')
hold off
figure(3)
subplot(3,1,1), plot(t,f11)
subplot(3,1,2), plot(t,f12)
subplot(3,1,3), plot(t,f13)

44
Partie 3 : Solution des TP Proposés

réponse temporelle
1

0.8

0.6

0.4

Volts
0.2

-0.2

-0.4
0 2 4 6 8 10 12 14
Temps

-2

-4

-6

-8
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

-5
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
5

-5
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
10

0
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

45
Partie 3 : Solution des TP Proposés

Solution TPN°3 : Représentation des Systèmes Dynamiques


Linéaires à l’aide des équations différentielles

Exercice N°1
1/ les équations différentielles des circuits R-C et R-L :

1.1 le circuit R-C :

E=UR+UC

E=R i(t)+UC ; i(t)= C d(UC/dt)

E= RC dUC/dt +UC avec : 


=RC

1.2 le circuit R-L :

E=Ri(t)+Ldi(t)/dt

E/R=L/R di(t)/dt+i(t) avec =L/R

2/ les réponses temporelle UC(t),IL(t) :

E=UR+UC→E=Ri+1/C ∫i(t)dt

UC(t)=E-UR=E(1-exp(-t/ ))

/Ur=Ri(t)=E .exp (-t/ )

Donc UC(t)=E(1-exp(-t/ ))

E=UR+UL→ E=Ri(t)+L di(t)/dt

La solution du courant i(t), est la somme des solutions permanente ip(t) et la


solution homogène ih(t), alors i(t)= ip(t)+ ih(t)

ih(t)=Aexp(-t/), ip(t)=E/R

i(t)=E/R+Aexp(-t/) alors :t=0→i(0)=0→A=-E/R

i(t)=E/R(1-exp(-t/))
46
Partie 3 : Solution des TP Proposés

3/ les valeurs Ic(t),UL(t) :

E=UR+UC→E=Ri+1/C∫ i(t)dt

La solution du courant i(t), est la somme des solutions permanentes ip (t) et la


solution homogène ih(t)

ih(t)=Aexp(-t/→les conditions initiales à t=0→i(0)=E/R

A=E/R donc iC(t)= E/R exp(-t/)

IL(t)=E/R(1-exp(-t/))→UL(t)=L di(t)/dt → UL(t)=L d(E/R(1-exp(-t/))/dt

Ul(t)=E exp(-t/)

Exercice : 02

1/ Vc(t) en fonction du temps :

t=0:0.1:10
vc(t)en fonction de temps
10
r=1000*10^3
9
c=0.9*10^-6
8
e=10
7
z=r*c
6
vC=e*(1-exp(-t/z))
v c (t )

5
plot(t,vC) 4

grid 3

xlabel('temps') 2

ylabel('vc(t)') 1

title('vc(t)en 0
0 1 2 3 4 5 6 7 8 9 10
fonction de temps') temps

47
Partie 3 : Solution des TP Proposés

2/ Ic(t) en fonction du
temps :
-5 Ic(t)en fonction de temps
x 10
1.2

t=0:0.1:10
1
r=1000*10^3
c=0.9*10^-6 0.8

e=10
I c (t ) 0.6
z=r*c
IC=e/r*exp(-t/z) 0.4

plot(t,IC,'k')
0.2
grid
xlabel('temps') 0
0 1 2 3 4 5 6 7 8 9 10
ylabel('Ic(t)') temps

title('Ic(t)en fonction de
temps')
Vl(t)en fonction de temps
10
3/ Vl(t) en fonction du temps :
9
t=0:0.1:10
8
r=100 7

e=10 6

l=70
V l(t)

y=l/r 4

Vl=e*exp(-t/y) 3

plot(t,Vl,'g') 2

grid 1

0
xlabel('temps') 0 1 2 3 4 5 6 7 8 9 10
temps
ylabel('Vl(t)')

48
Partie 3 : Solution des TP Proposés

title('Vl(t)en fonction de temps')


4/ Il(t) en fonction du
temps :
Il(t)en fonction de temps
0.1
t=0:0.1:10
0.09
r=100
0.08
e=10
0.07
l=70 0.06

y=l/r Il(t)
0.05

Il=e/r*(1-exp(-t/y)) 0.04

plot(t,Il,'m') 0.03

0.02
grid
0.01
xlabel('temps')
0
ylabel('Il(t)') 0 1 2 3 4 5 6 7 8 9 10
temps

title('Il(t)en fonction de
temps')

4/ tracer les réponses vc(t),Il(t),Ic(t),vl(t) sous MATLAB en utilisant SUBPLOT.

t=0:0.001:1
r1=100*10^3
r2=1000
c=0.3*10^-6
e=10
l=20
z=r1*c
y=l/r2
Vc=e*(1-exp(-t/z))
Ic=e/r*exp(-t/z)
49
Partie 3 : Solution des TP Proposés

Vl=e*exp(-t/y)
Il=e/r*(1-exp(-t/y))
subplot(4,1,1),plot(t,Vc,'r');
grid
xlabel('temps')
ylabel('vc(t)')
title('Vc(t),Ic(t),Vl(t),Il(t)en
fonction du temps')
subplot(4,1,2),plot(t,Ic,'k');
grid
xlabel('temps')
ylabel('Ic(t)')
subplot(4,1,3),plot(t,Vl,'b');
grid
xlabel('temps')
ylabel('Vl(t)')
subplot(4,1,4),plot(t,Il,'m');
grid
xlabel('temps')
ylabel('Il(t)')

50
Partie 3 : Solution des TP Proposés

5/ sous MATLAB introduire les fonctions de transfert S1/E et S2/E.

S1/E S2/E

r=1000*10^3 r=100
c=0.9*10^-6 l=70
z=r*c y=l/r
n1=[1] n2=[y]
d1=[z,1] d2=[1,y]
s1=Tf(n1,d1) s2=Tf(n2,d2)

Transfer function: Transfer function


1 0.2
---------------- ---------------
0.9 s + 1 s+0.2

51
Partie 3 : Solution des TP Proposés

Solution TPN°4 : Représentation des Systèmes Dynamiques


Linéaires à l’aide des Fonctions de Transfert
Exercise N°1

help tf,
help zpk,
help tf2ss
help tf
num1=[1 5 ]
den1=[1 8 17 10]
num2=[1 10]
den2=[2 3 1]
f1=tf(num1,den1)
f2=tf(num2,den2)
roots(den1)
roots(den2)
Z=[2 -1.2]
P=[-0.3 -1 -5]
K=[4.25]
f3 = ZPK(Z,P,K)
[Z1,P1,K1] = TF2ZP(num1,den1)
[Z2,P2,K2] = TF2ZP(num2,den2)
[A1,B1,C1,D1] = TF2SS(num1,den1)
[A2,B2,C2,D2] = TF2SS(num2,den2)
[A3,B3,C3,D3] = zp2SS(Z,P,K)
save tp3ex1.mat

52
Partie 3 : Solution des TP Proposés

Le résultat obtenu après exécution est donnée comme suit :


num1 =

1 5

den1 =
1 8 17 10
num2 =
1 10
den2 =
2 3 1
Transfer function:
s+5
-----------------------
s^3 + 8 s^2 + 17 s + 10
Transfer function:
s + 10
---------------
2 s^2 + 3 s + 1
ans =
-5.0000
-2.0000
-1.0000
ans =
-1.0000
-0.5000
Z=
2.0000 -1.2000
P=
-0.3000 -1.0000 -5.0000
K=
4.2500
Zero/pole/gain:
4.25 (s-2) (s+1.2)
-------------------
(s+0.3) (s+1) (s+5)
Z1 =
-5
P1 =
-5.0000
53
Partie 3 : Solution des TP Proposés

-2.0000
-1.0000
K1 =
1
Z2 =
-10
P2 =
-1.0000
-0.5000
K2 =
0.5000
A1 =
-8 -17 -10
1 0 0
0 1 0
B1 =
1
0
0
C1 =
0 1 5
D1 =
0
A2 =
-1.5000 -0.5000
1.0000 0
B2 =
1
0
C2 =
0.5000 5.0000
D2 =
0
A3 =
-0.3000 0 0
1.0000 -6.0000 -2.2361
0 2.2361 0
B3 =
1
0
54
Partie 3 : Solution des TP Proposés

0
C3 =
4.2500 -28.9000 -14.0649
D3 =
0

Exercice N°2 (TP N°4) :


Soit le schéma fonctionnel donné par la figure ci-dessous :

1/ Donner la FT en BF (y(s)/u(s)) :

n1=[1 1]
d1=[1 3 1]
f4=tf(n1,d1)
n2=[1]
d2=[5 1]
f5=tf(n2,d2)
n3=[1]
d3=[1 1]
f6=tf(n3,d3)
h=series(f5,f4)/(1+(f4*f5*f6))

55
Partie 3 : Solution des TP Proposés

Transfer function:

5 s^5 + 31 s^4 + 66 s^3 + 57 s^2 + 19 s + 2

------------------------------------------------------------------------------------------

25 s^7 + 185 s^6 + 496 s^5 + 602 s^4 + 362 s^3 + 112 s^2 + 17 s + 1

2/ Verifier le résultat analytiquement:

H(p)=y(p)/u(p)

Y(p)=f5(s)*f4(s)*e(t) e(t)=u(p)-y’(p)

Y’(p)=f6(s)*y(p)

Y(p)=f5(s)*f4(s)*[u(p)-y’(p)]=f5(s)*f4(s)*[u(p)-f6(s)*y(p)]

D'où y(p)=f5(s)*f4(s) / ‘(1+f5(s)*f4(s)*f6(s)) *u(p)

3/ passer de cette fonction de transfert à la forme ZPK du système en BF :

n1=[5 26 45 33 10 1]
d1=[25 185 496 607 383 136 26 2]
f3=tf(n1,d1)
[z,p,k]=tf2zp(n1,d1)
zpk(f3)
n1 =

5 26 45 33 10 1
d1 =
25 185 496 607 383 136 26 2

Transfer function:
5 s^5 + 26 s^4 + 45 s^3 + 33 s^2 + 10 s + 1
-------------------------------------------------------------------
25 s^7 + 185 s^6 + 496 s^5 + 607 s^4 + 383 s^3 + 136 s^2 + 26 s + 2
56
Partie 3 : Solution des TP Proposés

z=
-2.6180
-1.0000
-1.0000
-0.3820
-0.2000
p=
-2.6539
-2.6180
-1.0000
-0.2730 + 0.2760i
-0.2730 - 0.2760i
-0.3820
-0.2000
k=
0.2000
Zero/pole/gain:
0.2 (s+2.618) (s+1)^2 (s+0.382) (s+0.2)
--------------------------------------------------------------------
(s+2.654) (s+2.618) (s+1) (s+0.382) (s+0.2) (s^2 + 0.5461s + 0.1507)

57
Partie 3 : Solution des TP Proposés

Solution TPN°5 : Génération Des Différents Signaux d'Entrées


Pour Les Systèmes Asservis à Base des Instructions Matlab

Exercice : 01

Tracer sous MATLAB les réponses d’un échelon unitaire, signal sinusoïdal,
signal carré, signal triangulaire, signal marche d’escalier.

A/ Echelon unitaire : échelon unitaire


2

t=0:0.002:10 1.8

1.6
ech=ones(1,length(t)) 1.4

plot(t,ech,'r') 1.2
échelon

1
grid 0.8

xlabel('temps') 0.6

0.4
ylabel(' échelon ') 0.2

title('échelon unitaire') 0
0 1 2 3 4 5 6 7 8 9 10
temps

B/ Signal sinusoïdal :

1
t=0:0.002:10 0.8

r=sin(t) 0.6

0.4

plot(t,r,'g') 0.2

0
grid
-0.2

xlabel('temps') -0.4

-0.6
ylabel(' sinusoidal ') -0.8

title('signal sinusoidal') -1
0 1 2 3 4 5 6 7 8 9 10
temps

58
Partie 3 : Solution des TP Proposés

C/ signal quarré

t=0:0.01:2
clear all
close all
TP N° 5 : signal carré de 10 période avec T=4
T=4; 1

N=10; 0.9

0.8
t=0:0.001:T;
0.7
for i=0:N-1

s ignal c arré d'entrée


0.6

t1=[0:0.001:T/2]+(i*T) 0.5

y1=ones(1,length(t1)); 0.4

0.3
plot(t1,y1)
0.2
hold on 0.1

t4=[0:0.001:0.01]+(i*T); 0
0 5 10 15 20 25 30 35 40
temps
y4=[0:0.1:1]
plot(t4,y4,'r')
hold on
t2=[T/2:0.001:T]+(i*T)
y2=zeros(1,length(t2));
plot(t2,y2)
t3=[T/2:0.001:(T/2)+0.01]+(i*T);
y3=[0:0.1:1]
plot(t3,y3,'r')
end
grid
xlabel('temps')
ylabel('signal carré d''entrée')
title('TP N° 5 : signal carré de 10
période avec T=4')
59
Partie 3 : Solution des TP Proposés

D/ signal marche d’escalier :

t=0:0.01:2
y=ones(1,length(t))
hold on
plot(t,y)
grid
t1=t+2 signal marche d'éscalier
6
y1=ones(3,length(t))*2
5.5
hold on
5
plot(t1,y1,'r')
4.5
grid
m a rc h e d 'é s c a li e r

t2=t1+2 4

y2=ones(1,length(t2))*4 3.5

hold on 3

plot(t2,y2,'g') 2.5

grid 2

t3=t2+2 1.5
y3=ones(1,length(t3))*6
1
0 1 2 3 4 5 6 7 8
hold on temps
plot(t3,y3,'v')
grid
t11=2:0.001:2.01
y11=(1:0.1:2)
plot(t11,y11)
grid
t12=4:0.001:4.01
y12=(1:0.1:2)*2
plot(t12,y12)

60
Partie 3 : Solution des TP Proposés

grid
t13=6:0.001:6.01
y13=(1:0.1:2)*2+2
plot(t13,y13)
grid
xlabel('temps')
ylabel(' marche d''éscalier ')
title('signal marche d''éscalier')

E/ signal triangulaire :
clear all
close all
T=4;
N=5;
TP N° 5 : signal triangulaire de 6 période avec T=4
t=0:0.001:T; 2

1.8

1.6
for i=0:N-1
1.4
t1=[0:0.001:T/2]+(i*T)
s ignal d'entrée périodique

y1=t1-(i*T); 1.2

1
plot(t1,y1) 0.8
hold on
0.6

hold on 0.4

t2=[T/2:0.001:T]+(i*T) 0.2

y2=-t2+((i+1)*T); 0
0 2 4 6 8 10 12 14 16 18 20
plot(t2,y2) temps
end
grid
xlabel('temps')
ylabel('signal d''entrée périodique
')
title('TP N° 5 : signal triangulaire
de 5 période avec T=4')

61
Partie 3 : Solution des TP Proposés

F/ Signal Rampe 2
signal rampe

1.8
t=0:0.01:2 1.6

1.4
y=t
1.2

référenc e
1
plot(t,y,'g')
0.8

grid 0.6

xlabel(' temps ') 0.4

0.2
ylabel(' référence ') 0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
title('signal rampe') temps

Solution TPN°6 : Réponse d’Un Systèmes Linéaires du


Premier Ordre

Exercice N°1 : (impulse ; step ; lsim) ;

Soit le système linéaire caractériser par l’équation temporelle suivante :

0.5 dy/dt+y(t)=15 u(t)

1/les équations différentielles de R-C et R-L

Pour le circuit R-C : R.C [dVc(t)/dt]+[Vc(t)]=Ve

Pour le circuit R-L : L/R*[dI(t)/dt]+[I(t)]=[VE/R2]

2/ les valeurs de R1*C1=0.5 , pour le circuit L2/R2=0.5

3/ résolution des équations différentielle

Vc(t)=E/R1[1-exp(-t/ )]   =R1*C1

Il=Ve/R*[1-exp(-t/( L2/R2)]

Vl=L2(dIL2)=E(exp(-t/2) 2=L2/R2

4/ l’expression des FT du système h1(p), h2(p), h3(p), h4(p):


62
Partie 3 : Solution des TP Proposés

H1(p)= = .

Ic(t)=Cd[vc(t)]/dt=C(p H1(p))
( ) τ
H2(p)= = .

H3(p)= = .

Il(t)=Ld[Il(t)]/dt=L(p H3(p))
τ
H4(p)= = .
5/Introduction des FT sous matlab
n1=[15]
d1=[0.5 1]
h1=tf(n1,d1)
n2=[7.5 0]
d2=[0.5 1]
h2=tf(n2,d2)
n3=[15]
d3=[0.5 1]
h3=tf(n3,d3)
n4=[7.5 0]
d4=[0.5 1]
h4=tf(n4,d4)
6/ le système h1 et h3 se sont des systèmes de 1er ordre

Le gain statique : k=15

La constante de temps: =0.5

63
Partie 3 : Solution des TP Proposés

Exercice N°2 : (impulse ; step ; lsim) ;

1/Tracer la réponse impulsionelle :

u(t) H(p) y(t)

Réponse temporelle

y(t)=L-1 h(p) = L-1(k/ ζ (p+1))= k/  *exp(-t/ )

= L-1(15/0.5(p+1/ 0.5))= 15/ 0.5*exp(-t/ 0.5)

y(t) = 30*exp(-2*t); on peut utilisé la commande step

Impulse Response
30

25

n1=[15]
20

d1=[0.5 1]
Amplitude

15

h1=tf(n1,d1)
10
impulse(sd1)
5

0
0 0.5 1 1.5 2 2.5 3 3.5
Time (sec)

Impulse Response
30

25

20
N2=[15]
Amplitude

D2=[0.5 1] 15

H2=tf(N2,D2)
10

impulse(H2), grid
5

0
0 0.5 1 1.5 2 2.5 3
Time (sec)

64
Partie 3 : Solution des TP Proposés

2/ tracer la réponse indicielle (entrée échelon) :

U(t) AK

1+
t

Step Response
30

k=15
25

d1=[0.5 1]
20

h=tf(k,d1)
Amplitude

15

%pour entrée échelon 10

a=2
5

step(h*a), grid
0
0 0.5 1 1.5 2 2.5 3
Time (sec)

La constante du temps :  =0.5


Le gain statique : k=15

Y(t)= h(p)*u(t) =k/(1+  p) * A/p

= AK *1/P(1+  p)

=30 *1/p(1+0.5p)=C1/P+C2/1+0.5P

C1=1 C2=-0.5

Y(t)=AK(1-exp(-t/ ))
Y(t)=2*15(1/p-0.5/0.5(p+1/0.5))
Y(t)= 30*(1-exp(-2*t))

65
Partie 3 : Solution des TP Proposés

Exercice N°3 : ( lsim) ;

1/ tracer la réponse suite a une entrée sinusoïdale u(t)= 2*sin(4*t+pi/4) :

Linear Simulation Results


20

15

clf 10

t = 0:0.01:4; 5

Amplitude
0
u = 2*sin(4*t+pi/4)
-5

lsim(h,u,t),grid -10

-15
0 0.5 1 1.5 2 2.5 3 3.5 4
Time (sec)

2/ la réponse indicielle de h2(p)=10/(100p2+526p+82) ; h3(p)=10/p+0.161

h2(p)=10/(100p2+526p+82)
Step Response
0.14

0.12

0.1

n2=10
0.08
Amplitude

d2=[100 526 82]


0.06

h2=tf(n2,d2) 0.04

step(h2),grid 0.02

0
0 5 10 15 20 25 30 35 40
Time (sec)

66
Partie 3 : Solution des TP Proposés

h3(p)=10/p+0.161 :
Step Response
70

60

n3=10
50

d3=[1 0.161] 40

Amplitude
h3=tf(n3,d3) 30

20

step(h3),grid 10

0
0 5 10 15 20 25 30 35 40
Time (sec)

Dans ces deux réponses nous remarquons que leurs aspects et valeurs finales,
sont presque identiques (malgré h2 est de deuxième ordre et h3 est de premier ordre),
cela est traduit par : la présence d'un pôle dominant (p1= -0.1608) dans le système de
deuxième ordre qui va éliminer l’effet du deuxième pôle p2= -5.0992

pole(h2)
ans =

-5.0992
-0.1608
>> pole(h3)
ans =

-0.1610

67
Partie 3 : Solution des TP Proposés

TP N°7 : Analyse Fréquentielle du Système Premier Ordre.

1/Tracer l’entrée sinusoïdale u(t)=2sin(4t+pi/4)pourt=[0 :4*pi] :

1.5

t=0:0.01:4*pi; 0.5

u=2*sin(4*t+pi/4); -0.5

-1
plot(t,u) -1.5

-2
0 2 4 6 8 10 12 14

2/tracer la réponse du système en utilisant la commande Hold :

hold on
n=[1]; Linear Simulation Results
2

d=[0.5 1];
1.5

h=tf(n,d) 1

Transfer 0.5

function :
A m plitud e

1 -0.5

--------- -1

0.5 s + 1 -1.5

-2
0 2 4 6 8 10 12 14
Time (sec)

lsim(h)
lsim(h,u,t)
grid

68
Partie 3 : Solution des TP Proposés

3/diagramme de Bode

Bode(h)

grid

Bode Diagram
0

-5

-10
Magnitude (dB)

-15

-20

-25

-30

-35
0
Phase (deg)

-45

-90
-1 0 1 2
10 10 10 10
Frequency (rad/sec)

4/tracer le lieu de Nyquist :

nyquist(h)

grid
Nyquist Diagram
0.5

0.4

0.3

0.2

0.1
Imaginary Axis

-0.1

-0.2

-0.3

-0.4

-0.5
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real Axis

69
Partie 3 : Solution des TP Proposés

5/tracer l’abaque de Nichols :

nichols(h)

grid

Nichols Chart
40

0 dB

30 0.25 dB

0.5 dB

20 1 dB
-1 dB

10 3 dB
-3 dB
Open-Loop Gain (dB)

6 dB

0 -6 dB

-10 -12 dB

-20 dB
-20

-30

-40 dB
-40
-360 -315 -270 -225 -180 -135 -90 -45 0
Open-Loop Phase (deg)

6/tracer le lieu de racine en utilisant la commande ‘rlocus’ :

rlocus(h)

grid

Root Locus
0.4
0.999 0.997 0.995 0.988 0.97 0.88

0.3

0.2

1
0.1
Imaginary Axis

7 6 5 4 3 2 1
0 1

-0.1
1

-0.2

-0.3

0.999 0.997 0.995 0.988 0.97 0.88


-0.4
-8 -7 -6 -5 -4 -3 -2 -1 0 1
Real Axis

70
Partie 3 : Solution des TP Proposés

7/déduire le gain et la Bode Dia gram


0 System: h
phase: Frequency (rad/sec): 3.98
-5 Magnitude (dB): -6.96

-10

M a g n it u d e ( d B )
-15

Pour w=4 rad/s


-20

-25
Magnitude= -7 dB
-30

Phase= -63 degrés -35


0
P h as e (de g)

-45

System: h
Frequency (rad/sec): 3.94
Phase (deg): -63
-90
-1 0 1 2
10 10 10 10
Frequency (rad/sec)

8/déduire la réponse pour w=4rad/s:

-7dB=20 logl0(y/hl)

-7/20= logl0(y/hl)

10^(-7/20)=y/2

Y=2*10^(-0.35)

= 0.8934

71
Partie 3 : Solution des TP Proposés

Solution TPN°8 : Circuit RLC


Exercice 1

Un système fondamentale du second d’ordre est régit ou défini par l’équation


différentielle suivante

̈ + 2 ̇ +  = 

La fonction de transfert du système second d’ordre est obtenue à partir de


l’équation différentielle en appliquant la transformée de Laplace

( ) 
H(p)= =
( )   R L
Avec

 : est le facteur d’amortissement


uet C ust
 ∶

K : le gain statique

U : l’entrée

Y : la sortie

Pour un circuit RLC après l’application de loi de Kirchhoff nous obtenons l’équation
différentielle suivante :

̈ + ̇ + =

 
n2
TL 1 


p p 2 2 p 2
n n 
1 
1
1  2

e
n 
t

sin n 1 2 
t  


 arccos  Avec Us la tension de sortie et Ue la tension d’entrée

72
Partie 3 : Solution des TP Proposés

Après transformation de Laplace La fonction de transfert est donnée comme


suit

H(p)= =

Par comparaison de 8.2 et 7.3 on trouve =1/sqrt(LC)

 = ( /2)*(sqrt(C/L))
k=1

la condition sur les paramètres RLC pour que le facteur d’amortissement <1
est (R*sqrt(LC))<2*L

Exercice 02
72
Pour un circuit RLC qui a une FT donnée par H 2 ( p )  2
( p 6 p 36)
sa réponse indicielle est donnée par :
réponse à un echelon d'un circuit RLC TP8
2.5
System: sys1
Time (seconds): 1.63
Amplitude: 2
2

1.5
Amplitude

0.5

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
Time (seconds)

73
Partie 3 : Solution des TP Proposés

Graphiquement le dépassement est calculé à partir de la réponse indicielle, il


est donné par

(∞)
% = 100 ∗ (∞) ( )
Graphiquement le dépassement D% est presque 16.5%


Analytiquement % = 100 ∗ exp ( 
)=16.303%

Les valeurs trouvées graphiquement et théoriquement sont presque les mêmes.

num1=72
den1=[1 6 36]
sys1=tf(num1,den1)
step(sys1)
%calcul du coefficient d'amortissement Z et de la pulsation naturelle
Wn
[wn,z]=damp(sys1)
%%le dépassement analytiquement
D=100*exp((-z(1)*pi)/sqrt(1-z(1).^2))

Solution TPN°9 : Système Masse-Ressort.


Exercice 01

Pour un système mécanique masse ressort figée a un mur son équation


différentielle est donné comme suit

̈+ ̇+ = k (9.1)
f
Avec Z le déplacement de la masse, M la valeur
M
de la masse, f est le coefficient de frottement r
F
visqueux et K la raideur du ressort,
z
La fonction de transfert est donnée comme suit

74
Partie 3 : Solution des TP Proposés

/
H(p)= = .

Par comparaison de 9.2 et 8.2 on trouve


n=sqrt(K/M)
 = /(2*(sqrt(M*K)))
k=1

la condition sur les paramètres K, M, f pour que le facteur d’amortissement <1 est
f<(2*sqrt(M*K)) ou M>(f2/(2*k))

Exercice 2 :

Pour un système Masse-ressort qui a une FT donnée par


72
H 2 ( p)  2
( p 6 p 36)
En comparant avec 9.1

le gain statique k=2;



K/M=36 alors k=36M, f/M=2 =2*.5*6=6 alors f=6M

Finalement pour M=10 Kg, on aura

f=60 K=360 (ces valeurs sont fictifs)

Le programme du système mécanique est de la même façon que celui du circuit RLC.

75
Partie 3 : Solution des TP Proposés

Solution des TPN°10 Systèmes Second Ordre


Comparaison Système RLC mécanique
Exercice N°1

Tracé de la réponse indicielle pour différentes valeur de


= 0.25,0.5, 0.707, 1 2

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%
%%%tracé des réponses d'un système mécanique pour différentes valeurs de ksi
%%%Tp réalisé par la promotion licence contrôle 2013/2014
%%% dans Le circuit RLC, les valeurs de R, L et C sont proposées
%%% de manière à avoir des "ksi=R/(2*sqrt(C/L))= 0.25,0.5, 0.707, 1, 2
clear all
clc
r=2
l=0.05e-3
c=3.125e-6
ksi1=r/(2*sqrt(c/l))
num=1/(l*c)
den=[ 1 r/l 1/(l*c)]
h=tf(num,den)

%%%%%%%%%%%%%%%%%%%%%%%
r1=4
l1=0.05e-3
c1=3.125e-6
ksi2=r1/(2*sqrt(c1/l1))
num1=1/(l*c)
den1=[ 1 r1/l 1/(l*c)]

76
Partie 3 : Solution des TP Proposés

h1=tf(num1,den1)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
r2=5.656
l2=0.05e-3
c2=3.125e-6
ksi3=r2/(2*sqrt(c2/l2))
num2=1/(l*c)

den2=[ 1 r2/l 1/(l*c)]


h2=tf(num2,den2)
%%%%%%%%%%%%%%%%%%%%%%%%%%%
r3=8
l3=0.05e-3
c3=3.125e-6
ksi4=r3/(2*sqrt(c3/l3))
num3=1/(l*c)
den3=[ 1 r3/l 1/(l*c)]
h3=tf(num3,den3)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
r4=16
l4=0.05e-3
c4=3.125e-6
ksi5=r4/(2*sqrt(c4/l4))
num4=1/(l*c)
den4=[ 1 r4/l 1/(l*c)]
h4=tf(num4,den4)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

77
Partie 3 : Solution des TP Proposés

clear figure
figure(1)
title ('Réponse indicielle : système électrique')
step(h,'b')
hold on
step(h1, 'r')
step(h2, 'g')
step(h3, 'c')
step(h4, 'r*')
grid
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
%%%tracé des diagrammes de Bode pour différentes valeurs de ksi
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
figure(2)
grid
title ('diagramme de bode : système électrique')
bode(h)
hold on
bode(h1,'r')
bode(h2,'g')
bode(h3,'o')
bode(h4,'m')
figure(3)
grid
title('les valeurs de KSI : système électrique ')
plot([ksi1 ksi2 ksi3 ksi4 ksi5],'r')

78
Partie 3 : Solution des TP Proposés

Réponse indicielle : système électrique


1.5

System: h2
Time (sec): 5.19e-005
Amplitude: 1.04

1
Amplitude

0.5

0
0 1 2 3 4
Time (sec) -4
x 10
diagramme de bode : système électrique
20

0
System: h
Frequency (rad/sec): 7.61e+004
Magnitude (dB)

-20
Magnitude (dB): 6.23
-40

-60

-80

-100
0

-45
Phase (deg)

-90

-135

-180
3 4 5 6 7
10 10 10 10 10
Frequency (rad/sec)

79
Partie 3 : Solution des TP Proposés

les différentes valeurs de KSI : système électrique


35

30

25

20

15

10

0
1 1.5 2 2.5 3 3.5 4 4.5 5

Tracé de la réponse indicielle du système mécanique pour différentes valeurs de


= . , . , . ,

Partant par le même principe du circuit électrique étudié précédemment, nous


avons fixé la masse et la raideur mais on a changé le coefficient de frottement f pour
avoir des réponses similaire au circuit RLC.

Les résultats obtenus avec des coefficients visqueux fictifs (les valeurs
proposées sont pas pratiques et se sont de type benchmark)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%
%%%tracer des réponses d'un système mécanique pour différentes
valeurs de ksi
%%%Tp réalisé par la promotion licence contrôle 2013/2014
%%% La masse et le coefficient de frottement et la raideur sont
proposés
%%% d'une manière à avoir des "ksi=f/(2*sqrt(k*m))" 0.25,0.5, 0.707,
1, 2
clear all
80
Partie 3 : Solution des TP Proposés

clc
f=2
m=0.05e-3
k=320000
ksi1=f/(2*sqrt(k*m))
num=k/m
den=[ 1 f/m k/m]
h=tf(num,den)
%%%%%%%%%%%%%%%%%%%%%%%
f1=4
m1=0.05e-3
k1=320000
ksi2=f1/(2*sqrt(k1*m1))
num1=k/m
den1=[ 1 f1/m1 k1/m1]
h1=tf(num1,den1)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
f2=5.656
m2=0.05e-3
k2=320000
ksi3=f2/(2*sqrt(k2*m2))
num2=k2/m2
den2=[ 1 f2/m2 k2/m2]
h2=tf(num2,den2)

%%%%%%%%%%%%%%%%%%%%%%%%%%%
f3=8
m3=0.05e-3

81
Partie 3 : Solution des TP Proposés

k3=320000
ksi4=f3/(2*sqrt(k3*m3))
num3=k3/m3
den3=[ 1 f3/m3 k3/m3]
h3=tf(num3,den3)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
f4=16
m4=0.05e-3
k4=320000
ksi5=f4/(2*sqrt(k4*m4))
num4=k4/m4
den4=[ 1 f4/m4 k4/m4]
h4=tf(num4,den4)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear figure
figure(1)
step(h,'b')
title('réponse indicielle: système mécanique Masse ressort')
hold on
step(h1, 'r')
step(h2, 'g')
step(h3, 'c')
step(h4, 'r*')
grid
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
%%%tracé des diagrammes de bode pour différentes valeurs de ksi
82
Partie 3 : Solution des TP Proposés

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
figure(2)
title ('diagramme de Bode : système mécanique')
bode(h)
hold on
bode(h1,'r')
bode(h2,'g')
bode(h3,'o')
bode(h4,'m')
grid
figure(3)
grid
title('les valeurs de KSI')
plot([ksi1 ksi2 ksi3 ksi4 ksi5],'r')

réponse indicielle: système mécanique Masse ressort


1.5

1
Amplitude

0.5

0
0 1 2 3 4
Time (sec) -4
x 10

83
Partie 3 : Solution des TP Proposés

diagramme de bode : système mécanique


20

Magnitude (dB)
-20

-40

-60

-80

-100
0

-45
Phase (deg)

-90

-135

-180
3 4 5 6 7
10 10 10 10 10
Frequency (rad/sec)

On remarque que les valeurs de ξ influent beaucoup sur la réponse


temporelle indicielles. A chaque fois que la valeur de ξ baisse le dépassement
augmente

Prenant l’exemple de ξ =0.25 le dépassement est égale a 43%

Pour l’exemple de ξ =0.5 le dépassement est égale a 12.33%

Systèmes Electrique

figure(4)
grid
title ('diagramme de nichols : système électrique')

nichols(h)
hold on
nichols(h1,'r')
nichols(h2,'g')
nichols(h3,'o')

84
Partie 3 : Solution des TP Proposés

nichols(h4,'m')

figure(5)
grid
title ('diagramme de nyquist : système électrique')

nyquist(h)
hold on
nyquist(h1,'r')
nyquist(h2,'g')
nyquist(h3,'o')
nyquist(h4,'m')
Nichols Chart
20

-20
Open-Loop Gain (dB)

-40

-60

-80

-100
-180 -135 -90 -45 0 45
Open-Loop Phase (deg)

85
Partie 3 : Solution des TP Proposés

Nyquist Diagram
2.5

1.5

0.5
Imaginary Axis

-0.5

-1

-1.5

-2

-2.5
-1 -0.5 0 0.5 1 1.5
Real Axis

On remarque que les réponses des systèmes mécanique et électrique sont


identiques mais leurs sens physique sont différents. Ceci est expliqué par la maniére
suivante :
Deux systèmes qui possèdants les mêmes pôles ont les mêmes dynamiques,
mais leurs amplitudes ne reflètent pas les mêmes dimensions.
En conclusion l'interprétation physique des réponses sont distinctes : pour le
système mécanique la réponse temporelle est une distance z(t), par contre pour le
système électrique, la réponse temporelle est la tension du condensateur Vc(t).

86
Partie 3 : Solution des TP Proposés

SOLUTION TP N°11 : STABILITE DES SYSTEMES


ASSERVIS

Le programme proposé est donnée par :


%%%%%% TP N°11 stabilité des systèmes linéaires
close all
clc
clear all

num1=[1 1]
den1=[1 2 3]
num2=[10]
den2=[2 -3]
sys1=tf(num1,den1)
sys2=tf(num2,den2)
step(sys1)
step(sys2)
%%%%% retour unitaire des systèmes sys1 et sys2

sys3=feedback(sys1*sys2,1)

%%%%%% retour de sys2 sur la chaine de retour


sys4=feedback(sys1,sys2)
%%%%% la réponse indicielle et l'instruction pole montrent la stabilité des
%%%%%% systèmes
step(sys3)
step(sys4)
pole(sys3)
pole(sys4)

87
Partie 3 : Solution des TP Proposés

%%%%%%%%%%un retour unitaire sur sys2 stabilise le système


sys5=feedback(sys2,1)
step(sys5)
grid
title('TP11 : retour unitaire du système2')

TP11 : retour unitaire du système2


1.5

1
Amplitude

0.5

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
Time (seconds)

1. L’instruction « pole » donne des pôles à partie réelles négatives, donc le


système est stable
2. La réponse indicielle si elle tend vers une valeur finie prouve aussi la
stabilité globale du système en boucle fermé.
3. La table de Routh [2] c’est une méthode analytique pour vérification de la
stabilité, nous effectuons la table puis nous nous vérifions la première
colonne, si elle change de signe, alors le système n’est pas stable, sinon il est
stable.

88
Partie 3 : Solution des TP Proposés

Solution TPN°12 : manipulation du Simulink


les structures proposées dans cette simulation utilisent les blocs source, sinks,
continous donnée par la figure suivante

les fonctions de transfert sont créées à partir du bloc continous

Les signaux sont générés par sources

89
Partie 3 : Solution des TP Proposés

L'affichage est donné par le bloc sinks

 IL faut noter que le bloc Scope doit être configurer d'une manière précise
pour que le graphe de simulation donne des résultats clairs. Pour le cas
simple, on doit donner le nombre de graphe à afficher, (Number of axes=4).

 Une autre chose importante c'est que le graphe simulé peut être
enregitrer dans l'espace de travail Matlab avec un nom d'une variable
si on coche la case "save data to workspace".
 "Limit data points to last" ce sont les derniers points à afficher après
chaque simulation. Le nombre de points dans cette case doit être
suffisament grand, pour que le graphe de la simulation soit complet et
claire.

90
Partie 3 : Solution des TP Proposés

Les résultats de simulation des quatres structure demandés dans le TP sont


données par la figure suivante :

91
Partie 3 : Solution des TP Proposés

On rappelle que pour pouvoir simuler cette structure on doit régler les
paramètres de simulation :

1. L'horizon de simulation ou le temps de simulation


2. Le pas de simulation qui sera soit variable ou fixe
3. La tolerence
4. La méthode de l'intégration

92
Conclusion générale

Conclusion Générale
Dans ce document nous avons présenté l'essentiel du logiciel
Matlab et son logiciel associé Simulink avec une proposition d'un
ensemble de TP Matlab destinés aux enseignants ainsi que les étudiants
en licence et master nécessitant une connaissance sur des systèmes
asservis linéaires continus.
Dans les prochaines éditions de ce livre nous allons enrichir son
contenu, en ajoutant d’autre type et genre d’exercices qui seront
bénéfiques et utiles pour d'autres disciplines, en proposant à chaque
fois d'autres TP avec leurs solutions.
Vos remarques et questions seront les bienvenues. Contactez
nous sur l'e-mail suivant :

salim.aissi@gmail.com

93
Conclusion générale

94
Bibliographie

BIBLIOGRAPHIE
[1]. Site éditeur de logiciels Matlab : www.mathworks.com
[2]. Cours d'asservissement système linaire et continu Pr. Saidi Lamir
Université de Batna2
[3]. Précision des systèmes continus asservis Thierry CHATEAU 24
octobre 2010
[4]. Stabilité Des Systèmes Linéaires Continus t. Chateau, polytech cf
[5]. Cours d'automatique Professeur Belkacem OULD BOUAMAMA Ecole
Polytechnique de Lille LAGIS UMR CNRS 8146
[6]. Simulation des systèmes continus INSA de LYON 3GI 2005-2006
Lounis Adouane (tp1)
[7]. Simulation des systèmes continus INSA de LYON 3GI 2005-2006
Lounis Adouane (tp2)
[8]. Support du cours LCS Langage du calcul scientifique (Matlab)
Université Abderrahmane MIRA de Bejaia Département ST
[9]. tp n°1 travaux pratiques d’automatique au 41 : commande classique des
systèmes linéaires, Fournie Guillaume, Dufrene Johann ING 2 – ep
[10]. TP1 Régulation AuroFC1U1 Exercice d’application Polythèque’
Clermont-Ferrand : Auro-1
[11]. TP1 : Etude temporelle des systèmes linéaires continus 1/2 TP1
AuroFC1U1
[12]. http://blogmatlab.blogspot.com/search/label/ebooks
[13]. polycopies Tps systèmes asservis Université de Caen basse Normandie
pour L3 SPI EII
[14]. Ecole Nationale Supérieure de Physique de Strasbourg, FIP, 1ère
Année Laurent Barbé et Benjamin MAURIN – 2005-2006
95
Edition GANA
126,Lgts Batna Tél. 0561279565 Fax : 033 25 30 25
E.mail : dar_gana@yahoo.fr

96

Vous aimerez peut-être aussi