Stateflow

Modélisez et simulez la logique décisionnelle avec des machines à états et des diagrammes de flux

 

Stateflow® offre un langage graphique comprenant des diagrammes de transition d'états, des diagrammes de flux, des tables de transition d'état et des tables de vérité. Stateflow vous permet de décrire la manière dont les algorithmes MATLAB® et les modèles Simulink® réagissent aux signaux d'entrée, aux événements et aux conditions temporelles. 

Avec Stateflow, vous pouvez concevoir et développer des systèmes de contrôle de supervision, de planification de tâches, de gestion d'incidents, des protocoles de communication , des interfaces utilisateur, ainsi que des systèmes hybrides. 

Stateflow vous permet de modéliser de la logique décisionnelle combinatoire et séquentielle qu'il est possible de simuler sous forme de bloc dans un modèle Simulink ou d'exécuter en tant qu'objet dans MATLAB. Grâce à l'animation graphique, vous pouvez analyser et déboguer votre logique pendant son exécution. En outre, il est possible d'effectuer des contrôles en cours d'édition et en cours d'exécution afin d'assurer la cohérence et l'exhaustivité du design avant sa mise en œuvre.

Concevoir la logique de contrôle

Modélisez la logique du système à l'aide de machines à états, de diagrammes de flux et de tables de vérité.

Concevoir graphiquement des machines à états

Créez des machines à états graphiquement en dessinant les états et les jonctions connectées par des transitions. Vous pouvez aussi créer des fonctions à l'aide de diagrammes de flux, de sous-systèmes Simulink, de code MATLAB et de tables de vérité.

Diagramme Stateflow définissant la logique d'un système de contrôle de température d'une chaudière. Le diagramme utilise des fonctions graphiques (à droite) pour mettre en œuvre les algorithmes utilitaires invoqués par le système de chauffe (à gauche).

Concevoir des diagrammes de flux

Créez des diagrammes de flux en dessinant les transitions connectées aux jonctions. L'assistant Pattern Wizard vous permet de créer des modèles de flux logiques couramment utilisés. Vous pouvez utiliser des diagrammes de flux pour concevoir une logique de transition entre états.

Représentez graphiquement des logiques combinatoires telles que des arbres de décision et des boucles itératives à l'aide de diagrammes de flux.

Concevoir la logique avec des tables

Les tables de vérité dans Stateflow vous permettent de modéliser une logique sous Simulink dans les cas où la sortie dépend entièrement de l'entrée en cours. Les tables de transition d'états fournissent un environnement structuré pour la modélisation des machines à états dans Simulink.

Table de vérité implémentant la logique de sélection d'une lecture de capteur valide sur un algorithme de détection des défaillances.

Exécuter et debugger les diagrammes

Visualisez le comportement de votre système pour l'analyse et le debug.

Exécuter des diagrammes Stateflow

Visualisez le comportement du système avec une animation des diagrammes d'états qui met en évidence les états et transitions actifs sur vos diagrammes.

Debugger des diagrammes Stateflow

Les fonctionnalités de débogage de Stateflow vous permettent d'examiner en détail l'exécution des diagrammes. Vous pouvez définir les points d'interruption, contrôler la valeur des données et examiner les différentes fonctions de vos diagrammes d'états.

Options de visualisation des données de simulation sous Stateflow. En haut à gauche : Simulink Data Inspector pour comparer des signaux spécifiques, en bas à gauche : interface MATLAB personnalisée pour analyser des données, à droite : Simulink Signal Selector pour comparer des états spécifiques.

Développer de la logique réutilisable pour les applications MATLAB

Utilisez des objets diagramme Stateflow pour développer de la logique réutilisable pour les applications MATLAB. Concevez la logique des machines à états et de timing pour de nombreuses applications telles que le test et les mesures, les systèmes autonomes, le traitement du signal et les communications.

Objets diagramme réutilisables

Créez des diagrammes Stateflow autonomes qui tirent parti de toutes les fonctionnalités du langage MATLAB dans les actions d'état et de transition. Utilisez ces diagrammes en tant qu'objets MATLAB dans vos applications qui nécessitent de la logique de machine à états et de timing.

Logique de machine à états et de timing

Accélérez le développement d'applications MATLAB en utilisant Stateflow pour concevoir graphiquement la logique des machines à états et de timing qu'il serait difficile d'implémenter sous forme textuelle.

Déploiement d'applications Stateflow

Créez des applications MATLAB qui comprennent des objets diagramme Stateflow et partagez-les, sans requérir à Stateflow.

Partagez des applications MATLAB qui comprennent des objets diagramme Stateflow avec des utilisateurs qui ne disposent pas de Stateflow. 

Ordonnancer des algorithmes Simulink

Ordonnancer des algorithmes modélisés dans Simulink.

Ordonnancement périodique et continue

Vous pouvez modéliser de la logique conditionnelle, événementielle et temporelle sous Stateflow pour appeler des algorithmes Simulink de façon périodique ou continue. Orchestrez l'exécution des composants afin de simuler l'ordonnancement de votre environnement temps réel.

Vous pouvez modéliser la logique sous Stateflow pour appeler des algorithmes Simulink et MATLAB de façon périodique ou continue.

Opérateurs temporels

Utilisez des opérateurs événementiels et temporels (par exemple, after et duration) afin de spécifier la logique de transition d'états en fonction du nombre d'événements, du temps écoulé et de signaux débruités, sans avoir besoin de créer et maintenir vos propres compteurs et horloges.

Valider les designs et générer du code

Validez votre design par rapport aux exigences et générez du code pour l'implémenter sur votre système embarqué.

Valider les designs

Utilisez Stateflow avec d'autres produits Simulink afin de valider votre design par rapport aux exigences.

  • Avec Simulink Requirements™, liez des exigences directement à des objets Stateflow grâce à un glisser-déposer.
  • Vérifiez que vos diagrammes d'états sont conformes aux normes à l'aide de Simulink Check™.
  • Collectez les métriques de couverture du modèle et du code généré avec Simulink Coverage™.
  • Simulink Design Verifier™ vous permet de détecter les erreurs de design et de générer des vecteurs de test.
  • Développez, gérez et exécutez des tests basés sur la simulation grâce à Simulink Test™.

Mise en évidence de la logique active à l'aide de Model Slicer.

Générer du code

Générez du code pour implémenter votre logique Stateflow sur des systèmes embarqués.

  • Générez du code C et C++ à partir de modèles Simulink et Stateflow grâce à Simulink Coder™.
  • Générez du code VHDL et Verilog pour les designs FPGA et ASIC avec HDL Coder™.
  • Générez du texte structuré IEC 61131-3 pour les PLC et PAC avec Simulink PLC Coder™.

Générez du code pour implémenter la logique Stateflow. 

Nouveautés

Diagrammes Stateflow dans MATLAB

Programmez, debugger et exécutez graphiquement des machines à états autonomes en tant qu'objets MATLAB.

Code C externe

Intégrez entièrement du code C externe dans des diagrammes Stateflow avec les fonctionnalités de synchronisation des changements, de vérification des erreurs, d'examen des valeurs et d'analyse proposées par Simulink Coverage et Simulink Design Verifier

Éditeur de table de vérité

Concevez la logique combinatoire dans l'environnement d'édition Simulink et Stateflow à l'aide de fonctionnalités de vérification en cours d'édition, d'animation, de points d'interruption et de debug par étape

Sous-système Simulink en tant qu'état Stateflow

Concevez des états à l'aide d'algorithmes Simulink continus et périodiques afin de modéliser des systèmes hybrides

Sequence Viewer

Visualisez les changements d'état, l'activité des événements et les appels de fonctions dans le temps

Visualisation des états et des données

Diffusez l'activité des états et les données directement depuis Stateflow vers Simulation Data Inspector

Vérification en cours d'édition

Détectez et réglez les problèmes potentiels rencontrés dans vos diagrammes au moment de la conception

Symbol Manager

Créez et gérez des données, événements et messages directement dans l'éditeur Stateflow

Consultez les notes de version pour en savoir plus sur ces fonctionnalités et les fonctions correspondantes.

Version d’évaluation

Bénéficiez d'une version d'évaluation de 30 jours.

Télécharger

Prêt à acheter ?

Obtenez les tarifs et explorez les produits associés.

Vous êtes étudiant ?

Obtenez la version étudiante des logiciels MATLAB et Simulink.

En savoir plus