SED Cours
SED Cours
SED Cours
Simuler
pour anticiper
Guillaume Chapey
Sciences Industrielles de l’Ingénieur
2ème année de CPGE
Lycée du Parc
1 - Définition
Dans un système combinatoire, à chaque combinaison de valeurs des variables d'entrée est associée une et
une seule combinaison de valeurs des variables de sorties :
ei Système Sj Sj = f(ei)
combinatoire
Considérons l'exemple du portail automatisé. Le moteur M est mis en marche par appui sur un bouton
poussoir m, le fonctionnement peut être décrit par le chronogramme suivant :
1 Table de vérité :
m0
m M
1 0 ?
M 0 1 ?
Ce système est-il combinatoire ? Non, car à un état de la variable d'entrée m correspondent deux états
possibles de la sortie M. Le comportement du système ne dépend pas seulement des entrées à l'instant
considéré mais de l'évolution antérieure du système. Il faut donc pouvoir caractériser le passé du système
avec un certain nombre de variables qui devront être mémorisées à l'intérieur de ce système: on les appelle
les variables internes Vk et elles rendent compte de l'état interne du système à un instant donné.
On peut schématiser un système à événements discrets (appelé aussi automatisme séquentiel) de la façon
suivante :
ei Système Sj
séquentiel Sj = f(ei, Vk)
Vk
Voici ci-dessous l’ibd qui représente le fonctionnement d’un système à événements discrets :
Si on dresse la table de vérité de la variable de sortie "M", deux valeurs de M sont possibles pour un certain état
du vecteur des variables d'entrées ; si m = 0 et a = 0 :
- le moteur marche si le dernier bouton poussoir appuyé est « m »,
- le moteur est à l'arrêt si le dernier bouton poussoir appuyé est « a ».
Le système de commande doit comporter une variable interne au système « X » ou mémoire, qui lui permettra de
faire la distinction entre les deux cas précédents.
2 - Fonction mémoire
2.1 - La bascule RS
C'est le composant élémentaire ; c'est un circuit qui a pour propriété de conserver la valeur binaire
précédemment inscrite en l'absence de toute sollicitation extérieure. Il comporte deux entrées R (comme
Reset ou "remise à 0" de la sortie) et S (comme Set ou "mise à 1" de la sortie) et une sortie Q (la sortie
complémentée Q est parfois disponible dans certaines technologies).
S Q 1
S 0
R 1
R 0
* Symbole de la bascule RS 1
(logigramme) Q 0
* Chronogramme de la bascule RS
Le changement d'état des sorties est uniquement activé lorsque l'une des entrées R ou S commute de 0 à 1.
Leur retour à 0 est sans effet.
* Table de vérité
Remarque :
Les outils vus pour la représentation des systèmes combinatoires (table de vérité, fonctions logiques, tableau
de Karnaugh, logigramme, …) peuvent également être utilisés pour la représentation des systèmes à
événements discrets ; cependant cet usage se limitera à des cas simples.
a b a Q1 Q2
1 Q1 Q1 = a + Q2 = a ( b + Q1 ) 0 0 Q1 Q2
0 1 0 1
1 0 1 0
b 1 Q2 Q2 = b + Q1 = b ( a + Q2 ) 1 1 0 0
Etablir l'équation et la table de vérité de R . Vérifier qu'il s'agit d'une mémoire à marche prioritaire.
PUISSANCE :
Une protection en cas de surintensité est assurée
par le relais thermique F qui voit son contact
normalement fermé s'ouvrir, entraînant la coupure
M de l'alimentation de K, donc celle du moteur.
Équation logique de K : K+ = F a ( m + K- )
La mise en marche du moteur se fait par action sur m, ce qui alimente le relais K et ferme les contacts k
correspondants. L'action de a ou F arrête le moteur.
m K
a+F *
3 – La machine d’état
La machine à nombre fini d’états (FSM : Finite State Machine), est aussi appelée automate fini. Elle peut
être une entité matérielle ou une entité conceptuelle comme un algorithme. Elle comporte un nombre fini
d’états.
La machine d’états est un système à évènement discrets, capable de mémoriser des données, de les traiter et
de les restituer selon des scénarios définis au préalable. Elle peut être définie par : un état initial, un
ensemble d’évènements, un ensemble d’états, un ensemble d’activités, un ensemble de règles permettant de
déterminer le comportement du système.
G. Chapey Page 5 sur 16
2ème année Systèmes à évènements discrets S2I
Dans un état, un système peut avoir une activité ou être en attente. Les états d’un système se succèdent en
fonction d’évènements.
Un évènement est une description d’occurrence qui conduit à une évolution du comportement du système.
On l’appelle aussi un déclencheur (trigger).
4 – Le diagramme d’états
Le diagramme d’états (state machine diagram ou stm) est un diagramme normalisé SysML, il est utilisé pour
décrire le comportement d’une machine d’état :
A un instant donné, le système ne peut être que dans un seul état, ou plusieurs états s’ils sont dans des
régions dites orthogonales (un seul état actif par région) ; cf chapitre 4.3.3 ci-après.
Pour chaque activité, il faut définir un état représenté par un nœud. Au cas où aucune activité n’est souhaitée,
c’est un état d’attente.
Les cas d’évolution du système entre les états sont identifiés par les transitions. On trace alors un lien entre
les nœuds correspondants. Chaque transition peut être qualifiée par un évènement, une condition de garde et
un effet.
4.2.1 – L’événement
Les évènements peuvent être utilisés pour décrire les interactions entre les différents
blocs d’un système. En effet, un évènement peut être émis par un autre bloc que celui
pour lequel le diagramme d’états est spécifié. Il est alors par défaut destiné à tous les
blocs du système (diffusion « broadcast) ». De même, un évènement peut être reçu
(receive signal action).
La condition de garde [entre crochets] est une expression booléenne (ou fonction logique) faisant intervenir
des entrées et / ou des variables internes.
Elle est évaluée lorsque l'état précédant la transition est vrai et que l'évènement déclencheur se produit. Si la
condition de garde est vraie, la transition est alors franchie, sinon elle ne l'est pas et l'événement est perdu.
La durée d’un évènement est nécessairement courte (voire très courte), celui-ci correspondant par
exemple au passage d'une variable de 0 à 1 à un instant précis (front montant).
Par contre une condition de garde n'est pas cette notion d’instantanéité, elle doit être vraie (niveau
logique 1) à l'instant où l'événement survient pour que la transition soit franchie.
Exemple d'évènement : appui sur un bouton-poussoir, capteur fin de course atteint, etc.
Exemple de condition de garde : vitesse du véhicule non nulle, température > 20°C, etc.
4.2.4 – L’effet
L’effet associé à une transition est effectué lorsque la transition est franchie, il ne prend pas de temps et ne
peut pas être interrompue.
Son exécution peut par exemple provoquer un changement d’état ou l’émission d’un ordre.
Une transition réflexive entraîne une sortie d’état puis un retour dans
ce même état.
Une activité peut être considérée comme une unité de comportement. Elle prend du temps et peut être
interrompue. On la trouve à l’intérieur des nœuds du diagramme (mot clé « do »).
A contrario, une action ne prend pas de temps et ne peut pas être interrompue. Son exécution peut par
exemple provoquer un changement d’état, l’émission d’un ordre pour un pré actionneur ou un retour de
valeur. On peut les trouver dans les transitions (effet) ou dans les états (mots clé « entry » ou « exit »).
Dans le langage SysML, les activités et actions sont directement liées aux fonctions (operations) définies
dans les propriétés de bloc.
Un état composite est constitué de sous-états, il « appelle » donc un autre diagramme d’états.
Cela permet d’introduire la notion d’état de niveau hiérarchique inférieur et supérieur dans les diagrammes
d’états : pour alléger l’écriture (et donc la lecture) d’un diagramme, un état dit composite regroupera
plusieurs sous-états qui seront détaillés sur un autre diagramme (analyse descendante).
m [non a]
Un pseudo-état est un élément de commande (sous forme de symboles spécifiques, en général entre les
états) qui permet d’enrichir les diagrammes d’états.
Ils peuvent être utilisés dans un diagramme d’états ou dans un diagramme d’activité.
« junction » idem au pseudo-état « choice », à la différence que pour qu’un chemin soit
emprunté, toutes les conditions de garde situées en aval et en amont doivent
être vraies. L’évaluation des conditions avales est réalisée avant que le pseudo-
état soit atteint.
« deep history » idem que précédemment mais avec la propagation de l’historique à tous les
sous-états composites de niveaux hiérarchiques inférieurs.
m [non a. k=5]
a
A la fin de l’exécution d’une fonction, il y a le retour d’une valeur, d’une liste, d’un objet, etc.
5.2 – Illustrations
Affectation
d’une valeur à une variable :
cette action se fait en un temps nul.
Le cycle « Relâcher » permet de déplacer la quille sous le seul effet de la pesanteur. La quille est ainsi
manœuvrée sans utiliser l’énergie de la centrale hydraulique.
L’automate est également interfacé via le réseau du navire à une base de données où sont stockés les paramètres
des navigations précédentes (conditions météorologiques, performances du navire et angle de quille). Le
navigateur peut ainsi intégrer les paramètres de la quille à l’ensemble des paramètres décisionnels qui lui
permettent d’élaborer sa stratégie de navigation.
L’automate gère également la centrale hydraulique qui met en pression l’huile utilisée dans les vérins de
manœuvre de la quille.
Le modèle de commande implanté dans l’automate est défini par les diagrammes d’états suivants :
Détail de cet
état composite