Ph. Hautcoeur Novembre 2019 INTRODUCTION A STATEFLOW® R2019b A mettre entre tou
Ph. Hautcoeur Novembre 2019 INTRODUCTION A STATEFLOW® R2019b A mettre entre toutes les mains, entre celles des curieux et celles de ceux qui s’y intéressent… Modélisation & Simulation des Systèmes à Evènements Discrets (et Continus). Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 1 « De même qu’il faut apprendre à apprendre individuellement, il faut apprendre à apprendre collectivement, il faut créer les conditions où on peut apprendre les uns des autres… » François TADDEI présente son livre « Apprendre au XXIe siècle » publié chez Calmann-Lévy. https://www.youtube.com/watch?v=BhunNczVNaA Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 2 Cet ouvrage revisite entièrement la version précédente publiée en 2014 (Version R2013a de la suite Matlab® Simulink®) et téléchargeable sur la plateforme « File Exchange » de Mathworks ®. http://bit.ly/IntroStateflow Cette nouvelle édition s’articule de manière similaire à la précédente et reprend les principales évolutions depuis la version R2013b de la suite Matlab® Simulink®. Ce manuel a donc pour objectif de présenter les fonctionnalités de base de l’outil illustrées par des exemples simples. Les fichiers associés à la plupart des exemples developpés dans ce cadre sont téléchargeables avec ce document sur la plateforme « File Exchange » de Mathworks ®. Puisse cet ouvrage contribuer, modestement, à la construction d’une société apprenante… Philippe Hautcoeur Professeur de Sciences Industrielles de l’Ingénieur Classes Préparatoires aux Grandes Ecoles - PSI Lycée Clemenceau à Nantes Ce document évolue grâce à votre concours. >>>> contact : philippe.hautcoeur@ac-nantes.fr Ph Pr Cl Ly Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 3 A celles et ceux qui m’ont accompagné dans ce projet. Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 4 (BY NC SA) Attribution + Pas d’Utilisation Commerciale + Partage dans les mêmes conditions: Le titulaire des droits autorise l’exploitation de l’œuvre originale à des fins non commerciales, ainsi que la création d’œuvres dérivées, à condition qu’elles soient distribuées sous une licence identique à celle qui régit l’œuvre originale.. Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 5 Avant-propos… Stateflow® est un module développé par la société américaine MathWorks® qui permet la simulation de machines d’état. Une machine d’état comporte un nombre fini d’états. Elle modélise le comportement de systèmes qui passent d’un état à un autre en réponse à des évènements. On parle alors de systèmes à évènements discrets. Comme son nom l’indique, ce module permet de tracer des diagrammes d’état (« State Chart ») et des diagrammes de flux (« Flow Chart »). Stateflow® est intégré à Matlab® et Simulink®. Les modèles construits pourront par conséquent comporter des blocs des différentes « toolboxes » de Simulink et/ou appeler des fonctions Matlab et/ou des fonctions Simulink comme nous le verrons. Ainsi le modèle global d’un système complexe pourra comporter des modèles linéaires continus construits avec Simulink sous la forme de schéma-blocs, des machines à état construites avec Stateflow® ou encore des modèles acausaux réalisés en utilisant Simscape®. Aussi Stateflow® permet de simuler le comportement de systèmes hybrides c’est-à- dire à évènements discrets et continus. C’est par exemple le cas d’une balle qui rebondit sur le sol. En effet son déplacement dans l’air est continu alors qu’à chaque rebond, considéré comme un évènement, sa trajectoire est modifiée. C’est encore le cas si un robot doit éviter un obstacle présent sur sa trajectoire. Une connaissance approfondie de Matlab® et Simulink® n’est pas indispensable pour commencer à travailler avec Stateflow®. Dans la plupart des exemples traités avec la version R2019b, les chemins menant aux composants des bibliothèques Simulink® utilisées sont précisés. Après avoir présenté les différents outils et quelques applications, nous verrons comment, dans le cadre d’une démarche Model Based Design, implémenter un programme réalisé avec Stateflow® vers une cible telle que la brique LEGO® Mindstorms EV3. Le guide de l’utilisateur complet de Stateflow® est téléchargeable sur le site de MathWorks® : http://www.mathworks.com/help/pdf_doc/stateflow/sf_ug.pdf Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 6 Aussi, ce document peut être un outil complémentaire à la formation en ligne (en anglais) proposée par MathWorks® : Stateflow Onramp à laquelle on accède à partir de la page de démarrage de Simulink® (Simulink Start Page) en lançant d’abord Matlab® puis Simulink® : Enfin, pour appréhender le fonctionnement d’une machine d’état, vous pouvez vous rendre sur ma chaı̂ne YouTube et visualiser la playlist consacrée à l’analyse et la modélisation du comportement des systèmes à évènements discrets en général, et au diagramme d’état SysML en particulier : http://bit.ly/StmDiagram Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 7 Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 8 Table des matières Avant-propos… __________________________________________________________________________________ 5 Chapitre 1 - Pour bien commencer… _______________________________________________________ 11 1.1- Préparation et présentation de l’interface ___________________________________________ 11 A propos de la préparation… _________________________________________________________________________ 11 A propos de l’interface Simulink®… _________________________________________________________________ 13 Chapitre 2 - SysML State Machine vs Stateflow®… ______________________________________ 19 Chapitre 3 – Proposition de méthodologie … ____________________________________________ 24 Chapitre 4 - Le « Chart »… ___________________________________________________________________ 27 A propos du fonctionnement de la machine d’état… _____________________________________________ 29 4.1- State… ______________________________________________________________________________________ 30 4.1.1 - « Label » et mots clé d’un état _______________________________________________________________ 30 A propos des transitions et des évènements… ____________________________________________________ 31 4.1.2 - « Label » d’une transition ____________________________________________________________________ 32 4.1.3 - Cas particuliers de la transition réflexive et de la transition interne _____________________ 33 4.1.4 - Prise en compte de l’activité d’un état dans une transition _______________________________ 34 4.1.5 - Les évènements extérieurs __________________________________________________________________ 34 A propos des opérateurs temporels… ______________________________________________________________ 41 L’opérateur « after » : ________________________________________________________________________________ 42 L’opérateur « before » :_______________________________________________________________________________ 42 L’opérateur « at » : ____________________________________________________________________________________ 42 L’opérateur « every » :________________________________________________________________________________ 43 L’opérateur « temporalCount » : _____________________________________________________________________ 43 A propos des super-états ou états composites … _________________________________________________ 44 Décomposition exclusive (OR) ou parallèle (AND) des états composites ________________________ 44 Utilisation d’un « Subchart » ________________________________________________________________________ 45 4.2- Default Transition ________________________________________________________________________ 46 4.3- Junction ____________________________________________________________________________________ 47 A propos des « Flow Charts »… _______________________________________________________________________ 51 4.4- History junction __________________________________________________________________________ 57 4.5- Box __________________________________________________________________________________________ 62 4.6- Simulink Based state _____________________________________________________________________ 63 4.7- Simulink Function ________________________________________________________________________ 66 4.8- Graphical function _______________________________________________________________________ 72 4.9 MATLAB Function _________________________________________________________________________ 84 4.10 Truth table _______________________________________________________________________________ 93 Chapitre 5 - D’autres exemples d’application du « Chart »… _______________________ 101 5.1- Initialisation D’un axe lineaire ________________________________________________________ 101 5.2- Pilotage d’une plateforme omnidirectionnelle _____________________________________ 107 Ph. Hautcoeur Stateflow®: modélisation et simulation des systèmes discrets (et continus) 9 5.3- Traitement des informations délivrées par un Codeur SinCos ___________________ 113 Chapitre 6 - Le « Sequence Viewer »… ___________________________________________________ 122 Chapitre 7 - La « State Transition Table »… ____________________________________________ 126 7.1- Exemple du codeur incrémental ______________________________________________________ 131 Chapitre 8 - La « Truth Table »… _________________________________________________________ 137 8.1- Exemple de la commande d’un pont roulant ________________________________________ 138 Chapitre9 – Le « Dashboard » SimulinkÒ… _____________________________________________ 148 9.1 Exemple du moteur à courant continu ________________________________________________ 148 Chapitre 10 – Stateflow et Simscape MultibodyÒ (Model in the Loop)… __________ 155 Chapitre 11 – Le prototypage (Hardware In the Loop)… ____________________________ 169 11.1 – le kit Lego® mindstorms EV3 Education __________________________________________ 169 11.2 – Lego mindstorms EV3 et Simulink® ________________________________________________ 170 11.3 – La plateforme FifiBot _________________________________________________________________ 173 11.3.1 Rappel du cahier des charges et choix technologiques __________________________________ 173 11.3.2 Présentation de la structure de la plateforme FifiBot ____________________________________ 173 11.3.3 Présentation des éléments de la bibliothèque SimulinkÒ _______________________________ 175 11.3.4 Préparation de l’environnement HIL ______________________________________________________ 176 Pour conclure… ______________________________________________________________________________ 179 uploads/s3/ mathworks-2019b-sommaire.pdf
Documents similaires
-
17
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Oct 31, 2022
- Catégorie Creative Arts / Ar...
- Langue French
- Taille du fichier 0.6544MB