Feux tricolores de carrefour
Description du fonctionnement
Il s'agit de gérer des feux de carrefour entre une rue et une avenue (dans cette étude, on ne se soucie pas des boutons poussoirs "piétons").
Le fonctionnement est le suivant :
Côté avenue
le feu de l'avenue reste vert pendant 20s ;
le feu passe ensuite à l'orange pendant 2s ;
le feu vert s'allumera 1s après le passage du feu rouge de la rue.
Côté rue
Le feu vert s'allumera 1s après le passage du feu rouge de l'avenue et restera allumé 7 secondes ;
la durée du feu orange est de 2s.
Question
Q1 : En tenant compte de la description du fonctionnement des feux de carrefour, effectuer le bilan des variables d'entrées et de sorties du système étudié en complétant le tableau.
Entrées | Sorties | ||
---|---|---|---|
Variable | Désignation | Variable | Désignation |
\(~\) | |||
... | ... | ... | ... |
Indice
On parle de variable d'entrée pour une variable qui 'entre' dans la chaîne d'information.
On parle de variable de sortie pour une variable qui 'sort' de la chaîne d'information.
Indice
Pour la variable, on utilise un sigle ou une abréviation afin de simplifier l'écriture du Graphe d'états.
La désignation est la définition textuelle de la variable.
Indice
Ici c'est un cas particulier, on est en mode automatique, donc le système fonctionne en boucle, sans aucune consigne de mise en marche.
Donc, il n'y a pas d'entrée.
Indice
Sorties : FRa <=> Feu Rouge avenue ; ...
Solution
Entrées | Sorties | ||
---|---|---|---|
Variable | Désignation | Variable | Désignation |
FRa | Feu Rouge avenue | ||
FOa | Feu Orange avenue | ||
FVa | Feu Vert avenue | ||
FRr | Feu Rouge rue | ||
FOr | Feu Orange rue | ||
FVr | Feu Vert rue |
Question
Q2 : Lister le nombre d'états possibles (en vous aidant de la vidéo).
Indice
Il faut bien observer la vidéo et noter toutes les phases successives de commandes des 2 feux tricolores (avenue et rue).
Indice
Chaque état est la combinaison de la commande de 2 sorties (ou 2 ordres envoyés à la chaîne d'énergie), une sur chacun des feux tricolores.
Solution
Si vous regardez attentivement la vidéo, on peut observer 6 états successifs (qui tournent en boucle) :
état 1 : FVa & FRr ;
état 2 : FOa & FRr ;
état 3 : FRa & FRr ;
état 4 : FRa & FVr ;
état 5 : FRa & FOr ;
état 6 : FRa & FRr .
REMARQUE : on pourrait même considérer qu'il n'y a que 5 états vu que l'état FRa & FRr est présent 2 fois. Mais comme l'état qui suit n'est pas le même dans les 2 cas, il sera beaucoup plus simple de construire le graphe avec 6 états.
Question
Question
Q4 : Représenter et compléter les rectangles d'états (nom, actions associées,...). Il est conseillé de dessiner votre graphe au centre d'une page entière, nous allons y apporter des modifications aux questions Q7 et Q9.
Indice
Pour commencer, relire le paragraphe 'Les états' du cours.
Indice
Il faut bien réfléchir à l'enchaînement de l'activation des états avant de commencer à dessiner.
Indice
6 états donc 6 rectangles. Pour les noms, on va reprendre ceux de la réponse à Q2 (état 1 ; état 2 ; ...)
Indice
A l'intérieur de chaque état, il faut commander les sorties qui correspondent en les activant.
Par exemple : FVa = 1.
Indice
Bien penser à noter le mode d'exécution de l'état choisit (entry, during ou exit).
Indice
Utiliser le mode d'exécution 'during' facilite considérablement la conception du graphe d'états.
Solution
Ce n'est qu'une proposition, on aurait pu représenter les rectangles en formant un cercle.
Le fait d'utiliser le mode d'exécution 'during' (pendant l'activation de l'état) permet de ne pas gérer l'allumage puis l'extinction des feux. Les feux seront actifs tant que l'état est actif ("during").
Question
Q5 : Dessiner les transitions entre les états et compléter les conditions de passage des transitions. Préciser, avec le symbole adéquat, l'état initial.
Indice
Pour commencer, relire le paragraphe 'Les transitions' du cours.
Indice
Pour les transitions, il suffit de relier les états par des flèches en respectant l'ordre d'activation voulu.
Indice
Pour les conditions de passages, ce ne sont que des temporisations.
Indice
Une temporisation s'écrit (after, x sec) où x est la durée de la temporisation (ici en seconde).
Solution
Il ne faut pas oublier de représenter l'état initial (symbole du point noir lié à une flèche) ici présent en haut du graphe.
Description du fonctionnement - modification : priorité à l'avenue
On souhaite améliorer le flux de circulation de l'avenue en la rendant prioritaire par rapport à la rue. Un capteur de détection de la présence d'une voiture devant le feu tricolore de la rue Voit_Rue a été rajouté. Désormais, le feu tricolore de la rue ne passera au vert que si une voiture se présente sur ce capteur.
Question
Q6 : Faire apparaître dans votre tableau de bilan des variables (voir Q1) la nouvelle variable.
Indice
La nouvelle variable correspond à une information dont on fait l'acquisition ou à un ordre que l'on donne à la chaîne d'énergie ?
Solution
Entrées | Sorties | ||
---|---|---|---|
Variable | Désignation | Variable | Désignation |
Voit_Rue | Présence d'une voiture sur rue | FRa | Feu Rouge avenue |
FOa | Feu Orange avenue | ||
FVa | Feu Vert avenue | ||
FRr | Feu Rouge rue | ||
FOr | Feu Orange rue | ||
FVr | Feu Vert rue |
Question
Description du fonctionnement - modification : feux oranges clignotants
En cas de problème technique, l'information Défaut doit permettre de faire passer les feux tricolores en mode orange clignotant (à une fréquence de 2 Hz).
Question
Q8 : Faire apparaître dans votre tableau de bilan des variables (voir Q1),la nouvelle variable.
Indice
La nouvelle variable correspond à une information dont on fait l'acquisition ou à un ordre que l'on donne à la chaîne d'énergie ?
Solution
Entrées | Sorties | ||
---|---|---|---|
Variable | Désignation | Variable | Désignation |
Voit_Rue | Présence d'une voiture sur rue | FRa | Feu Rouge avenue |
Défaut | Système en défaut | FOa | Feu Orange avenue |
FVa | Feu Vert avenue | ||
FRr | Feu Rouge rue | ||
FOr | Feu Orange rue | ||
FVr | Feu Vert rue |
Question
Q9 : Modifier votre graphe d'état afin de satisfaire à cette nouvelle contrainte.
Indice
On peut commencer par créer 2 "super états" (Mode Normal et Mode Défaut) comme sur la proposition de graphe ci-contre.
Il faut ensuite compléter les conditions de passage d'un mode à l'autre.
Indice
Après avoir complété les conditions de passage d'un mode à l'autre (entourée en rouge sur le graphe ci-contre), il faut compléter le "super état" Mode Défaut" en déterminant le nombre d'état nécessaire pour faire clignoter les feux oranges.
Il faut ensuite compléter ces états par les actions nécessaire pour faire clignoter les feux oranges.
Indice
Pour faire clignoter les feux oranges, on a besoin que de 2 états (feux oranges éteints et feux oranges allumés).
Ici, ils sont nommés EtatDefaut1 et EtatDefaut2 mais on aurait pu les nommer différemment (par exemple, éteint et allumé).
Commencer par compléter les actions dans les états puis compléter les conditions de passages d'un état à l'autre (feux oranges éteints à feux oranges allumés).
Indice
Pour compléter les conditions de passages d'un état à l'autre (qui sont des temporisations) il faut déterminer la durée d'un cycle de clignotement.
Indice
Rappel : les feux tricolores en mode orange clignotent à une fréquence de 2 Hz.
Indice
Rappel : f = 1 / T
Indice
T = 1 / f = 1 / 2 = 0,5 s.
Maintenant, il faut déterminer la durée des temporisations.
Solution
A l'état EtatDefaut1, les feux tricolores doivent être complètement éteint.
A l'état EtatDefaut2, seul les feux oranges doivent être allumé.
Pour clignoter à une fréquence de 2 Hz, il faut faire des cycles de 0,5s.
Donc on passe d'un état à l'autre toutes les 0,25s.
Enfin, il faudrait choisir lequel des 2 états est l'état initial mais cela n'a aucune incidence sur le respect des exigences de la modification (non fait sur le corrigé).