TP n°1 : Prise en main de SIMULINK

Transcription

TP n°1 : Prise en main de SIMULINK
M 4209c
Hugues Garnier
TP n°1 : Prise en main de SIMULINK
1. OBJECTIFS
Les objectifs de ce TP sont :
- de prendre en main le logiciel de simulation SIMULINK de Matlab ;
- de simuler et de comparer les performances d’un système en boucle ouverte et en boucle fermée.
2. PRESENTATION ET PRISE EN MAIN DE SIMULINK
2.1. GENERALITES SUR LES LOGICIELS DE SIMULATION
La simulation permet de reproduire, approximativement, le comportement de systèmes de traitement (filtres, ...)
et de visualiser notamment l’évolution temporelle de différentes variables représentatives. Pour exploiter un logiciel
de simulation, il faut établir ou déterminer un modèle du système étudié. Celui-ci est généralement constitué de
blocs simples (fonction de transfert, comparateur, caractéristique non-linéaire,...) élaborés à partir de lois
scientifiques connues (modélisation).
Les modèles utilisés représentent généralement le comportement dynamique des systèmes à temps continu et
sont donc régis par des équations différentielles. C’est pourquoi les logiciels de simulation utilisent les méthodes
d’analyse numérique permettant de calculer l’évolution temporelle du signal de sortie à partir des valeurs du signal
d’entrée et de l’équation différentielle. Parmi ces méthodes on peut citer les algorithmes de Runge-Kutta et d’Euler.
Même si les logiciels de simulation sont de plus en plus puissants, il ne faut pas oublier qu’un simulateur repose
sur des modèles qui ne sont qu’une approximation du système réel et que ceux-ci ne sont généralement valables
que dans une certaine plage de fonctionnement de système étudié.
Divers logiciels sont aujourd’hui disponibles. Ces logiciels permettent :
- l’analyse des systèmes continus (réponses temporelle et fréquentielles, stabilité, pôles et zéros),
- la conception et l’analyse de filtres analogiques ou numériques,
- la simulation des systèmes bouclés,…
Les développements permettent d’établir une chaîne complète depuis l’acquisition des données, la modélisation
du système, l’implantation et la simulation sous Simulink jusqu’à la génération du code implanté et embarqué sur un
DSP (Digital Signal Processor).
Nous allons dans le cadre de ces TP utiliser Simulink. Il faut cependant savoir qu’il existe une boîte à outils
Matlab dédiés aux télécoms (Communications toolbox). Elle permet la conception, la simulation et le prototypage de
systèmes de télécommunications, systèmes de vidéo-conférence, modems, transmission par satellites, etc. Celle-ci
utilise à la fois le langage de programmation de Matlab ainsi qu’une interface graphique de type schémas-blocs très
proche de Simulink. Cette boîte à outils contient de nombreuses fonctions ou blocs qui permettent de simuler les
principes utilisés en télécoms et réseaux tels que la modulation, le codage, le filtrage des signaux,...
2.2. PRESENTATION DE SIMULINK
SIMULINK est une extension du logiciel Matlab. C’est un logiciel de simulation de systèmes dynamiques muni
d’une interface graphique qui facilite les deux phases d’utilisation du logiciel :
- saisie du modèle,
- simulation du modèle.
H. Garnier
-1-
TP Découverte de Simulink
2.3. WEBINAR DE DECOUVERTE DE SIMULINK
Visionnez le Webinar en français d’introduction à Simulink d’une vingtaine de minutes disponible sur le site de
Mathworks à l’adresse :
https://fr.mathworks.com/videos/introduction-to-simulink-french-88974.html
Il faut pour pouvoir lancer la vidéo de 50 mn donner son adresse électronique et répondre à un petit questionnaire.
Visionnez la totalité de la vidéo en prenant des notes sur les points essentiels pour utiliser ce logiciel de simulation.
Les principales étapes pour construire et simuler un schéma-bloc sont rappelées ci-dessous.
Pour utiliser SIMULINK, il faut lancer dans un premier temps MATLAB puis taper simplement la commande
simulink dans la fenêtre de commande MATLAB.
Après avoir obtenu la fenêtre principale, sélectionnez New...Model dans le menu File. Une fenêtre s’ouvre dans
laquelle vous allez pouvoir saisir vos schémas-blocs.
Pour construire votre schéma-bloc, il suffit d’aller chercher les blocs désirés à partir de la fenêtre principale de
Simulink présentant les différentes bibliothèques disponibles.
Ces blocs peuvent être insérés dans votre fenêtre de travail soit en utilisant la méthode du « copier-coller » soit
en faisant glisser le bloc d’une fenêtre à une autre à l’aide de la souris.
Pour relier deux blocs il vous faut pointer avec la souris sur la pointe du bloc et en laissant enfoncer le bouton
droit de la souris un trait apparaîtra. Vous pointerez alors sur la face gauche du second bloc au niveau d'une flèche,
vous pourrez alors relâcher le bouton de votre souris, si vous avez bien suivi ces instructions un trait entre les deux
blocs indiquera que vous avez réussi votre connexion.
Comment lancer la simulation ?
Attention, avant de lancer la simulation, il faut impérativement définir les paramètres de votre simulation :
instant de début de simulation, instant de fin de simulation, période de simulation, méthode d’intégration numérique
utilisée... Pour cela, il faut aller dans le menu « Simulation » puis sur « parameters » et spécifier les paramètres
adaptés à votre simulation. Cette étape est cruciale car de mauvaises valeurs peuvent conduire à une simulation
complètement erronée.
Pour lancer ensuite votre simulation il suffit d’aller dans le menu « Simulation » et de sélectionner « start ».
Si des blocs de visualisation (graph, scope, …) apparaissent dans votre schéma-bloc, veillez à paramétrer ceux-ci
en fonction des paramètres de votre simulation.
Comment arrêter votre simulation ?
Si vous avez spécifié un instant de fin de simulation, la simulation prendra fin lorsque cet instant sera atteint.
Vous pouvez néanmoins arrêter à tout moment une simulation en cours en allant dans le menu « Simulation » et en
cliquant sur « stop » ou en cliquant sur le bouton stop.
3. SIMULATION D’UN SIGNAL SINUSOIDAL
Le but ici est de construire le schéma-bloc ci-dessous afin de simuler l’évolution temporelle d’une sinusoïde.
Après avoir lancé Simulink, sélectionnez New...Model dans le menu File. Vous créez ainsi une fenêtre de travail
dans laquelle vous allez saisir vos schémas-blocs.
H. Garnier
-2-
TP Découverte de Simulink
Pour saisir votre schéma, ouvrez la bibliothèque Sources, sélectionnez l’icône «Signal generator» en «cliquant»
une fois dessus, et faîtes glisser celle-ci dans votre fenêtre de travail.
Ensuite ouvrez Sinks et sélectionnez l’oscilloscope et faîtes glisser celui-ci dans votre fenêtre de travail. A l’aide
de la souris, reliez la sortie du bloc générateur de signal à l’entrée de l’oscilloscope. L’oscilloscope permet de
visualiser une partie du signal à l’écran.
Paramétrage
On souhaite générer une sinusoïde d’amplitude 5 V, de fréquence 1 Hz et de phase nulle à l’origine.
Configurer les différents blocs en cliquant deux fois sur chacun d’eux:
a) Attention : le bloc « signal generator » permet de définir la pulsation du signal en rad/s ou en Hz.
fréquence.
b) Configurez l’oscilloscope afin d’y observer quatre périodes du signal d’entrée
c) Avant de lancer la simulation, il faut en configurer les paramètres de simulation, en particulier la date
de début (souvent 0) et la date de fin. Indiquez cette dernière (4 sec ici) dans la case blanche en
dessous du menu Help.
Simulation
Après cette phase de paramétrage, lancez la simulation à l’aide de la commande Start du menu Simulation ou
en cliquant sur la bouton Run. Observer le signal à l’oscilloscope (vérifiez les axes). Vous devez obtenir le
résultat ci-après :
Modification des paramètres de simulation
Si vous trouvez votre tracé du signal sinusoïdal pas assez lisse, il est possible de modifier les paramètres de
simulation pour améliorer le tracé. Dans le menu Simulation, sélectionnez Model Configuration Parameters :
a) Choisir l’instant de départ : généralement 0 seconde
b) Choisir de façon pertinente l’instant de fin de simulation.
c) Choisir le type de solver option: fixed-step
d) Choisir le solver : ode4 (Runge-Kutta)
e) Choisir la pas de simulation (fixed-step size) : 0.01
Après cette phase de paramétrage, lancez à nouveau la simulation à l’aide de la commande Start du menu
Simulation. Observer le signal à l’oscilloscope (vérifiez les axes). Vous devez obtenir un tracé plus lisse de la
sinusoïde.
Choix du pas de simulation : pour bien comprendre l’importance du choix du pas de simulation, augmentez
celui-ci à 0.25 seconde et observez le résultat. Que constatez-vous ?
En général, le pas de simulation est automatiquement sélectionné et vous n’avez pas besoin de spécifier la
méthode de simulation.
H. Garnier
-3-
TP Découverte de Simulink
4. SIMULATION D’UN SYSTEME EN BOUCLE OUVERTE VERSUS BOUCLE FERMEE
Ouvrez un nouveau document et construisez un modèle pour avoir la réponse à un échelon en BO et en BF d’un
filtre du premier ordre ayant la fonction de transfert suivante :
𝐺 𝑠 =
10
60𝑠 + 1
Votre schéma-bloc doit avoir la forme de celui présenté sur la figure ci-dessous :
Les éléments de ce schéma-bloc sont :
• Step : il se trouve dans Sources, générateur de l’échelon. Choisissez à la date 0 et d’amplitude 1.
•Transfert fcn : il se trouve dans Continuous, et permet de définir une fonction de transfert. Changez les
paramètres pour qu’elle corresponde à la fonction de transfert demandée.
• Mux : il se trouve dans Signal routing, il permet de multiplexer plusieurs signaux dans un fil. Si on veut avoir
l’entrée (l’échelon), la sortie en BO et en BF dans le même graphique, il faut avoir 3 entrées au Mux.
• Sum : il se trouve dans Math Operations, permet de réaliser le comparateur. Il faut choisir les signes + et -.
• Scope : il se trouve dans Sinks, c’est un scope rudimentaire pour avoir rapidement un tracé des courbes.
L’icône
permet d’adapter automatiquement les échelles.
• ToWorkspace: il se trouve dans Sinks, ipermet de récupérer le résultat de la simulation dans une variable
exploitable sur Matlab (ligne de commande). Paramétrez ce bloc pour avoir le résultat au format array.
Lancez la simulation et vérifiez que les courbes obtenues sont conformes aux tracé ci-dessous :
Pour avoir un tracé exportable et imprimable, tapez dans matlab (commande en ligne) l’instruction :
plot(tout,valeurs)
où valeurs est le nom de la variable entrée dans le bloc To Workspace. La variable tout est le vecteur qui
contient les temps des points de calcul de la simulation.
Faites valider vos schémas-blocs par l’enseignant.
H. Garnier
-4-
TP Découverte de Simulink