Blog migrato su nuova piattaforma

Disclaimer

Prestare sempre attenzione a seguire le indicazioni fornite in questo blog, soprattutto se si tratta di apparecchiature elettriche collegate alla tensione di 220V. Non mi ritengo responsabile di danni causati dall'aver seguito i consigli qui pubblicati.
Grazie

sabato 19 agosto 2017

Home Automation System - SONOFF e MQTT all'opera




Sono pronto per fare un test di comunicazione MQTT con il SONOFF Basic che collegherò ad un pulsante per accendere in remoto la luce di un lampione in giardino.

Infatti secondo me è importante che il controllo delle luci sotto SONOFF possa avvenire anche attraverso l'utilizzo di pulsanti ed interruttori standard, presenti in un normale impianto elettrico e non solo attraverso applicazioni di Home Automation (OpenHAB nel mio caso...), altrimenti si corre il rischio di non riuscire ad accendere la luce ad esempio in situazioni di malfunzionamento della rete domestica.

Per fare questo bisogna fare un'ulteriore piccola modifica al SONOFF e cioè permettere il controllo del pulsante fisico presente sul dispositivo attraverso il pulsante a muro. La cosa è relativamente semplice: basta saldare due fili di comando al pulsante presente nel SONOFF e collegarli al nostro pulsante.

Ecco i fili di comando del pulsante del SONOFF


In questo modo l'azionamento del pulsante a muro fisicamente attiverà il pulsante del SONOFF attivando / disattivando il relè interno, come se fosse stato comandato tramite l'APP.

Per richiudere il SONOFF, basta praticare un piccolo foro nel coperchio, per far uscire i due fili:


A questo punto non mi rimane che inserire il SONOFF in una scatola a muro e far arrivare i due fili al pulsante di comando. Ai pin di INPUT del SONOFF faccio arrivare fase e neutro e ai pin di OUTPUT collego fase e neutro del lampione.

Collegato il tutto faccio subito una prova. Bene funziona tutto. Il solito ringraziamento a Piero per l'aiuto dei collegamenti fisici della tensione.

Adesso vediamo i messaggi MQTT che entrano in gioco.

Aprendo la console web del dispositivo, digitando il suo indirizzo ip nel browser ed accendendo al menù "console", si possono visualizzare i messaggi scambiati.


La prima cosa che balza all'occhio sono i messaggi di telemetria che il dispositivo invia circa ogni 10 secondi (perchè abbiamo impostato in questo modo la proprietà TELEPERIOD); il contenuto è un messaggio JSON con diverse informazioni, il topic è tasmota/garden/light/sonoffbasic01/tele/STATE, secondo quanto descritto nel posto precedente (http://domoticaduino.blogspot.it/2017/08/home-automation-system-sonoff-e-mqtt.html). Nel blocco di informazioni trasmesse, vediamo che c'è anche lo stato del relè, variabile POWER.

Nelle righe evidenziate nello screenshot seguente, vediamo la sequenza di messaggi MQTT durante la pressione del pulsante:


Alla prima pressione del pulsante, il relè si attiva e il sistema invia il messaggio con topic tasmota/garden/light/sonoffbasic01/stat/RESULT, contenente valore POWER: ON. E' la conferma che manda il dispositivo per dire che ha capito cosa deve fare. All'attivazione del relè arriva anche il messaggio con topic tasmota/garden/light/sonoffbasic01/stat/POWER e valore ON. A questo punto il relè è attivo e il lampione è acceso.

Si può vedere che nel successivo invio dei dati di telemetria, la variabile POWER adesso ha il valore ON

Alla seconda pressione del pulsante, il relè si disattiva e il sistema invia i messaggi tasmota/garden/light/sonoffbasic01/stat/RESULT {POWER: OFF} e tasmota/garden/light/sonoffbasic01/stat/POWER OFF. Il lampione è spento.

Lo stesso comportamento lo possiamo ottenere premendo il pulsante TOGGLE sull'interfaccia web del dispositivo


oppure inviando i comandi POWER ON e POWER OFF direttamente dalla console


Da notare che i messaggi MQTT di stato vengono inviati anche se lo stato è variato grazie a fattori esterni a MQTT.

Come ultimo step, accendo il lampione inviando il comando MQTT POWER ON, utilizzando un qualunque client MQTT connesso al nostro broker.

Io uso MQTT-SPY, molto utile sia per inviare messaggi che per vedere quelli che transitano, sottoscrivendo i topic di interesse.

Il messaggio da inviare deve appartenere al topic tasmota/garden/light/sonoffbasic01/cmnd/POWER ed avere valore ON. Il lampione si accenderà.



4 commenti:

  1. Ciao, sto seguendo il tuo blog da qualche giorno e volevo chiederti una cosa. Volevo integrare i Sonoff al mio impianto luci di casa. Attualmente le luci vengono comandate da classico relè Finder 27.01.8.230.0000 . C'è modo di integrare il Sonoff al mio impianto di casa, senza andare a perdere la funzionalità dei classici pulsanti a muro? Grazie!!

    RispondiElimina
    Risposte
    1. Ciao, sì...guarda questo post

      http://domoticaduino.blogspot.it/2017/10/home-automation-system-pulsanti-e.html

      in sostanza puoi collegare un pulsante o un interruttore al sonoff in sostituzione del relè che attualmente hai...

      Al sonoff fai passare direttamente la 220 mentre il pulsante / interruttore lo colleghi ai fili saldati al GPIO14 e GND così agiscono come semplice comando...occhio solo a configurare correttamente lo SwitchMode in TASMOTA.

      Ciao

      Elimina
    2. Ciao Marco, intanto grazie per la riposta! Avevo visto questo tuo secondo progetto, ma per metterlo in pratica, dovrei ricablare pultualmente ogni singolo comando luci per farlo arrivare fino al Sonoff. Vorrei evitare questo. Quello che stavo cercando di capire (appena mi arriverà farò delle prove "a banco") era se riuscivo a creare un utilizzo del Sonoff in parallelo al relè (senza perdere però lo "stato" dell'uscita).
      Grazie ancora comunque per la risposta!!

      Elimina
    3. Ciao Marco, alla fine ho utilizzato la modifica al pulsante sul Sonoff, portando fuori 2 fili e collegandoli uno al neutro e l'altro al contatto pulito di ogni pulsante. Funziona perfettamente. Grazie!!!

      Elimina