0% ont trouvé ce document utile (0 vote)
4 vues16 pages

Travaux Pratiqes Régulation: Master 2025-2026

Le document décrit les règles et le déroulement des séances de travaux pratiques pour le Master 2025-2026, soulignant l'importance de la présence, de la ponctualité et de l'utilisation de Matlab. Il détaille également les procédures pour justifier les absences, les attentes en matière de comportement et les équipements nécessaires pour les examens. Enfin, il présente une initiation à Matlab, couvrant son environnement, les bases de la programmation et des exercices pratiques.

Transféré par

56n2m9twgd
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues16 pages

Travaux Pratiqes Régulation: Master 2025-2026

Le document décrit les règles et le déroulement des séances de travaux pratiques pour le Master 2025-2026, soulignant l'importance de la présence, de la ponctualité et de l'utilisation de Matlab. Il détaille également les procédures pour justifier les absences, les attentes en matière de comportement et les équipements nécessaires pour les examens. Enfin, il présente une initiation à Matlab, couvrant son environnement, les bases de la programmation et des exercices pratiques.

Transféré par

56n2m9twgd
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TRAVAUX PRATIQES

Régulation

Pr. T. BELHOUSSINE DRISSI

Master
2025-2026
Page | 1
Déroulement des séances de travaux pratiques

Déroulement des séances de travaux pratiques

 La présence aux travaux pratiques est obligatoire. Toute absence par séance non justifiée entraînera une
sanction de 1 point, qui sera prise en compte dans le calcul de la note final d’élément.
 La justification d’absence doit parvenir à l’enseignant responsable dans les deux jours ouvrables qui
suivent le jour d’absence à la séance sous peine d’être rejetée.
 2 absences avec ou sans justifications entrainent la non validation de l’élément (note 0/20).
 L’étudiant doit se présenter aux lieux des travaux pratiques à l’heure indiquée dans l’emploi du temps.
Si non, l’étudiant ne sera pas autorisé à suivre la séance.
 Les groupes en travaux pratiques sont établis, en ordre alphabétique, par l’enseignant responsable.
L’étudiant est tenu de respecter son affectation dans le groupe affichée en début de semestre et de faire
preuve de ponctualité à toutes ses séances pédagogiques.
 Les travaux pratiques se déroulent à titre individuels ou par binôme. Chaque étudiant doit
impérativement posséder un ordinateur portable personnel et du logiciel Matlab.
 L’étudiant ne doit pas communiquer avec les autres étudiants.
 L’utilisation du téléphone portable et du MP3 est strictement interdite et doivent être en position éteinte.
 En cas de non-respect de ces règles, l’étudiant ne sera pas autorisé à suivre la séance.
 Pour le bon déroulement de l’examen, l’étudiant doit s’équiper de tout le matériel autorisé qui lui permet
de composer dans les meilleures conditions (ordinateur, stylos, crayons, blanco, gomme, calculatrice
etc…). Aucun emprunt n’est autorisé.
 Durant le déroulement de l’examen, toute tentative de fraude expose l’étudiant à un zéro et à des
sanctions disciplinaires.

Page | 2
Table des matières
Déroulement des séances de travaux pratiques ................................................................................................. 2

TP 0 : Initiation à Matlab................................................................................................................................... 4

TP 1 : Utilisation liée à l’automatique : Généralités........................................................................................ 10

TP 2 : Modélisation et analyse dynamique des systèmes logistiques à l’aide de Matlab et de l’automatique


................................................................................................................................ Erreur ! Signet non défini.

TP 3 : Analyse de la dynamique et de la stabilité des systèmes logistiques en boucle fermée à l’aide de Matlab
................................................................................................................................ Erreur ! Signet non défini.

TP 4 : Synthèse et régulation d’un système logistique par un correcteur PI discret basé sur des expérimentations
et simulations .......................................................................................................... Erreur ! Signet non défini.

TP 5 : Optimisation des processus de distribution et de gestion des stocks avec MatlabErreur ! Signet non
défini.

TP 6 : Simulation des chaînes d'approvisionnement avec Matlab .......................... Erreur ! Signet non défini.

Solution TP 1 .......................................................................................................... Erreur ! Signet non défini.

Solution TP 2 .......................................................................................................... Erreur ! Signet non défini.

Solution TP 3 .......................................................................................................... Erreur ! Signet non défini.

Solution TP 4 .......................................................................................................... Erreur ! Signet non défini.

Solution TP 5 .......................................................................................................... Erreur ! Signet non défini.

Solution TP 6 .......................................................................................................... Erreur ! Signet non défini.

Page | 3
TP 0 : Initiation à Matlab

TP 0 : Initiation à Matlab

Note importante : Assurez-vous de prendre des notes claires et détaillées concernant les réponses et les
commentaires liés aux questions abordées dans ce texte. Une bonne compréhension des tâches à réaliser
lors de ce TP est essentielle pour garantir une progression efficace lors des séances suivantes. Il est
également conseillé de consigner les éventuelles difficultés rencontrées afin de mieux les résoudre à
l'avenir.

I- Le logiciel Matlab

I-1- Introduction

Le terme Matlab est une abréviation de l'expression Matrix Laboratory. Il s'agit d'un environnement
intégré conçu pour les calculs scientifiques et techniques. Le langage interprété de Matlab repose
entièrement sur l’algèbre matricielle, dans laquelle les objets fondamentaux manipulés sont des
matrices et des valeurs scalaires. Cette orientation matricielle fait de Matlab un outil particulièrement
adapté aux problèmes numériques complexes.

I-2- Accéder à Matlab

Pour accéder à l'environnement Matlab, il suffit de double-cliquer sur l'icône « Matlab » située sur le
bureau de Windows. Si l'icône n'est pas visible, une recherche rapide dans le menu « Démarrer »
permettra également de lancer le logiciel. Une fois lancé, Matlab ouvre par défaut son interface
principale, appelée « Desktop Matlab », qui regroupe plusieurs outils essentiels comme la fenêtre de
commandes, l'explorateur de fichiers et l'éditeur de scripts. Si nécessaire, il est également possible
d'ouvrir Matlab via un raccourci présent dans la barre des tâches ou en utilisant une commande dans un
terminal, selon les configurations système.

I-3- Bref descriptif de l’environnement Matlab

L’environnement Matlab se compose principalement de trois fenêtres essentielles :


 La fenêtre « Command Window » : Cette fenêtre est l'espace principal d'interaction avec
Matlab. Après le double chevron « >> » appelé prompt, vous pouvez saisir et exécuter une
commande ou une série d'instructions en langage Matlab. C'est ici que se déroulent la
majorité des opérations.
 La fenêtre « Command History » : Elle affiche un historique des commandes exécutées
dans la Command Window. Cet historique peut inclure des commandes saisies lors des
sessions précédentes ou celles utilisées dans la session actuelle. Il est particulièrement utile
pour répéter ou modifier rapidement une commande déjà testée.
 La fenêtre « Workspace » : Cette fenêtre présente deux onglets :
 L’onglet « Workspace » liste toutes les variables actuellement utilisées dans votre
programme.
 L’onglet « Current Folder » affiche le répertoire de travail actuel. Ce répertoire
contient les fichiers sources avec l’extension « .m », lesquels sont nécessaires pour
Page | 4
TP 0 : Initiation à Matlab

exécuter des scripts ou fonctions Matlab. Vous pouvez changer ce répertoire en


cliquant sur l’icône « … » et en sélectionnant un nouveau chemin dans
l’arborescence qui s’affiche.
Fonctionnalité importante « l’aide en ligne » : En cas de difficulté, l’aide en ligne de Matlab est un
outil précieux. Pour y accéder, cliquez sur le sous-menu « Matlab Help » dans l’onglet « Help » du
menu principal. Avant de solliciter l’assistance de votre enseignant, pensez à explorer cette
documentation qui couvre une multitude de sujets et fournit des exemples pratiques.

I-4- Deux façon d’éditer/exécuter un script Matlab

Il existe deux méthodes principales pour créer et exécuter un script en langage Matlab :
I-4-1- A partir de la Command Windows
Cette méthode est directe et rapide. Vous pouvez saisir les instructions directement dans la Command
Window après le prompt « >> » et les exécuter en appuyant sur la touche Entrée. Cette approche est
idéale pour tester des commandes simples ou effectuer des calculs ponctuels.
I-4-2- A partir d’un éditeur de texte
Cette méthode est recommandée pour créer et exécuter des scripts plus complexes. Voici les étapes
détaillées :
1. Ouvrir l’éditeur Matlab : Accédez à l’éditeur via le menu principal File → sous-menu New →
sous-menu M-File.
2. Saisir les instructions : Tapez les instructions Matlab dans l’éditeur. Assurez-vous que chaque
ligne respecte la syntaxe Matlab.
3. Sauvegarder le fichier : Enregistrez votre script sous un nom de fichier avec l’extension .m (par
exemple, mon_script.m).
4. Vérifier le répertoire courant : Avant d’exécuter votre script, assurez-vous que le Current
Folder de Matlab correspond au répertoire où le fichier a été enregistré. Si nécessaire, modifiez
le répertoire courant en cliquant sur le chemin d’accès dans la barre supérieure et en sélectionnant
le bon dossier.
5. Exécuter le script : Dans la Command Window, saisissez le nom du fichier sans l’extension .m
(par exemple, mon_script), puis appuyez sur Entrée. Matlab exécutera alors la série d’instructions
contenues dans le fichier.

II- Quelques éléments de bases de la programmation sous Matlab

1. Calculez l'expression suivante . Pour cela, entrez cette expression dans la fenêtre de
commandes MATLAB et examinez le résultat affiché. Expliquez ce qui est affiché dans la fenêtre
de commandes.
(4*exp(2)+1)/60

2. Reprenez le calcul de , mais cette fois, ajoutez un point-virgule (;) à la fin de l'instruction.
Entrez cette nouvelle commande et expliquez ce qui se passe au niveau de l’affichage dans la
fenêtre de commandes.
(4*exp(2)+1)/60 ;
3. Après avoir effectué un calcul, MATLAB conserve automatiquement le résultat sous le nom de
variable ans. Saisissez la commande ans dans la fenêtre de commandes et observez le résultat.
Expliquez ce que cela signifie.
ans
4. Réalisez un nouveau calcul, par exemple 6+1, puis entrez la commande ans dans la fenêtre de
commandes. Que représente le symbole ans dans ce cas, et quel résultat est obtenu ?

Page | 5
TP 0 : Initiation à Matlab

6+1 ;
ans

5. Effectuez à nouveau le calcul , mais cette fois, stockez le résultat dans une variable appelée
𝑥. Après avoir effectué cette opération, saisissez 𝑥 dans la fenêtre de commandes pour vérifier sa
valeur. Interprétez le résultat affiché.
x = (4*exp(2)+1)/60 ;
x

6. Affectez à la variable 𝑥 la valeur du complexe où 𝑗 représente l'unité imaginaire et sqrt est la



fonction racine carrée. Vérifiez le contenu de 𝑥 en saisissant 𝑥 dans la fenêtre de commandes et
expliquez la signification du résultat.
x = (1+j)/sqrt(2) ;
7. Créez une nouvelle variable 𝑦 pour stocker le module du nombre complexe 𝑥 en utilisant la
fonction abs(). Affichez le résultat de 𝑦 et expliquez ce qu'il représente.
y = abs(x) ;
8. Enfin, calculez le rapport de et stockez le résultat dans la variable 𝑧. Affichez la valeur de z et
interprétez le résultat.
z = x/y ;

III- Calcul matriciel élémentaire

III-1- Vecteur ligne

1. Créez un vecteur ligne 𝑣 = [0 5 + 3𝑗 2 4 1] en saisissant la commande suivante dans


MATLAB. Affichez-le pour observer sa structure.
v = [0 5+3*j 2 4 1]
2. Utilisez la commande transpose(v) pour obtenir la transposée du vecteur ligne 𝑣, et stockez-le
dans une nouvelle variable 𝑣1. Affichez 𝑣1 pour vérifier le résultat.
v1 = transpose(v)
3. Saisissez la commande suivante pour obtenir la transposée du vecteur 𝑣′ et stockez-le dans 𝑣2.
Affichez le résultat et commentez la différence avec la commande précédente.
v2 = v’
4. Quelle est la différence entre les deux commandes précédentes ? Que remarquez-vous lorsque
vous examinez 𝑣1 et 𝑣2 ?
5. Créez une variable scalaire 𝑎 = 2, puis multipliez le vecteur 𝑣 par ce scalaire et stockez le résultat
dans 𝑣3. Affichez 𝑣3 et discutez du résultat.
a=2;
v3 = a*v
6. Qu’observez-vous lorsque vous multipliez un vecteur par un scalaire ?
7. Créez un second vecteur ligne 𝑠 = [−1 + 2𝑗 2 − 3 1 − 7], puis effectuez une multiplication
élément par élément de 𝑠 et 𝑣 en utilisant l’opérateur « .* ». Stockez le résultat dans 𝑘1.
k1 = s.*v

Page | 6
TP 0 : Initiation à Matlab

8. Que représente l’opérateur « .* » ? Quelles différences remarquez-vous par rapport à une


multiplication matricielle classique ?

III-2- Vecteur colonne

0
⎡5 + 3𝑗⎤
⎢ ⎥
1. Créez un vecteur colonne 𝑤 = ⎢ 2 ⎥ en saisissant la commande suivante dans MATLAB.
⎢ 4 ⎥
⎣ 1 ⎦
Affichez le vecteur pour vérifier sa structure.
w = [0 ; 5+3*j ; 2 ; 4 ; 1]
2. Utilisez la commande transpose(w) pour obtenir la transposée du vecteur colonne 𝑤, et stockez
le résultat dans la variable 𝑤1. Affichez 𝑤1 et vérifiez si vous avez bien un vecteur ligne.
w1 = transpose(w)
3. Saisissez la commande suivante pour obtenir la transposée du vecteur colonne 𝑤 et stockez le
résultat dans 𝑤2. Affichez le résultat et comparez-le avec celui de la commande précédente.
w2 = w’
4. Quelle est la différence entre la commande transpose(w) et l’utilisation de l’opérateur w' ?

III-3- Matrices

2+𝑖 1 −3
On se propose de créer la matrice 𝑀 = de différentes façons :
5 1 − 4𝑖 −1
2+𝑖 1 −3
1. Créez la matrice suivante : 𝑀 = . Saisissez la commande suivante dans
5 1 − 4𝑖 −1
MATLAB pour créer la matrice 𝑀. Affichez ensuite la matrice.
M = [2+i 1 -3 ; 5 1-i*4 -1]
2. Créez deux vecteurs lignes : 𝑢 = [2 + 𝑖 1 −3] et 𝑣 = [5 1 − 4𝑖 −1]. Ensuite, utilisez ces
vecteurs pour créer la matrice 𝑀1 en les combinant sous forme de lignes. Saisissez la commande
et affichez la matrice.
M1 = [u ; v]
2+𝑗 1 −3
3. Créez trois vecteurs colonnes : 𝑢 = ,𝑣= et 𝑤 = Ensuite, combinez-les
5 1 − 4𝑗 −1
pour former la matrice 𝑀2. Saisissez la commande et affichez la matrice.
M2 = [u v w]
4. Utilisez les commandes suivantes pour accéder à certains éléments de la matrice 𝑀 et vérifier les
résultats :
 𝑎 : élément de la 2e ligne et de la 1re colonne de 𝑀
 𝑏 : 2e colonne de la matrice 𝑀
 𝑐 : 3e ligne de 𝑀
a = M(2,1)
b = M(:,2)
c = M(3,:)
5. Que remarquez-vous en accédant aux éléments d'une matrice avec les indices et les symboles : ?

Page | 7
TP 0 : Initiation à Matlab

6. Calculez et affichez la matrice transposée de 𝑀 en utilisant la commande « transpose » ou


l'opérateur '.
7. La matrice adjointe (ou conjugée transposée) de 𝑀 peut être calculée en utilisant la commande
conj( ) et transpose( ). Calculez et affichez la matrice adjointe de 𝑀.

III-4- Quelques applications

1
1. Créez un vecteur ligne 𝑢 = [0 1 4 − 3] et un vecteur colonne 𝑣 = . Ensuite, effectuez une
2
multiplication entre ces deux vecteurs sous forme de produit matrice-vecteur. Saisissez la
commande suivante et vérifiez le résultat.
M = v*u
2. Quel est le résultat de la multiplication de ces deux vecteurs et pourquoi le produit donne-t-il une
matrice ?
3. Créez une matrice 𝑀 de dimension 2 ∗ 3 et une matrice 𝑁 de dimension 3 ∗ 2 quelconques.
Multipliez ensuite les deux matrices pour obtenir une nouvelle matrice 𝑃. Saisissez la commande
suivante et affichez le résultat.
P = M*N
4. Quelles sont les dimensions de la matrice résultante 𝑃 ? Expliquez pourquoi la multiplication est
possible entre 𝑀 et 𝑁.
5. Utilisez la fonction size pour obtenir les dimensions de la matrice 𝑀 que vous avez créée dans
l’exercice précédent. Saisissez la commande suivante et observez le résultat.
dimM = size(M)
6. À quoi sert la fonction size et que représente le résultat obtenu dans ce cas ?

III-5- Quelques cas particuliers de vecteurs et matrices

En MATLAB, la création et la manipulation de vecteurs et de matrices sont fondamentales pour résoudre


des problèmes mathématiques et scientifiques. Des fonctions simples comme « val1:pas:val2 »,
« zeros » et « ones » permettent de générer rapidement des structures adaptées à divers calculs et
simulations, offrant flexibilité et efficacité dans les algorithmes.
 (val1 : pas : val2) crée un vecteur contenant des composantes dont la première est val1, la
dernière est val2, régulièrement espacées de l’intervalle pas.
 zeros(m,n) crée une matrice de m lignes et n colonnes remplie de « 0 ».
 ones(m,n) crée une matrice de m lignes et n colonnes remplie de « 1 ».
1. Créez un vecteur colonne 𝑥 dont la première composante est 0, la dernière est 10, et les
composantes sont espacées de manière régulière avec un pas de 0.5. Saisissez la commande
suivante dans MATLAB et affichez le vecteur.
2. Créez un vecteur ligne 𝑦 de 10 colonnes, toutes remplies de zéros. Utilisez la fonction zeros() et
saisissez la commande suivante pour créer le vecteur ligne.
3. Créez une matrice 𝑧 de 2 lignes et 10 colonnes, remplie de « 1 ». Utilisez la fonction ones() pour
cela. Saisissez la commande et affichez la matrice.

IV- Tracé graphique : Tracé élémentaire d’une fonction d’une variable

Pour tracer une fonction 𝑦 en fonction d’une variable 𝑥, on utilise la commande plot(x, y, <options>),
où 𝑥 et 𝑦 sont deux vecteurs de même longueur représentant respectivement les valeurs de l’abscisse et
de l’ordonnée. Cette commande permet de visualiser des données sous forme de courbe dans un

Page | 8
TP 0 : Initiation à Matlab

graphique. Les options de tracé, indiquées par <options>, permettent de personnaliser l’apparence de la
courbe, comme la couleur, le style de ligne ou les marqueurs. Par exemple, l’option 'r--' trace une ligne
rouge en pointillés. Pour en savoir plus sur les différentes options disponibles, consultez l’aide en ligne
en utilisant la commande help plot ou accédez à la documentation officielle. Vous pouvez également
ajouter des éléments au graphique, comme un titre « title », des étiquettes d’axes « xlabel » , « ylabel »
ou une légende « legend », pour une meilleure présentation.
0
1
Exemple : On définit un vecteur colonne 𝑡 = ⋮ de 𝑛 lignes. On veut tracer la fonction
𝑛−1
sin(0)
⎡ ⎤

sin(2𝜋𝑓1)

sin(2𝜋𝑓2)
sin(2𝜋𝑓𝑡) = ⎢ ⎥, avec 𝑛 = 100 et 𝑓 = 0.02 𝐻𝑧.
⎢ ⋮ ⎥
⎢ ⋮ ⎥
⎣sin 2𝜋𝑓(𝑛 − 1) ⎦
Saisir la suite d’instructions
n = 100 ; % fixe la valeur de n
f = 0.02 ; % fixe la valeur de f
t = (0 : 1 : n-1)';; % crée un vecteur colonne t
sinusoide = sin(2.*pi.*f.*t) ; % crée la sinusoide
figure(1) % ouvre une fenêtre graphique numérotée 1
plot(t,sinusoide, 'b-') % trace la sinusoide en bleu
xlabel('t') % titre des abscisses
ylabel('Amplitude') % titre des ordonnées
title('Sinusoide') % titre du graphique
1. En utilisant la commande « hold on » (voir l’aide), superposer le tracé de cos(2𝜋𝑓𝑡) à la courbe
précédente.
2. Une autre façon de représenter plusieurs tracés sur un même graphe. Consiste à indiquer plusieurs
triplets de type dans la commande plot : plot(x1, y1, <options>, x2, y2, <options>, x3, y3,
<options>, …), où les 𝑥𝑖 et 𝑦𝑖 sont des couples de vecteurs d’abscisses et d’ordonnées de tracés.
3. Saisir :
clc
4. Observer la fenêtre Command Windows. A quoi sert la commande « clc » ?
5. Observer la fenêtre Workspace, puis saisir :
clear all
6. Observer de nouveau la fenêtre Workspace. A quoi sert la commande « clear all » ?
7. Saisir
close all
8. A quoi sert la commande « close all ».

Page | 9
Utilisation liée à l’automatique : Critère de stabilité de Routh

TP 1 : Utilisation liée à l’automatique : Généralités

I- Introduction

Matlab adopte une approche basée sur la représentation objet pour les systèmes LTI (Linéaire et
Invariant dans le Temps). Cette méthode unifiée s'applique à différents types de représentations, qu'il
s'agisse de fonctions de transfert, de modèles d'état, ou encore de descriptions sous forme de zéros, pôles
et gains.

II- Saisie des fonctions de transfert

La fonction de transfert 𝐺 (𝑝) = sera mise en mémoire grâce à l’instruction :

sys1 = tf([1 2],[3 6 1]) ;


Le premier vecteur contient les coefficients du numérateur dans l’ordre des puissances décroissantes de
𝑝. Le deuxième contient les coefficients du dénominateur dans l’ordre des puissances décroissantes de
𝑝.
Il est possible de récupérer le numérateur et le dénominateur d’une fonction de transfert à l’aide de la
fonction « tfdata ».

III- Affichage des fonctions de transfert

La manière d’obtenir les caractéristiques d’un objet système est tout simplement de taper son nom dans
Command Window.
sys1
Entrer les fonctions de transfert suivantes et sauvegarder le numérateur et le dénominateur de chaque
système dans les variables indépendantes. Vérifier leurs propriétés à l’aide des instructions précédentes.
.
 𝐺 (𝑝) = .

 𝐺 (𝑝) =
.
 𝐺 (𝑝) = .

IV- Opération sur les fonctions de transfert

Il est possible d’assembler 2 fonctions de transfert entre elles :

IV-1- En série

sys_serie = sys1 * sys2 ;


Page | 10
Utilisation liée à l’automatique : Critère de stabilité de Routh

sys1 sys2

IV-2- En parallèle

sys_para = sys1 + sys2 ;

sys1

sys2

IV-3- En boucle fermée

Pour calculer la fonction en boucle fermée. Il existe la fonction « feedback » qui calcule la fonction de
transfert en boucle fermée du système présenté ci-dessous. La variable « sign » définit le type de
bouclage (contre réaction : - par défaut sinon + pour une réaction).

Σ sys1

sys2

V- Représentation temporelle

A partir d’une fonction de transfert, Matlab peut calculer la réponse temporelle d’une fonction de
transfert à une entrée. La réponse impulsionnelle et la réponse indicielle sont déjà programmées dans
des fonctions. Le résultat de ce calcul (vecteurs contenant le temps et la réponse du système) peut être
placé dans des variables de retour ou par défaut directement tracé dans une figure. De même si l’on ne
précise pas le vecteur temps. La fonction de déterminera automatiquement.
 La réponse impulsionnelle (𝑒(𝑡) = 𝛿(𝑡)) à l’aide de la fonction :
impulse(sys1)
 La réponse indicielle (𝑒(𝑡) = 𝑢(𝑡)) à l’aide de la fonction :
step(sys1)
En cliquant sur le bouton droit, il est possible d’obtenir des renseignements sur les temps de réponse ou
dépassement du tracé.
1. Tracer la réponse impulsionnelle et indicielle de sys2

Page | 11
Utilisation liée à l’automatique : Critère de stabilité de Routh

2. Déterminer de manière graphique la valeur de la sortie en régime permanent et la valeur de la


constante de temps. Vérifier ces valeurs avec celles attendues.
3. Tracer ces deux réponses pour sys4. Mesurer le pseudo période obtenue pour la réponse indicielle
et vérifier qu’elle correspond bien à celle attendue.

VI- Représentation fréquentielle – régime harmonique

La représentation harmonique est obtenue en appliquant un signal sinusoïdal à l’entrée du système pour
toutes les fréquences et en posant 𝑝 = 𝑗𝑤).
Une fonction de transfert est alors complètement décrite par son module et sa phase. Matlab calcule la
réponse en fréquence d’une fonction de transfert et se sert de cette réponse pour tracer les diverses
représentations utilisées en automatique. A noter qu’en anglais, frequency signifie la pulsation en rad/s
(ce n’est pas la fréquence en Hertz) et qu’il est conseillé d’utiliser la fonction « ngrid ».

VI-1- Diagramme de Bode

Le diagramme de Bode représente le module en 𝑑𝐵 et la phase en degrés en fonction du logarithme de


la pulsation.
1. Utiliser la fonction « bode » pour tracer le diagramme de sys2.
2. Mesurer le gain statique (module de 𝐺 pour 𝜔 → 0), la pulsation 𝜔 à −3𝑑𝐵, la pente de la
courbe de gain lorsque 𝜔 ≫ 𝜔 . Comparer les résultats aux valeurs théoriques.
3. Faire le même travail pour sys4.

VI-2- Diagramme de Nyquist

La représentation de Nyquist représente la fonction de transfert dans l’espace complexe, ce lieu est
paramétré avec la pulsation.
1. Utiliser la fonction « nyquist » pour tracer le diagramme sys2.
2. Mesurer le gain statique (module de 𝐺 pour 𝜔 → 0).
3. Faire le même travail pour sys4.

VI-3- Diagramme de Black-Nichols

Cette représentation est plus simplement appelée représentation de Black. Rappelons que l’on porte la
phase en degré en abscisse et le module en 𝑑𝐵 en ordonnée. Ce lieu est paramétré en pulsation.
1. Utiliser la fonction « nichols » pour tracer le diagramme de sys2.
2. Mesurer le gain statique (module de 𝐺 pour 𝜔 → 0), la pulsation de coupure wc à −3𝑑𝐵.
Comparer les résultats aux valeurs théoriques.
3. Faire le même travail pour syst4.

Page | 12
Utilisation liée à l’automatique : Critère de stabilité de Routh

TP 2 : Utilisation liée à l’automatique : Applications

Exercice 1 : Analyse d’une Fonction de Transfert en MATLAB


Objectifs Pédagogiques :
 Manipuler les commandes MATLAB pour analyser une fonction de transfert.
 Comprendre les concepts de stabilité, de réponse impulsionnelle, et de décomposition en
fractions partielles.
On considère la fonction de transfert suivante : 𝐺 (𝑝) =

1. Zéros et Pôles :
 Utilisez la commande « roots » pour calculer les racines du numérateur et du dénominateur
de 𝐺 (𝑝).
 Utilisez les commandes « zero » et « pole » pour obtenir directement les zéros et les pôles.
 Utilisez la commande « zpkdata » pour extraire les zéros, les pôles et le gain.
2. Gain Statique : Calculez le gain statique de en utilisant la commande « dcgain ».
3. Carte des Pôles et Zéros :
 Tracez la carte des pôles et des zéros à l’aide de la commande « pzmap ».
 Analysez la stabilité du système : les pôles sont-ils dans le demi-plan gauche ?
4. Réponse Impulsionnelle : Utilisez la commande « impulse » pour tracer la réponse
impulsionnelle de 𝐺 (𝑝).
5. Décomposition en Éléments Simples : Utilisez la commande « residue » pour décomposer en
fractions partielles.
6. Contribution des Éléments d’Ordre 1 et d’Ordre 2 : Analysez la contribution des termes du
1er ordre et du 2nd ordre à la réponse impulsionnelle globale.
Exercice 2 : Simulation d'un Signal d'Entrée
Objectifs Pédagogiques :
 Comprendre comment définir un signal d’entrée personnalisé en MATLAB.
 Étudier la réponse d’un système linéaire à un signal donné.
 Visualiser et analyser les signaux d’entrée et de sortie.
0 𝑠𝑖 𝑡 < 0
On excite par le signal défini par : 𝑒(𝑡) = 2 𝑠𝑖 0 < 𝑡 < 2
0.5 𝑠𝑖 2 < 𝑡
1. Création du vecteur temps : Créez un vecteur temps 𝑡 allant de 0 à 10 secondes, échantillonné
avec un pas de 0,02 seconde.
2. Génération du vecteur d’entrée : Créez le vecteur d’entrée e correspondant au signal.

Page | 13
Utilisation liée à l’automatique : Critère de stabilité de Routh

3. Simulation de la réponse du système : Utilisez la commande « lsim » pour simuler et tracer les
signaux d’entrée et de sortie sur un même graphique.
Questions pour les Étudiants :
 Quelle est la forme du signal de sortie comparée à celle du signal d’entrée ?
 Comment le comportement du système influence-t-il la réponse ?
 Quelle est l’importance de la commande lsim dans l’analyse des systèmes linéaires ?
Exercice 3 : Simulation d'une Réponse Sinusoïdale
Objectifs Pédagogiques :
 Comprendre comment construire une fonction de transfert à partir de ses zéros, pôles et
gain.
 Étudier la réponse d’un système à une excitation sinusoïdale.
On considère la fonction de transfert 𝐺 (𝑝) définie par :
 Zéros : 𝑍 = [−5; 𝑗; −𝑗]
 Pôles : 𝑃 = [−1; −2; −2; −3]
 Facteur de gain : 1
Questions :
1. Formation de 𝐺 (𝑝) : Utilisez la commande « zpk » pour créer à partir des zéros, des pôles et
du gain.
2. Extraction des Polynômes : Extrayez les polynômes numérateur et dénominateur de 𝐺 (𝑝).
3. Création du vecteur temps : Créez un vecteur temps 𝑡 allant de 0 à 10 secondes, échantillonné
avec un pas de 0,02 seconde.
4. Création du vecteur d’entrée : Créez le vecteur d’entrée 𝑒 tel que 𝑒(𝑡) = sin(𝑡).
5. Simulation de la réponse du système : Utilisez la commande « lsim » pour tracer sur le même
graphique les signaux d’entrée et de sortie.

Page | 14
Utilisation liée à l’automatique : Critère de stabilité de Routh

TP 3 : Utilisation liée à l’automatique : Critère de stabilité de Routh

Exercice 1 : Analyse en Boucle Fermée


Objectifs Pédagogiques :
 Étudier la mise en boucle fermée d’un système.
 Analyser la stabilité du système en boucle fermée.
On considère le système suivant :

Questions :
1. Calcul de la fonction de transfert en boucle fermée : Implémentez la fonction de transfert en
boucle fermée sous rétroaction unitaire à l’aide de la commande feedback.
2. Analyse de la stabilité : Justifiez si le système est stable ou non en analysant la position des pôles
en boucle fermée.
Exercice 2 : Étude de la Stabilité
Objectifs Pédagogiques :
 Analyser l’impact du gain sur la stabilité d’un système.
 Utiliser des boucles pour automatiser les calculs dans MATLAB.
On considère le système suivant :
Questions :
1. Détermination théorique : Déterminez le dénominateur de la fonction de transfert en boucle
fermée.
 Stabilité pour variant de 𝟎 à 𝟐𝟎 avec un pas de 𝟏 : Utilisez une boucle « for » pour tester
les différentes valeurs de 𝐾 et vérifiez si le système est stable pour chaque valeur.

Σ 𝐾

Page | 15
Utilisation liée à l’automatique : Réglage d’un PI numérique

TP 4 : Utilisation liée à l’automatique : Réglage d’un PI numérique

Soit un système industriel dont on ne connait pas le modèle a priori. Le but est de réaliser la synthèse
qu’un correcteur discret en se basant uniquement sur des expérimentations. La démarche proposée est
de faire une synthèse en continu d’un régulateur PI, par des méthodes de type heuristiques, puis d’en
faire une adaptation numérique. Pour les besoins du TP le modèle est donné : 𝐺(𝑝) = et
les expérimentations sont remplacées par des simulations. La régulation numérique se fait au travers
d’un bloqueur d’ordre 0. L’échantillonnage en sortie est à la période 𝑇 = 0,2𝑠.

I- Réglage d’un PI continu par application de la première méthode de Ziegler-Nichols.

1. Tracer la réponse à un échelon du système et déter²miner les paramètres 𝑇 (retard pur), 𝑎 (pente
de la réponse transitoire) et 𝑇 (temps de montée).

Figure 1 : Paramètres de la réponse à un échelon


∗ ∗
2. En déduire un régulateur PI continu de la forme ∗
. On rappelle que la première méthode
.
de Ziegler-Nichols propose 𝑘 = ∗
et 𝜏 = 3 ∗ 𝑇 .

3. Donner une version numérique de ce régulateur PI obtenue par discrétisation de Tutsin et tracer
la réponse indicielle du système échantillonné régulé par ce correcteur.

II- Réglage d’un PI continu en tenant compte de l’effet retard dû au bloqueur d’ordre 0

Reprendre les étapes de la question précédente en ajoutant une demi-période d’échantillonnage au retard
pur : 𝑇 = 𝑇 + . Cette manipulation permet de prendre en compte l’effet de retard induit par le
bloqueur et qui était totalement négligé dans la question précédente.

III- Réglage d’un PI continu par application de la méthode de Hrones-Reswick

Reprendre la synthèse précédente (en tenant compte de l’effet retard du bloqueur) en appliquant 𝑘 =
.

et 𝜏 = 1.2 ∗ 𝑇 .

Page | 16

Vous aimerez peut-être aussi