EgoAlarm: accendere l’allarme da una pagina web

[Ringrazio Silvio Sicurani che ha sponsorizzato il progetto]

In questo articolo viene spiegato come accendere o spegnere una centralina di allarme da una pagina web. In questo modo puoi accendere l’allarme da remoto.

Realizzando questo progetto potrai comandare l’attivazione e lo spegnimento del tuo allarme di casa, accedendo ad una pagina web. La pagina sarà visibile con la tua wifi, o anche dall’esterno di casa, utilizzando funzioni del tuo router (NAT).

Bisogna prestare attenzione al fatto che questa pagina venga resa accessibile tramite password, altrimenti chi accede al tuo wifi può accendere o spegnere il tuo allarme.

Cosa serve

  • Un minimo di conoscenza informatica e di impianti elettrici
  • Il manuale di istruzioni della centralina di allarme
  • Connessione a Internet in casa che abbia un indirizzo ip pubblico (anche se non statico)
  • Un PC

La centralina di allarme deve avere la possibilità di attivare l’allarme attraverso la chiusura di un contatto.

Inoltre deve segnalare esternamente che l’allarme è attivo, chiudendo un contatto.

Il progetto prevede la gestione fino a 4 modalità:

  • Fuori casa: allarme completamente attivo
  • In casa: solo una parte dei sensori dell’allarme sono considerati attivi, di solito i sensori perimetrali. Quelli interni alla casa sono disabilitati perchè ci sono persone all’interno dell’abitazione.
  • Notte: solo una parte dei sensori dell’allarme sono considerati attivi, di solito i sensori perimetrali, e quelli di alcuni locali, tipo la soffitta ed il garage. Nelle stanze da letto i sensori sono disabilitati.
  • Non attivo: l’allarme non considera attivo nessun sensore.

Di solito le 4 modalità possono essere attive una alla volta.

Schema elettrico

Di seguito viene mostrato lo schema elettrico per gestire queste 4 modalità. Se se ne ha solo una basta non eseguire i collegamenti corrispondenti.

Schema elettrico per allarme
Schema elettrico per connettere l’allarme ad Arduino e Raspberry

Cosa serve

  • Raspberry
Raspberry per aprire il garage
Raspberry
  • Scheda SD
  • Arduino
Arduino Uno
Arduino UNO
  • Interfaccia relè
Modulo Relè per l'apertura del garage
Modulo Relè
  • Scheda SD
  • Arduino
Arduino Uno
Arduino UNO
  • Software per raspberry e Arduino

Il materiale è acquistabile tramite questa pagina:

https://www.domoticachepassione.it/wp/lista-della-spesa/

Il software è acquistabile qui:


EgoAlarm


Tale software viene fornito in formato sorgente e quindi modificabile all’occorrenza.

Per installare il software si può seguire le seguenti istruzioni.

Installazione del Raspberry

  1. Prendere un PC o Mac dotato di lettore di schede SD
  2. Comprare il software
  3. Dalla schermata di conferma dell’avvenuto pagamento, eseguire il download dell’immagine della scheda SD
  4. Puoi usare il seguente programma per scrivere l’immagine su SD: https://etcher.io/
  5. Installare Etcher.
  6. Collegare il lettore di schede SD nel PC e inserire la scheda SD nel lettore di schede.
  7. Seleziona l’immagine ed esegui il flash sulla scheda.
  8. Estrarre la scheda.
  9. Inserirla nel Raspberry
  10. Collegare il Raspberry con il cavo di rete.
  11. Collegare l’alimentazione del Raspberry

Installare lo sketch su Arduino

  • Accedere via VNC a Raspberry.
  • Per fare questo bisogna aver installato VNC sul proprio computer o tablet ed essere collegati alla stessa rete del Raspberry.
  • Aprire VNC sul computer.
  • Scrivere come host l’indirizzo ip 192.168.1.103.
  • Eseguire il login come
    • username pi
    • password egomania

Fermare Nodered

  • Cliccare su Strumenti di sistema/LXTerminal
  • digitare
sudo systemctl stop nodered.service

Upload su Arduino

  • Inserire Arduino in Raspberry via cavo usb
  • Cliccare su elettronica/arduino
  • Cliccare su file/apri
  • Scegliere /home/pi/sketchbook/EgoAlarm/egoalarm.ino
  • cliccare su strumenti/tipo di arduino/Arduino UNO
  • premere File/Carica
  • attendere il caricamento dello sketch

Verifica del funzionamento

  • Cliccare Strumenti/Monitor seriale
  • Nella finestra che appare, in basso a destra selezionare 9600 baud e A capo (NL)
  • Digitare status e premere invio
  • Se tutto ok dovrebbe apparire qualcosa del tipo
status: reply to
status: Box chiuso1
status: aperto2
status: aperto3
status: aperto4
status: out0 high
status: out1 high
status: out2 high
status: out3 high
status: Allarme spento
status: Sirena spenta
status: end
  • chiudere il monitor seriale
  • chiudere la finestra Arduino

Avviare nodered

  • Da una finestra terminale, far ripartire nodered con
sudo systemctl start nodered.service

Effettuare i collegamenti

  • collegare il modulo relè ad arduino, i 2 pin di alimentazione e i 3 pin per comandare i primi 3 relè.
  • collegare il pin per la segnalazione dell’allarme acceso
  • collegare il pin per la segnalazione dell’allarme attivo

Provare

Da un browser aprire la pagina:

192.168.1.103:1880/allarme

Da questa pagina si può accendere o spegnere  l’allarme.

Comandi allarme
Schermata da cui puoi attivare o disabilitare l’allarme

In pratica se si esce di casa e si vuole che tutti i sensori collegati alla centralina, se sollecitati, facciano scattare la segnalazione (sirena, lampeggiante), premere “Accendi” sulla riga Allarme.

Se si sta in casa e si vuole che tutti i sensori esterni a casa collegati alla centralina, se sollecitati, facciano scattare la segnalazione (sirena, lampeggiante), premere “Accendi” sulla riga In Casa.

Se si sta in casa a dormire, e ci si muove solo nel piano delle camere da letto, ma non in sala o in soffitta, o in cantina, e si vuole che tutti i sensori esterni a casa collegati alla centralina, se sollecitati, facciano scattare la segnalazione (sirena, lampeggiante), premere “Accendi” sulla riga Notte.

Nela caso si faccia scattare l’allarme inavvertitamente, e si vuole spegnere la sirena, si avrà la segnalazione accesa. Per spegnerla, premere sull’apposito bottone che apparirà per l’occasione.

Personalizzare

Ecco alcune funzioni che si possono modificare:

  • Rimuovere la modalità “In Casa”
  • Rimuovere la modalità “Notte”
  • Per attivare l’allarme si può scegliere uno dei seguenti modi:
    • alto basso (normalmente il relè è non attivo e si attiva per un periodo)
    • basso alto (al contrario)
    • alto (quando non attivo il relè si accende l’allarme)
    • basso (quando attivo il relè si accende l’allarme)
  • Modificare la durata dell’impulso
  • ecc.

Per personalizzare il comportamento di EgoAlarm, seguire le seguenti istruzioni:

  • su un PC o Mac, collegato alla stessa rete del Raspberry, installare VNC
  • aprire VNC
  • scegliere File, New connection
  • impostare come VNC server 192.168.1.103:5900
  • impostare il nome come EgoAlarm

Impostazioni di collegamento

  • Premere OK
  • Doppio click sulla connessione EgoAlarm
  • Viene richiesto utente e password
  • digitare come utente: pi
  • come password: egomania
  • premere ok
  • apparirà una schermata di questo tipo:

  • aprire il terminale cliccando sull’icona indicata

  • nel terminale digitare

sudo nano /boot/impostazioni.json

Digitare nel terminale

  • premere enter. Appare il file di impostazioni:

Modifica delle impostazioni

  • muovendosi con i tasti cursore si possono modificare i vari parametri
  • salvare il file premendo CTRL+X
  • rispondere Sì quando chiede di sovrascrivere
  • per rendere effettive le impostazioni, riavviare, digitando:
sudo reboot

Possibili personalizzazioni

Di seguito vengono descritti i parametri che si possono modificare. E’ importante segnarsi quali sono le impostazioni che funzionano con il proprio sistema di allarme, specialmente se si vuole aggiornare il software.

accendi

Descrive il comportamento dei relè per far attivare l’allarme.

Questo parametro influenza il comportamento dei primi 3 relè del modulo.

Valore “alto”: il relè non è attivo quando va attivato l’allarme e torna attivo quando deve essere disattivato.

Valore “basso”: il relè è attivo quando va attivato l’allarme e torna non attivo quando deve essere disattivato.

Valore “alto_basso”: il relè passa da non attivo ad attivo per un certo periodo di tempo (impulso) e poi ritorna non attivo, questo quando deve attivare l’allarme, ma anche quando lo deve disattivare. Simula in pratica il comportamento di un telecomando.

Valore “basso_alto”: il relè passa da attivo a non attivo per un certo periodo di tempo (impulso) e poi ritorna attivo, questo quando deve attivare l’allarme, ma anche quando lo deve disattivare. Simula in pratica il comportamento di un telecomando.

quando_accendi_spegni_altri_stati

se impostato a “true”, nel momento che si attiva uno degli stati “Notte”, “In casa”, “Fuori casa”, gli altri stati vengono disabilitati, cioè viene mandato un comando di disattivazione ai relè.

Se impostato a “false”, questo comportamento non si verifica.

durata

è un valore numerico in secondi. Nel caso che il parametro accendi sia impostato su un impulso (alto_basso o basso_alto), questo imposta quanti secondi deve durare l’impulso. In pradica dice quanti secondi viene premuto il telecomando.

acceso_se

può valere 0 o 1 e condiziona il modo di leggere gli ingressi dell’arduino collegati all’uscita della centralina. Dice a quale valore in ingresso deve considerare la modalità accesa (“Notte, “In casa”, “Fuori casa/allarme”.

segnalazione_attiva_se

può valere 0 o 1 e condiziona il modo di leggere l’ingressio dell’arduino collegati all’uscita della centralina che indica che la sirena è attiva.

in_casa

se impostato a “true”, considera che l’allarme può gestire la modalità “In casa”, cioè vengono attivate le zone che fanno capo ai sensori perimetrali. Se impostato a “false” il controllo non appare nella pagina web.

fuori_casa

se impostato a “true”, considera che l’allarme può gestire la modalità “Fuori casa”, cioè vengono attivate tutte le zone della centralina di allarme. Se impostato a “false” il controllo non appare nella pagina web.

notte

se impostato a “true”, considera che l’allarme può gestire la modalità “Notte”, cioè vengono attivate tutte le zone che fanno capo ai sensori perimetrali più le zone che non vengono utilizzate di notte (es: cantina e soffitta). Se impostato a “false” il controllo non appare nella pagina web.

Se qualcosa non funziona

Aprire la pagina:

http://192.168.1.103:1880/assistenza

appare la seguente:

la Funzioni hanno il seguente significato:

Demo: fa apparire i tasti sulla pagina allarme anche se il raspberry non è collegato ad Arduino. Ha semplice scopo dimostrativo.

Utente domotica: crea un utente per accedere al sistema da remoto, di cui l’assistenza conosce la password. Premendo disabilita, viene cancellato l’utente per l’accesso dell’assistenza.

Assistenza: bisogna prima aver contattato l’assistenza. Premendo Abilita, l’assistenza si può collegare per risolvere il problema da remoto. Il Raspberry deve essere collegato alla rete di casa, abilitata a navigare su Internet.

Backup: premendo Esegui si effettua una copia di backup dei file importanti di sistema. Viene copiato anche il file impostazioni.json, in cui ci sono le personalizzazioni al proprio sistema. Cliccando sul link Backup, il file di backup può essere scaricato in locale.

Controlla aggiornamenti: da eseguire solo in caso di necessità. Scarica dal sito l’ultima versione, e il file di impostazioni standard. Sovrascrive la versione e le impostazioni. Per rendere effettiva la modifica, va riavviato il Raspberry.

Ripristina Backup: nel caso si abbia avuto problemi nel controllare gli aggiornamenti, si può ripristinare l’ultimo backup effettuato.

Riavvia: premendo Avvia, si riavvia il raspberry, per esempio per rendere attivo un aggiornamento.

Spegni: premendo Avvia, si spegne il Raspberry.

Quasi tutti questi comandi mostrano in basso quello che stanno eseguendo.

Molti di questi comandi attendono 20 secondi prima di iniziare, in modo da perrmettere all’utente di fermare il comando, attraverso il bottone.

Buona domotica!

Leave a Reply

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *