Stateflow

 

Stateflow

Modéliser et simuler la logique décisionnelle avec des machines à états et des diagrammes de flux

La vidéo dure 2:06

Connecter des agents IA à Stateflow

Intégrez des capacités spécifiques à votre domaine, dans votre workflow d'IA agentique.

Concevoir des machines à états

Avec Stateflow, vous pouvez concevoir des machines à états en utilisant des éléments à glisser-déposer et des instructions logiques simples. Pour vous aider à démarrer, l'autoformation Stateflow Onramp et d'autres formations sont à votre disposition.

Diagramme d'état comportant plusieurs états et des blocs fonctionnels MATLAB. L'état « exchange » contient une logique représentée avec un diagramme de flux pour déterminer s'il entre dans l'un des deux états enfants ou s'il sort de l'état.

Créer des diagrammes de flux

Vous pouvez utiliser des diagrammes de flux pour représenter la logique d'état. L'assistant Pattern Wizard vous permet de générer automatiquement des diagrammes de flux pour des patterns de logique courants.

Modéliser votre logique avec des tables

Stateflow propose des tables de transition d'état et des tables de vérité. Les tables de transition d'état proposent une vue tabulaire pour la modélisation de la logique, et les tables de vérité implémentent le design de la logique combinatoire dans un format tabulaire.

Exécuter des diagrammes Stateflow

Lors de l'exécution de votre diagramme d'état, des animations mettent en avant les états et les transitions actifs. Vous pouvez modifier manuellement les variables pendant l'exécution afin de visualiser leur impact sur le système.

À gauche figure un diagramme Stateflow pour un changement de vitesse manuel. Les données de simulation pour deux des états du diagramme sont présentées dans les graphiques de droite, les flèches identifiant le tracé correspondant à chaque état.

Surveiller et analyser les données

Simulation Data Inspector offre la possibilité de visualiser les données de simulation. Grâce à cet outil, vous pouvez surveiller un système pour collecter des informations précieuses sur son comportement.

Débugger la logique dans Stateflow

Les capacités de débuggage de Stateflow vous permettent de suivre en détail l'exécution d'un diagramme. Vous pouvez définir des points d'arrêt et examiner différentes fonctions pas à pas dans vos diagrammes d'état afin de comprendre les comportements inattendus.

Un scheduler de logique temporelle est implémenté dans un modèle Simulink. Le bloc planifie l'exécution de trois sous-systèmes d'appel de fonction, le troisième envoyant sa sortie à un bloc Scope.

Planification des tâches Stateflow

Stateflow peut invoquer les algorithmes Simulink de manière périodique ou continue pour planifier l'exécution des composants et simuler votre environnement en temps réel.

Un modèle Simulink qui a été révisé après la validation des exigences. Sous le modèle, les statuts de vérification des exigences listées sont colorés en vert pour indiquer que toutes les propriétés du modèle sont valides.

Valider des designs avec Simulink

Stateflow s'intègre parfaitement aux autres produits MathWorks pour vérifier, valider et tester vos designs. Vous pouvez exploiter ces produits pour garantir que vos designs répondent aux exigences, détecter les erreurs plus rapidement et atteindre vos objectifs de qualité.

Deux fenêtres d'application reliées par un graphique indiquant que la seconde fenêtre a été créée à partir de la première. La première fenêtre montre un diagramme Stateflow et la seconde le code C qui a été généré automatiquement à partir du diagramme.

Générer du code pour le déploiement

La génération de code vous permet d'implémenter votre logique de diagramme d'état sur des systèmes embarqués. Stateflow support les workflows de génération de code C, C++, VHDL et Verilog, ainsi que de texte structuré pour les PLC.

« Il a fallu attendre le projet Deep Space 1 pour que les diagrammes d'état et la technologie de génération automatique de code soient utilisées sur des grands systèmes pour le software avionique des engins spatiaux. Les outils MathWorks ont rendu cette approche possible. »

FAQ sur Stateflow

Vous pouvez concevoir et développer des systèmes de commande de supervision, des systèmes de détection, d'isolation et de récupération de pannes, ainsi que des systèmes embarqués de planification des tâches et de gestion des événements.

Les charts et les tables Stateflow peuvent être utilisés dans Simulink sous forme de blocs et échanger des données via des ports d'entrée et de sortie. Vous pouvez également intégrer des sous-systèmes Simulink comme des états et des fonctions au sein de Stateflow. Stateflow peut aussi invoquer des composants dans Simulink, agissant comme planificateur de tâches pour ces composants. Stateflow utilise la syntaxe MATLAB pour définir les actions d'état, les transitions et les conditions. Stateflow peut également appeler des MATLAB Functions pour effectuer des calculs complexes ou réutiliser du code MATLAB existant.

Stateflow fournit une animation graphique qui met en évidence les états et transitions actifs pendant l'exécution, et vous pouvez définir des points d'arrêt pour parcourir l'exécution du chart en détail. Vous pouvez également modifier manuellement les variables pendant l'exécution pour visualiser leur impact sur le système.

Stateflow prend en charge la génération de code pour C, C++, VHDL, Verilog et Structured Text pour automates programmables (PLC), ce qui vous permet d'implémenter la logique de vos state charts sur des systèmes embarqués.

Les Tables de transition d'état offrent une vue tabulaire pour modéliser la logique et constituent une solution idéale pour les machines à états séquentielles simples orientées processus.

Oui, Stateflow peut invoquer des algorithmes Simulink de manière périodique ou continue pour ordonnancer l'exécution de composants et simuler votre environnement temps réel.

Vous pouvez utiliser le volet Symbols pour inspecter les données pendant la simulation, et vous pouvez également utiliser l'Inspecteur de données de simulation pour visualiser les données de simulation et surveiller un système sur plusieurs exécutions afin d'obtenir des informations précieuses sur son comportement.

Vous souhaitez en savoir plus sur le produit  Stateflow ?


Prêt à acheter ?

Découvrez les tarifs et les produits.

Vous êtes étudiant ?

Votre établissement propose peut-être déjà un accès à MATLAB, Simulink et d'autres produits complémentaires via la licence Campus-Wide.