Aller au contenu principal

Sciences de l’ingénieur · Première · 6 min de lecture

Diagramme d’états : décrire ce que fait un système, événement par événement

Décrire le comportement séquentiel d’un produit par un diagramme d’états : états, état initial, transitions déclenchées par un événement (appui sur un bouton, seuil atteint par un capteur, fin d’une temporisation), éventuellement soumises à une condition ; suivre une suite d’événements à partir de l’état initial pour trouver l’état atteint ; relier le diagramme à l’algorithme du programme de commande.

Chapitre du programme : Modéliser les produits

Bloc 1 sur 7 · Comprendre

Comprendre : états, événements, transitions

Un portail motorisé n’a pas toujours le même comportement : fermé, il attend un ordre ; en train de s’ouvrir, il attend d’arriver en butée ; ouvert, il attend la fin d’une temporisation. Chacune de ces situations qui dure est un état.

On passe d’un état à un autre quand un événement se produit : un appui sur la télécommande, un capteur de fin de course atteint, une temporisation écoulée, un obstacle détecté. Le passage d’un état à un autre s’appelle une transition.

Un diagramme d’états décrit le comportement d’un système par :

  • la liste de ses états, dont un état initial (celui du démarrage) ;
  • la liste de ses transitions : « de l’état A vers l’état B, sur l’événement E ».

Règle de lecture. À chaque événement, on cherche une transition qui part de l’état courant et qui porte cet événement. S’il y en a une, on la suit ; s’il n’y en a pas, l’événement n’a aucun effet et le système reste dans son état.

Bloc 2 sur 7 · Approfondir

Approfondir : du diagramme au programme

Un même événement, des effets différents. « Fin de course atteinte » fait passer le portail de « Ouverture » à « Ouvert », mais de « Fermeture » à « Fermé » : l’effet d’un événement dépend de l’état dans lequel il survient. C’est tout l’intérêt du diagramme d’états par rapport à une simple liste d’actions.

La sécurité s’écrit dans les transitions. La transition « de Fermeture vers Ouverture sur obstacle détecté » est une exigence de sécurité du cahier des charges : sans elle, le portail continuerait de se fermer sur l’obstacle.

Du diagramme au programme. Le programme du microcontrôleur garde en mémoire une variable « état courant ». À chaque événement, une structure conditionnelle teste l’état courant et l’événement, et change la variable selon la transition prévue. Le diagramme sert donc à concevoir le programme, puis à le vérifier : on peut simuler une suite d’événements à la main, ou avec un logiciel, et comparer l’état atteint à celui attendu.

Ce qu’un diagramme d’états ne montre pas : la structure du produit (ses constituants) ni ses flux d’énergie. Il décrit uniquement son comportement dans le temps.

Bloc 3 sur 7 · Exemple

Exemple guidé : suivre un portail motorisé

États : Fermé (initial), Ouverture, Ouvert, Fermeture. Transitions :

  • de Fermé vers Ouverture sur « appui sur la télécommande » ;
  • de Ouverture vers Ouvert sur « fin de course atteinte » ;
  • de Ouvert vers Fermeture sur « fin de la temporisation de 30 s » ;
  • de Ouvert vers Fermeture sur « appui sur la télécommande » ;
  • de Fermeture vers Fermé sur « fin de course atteinte » ;
  • de Fermeture vers Ouverture sur « obstacle détecté par la cellule ».

Suite d’événements : 1. obstacle détecté ; 2. appui sur la télécommande ; 3. fin de course atteinte ; 4. fin de la temporisation ; 5. obstacle détecté.

Déroulement.

  1. État Fermé : aucune transition ne part de Fermé sur « obstacle » ; le portail reste Fermé.
  2. « Appui » : Fermé → Ouverture.
  3. « Fin de course » : Ouverture → Ouvert.
  4. « Fin de la temporisation » : Ouvert → Fermeture.
  5. « Obstacle » : Fermeture → Ouverture (le portail se rouvre).

État final : Ouverture. Le premier événement montre la règle de lecture : un obstacle devant un portail fermé ne déclenche rien.

Bloc 4 sur 7 · Visualiser

Visualiser : quatre états en boucle

On dessine chaque état par un rectangle aux coins arrondis, disposés en carré : Fermé en haut à gauche, Ouverture en haut à droite, Ouvert en bas à droite, Fermeture en bas à gauche. Un petit disque noir, relié à Fermé, marque l’état initial.

Les flèches font le tour du carré dans le sens Fermé → Ouverture → Ouvert → Fermeture → Fermé, chacune étiquetée par son événement. Deux flèches de plus : de Ouvert vers Fermeture, une seconde flèche étiquetée « appui sur la télécommande » ; et de Fermeture vers Ouverture, une flèche diagonale étiquetée « obstacle détecté ».

Ce qu’il faut lire : chaque flèche part d’un état précis ; un événement qui n’étiquette aucune flèche sortant de l’état courant ne fait rien.

Continuez sur votre lancée

Vous avez découvert l’essentiel et un exemple. Retrouvez la suite du cours et les points à retenir, puis passez à l’entraînement guidé dans votre compte.

  • Les formules et les repères à retenir
  • Les erreurs fréquentes expliquées
  • Un exercice avec des aides et sa correction

L’accès gratuit comprend les cours et exercices de votre niveau choisi.

Sources

  • BO spécial n°1 du 22 janvier 2019 — annexe « Programme de sciences de l’ingénieur de première et terminale générales », MODÉLISER ET RÉSOUDRE p. 8 et ANALYSER p. 7 (https://eduscol.education.gouv.fr/sites/default/files/document/spe640annexe1063436pdf-82092.pdf)
  • BO spécial n°1 du 22 janvier 2019 — annexe 1 du programme STI2D, § 3.4.2, p. 35 (diagramme d’états, simulation événementielle)
  • SysML.org, « What are the SysML diagram types? » — le diagramme de machine à états est un diagramme de comportement (https://sysml.org/sysml-faq/what-are-sysml-diagram-types.html)

Vous pensez avoir trouvé une erreur dans cette leçon ? Signalez-la par e-mail.

Explorer les autres cours

Accès rapide