U.E.R. Automatique Laboratoire Robotique et Productique Module : Introduction à
U.E.R. Automatique Laboratoire Robotique et Productique Module : Introduction à Matlab 1° Année Ing. Génie Electrique Par : Col Djeddou Mustapha Cdt Nemra Abdelkrim 2014/2015 Laboratoire Robotique et Productique Cours Initiation Matlab 2 Tables des Matières 0. INTRODUCTION ............................................................................................................................................................ 3 1. INFORMATIONS PRELIMINAIRES ........................................................................................................................... 3 2. LES VARIABLES SOUS MATLAB............................................................................................................................... 4 2.1 VARIABLES SPECIALES ......................................................................................................................................................... 5 2.2 NOMBRES COMPLEXES ......................................................................................................................................................... 5 3. VECTEURS ET MATRICES .......................................................................................................................................... 7 3.1 LES VECTEURS ...................................................................................................................................................................... 7 3.2 LES MATRICES ..................................................................................................................................................................... 9 3.3 CHAINES DE CARACTERES .................................................................................................................................................. 19 3.4 POLYNOMES ....................................................................................................................................................................... 19 4. PROGRAMMER EN MATLAB ................................................................................................................................... 26 4.1 OPERATEURS LOGIQUES ET RELATIONNELS ........................................................................................................................ 26 4.2 CONTROLE DE L’EXECUTION .............................................................................................................................................. 27 5. SCRIPTS ET FONCTIONS .......................................................................................................................................... 32 5.1 LES SCRIPTS ....................................................................................................................................................................... 32 5.2 LES FONCTIONS .................................................................................................................................................................. 33 5.3 LES SOUS FONCTIONS ......................................................................................................................................................... 36 6. LECTURE ET ECRITURE DE FICHIER .................................................................................................................. 39 7. GRAPHISME ................................................................................................................................................................. 41 7.1 GRAPHIQUES A 2D ............................................................................................................................................................. 41 7.2 GRAPHIQUES A 3D ............................................................................................................................................................. 43 7.3 ANIMATIONS ...................................................................................................................................................................... 48 8. INTRODUCTION A SIMULINK ................................................................................................................................. 49 9. APPLICATIONS ............................................................................................................................................................ 52 9.1 TRAITEMENT D’IMAGE SUR MATLAB ................................................................................................................................. 52 9.2 FONCTIONS DE FILTRAGE ET DE CONVOLUTION .................................................................................................................. 53 9.3 TRANSFORMATION DE FOURIER ......................................................................................................................................... 54 9.4 GENERATION DE NOMBRES PSEUDO-ALEATOIRES ............................................................................................................... 54 9.5 RESOUDRE UNE EQUATION DIFFERENTIELLE ORDINAIRE .................................................................................................... 53 10. LES STRUCTURES ....................................................................................................................................................... 55 11. FONCTIONS ELEMENTAIRES MATLAB ............................................................................................................... 56 Laboratoire Robotique et Productique Cours Initiation Matlab 3 0. Introduction Cette introduction au logiciel Matlab est proposée aux étudiants du département Génie électrique de l’EMP avant le début de leur première année de formation. Ce cours permet aux étudiants de travailler individuellement sur les exemples et exercices présentés ci-après. Par ce recueil d’exemples, on souhaite montrer que l’usage de l’outil Matlab dans le domaine de l’ingénierie est simple et efficace et ainsi inciter nos étudiants à l’appliquer dans les cours et les travaux de laboratoires qu’ils auront à faire durant leur cursus. Les commandes Matlab sont présentées dans des situations réelles et suffisamment explicites pour que leurs utilisations soient claires par elles-mêmes. Les détails syntaxiques doivent être recherchés par les étudiants en recourant de manière intensive à l’aide en ligne Matlab. 1. Informations préliminaires Matlab est un système interactif et convivial de calcul numérique et de visualisation graphique destiné aux ingénieurs et scientifiques. La facilité de développement des applications dans son langage fait qu’il est pratiquement devenu le standard dans son domaine. Il possède un langage de programmation puissant et simple à utiliser avec lequel l’utilisateur peut effectuer des calculs en ligne ou par l’intermédiaire d’un fichier de commandes. Figure 1 : Architecture de Matlab. Laboratoire Robotique et Productique Cours Initiation Matlab 4 Le logiciel Matlab (Matrix Laboratory) est basé sur le calcul matriciel numérique. Tous les objets utilisés dans Matlab sont donc définis au travers de matrices ou vecteurs dont les valeurs sont, par définition, des grandeurs complexes. Il existe un très grand nombre d’opérateurs et fonctions distribuées dans le logiciel de base et dans des boîtes à outils spécialisées. A ceci peut s’ajouter un outil de programmation graphique : Simulink, essentiel pour la simulation de systèmes dynamiques non linéaires. L’environnement Matlab se présente sous la forme de plusieurs fenêtres, essentiellement la fenêtre de commande ou espace de travail dans lequel un interpréteur de commandes exécute les opérations demandées, la fenêtre contenant l’historique des commandes, la fenêtre des variables utilisées dans l’espace de travail, etc... Figure 2: Fenêtre principale de Matlab 2. Les variables sous Matlab Matlab gère de façon automatique : les nombres entiers, réels, complexes de façon indifférente, les chaînes de caractères ainsi que les tableaux de nombre. En aucun cas, il n'est utile de déclarer le type de la variable que l'on manipule, y compris les tableaux (mais il n’empêche qu’il est préférable pour la rapidité d’exécution de déclarer les variables). Ainsi les instructions suivantes, déclarent les variables lors de leur affectation : Laboratoire Robotique et Productique Cours Initiation Matlab 5 2.1 Variables spéciales N.B. : Eviter l’utilisation de mots clés ou des noms de valeurs spéciales pour un nom de variable. MATLAB peut produire des messages d’erreurs ou des résultats étranges si l’un de ces mots réservés ou noms de fonctions est redéfini. Les mots réservés sont listés par la commande iskeyword. 2.2 Nombres complexes La constante i ou j est le nombre imaginaire pré déclaré, de même que certaines constantes Laboratoire Robotique et Productique Cours Initiation Matlab 6 Autres fonctions : conj, isreal Exercice 1 Exercice 2 Utiliser Matlab pour évaluer Exercice 3 Calculer : 1. 2. 3. Exercice 4 Définir une variable x = 13.5 et évaluer : 1. 2. 3. Exercice 5 Définir les variables x et z avec x = 9.6 et z = 8.1 et évaluer 1. 2. Exercice 6 Calculer (par une seule commande) le rayon r d’une sphère qui a un volume de 350 cm3 . Une fois r est calculé, l’utiliser pour calculer la surface de la sphère. Exercice 7 Laboratoire Robotique et Productique Cours Initiation Matlab 7 Dans un triangle, a = 18 cm, b = 35 cm et c = 50 cm. Définir a, b et c comme variables et calculer alors l’angle (en degrés) par substitution des variables dans la loi des cosinus. (La loi des cosinus est : ). 3. Vecteurs et Matrices 3.1 Les vecteurs Création de vecteurs Par défaut, le vecteur est une ligne à plusieurs colonnes vecteur ligne par énumération des composantes : >> v = [1 3.4 5 -6] v = 1.0000 3.4000 5.0000 -6.0000 vecteur ligne par description : >> x = [0 : pi/10 : pi] x = Columns 1 through 7 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 Columns 8 through 11 2.1991 2.5133 2.8274 3.1416 vecteur colonne : >> xcol = x' xcol = 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 2.5133 2.8274 3.1416 génération de vecteurs métriques >> x = linspace(0, pi, 11) x = Laboratoire Robotique et Productique Cours Initiation Matlab 8 Columns 1 through 7 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 Columns 8 through 11 2.1991 2.5133 2.8274 3.1416 >> % x = linspace(0, 1, 11)*pi donne le même résultat Adressages et indexages >> x(3) % 3eme élément du vecteur x ans = 0.6283 >> x(2 : 4) % un bloc de composantes ans = 0.3142 0.6283 0.9425 >> x([8 3 9 1]) % une sélection de composantes ( on les désigne avec un autre vecteur) ans = 2.1991 0.6283 2.5133 0 L'utilisation d'indice hors limite provoque une erreur, comme le montre cet exemple: >> x(12) ??? Index exceeds matrix dimensions. Combinaison de vecteurs Accolage de deux vecteurs : >> a = [1 : 3] a = 1 2 3 >> b = [10 : 10 : 30] b = 10 20 30 >> c = [a b] c = 1 2 3 10 20 30 On peut faire plus compliqué : >> c = [a b] c = Laboratoire Robotique et Productique Cours Initiation Matlab 9 1 2 3 10 20 30 >> d = [a(2 : -1 : 1) b] % on accole b avec une portion de a dans l'ordre renversé d = 2 1 10 20 30 Notez la différence entre ( ) et [ ]. Exercice 8 3.2 Les Matrices Création de matrices Une matrice est un ensemble de lignes comportant toutes le même nombre de colonnes Matlab, depuis la version 5, supporte les matrices à n dimensions (n > 2) Par énumération des éléments >> m1 = [1 2 3 ; 4 5 6 ; 7 8 9] % on sépare les lignes par des points-virgules Laboratoire Robotique et Productique Cours Initiation Matlab 10 m1 = 1 2 3 4 5 6 7 8 9 On peut étendre aux matrices les autres manières de définir des vecteurs. Par exemple: >> m2 = [1 : 3 ; 11 : 1 : 13] m2 = 1 2 3 11 12 13 >> m2 = [1 : 1 : 3 ; logspace(0, 1, 3)] m2 = 1.0000 2.0000 3.0000 1.0000 3.1623 10.0000 sum, transpose, et diag Utilisant les propriétés spéciales des matrices carrées ‘ magique’ par la sommation de différentes façons ces éléments. Si on prend la somme le long des lignes et colonnes. Ou le long des deux diagonales principales, on trouve toujours le même nombre. Vérifiant ces propriétés en utilisant MATLAB. >> A = magic(4) A = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 La première affirmation à essayer est sum(A) ans = 34 34 34 34 Laboratoire Robotique et Productique Cours Initiation Matlab 11 Quand on ne spécifie pas une variable de sortie, MATLAB utilise la variable ans, abréviation de answer pour mémoriser le résultat du calcul. On a calculé un vecteur rangé contenant les sommes des colonnes de A. chaque colonne a la même somme, la somme magic 34. Qu’on t il de la somme des rangées ? MATLAB préfère travailler avec des colonnes d’une matrice, alors, la façon la plus facile pour la somme des rangées est de transposer la matrice, et uploads/Science et Technologie/ introduction-a-matlab-page-41.pdf
Documents similaires










-
29
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jan 06, 2023
- Catégorie Science & technolo...
- Langue French
- Taille du fichier 1.4922MB