Sistemi di controllo

Ambiente di sviluppo e test

Per lo sviluppo e test, tutte le componenti del sistema si trovano sulla stessa macchina, cioè il PC sul quale abbiamo gli ambienti di sviluppo:

Architettura fisica per sviluppo e test

I simulatori del semaforo stradale e del semaforo pedonale sono delle Web app.

Il broker MQTT Mosquitto è installato per lo specifico sistema operativo della macchina di sviluppo, eseguito come servizio, configurato senza SSL, con porte per rispondere via TCP e via websocket.


Esempio di sequenza di test

  1. Avviamo il servizio Mosquitto;
  2. In VSCode, in modalità debug su Chrome, lanciamo il simulatore di semaforo stradale e pedonale (in realtà una singola web app), e verifichiamo se si connette al broker MQTT.
  3. Usando un client MQTT da linea di comando, pubblichiamo qualche messaggio, e verifichiamo se l'app si comporta di conseguenza; usando un altro client di MQTT da linea di comando, verifichiamo se riceviamo il messaggio atteso in caso di pressione del bottone di richiesta attraversamento;
  4. Facciamo un test analogo con la control room;
  5. In Visual Studio, in modalità debug, lanciamo la macchina a stati, e verifichiamo se si connette al broker MQTT e scambia i messaggi attesi con le web app, reagendo come atteso agli eventi;
  6. Incorporiamo le web app in pagine web del sito, lanciamo il web server, e verifichiamo che le app appaiano correttamente nelle pagine web, e si comportino esattamente come in debug.

In questo ambiente tutti i riferimenti sono a localhost. Inoltre, lavoriamo senza protocolli sicuri, così abbiamo una variabile in meno da tenere sotto controllo, e una configurazione più semplice di tutti i componenti.


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