3.2. Matlab/Simulink. 3.2.1. Généralités



Documents pareils
Introduction à MATLAB R

Calcul Formel et Numérique, Partie I

Automatique des systèmes linéaires continus

Petite introduction à l utilisation de Matlab/Simulink pour l Automatique

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

LABO 5 ET 6 TRAITEMENT DE SIGNAL SOUS SIMULINK

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

Séance 0 : Linux + Octave : le compromis idéal

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

1 Démarrer L écran Isis La boite à outils Mode principal Mode gadget Mode graphique...

Calcul Formel et Numérique, Partie I

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Notions d asservissements et de Régulations

Dispositif Technique

POUR ALLER UN PEU PLUS LOIN SUR UN TABLEUR. Version EXCEL

Manuel utilisateur Netviewer one2one

Initiation à LabView : Les exemples d applications :

TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.

1. Introduction Création d'une requête...2

Affichage de la date d'exigibilité sur les documents FAQ INV 011

Premiers pas avec SES-Pegase (version 7.0) SES : Un Système Expert pour l analyse Statistique des données. Premiers pas avec SES-Pegase 1

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Parcours FOAD Formation EXCEL 2010

Utilisation de XnView

MANUEL TBI - INTERWRITE

Guide sommaire de TecLocal

Création d'un questionnaire (sondage)

YAPBA M. Logiciel libre de suivi de vos comptes

Sauvegarder ses données avec Syncback Windows 98, 2000, Me, NT, XP

Utilisation du logiciel Epson Easy Interactive Tools

Cours Apl 11 - Introduction à la gestion des écrans

Utilisation de l éditeur.

Installation et paramétrage. Accès aux modèles, autotextes et clip- art partagés

Computer Link Software

Emporter Windows XP sur une clé USB

La C.A.O (Conception Assistée par Ordinateur). Le logiciel de C.A.O.

Guide d utilisation de fonctionnalités avancées de Beyond 20/20 (application à des données départementales issues de Sit@del2)

The Grid 2: Manuel d utilisation

Tutoriel Prise en Main de la Plateforme MetaTrader 4. Mise à jour : 7/09/

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

Introduction : Cadkey

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

Automatique Linéaire 1 Travaux Dirigés 1A ISMIN

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

LibreOffice Calc : introduction aux tableaux croisés dynamiques

1. Utilisation du logiciel Keepass

INFORM :: DEMARRAGE RAPIDE A service by KIS

Automatisation d'une Facture 4. Liste Déroulante Remises Case à cocher Calculs

Contrôler plusieurs ordinateurs avec un clavier et une souris

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

Utilisation du logiciel GALAAD

Administration du site (Back Office)

TABLEAU CROISE DYNAMIQUE

:...2 I.6. :... 2 I.7. :... 2 I.8. :...3 I.9. :... 3 I.10. :... 3 II. 4 II.1.

À propos du Guide de l'utilisateur final de VMware Workspace Portal

Manuel d Utilisateur - Logiciel ModAFi. Jonathan ANJOU - Maud EYZAT - Kévin NAVARRO

Grain Tracker Manuel d'utilisation

Mode Opératoire Windows XP

Silhouette Studio Leçon N 2

Gestion de projets. avec. Microsoft Office PROJECT 2003

Gérer ses fichiers et ses dossiers avec l'explorateur Windows. Février 2013

Introduction à MATLAB et SIMULINK

HP Data Protector Express Software - Tutoriel 3. Réalisation de votre première sauvegarde et restauration de disque

Algorithmique avec Algobox

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Créer une base de données

ET 24 : Modèle de comportement d un système Introduction à Labview et initiation à la réalisation d un Instrument Virtuel (VI).

Google Drive, le cloud de Google

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

ACQUISITION ANALYSE PRÉSENTATION

Tutoriel. Votre site web en 30 minutes

WHS ProRealTime. édition

Contro ler plusieurs ordinateurs avec un clavier et une souris

Le service de création de site Internet : Mode d emploi. La Création de Site Internet

NOTICE D' UTILISATION CAMWORKS FRAISAGE. Luc Vallée Lycée Blaise Pascal Segré

TP 1 Introduction à Matlab Février 2009

MS PROJECT Prise en main. Date: Mars Anère MSI. 12, rue Chabanais PARIS E mail : jcrussier@anere.com Site :

Gestion des documents avec ALFRESCO

GESTION DU LOGO. 1. Comment gérer votre logo? Format de l image Dimensions de l image Taille de l image 9

l'ordinateur les bases

Utiliser Freemind à l'école

Formation. Module WEB 4.1. Support de cours

LOGICIEL ALARM MONITORING

NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR. Logiciel TIJARA. NETWORK AND SOFTWARE ENGINEERING Manuel d'utilisateur "TIJARA" 1

Guide d utilisation de la clé mémoire USB

Sélection du contrôleur

Symantec Backup Exec Remote Media Agent for Linux Servers

IMPORTATION, CRÉATION, MANIPULATION, EXPORTATION DE DONNÉES STATISTIQUES

Seafile, pour simplifier l'accès à ses fichiers, les partager et les synchroniser

Bien travailler sur plusieurs écrans

Cours 7 : Utilisation de modules sous python

FAIRE SES COMPTES AVEC GRISBI

MEDIAplus elearning. version 6.6

Utilisation de l outil lié à MBKSTR 9

Analyse des Systèmes Asservis

Dans la série LES TUTORIELS LIBRES présentés par le site FRAMASOFT. Premiers pas avec WinPT (cryptographie sous Win) EITIC

Documentation utilisateur. [EIP] TransLSF

J'ai changé d'ordinateur, comment sauvegarder mon certificat?

KeePass - Mise en œuvre et utilisation

- Université Paris V - UFR de Psychologie ASDP4 Info Introduction à Windows

Transcription:

3.2. Matlab/Simulink 3.2.1. Généralités Il s agit d un logiciel parfaitement dédié à la résolution de problèmes d'analyse numérique ou de traitement du signal. Il permet d'effectuer des calculs matriciels, de visualiser les résultats sous forme graphique. La formulation des problèmes s'apparente à la formulation mathématique des problèmes à résoudre. L utilisation du logiciel consiste à lancer des lignes de commandes, qui peuvent le plus souvent s apparenter à de la programmation en C. Associé à Simulink (commande lancée sous Matlab), il devient un outil graphique très simple d utilisation pour la simulation de processus (programmation par copier/coller de blocs fonctionnels). 3.2.2. Travailler avec Matlab Matlab dispose de plusieurs fenêtres (selon les versions) dont la principale est la fenêtre de commande (Command Window) associée à l espace de travail (Workspace). Il s agit de la première fenêtre ouverte dans laquelle seront tapées les différentes 'commandes' après le prompt '>>'. C'est également dans cet espace de travail que sont définies toutes les variables utilisées par Matlab. (cf. Figure 3.4, commande whos) La syntaxe générale d'appel d'une fonction est : [s1, s2,..., sn ] = nom_fonction(e1, e2,..., ep) où les ei sont les paramètres d'entrée de la fonction nom_fonction et les sj les paramètres de sortie. Le point virgule ';' facultatif dernière une commande empêche l'affichage du résultat de celle-ci (bien utile lorsque le résultat est un vecteur de grande taille). Walter.nuninger@univ-lille1.fr page 23

Figure 3.4 : Matlab v.5.2.1.1420 Fenêtres de Commande, Simulink, Scope, second.mdl Figure 3.5 : Matlab v3 Fichier programme, courbe.m Walter.nuninger@univ-lille1.fr page 24

Figure 3.6 : Matlab v3 Fenêtre graphique résultat du programme courbe.m (figure 3.5) L intérêt de Matlab est de pouvoir travailler sur des fichiers d extension «.m» contenant des suites de commandes (créés avec un simple éditeur de texte) et lancé par leur nom (sans extension) comme une commande. Un exemple est donné sur la Figure 3.5, avec son résultat sur la Figure 3.6. Il est impératif avant d'utiliser une commande de regarder sa syntaxe, c'est le rôle de la commande : help <commande_cherchée> lorsque la commande est connue lookfor <mot clef anglais> permet une recherche par mot clef (ou une partie) Toutes les commandes unix sont utilisables dans le workspace, il suffit de faire précéder celles-ci d'un point d'exclamation. Par exemple, «! ls la) (= dir). On notera que Matlab permet de manipuler facilement les fonctions de Transfert (cf. cours d Automatique, cf. cours de Mathématiques (transformée de Laplace)) pour l étude du processus. Associé à Simulink, cela en fait un outil très pratique. 3.2.3. Travailler avec Simulink Simulink est un logiciel de simulation de systèmes dynamiques muni d'une interface graphique pilotée par souris, ce qui facilite les deux phases d'utilisation du logiciel : saisie du modèle et analyse du modèle. Il s agit d une extension du logiciel de calcul Matlab qui propose de nombreuses bibliothèques de modèles intéressant l ingénieur (modèles de type fonctions de transfert (linéaire ou échantillonnées...)) car immédiatement exploitables. La figure 3.6 présente la fenêtre de bibliothèque (Library) ainsi qu un exemple de fichier de simulation (second.mdl). Walter.nuninger@univ-lille1.fr page 25

Figure 3.7 : Simulink v1.3c Fenêtre bibliothèque de modèles Pour accéder aux modèles qu'elles proposent, il suffit de cliquer deux fois (bouton de gauche) sur l'icône correspondante. Les différentes bibliothèques sont (cf. figure 3.7) : Sources permet de créer des signaux d'entrées (ex. échelon, sinus, bruits...) Sinks permet de récupérer les signaux de sorties (ex. oscilloscope, fichier,...) Discrete propose des modèles de fonctions de transfert numériques Linear propose des modèles de fonctions de transfert analogiques Nonlinear modèles non linéaires Connections divers outils permettant de connecter différents blocs (multiplexeur) Extra contient différentes bibliothèques spécifiques Pour travailler, il convient de créer un nouveau fichier en ouvrant le menu déroulant FILE et en sélectionnant : NEW. Vous créez ainsi un espace de travail Simulink qui vous permettra de créer vos propres modèles. N'oubliez pas de sauvegarder votre fichier. Pour utiliser un modèle existant il suffit de sélectionner le modèle à l'aide de la souris, dans le menu EDIT de copier celui-ci (COPY) puis de le coller (PASTE) dans son espace de travail (fichier.mdl). L'utilisation des raccourcis Ctrl-C et Ctrl-V (copier/coller) est possible. Sur la Figure 3.4, un exemple de fichier de simulation d un système du premier ordre avec retour de la sortie est donné ainsi que le résultat de la simulation dans la fenêtre Scope (réponse indicielle). On note que pour définir les paramètres du modèle copié, il suffit de cliquer deux fois sur celui-ci. Une fenêtre de dialogue s'ouvre alors (cf. Figure 3.8). Vous devez remplir les informations nécessaires en respectant la syntaxe proposée. Il est très intéressant d'introduire des paramètres formels dans les blocs utilisés. L'intérêt est une plus grande souplesse de travail lorsque l on choisit de modifier les paramètres. Les variables utilisées (ou créées) par Simulink sont définies (ou récupérées) dans l'espace de travail de Matlab. Ainsi, on créera un programme Matlab qui définira toutes les variables nécessaires (par exemple numérateur et dénominateur des fonctions de transfert). Walter.nuninger@univ-lille1.fr page 26

Figure 3.8 : Simulink v1.3c Exemple de fenêtre de dialogue pour le bloc «Transfer Fcn» Les connections entre les différents blocs se réalisent à la souris en cliquant sur la sortie d'un bloc et en tirant le fil ainsi créé jusqu'à l'entrée du bloc suivant. Pour modifier la position d'un fil, il suffit de le sélectionner en cliquant avec le bouton de gauche de la souris (la sélection est visualisée par un cercle). Les signaux de sortie sont récupérés dans une variable du Workspace, dans un fichier d extension «.mat» ou visualisés à l écran selon la «SINKS» choisie (cf. Figure 3.10 Avant de simuler, assurez-vous que votre schéma comporte un signal d'entrée (échelon par exemple pour une réponse indicielle), un signal de sortie et que tous les paramètres des blocs sont définis. Afin de récupérer le temps de simulation, il est prudent d'ajouter une horloge (Clock) et d'en sauvegarder la valeur de sortie dans un vecteur. Figure 3.9 : simulink v1.3c Exemple de fenêtre de dialogue pour le bloc «Transfer Fcn» Walter.nuninger@univ-lille1.fr page 27

Enfin, il est impératif de configurer les paramètres de simulation (cf. Figure 3.9) en choisissant : Algorithme de simulation linsim (si vous travaillez en linéaire), runge-kutta etc. L'instant de départ Start time généralement 0 seconde L'instant de fin de simulation Stop time, pour atteindre le régime permanent Le pas de calcul minimal Min step size (cf. période d échantillonnage) Le pas de calcul maximal Max step size Le pas de calcul varie du pas min au pas max. Ceci permet au logiciel d'augmenter la vitesse de simulation cependant ceci peut empêcher l'observation de certains phénomènes transitoires. Pour éviter ce problème, on peut dans un premier temps choisir les deux pas égaux. Pour un système du premier ordre de constante de temps T, on sait que le temps de réponse est de l'ordre de 4 à 5 fois cette constante de temps. Il suffit donc de choisir la durée de simulation en conséquence soit Stop time >5T. Par ailleurs, on prend généralement au moins 10 points par constante de temps, ce qui conduit à un pas de calcul Step size < T/1. Pour les systèmes d'ordre n de constantes de temps T1, T2,..., Tn, on peut faire les choix suivants : Stop time > 5.max(T1,..., Tn), Step size < min(t1,..., Tn)/10. On lance la simulation en cliquant sur Start du menu Simulation. Au bip, la simulation est terminée. Vous pouvez dès lors utiliser ces résultats. Attention, si vous simulez à nouveau, vous perdrez les anciens résultats. On peut également la lancer d un fichier par : linsim('fichier_simulink',[start_time,stop_time],[ ],[tolerance, min_step_size,max_step_size]); 3.2.4. Commandes utiles de Matlab et modèles de Simulink % ligne de commentaire whos donne la liste des variables déjà définies et leur taille clear, clear <var> efface toutes les variables (ou l'une d'elle <var>) help donne la liste de toutes les commandes (bibliothèques) lookfor mot cherche les commandes avec 'mot' dans leur nom ou définition. fprintf('chargement \n'); affiche un commentaire à l'écran load <fchier_données> chargement des données de fichier_données.mat save <esultat> <var> sauvegarde la variable var (si elle existe) dans résultat.mat Vecteurs, matrices, variables t=deb:pas:fin; crée un vecteur de points espacés de pas sur [deb,fin] a=2+3j définie un nombre complexe (i tel que i*i=-1 est noté i ou j ) find(condition_sur_x) renvoie les indices des points de x vérifiant la condition (x>100) n=[2 1]; A=[1 2 ; 2 4] définition de vecteur (polynôme) ou matrice zeros(1,4), crée un vecteur ligne (1x4) de zéros ones(5,1) crée un vecteur colonne (5x1) de 1 eye(4) crée une matrice identité 4x4 diag(x) crée une matrice diagonale avec les éléments de x [y,m]=max(x) renvoie le maximum de x (y) et son indice (m) si x est un vecteur Walter.nuninger@univ-lille1.fr page 28

size(a) renvoie le nombre de ligne et de colonne de A A(i,j), A(:,2), A(1,:) renvoie l'élément de la i ème ligne et de la j ème colonne de A, renvoie la deuxième colonne de A, la première ligne de A inv(a) calcul l'inverse de A A' calcul de la transposée de A det(a) calcule du déterminant de A Tracés de courbes Figure, figure(i) crée une nouvelle figure, rend active la figure numéro i w=logspace(-2,2,100); crée une échelle logarithmique de 100 points entre 0.01 et 100 diff dérivée numérique. plot(t,y) tracé de y en fonction de t plot(t,y,'r',t,z,'g') tracé de y (rouge) et z (vert) fonction de t sur le même graphe title('titre'), grid met le 'titre' en titre de la figure ; trace une grille sur le graphe xlabel, ylabel étiquettes des abscisses et des ordonnées gtext place un commentaire (à la souris) sur le graphe hold on, hold off permet de tracer plusieurs courbes sur le même graphe zoom on, zoom off permet de faire le zoom d'une zone à l'aide de la souris close, close (i) fermet la fenêtre active ou précisée (i) subplot(231); subplot(232) permet de diviser la fenêtre graphique en 6 zones (2x3), 2 lignes, 3 colonnes. Les différentes zones sont repérées de 1 à 6 (cf. tableau) colonnes puis lignes. Statistiques mean(x), std(x) polyfit(x,y,n) polyval(p,x) valeur moyenne de x et écart-type de x (standard deviation) calcul les coefficient s d'un polynôme, de degré n, passant par les points spécifiés : M(x,y) permet le calcul des valeurs d'un polynôme P(x), defini par ses coefficients P=(p(i,j)), pour des valeurs de x. Sur les systèmes dynamiques n=[2 1]; d=conv(n,[1 1]) définition du polynôme d convolution de n=2x+1 et (1.x+1) printsys(n,d) permet d'afficher la fonction de transfert n/d [a,b,c,d]=tf2ss(n,d) renvoie la représentation d'état correspondante n/d (cas continu) y=step(n,d,t); réponse indicielle (échelon) du système n/d, échelle de temps : t [nbf,dbf]=cloop(n,d,-1) boucle fermée avec retour unitaire négatif [nbf,dbf]=feedback(n,d,nc,dc,-1) boucle fermée avec correcteur (nc/dc) et retour négatif bode, margin Diagrammes de Bode loglog, semilogx, Tracé en échelle log/log ou semi-log nyquist Diagrammes de Nyquist rlocus lieu d'evans k=place(a,b,p) calcul du gain k tel que les pôles de (A- Bk) soit P (vecteur) Walter.nuninger@univ-lille1.fr page 29

Figure 3.10 : Simulink v1.3c Modèles «SOURCE» et «SINKS» Figure 3.11 : Matlab v5 Editeur/Debugger avec fichier td1.m ouvert. 20 15 10 y 5 0-5 -4-3 -2-1 0 1 2 3 4 x Figure 3.12 : Matlab v5 Résultat du fichier td1.m (cf. Figure 3.11). Walter.nuninger@univ-lille1.fr page 30