Sistemi di controllo

La logica di controllo

La notazione che utilizziamo è quella dei diagrammi a stati UML. Si tratta di una versione estesa di quelle che sono le classiche macchine a stati utilizzate nella progettazione H/W.

Nel nostro esempio, al livello più ampio, la logica di controllo prevede due macro stati:

  • Sistema attivo;
  • Sistema disattivo.

Come si vede dal seguente diagramma, quando il sistema viene avviato, parte automaticmente nello stato attivo, e può essere disattivato e riattivato mediante l'interruttore della control room.

State machine, collapsed

Si tratta di un diagramma a stati gerarchico, a tre livelli:

  • Al livello più alto, che comprende tutti gli stati interni, viene gestita l'eventuale richiesta di refresh da parte delle parti del sistema (semafori, control room), in modo da garantirne sempre e comunque l'allineamento;
  • Al livello intermedio, ci sono due macro-stati: attivo e disattivo; quest'ultimo è quello in cui tutti i semafori lampeggiano di colore giallo;
  • Il macro-stato attivo è solo abbozzato; si veda di seguito la sua definizione, che costituisce il livello di maggior dettaglio.

Lo stato attivo

State machine, active state

In sostanza, il diagramma ci dice che:

  • Sono garantiti almeno 30 secondi di verde ai veicoli, prima che il semaforo stradale transiti dal verde al giallo;
  • Dopo la pressione del bottone di richiesta attraversamento, il display numerico visualizza i secondi mancanti al verde del semaforo pedonale;
  • Il giallo per i veicolo dura 5 secondi;
  • Il tempo di attraversamento è di 15 secondi, durante i quali il display numerico visualizza i secondi mancanti, e negli ultimi 5 secondi i pedoni vengono sollecitati a completare l'attraversamento.

Al di là di questa breve sintesi, il diagramma specifica in modo formale e completo il comportamento del sistema; è ben evidente, per esempio, che negli stati diversi da Green e LongGreen l'evento di pressione del bottone di richiesta di attraversamento viene ignorato.


Giorgio Barchiesi
Albo degli Ingegneri Sez. A, N. 4027 della Prov. di Trento
P.IVA 02370260222, C.F. BRC GRG 58L26 C794R

Copyright © 2015-2024 Giorgio Barchiesi - Tutti i diritti riservati