:: LPS - Esercizi sulle macchine FSM ::
30 gennaio 2007, Es. n° 4
C'è una porta girevole, che si apre premendo un bottone. Quando è chiusa, premendo il bottone si apre. Se si sta aprendo, premendo ancora si chiude. Quando è aperta, dopo 2 secondi si chiude automaticamente. Se premo una volta il bottone mentre è aperta, rimane aperta e il timeout non scatta. Per chiuderla devo premere ancora il bottone. Quando si sta chiudendo, se premo il bottone torna ad aprirsi.
2 febbraio 2007, Es. n° 4
L’apertura e chiusura della porte di una metropolitana è controllata da un sistema costituito da
due sensori (il sensore arrived che rileva l’arresto della metro alla stazione, ed il sensore
pass_person che rileva il passaggio di una persona che vuole entrare nella metro quando le porte
si stanno chiudendo) ed un controller. Su segnalazione del sensore arrived, il controller impiega
da 1 a 3 tick di tempo per aprire le porte della metro inviando un apposito segnale alle porte e
poi aspetta un segnale dalle porte di avvenuta apertura. La singola porta impiega da 2 a 4 tick
per raggiungere la posizione open. Passato un minuto dall’apertura completa delle porte, il
controller aziona la chiusura delle porte ed attende il segnale di avvenuta chiusura. La porta
prende da 2 a 4 tick per chiudersi definitivamente. Se il sensore pass_person invia un segnale
alla porta, la porta reagisce aprendosi completamente. In questo caso, il controller provvederà
nuovamente alla chiusura delle porte. Modellare con il formalismo delle Communicating
Machine estese e temporali il comportamento del sistema di controllo della porte di una
metropolitana.
Nella soluzione:
- c1 è il canale tra la generica porta ed il controllore
- c2 è il canale tra la generica porta ed il sensore pass_person
- c3 è il canale tra il controllore ed il sensore arrived
Torna alla pagina di LPS