Yassine Ariba - Jérome Cadieux MANUEL Départements GEI & Mécanique Version 0.1

Yassine Ariba - Jérome Cadieux MANUEL Départements GEI & Mécanique Version 0.1 Icam de Toulouse Auteurs : Yassine Ariba et Jérome Cadieux. Matlab, ses boîtes à outils et Simulink sont des produits développés par la société The MathWorks, Inc.. Matlab® et Simulink® sont des marques déposés par cette même société. La distribution utilisée en séance est sous licence classroom, c’est-à-dire qu’elle est réservée à un usage académique éducatif. Toute utilisation à but commercial ou recherche est interdite. Y. Ariba et J. Cadieux Icam - Toulouse 3 Table des matières I. Introduction ......................................................................................................................................6 1 - Qu’est ce que Matlab® ? .............................................................................................................6 2 - Objectifs .....................................................................................................................................7 3 - Logiciels alternatifs .....................................................................................................................7 II. Généralités .....................................................................................................................................9 1 - Interface principale .....................................................................................................................9 2 - Premiers pas sur des exemples ................................................................................................ 10 2.1 Calcul et tracé d’une fonction sinus ...................................................................................... 10 2.2 Résolution d’un système d’équations linéaires ...................................................................... 11 3 - Les variables ............................................................................................................................ 12 3.1 Aspects élémentaires ........................................................................................................... 12 3.2 Constantes prédéfinies ......................................................................................................... 13 3.3 Quelques fonctions mathématiques ...................................................................................... 14 4 - Vecteurs et Matrices ................................................................................................................. 14 4.1 Définition d'un vecteur .......................................................................................................... 14 4.2 Quelques fonctions utiles ..................................................................................................... 15 4.3 Définition d'une matrice ........................................................................................................ 16 4.4 Quelques fonctions utiles ..................................................................................................... 18 4.5 Opérations sur les matrices .................................................................................................. 19 5 - Représentations graphiques ..................................................................................................... 21 5.1 Graphiques 2D ..................................................................................................................... 21 5.2 Graphiques 3D ..................................................................................................................... 25 6 - Programmation avec Matlab ..................................................................................................... 28 6.1 Fichiers SCRIPT ................................................................................................................... 29 6.2 Fichiers FUNCTION .............................................................................................................. 30 6.3 Opérateurs relationnels et logiques ...................................................................................... 32 6.4 Structures de contrôle .......................................................................................................... 33 III. Application à la Mécanique ........................................................................................................... 37 1 - Les structures ........................................................................................................................... 37 IV. Application à l’Automatique .......................................................................................................... 39 1 - Représentation des systèmes linéaires invariants ..................................................................... 39 1.1 Fonctions de transfert ........................................................................................................... 39 1.2 Représentation d’état ........................................................................................................... 40 1.3 Systèmes discrets et échantillonnés ..................................................................................... 41 1.4 Conversions de modèles ...................................................................................................... 42 1.5 Connexions de systèmes ..................................................................................................... 43 Y. Ariba et J. Cadieux Icam - Toulouse 4 2 - Analyse des systèmes dynamiques .......................................................................................... 44 2.1 Quelques fonctions utiles ..................................................................................................... 44 2.2 Réponses temporelles .......................................................................................................... 45 2.3 Lieux de transfert ................................................................................................................. 47 3 - Simulink ................................................................................................................................... 47 3.1 Création d’un modèle ........................................................................................................... 48 3.2 Quelques bibliothèques ........................................................................................................ 50 3.3 Simulation ............................................................................................................................ 52 3.4 Exemple ............................................................................................................................... 53 Y. Ariba et J. Cadieux Icam - Toulouse 5 Y. Ariba et J. Cadieux Icam - Toulouse 6 I. INTRODUCTION Ce document est une introduction à Matlab, un logiciel de calcul scientifique. Il a pour objectif de préparer l’étudiant aux travaux pratiques d’Automatique, de Mécanique et d’Analyse Numérique dans lesquels cet outil est intensivement utilisé pour la mise en application et la simulation des principes théoriques présentés en cours. Par ailleurs, ce manuel offre la possibilité à l’étudiant de se former à un logiciel professionnel largement répandu. 1 - Qu’est ce que Matlab® ? Matlab est un logiciel de calcul numérique commercialisé par la société MathWorks1. Il a été initialement développé à la fin des années 70 par Cleve Moler, professeur de mathématique à l’université du Nouveau-Mexique puis à Stanford, pour permettre aux étudiants de travailler à partir d’un outil de programmation de haut niveau et sans apprendre le Fortran ou le C. Matlab signifie Matrix laboratory. Il est un langage pour le calcul scientifique, l’analyse de données, leur visualisation, le développement d’algorithmes. Son interface propose, d’une part, une fenêtre interactive type console pour l’exécution de commandes, et d’autre part, un environnement de développement intégré (IDE) pour la programmation d’applications. Matlab trouve ses applications dans de nombreuses disciplines. Il constitue un outil numérique puissant pour la modélisation de systèmes physiques, la simulation de modèles mathématiques, la conception et la validation (tests en simulation et expérimentation) d’applications. Le logiciel de base peut être complété par de multiples toolboxes, c’est-à-dire des boîtes à outils. Celles-ci sont des bibliothèques de fonctions dédiées à des domaines particuliers. Nous pouvons citer par exemple : l’Automatique, le traitement du signal, l’analyse statistique, l’optimisation… Voici une liste non exhaustive (loin de là) et en vrac de toolboxes, montrant la diversité des fonctionnalités de Matlab : Control System Toolbox Symbolic Math Toolbox Signal Processing Toolbox Neural Network Toolbox Optimization Toolbox Parallel Computing Toolbox Statistics Toolbox Fuzzy Logic Toolbox Image Processing Toolbox Aerospace Toolbox Data Acquisition Toolbox Bioinformatics Toolbox MATLAB Compiler Vehicle Network Toolbox Model-Based Calibration Toolbox Financial Toolbox RF Toolbox System Identification Toolbox 1 http://www.mathworks.com/ Y. Ariba et J. Cadieux Icam - Toulouse 7 2 - Objectifs Ce document propose une introduction à Matlab et développe un ensemble de fonctionnalités spécifiques à certains domaines des sciences de l’ingénieur. Il ne constitue en aucun cas une documentation exhaustive du logiciel. Toutefois, les principales notions sont présentées et invitent l’étudiant à chercher par lui-même les informations complémentaires pour mener à bien son projet. En plus de l’aide intégrée à l’environnement et des nombreux ouvrages dédiés, une quantité abondante de ressources sont disponibles sur Internet : Documentation en ligne de MathWorks : http://www.mathworks.com/help/techdoc/ Espaces d’entraide : - Developpez.com : http://matlab.developpez.com/ - Matlab Central : http://www.mathworks.com/matlabcentral/ Notes mises en ligne par des Universités/Ecoles : (par exemples) - http://nte.mines-albi.fr/MATLAB/co/Matlab_web.html - http://personnel.isae.fr/sites/personnel/IMG/pdf/InitiationMatLab.pdf - http://perso.telecom-paristech.fr/~prado/enseignement/polys/matlab.html - http://asi.insa-rouen.fr/enseignement/siteUV/tds/ - http://www-gmm.insa-toulouse.fr/~roussier/poly_info_icbe.pdf - … Il existe également un espace d’échange de codes et applications Matlab : File exchange : http://www.mathworks.com/matlabcentral/fileexchange/ L’objectif de ce document est double. L’étudiant doit acquérir une connaissance suffisante du logiciel pour pouvoir travailler efficacement et comprendre les notions vues dans les travaux pratiques d’Automatique, de Mécanique et d’Analyse Numérique. Le second objectif est de proposer une initiation consistante à un logiciel puissant, très largement utilisé dans le monde industriel et académique (laboratoires, universités/écoles). 3 - Logiciels alternatifs Si le prix d’une licence2 Matlab, type éducation (classroom), est relativement intéressant (<~100€), celui d’une version industrielle est plutôt onéreux (>~2500€). A cela il faut ajouter un coût supplémentaire pour chaque toolbox commandée. Voici quelques solutions alternatives. Scilab est un logiciel open-source sous licence GPL (ou du moins dans l’esprit). Développé depuis 1990 par des chercheurs de l’INRIA (institut national de recherche en informatique et automatique), il est maintenant maintenu par la fondation de coopération scientifique Digiteo3. Il est disponible sur les plateformes Windows, Mac OS X, Linux et BSD. Pour plus d’informations et pour télécharger le logiciel : http://www.scilab.org/ 2 Les valeurs données ne sont que des ordres de grandeur et peuvent changer. Les prix dépendent du type de licence (éducation, industriel, recherche) et du format (individuel, groupe, concurrent). 3 http://www.digiteo.fr/fr Y. Ariba et J. Cadieux Icam - Toulouse 8 Octave est également un logiciel open-source sous licence GPL. Son développement a commencé au début des années 90 par John W. Eaton dans le cadre du projet GNU4. Sa syntaxe est proche de celle de Matlab. Il est disponible sur les plateformes Windows, Mac OS X, Linux et BSD. Pour plus d’informations et pour télécharger le logiciel : http://www.gnu.org/software/octave/ 4 http://www.gnu.org/ Y. Ariba et J. Cadieux Icam - Toulouse 9 II. GENERALITES Dans ce chapitre, l’environnement de Matlab est présenté. Un premier exemple introductif montre rapidement le principe de fonctionnement du logiciel. Nous présentons ensuite un ensemble de fonctions de base nécessaire pour débuter en Matlab. 1 - Interface principale Au lancement de Matlab, l’interface suivante apparait : Le logiciel propose un véritable environnement de travail composé de multiples fenêtres. Nous pouvons distinguer quatre blocs : Y. Ariba et J. Cadieux Icam - Toulouse 10  Command window (console d’exécution) : à l’invite de commande « >> », l’utilisateur peut entrer les instructions à exécuter. Il s’agit de la fenêtre principale de l’interface.  Current directory (répertoire courant) : permet de naviguer et de visualiser le contenu du répertoire courant de l’utilisateur. Les programmes de l’utilisateur doivent être situés dans ce répertoire pour être visible et donc exécutable5.  Workspace (espace de travail) : permet de visualiser les variables définies, leur type, la taille occupée en mémoire…  Command history : historique des commandes que l’utilisateur a exécutées. Il est possible de faire glisser ces commandes vers la fenêtre de commande. Notons que la command window est la fenêtre centrale de l’interface, c’est à partir de là que l’utilisateur pourra lancer les commandes interprétées par Matlab. Le principe est simple et intuitif, le tout est de connaitre les fonctions appropriées et de respecter leur syntaxe. Premier exemple élémentaire : à l’invite de commande, taper « 3*5 », puis entrer : >> 3*5 ans = 15 A la validation de l’instruction, l’interface affiche le résultat de cette dernière. Afin d’alléger l’affichage, un point-virgule « ; » en fin de commande empêche le renvoie du résultat dans la fenêtre (évidemment l’instruction est toujours exécutée). Par exemple : >> 3*5; >> Le calcul a été effectué mais le résultat n’est pas affiché. 2 - Premiers pas sur des exemples Nous proposons en premier lieu un démarrage rapide basé sur un exemple simple. Celui-ci a pour objectif de montrer comment se pratique Matlab dans une première utilisation basique. Cette section doit donc être parcourue avec Matlab à coté. Les lecteurs non débutants pourront passer cette section. 2.1 Calcul et tracé d’une fonction sinus La manipulation commence dans la fenêtre command window, à l’invite de commande uploads/Litterature/ manuel-matlab.pdf

  • 27
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager