Realizzazione

Fase 4

Terminato la parte hardware e la parte software ho dovuto trovare un contenitore adeguato e ho pensato ad un portafrutti della Gewiss da 12 frutti, 8 prese bivalenti 10/16A e nei restanti 4 frutti avrei incassato il Raspberry adattando la scatola.

Quando ho reputato il progetto abbastanza maturo per essere testato l'ho collegato a casa al posto della ciabatta elettrica che usavamo per il televisore, l'home theatre, le console gioco e una lampada.

Appena messo su, mia moglie, la miglior tester per queste cose, mi ha chiesto: "Dove devo premere per vedere la tv?" ... ok, ho smontato tutto e sono tornato alla fase di progettazione!

Lei avrebbe dovuto prendere il cellulare o il tablet per aprire la pagina web che le avrebbe consentito di controllare gli interruttori ma giustamente sarebbe più comodo avere un'alternativa.

Smart Power Strip

Realizzazione

Fase 1

La prima fase è stata caratterizzata dall'installazione del sistema operativo nel Raspberry Pi, nel caso specifico è stato scelto Raspbian.

Ho dovuto approfondire diversi aspetti riguardo l'installazione e la configurazione del sistema operativo, del server web Apache e dei linguaggi PHP e Python

Fase 2

Ho cercato una barra relè compatibile con il Raspberry, l'ho acquistata.

Ho iniziato i test per l'utilizzo della GPIO (General Purpose Input/Output) del Raspberry prima collegando un semplice led e poi vedendo come collegare la barra relè tramite un transistor per ogni relè a causa della differenza di voltaggio di lavoro, la GPIO lavora a 3v mentre la barra relè lavora a 5v.

Fase 3

Iniziato la scrittura della pagina web con PHP per il controllo dei relè implementando un login.

Dopo aver raggiunto una funzionalità minima ho differenziato il tipo di bottone dando tre diverse possibilità:

1 - On/Off - adatto al controllo diretto,

2 - Counter - per accensioni e spegnimenti programmati, pensato per azionare un telecomando oppure una sequenza precisa,

3 - Reset - pensato per la possibilità di collegare l'alimentazione del router in cui lo spegnimento impedirebbe poi la riaccensione remota.

Fase 5

Come risolvere il problema? Implemento 8 pulsanti oppure ... dopo qualche ricerca trovo un display tft touchscreen da 2.8 pollici compatibile con il Raspberry che è certamente più versatile di 8 pulsanti.

Acquistato il display, assemblato, collegato al Raspberry, installato i driver e fatto qualche test.

Ho dovuto modificare completamente la parte del prortafrutti e il connettore con la barra relè per ricavare lo spazio per il display.

 

Ora dovevo trovare il modo di srivere un software che gestisse il display in C.

A parte la mia poca dimestichezza con il C il problema era che non mi bastava dividere il diplay in 8 aree per controllare lo stato delle prese, il software doveva condividere le azioni con il sito internet.

Ho optato per dividere il diplay in 12 aree (3 righe 4 colonne), le prime due righe rappresentano le 8 prese e i tasti collegati alle prese hanno lo sfondo giallo se la presa è attiva o grigio se la presa è disattivata, inoltre le aree riportano il numero di presa a cui sono collegati e una breve descrizione.

L'ultima riga in 2 delle 4 aree ho riportato l'ip del Raspberry e la data e l'ora.

 

I tasti collegati alle prese cambiano stato anche se si cambia lo stato della presa dalla pagina web e viceversa, se si cambia lo stato dal display varia la visualizzazoine anche nella pagina web

.

Inoltre ho implementato la possibilità di impostare una pianificazione settimanale delle accensioni e spegnimenti dalla pagina web.

 

Ho rimesso in uso la smart power strip ma ora è abbastanza completa, dalla pagina web prevede tre tipi di tasti (On/Off, Count e Reset) e una pianificazione settimanale accensioni e spegnimenti, dal display è possibile cambiare lo stato delle prese in ogni momento.

 

Ora le mattine da lunedì a sabato la tv si accende da sola 5 minuti dopo la sveglia e si spegne prima che io esca per andare in ufficio, si riaccende per pranzo e poi lascia la gestione manuale, l'impianto home theatre si spegne da solo alle 22:30 per non dare fastidio ai vicini e la tv viene spenta automaticamente all'una.

 

Quando non sono in casa posso accendere la luce collegata utilizzando il browser dello smartphone per far credere che qualcuno è in casa, volendo potrei anche accendere la tv.