Per la realizzazione del progetto si è deciso di utilizzare una scheda di prototipazione Arduino,
visto il basso costo, la stimata potenza di elaborazione, la semplice connettività del dispositivo mediante porte USB,
per la programmazione, ed Ethernet, per l'interconnessione. Alla fine del paragrafo si riporterà la lista del materiale utilizzato.
Una prima preferenza progettuale che si è discussa è stata scegliere tra un sistema per la gestione dei vari dispositivi
che fosse centralizzato oppure distribuito.
Si è prediletto il primo modello nel quale è prevista la connessione di tutti i client ad una scheda centralizzata.
|
Figura 1: Sistema centralizzato.
|
|
Figura 2: Sistema distribuito.
|
Si è preferita questa struttura per avere un resoconto generale sul funzionamento dei dispositivi (più vicina al lato utente)
e per una questione di costi nel caso in cui si voglia ampliare la rete.
Inoltre, un altro motivo riguarda l'elaborazione di dati e pacchetti. Ogni scheda Arduino associata al generico elettrodomestico,
dovrebbe gestire tutti i pacchetti inviati dagli altri dispositivi: questo porterebbe a un dispendio di elaborazione dati e a una ridondanza,
per quanto le operazioni da svolgere sui dati e pacchetti siano relativamente semplici.
L'aspetto negativo di questa scelta riguarda che un eventuale problema al nodo centrale farebbe venire meno il sistema di monitoraggio.
Visto ciò, ogni dispositivo invierà solo informazioni proprie e non avrà necessità di conoscere lo stato attuale di ogni altro dispositivo connesso
alla rete e relative modifiche istante per istante.
Un'altra scelta riguarda la tecnologia da sfruttare per l'interconnessione tra le schede. Poiché l'intento è di gestire dei consumi domestici,
si è ritenuto opportuno sfruttare la rete locale (LAN) per far comunicare i dispositivi stessi. In particolare si è deciso di utilizzare una connessione via cavo.
Per quale motivo questa scelta?
- Limitare i costi, utilizzando un Ethernet Shield. Questo ha infatti un costo inferiore rispetto agli altri Shield Arduino (Wi-Fi, ZigBee, GSM);
- Sfruttare la rete locale non facendo affidamento alla rete dell'operatore;
- E' possibile creare una rete Intranet non connessa all'esterno, per diminuire la vulnerabilità.
In ogni caso implementazioni future possono essere facilmente integrate nel sistema, vista la portabilità del codice sorgente.
In particolare si potrà prevedere l'utilizzo di schede Wi-Fi o GSM per la gestione da remoto.
|