Sommario:

Sistema di automazione domestica WiFi a bassissima potenza: 6 passaggi (con immagini)
Sistema di automazione domestica WiFi a bassissima potenza: 6 passaggi (con immagini)

Video: Sistema di automazione domestica WiFi a bassissima potenza: 6 passaggi (con immagini)

Video: Sistema di automazione domestica WiFi a bassissima potenza: 6 passaggi (con immagini)
Video: Bticino: Webinar My Home_Up - Il sistema e le funzioni 2024, Dicembre
Anonim
Sistema di automazione domestica WiFi a bassissima potenza
Sistema di automazione domestica WiFi a bassissima potenza
Sistema di automazione domestica WiFi a bassissima potenza
Sistema di automazione domestica WiFi a bassissima potenza

In questo progetto mostriamo come è possibile costruire un sistema domotico locale di base in pochi passaggi. Utilizzeremo un Raspberry Pi che fungerà da dispositivo WiFi centrale. Considerando che per i nodi finali utilizzeremo IOT Cricket per realizzare dispositivi WiFi alimentati a batteria, ad es. sensore di temperatura e collegarlo all'RPi senza scrivere una sola riga di codice.

Il nostro sistema sarà basato sul protocollo di comunicazione MQTT, ampiamente adottato nella maggior parte dei sistemi di automazione domestica. Per configurarlo scegliamo il broker Mosquitto MQTT (server) e lo installiamo su Raspberry Pi (il nostro hub centrale).

IOT Cricket include anche il supporto dei protocolli HTTP(S) e MQTT. Lo configuriamo per utilizzare MQTT per comunicare direttamente con il nostro broker RPi MQTT.

Questo progetto può essere realizzato da makers a tutti i livelli di abilità. Potrebbe richiedere alcune saldature di base, tuttavia non richiede alcuna codifica o programmazione. Alla fine di questo progetto avrai una solida idea di come puoi facilmente costruire il tuo sistema ed estenderlo rapidamente aggiungendo i tuoi nodi finali IOT al sistema.

Forniture:

  • Raspberry Pi (abbiamo usato la versione 3 per questo progetto)
  • Modulo WiFi IOT Cricket
  • Portabatterie 2xAAA
  • 2 batterie AAA

Passaggio 1: cos'è MQTT?

Il protocollo MQTT fornisce un metodo leggero per eseguire la messaggistica utilizzando un modello di pubblicazione/sottoscrizione. Ciò lo rende adatto per la messaggistica di Internet of Things come sensori a bassa potenza o dispositivi mobili come telefoni, computer incorporati o microcontrollori. (fonte: mosquitto.org)

Possiamo utilizzare tutti i dispositivi che vogliamo per iscriverci agli argomenti e ascoltare i messaggi in arrivo. Se alcuni dispositivi pubblicano un messaggio su quell'argomento, tutti i dispositivi che sono iscritti all'argomento ricevono quel messaggio istantaneamente. L'argomento può essere una qualsiasi stringa arbitraria solitamente concatenata con i caratteri / per consentire la creazione di argomenti gerarchici. L'uso più tipico di MQTT consiste nell'avere un server centrale a cui i dispositivi possono iscriversi e pubblicare messaggi. Facilita tutte le comunicazioni tra i dispositivi collegati a quel server. In questo progetto utilizzeremo RPi come nostro broker MQTT centrale e tutti gli altri dispositivi invieranno messaggi tramite questo broker. Il modo migliore per impararlo è ovviamente farlo da soli. Ci sono molte risorse disponibili su Internet su MQTT. Tuttavia, per questo progetto dovresti essere d'accordo con un'introduzione di base, che abbiamo fornito sopra.

Passaggio 2: installazione di MQTT Broker su Raspberry Pi

Per questo progetto utilizziamo un broker Mosquitto MQTT open source. È leggero ed è adatto per l'uso su tutti i dispositivi, dai computer a scheda singola a bassa potenza ai server completi.

Prima di iniziare l'installazione, è buona norma aggiornare prima i componenti di sistema:

$ sudo apt-get update$ sudo apt-get upgrade

Installa il broker Mosquitto. Apri un terminale e digita il seguente comando:

$ sudo apt-get install mosquitto -y

Configura il broker Mosquitto. Modifica file di configurazione:

$ sudo vi /etc/mosquitto/mosquitto.conf

e aggiungi le seguenti righe in alto:

porta 1883allow_anonymous vero

Riavvia RPi per applicare le modifiche:

$ sudo reboot

Questo è tutto! Il nostro broker MQTT è attivo e funzionante ora!

NOTA: per semplicità di questo progetto non stiamo creando account. Quindi chiunque all'interno della nostra rete locale può connettersi a questo broker MQTT senza credenziali. Se vuoi aggiungere l'autenticazione dell'utente e renderla più sicura, ci sono molti tutorial su Internet su come farlo.

Ora, dobbiamo solo ottenere l'indirizzo IP in modo da poter inviare messaggi al nostro broker Mosquitto da altri dispositivi nella rete:

Ottieni indirizzo IP:

$ hostname -I

your_RPi_IP_address (es. 192.168.1.10)

Passaggio 3: collega IOT Cricket a RaspberryPi tramite MQTT

Connetti IOT Cricket a RaspberryPi tramite MQTT
Connetti IOT Cricket a RaspberryPi tramite MQTT
Connetti IOT Cricket a RaspberryPi tramite MQTT
Connetti IOT Cricket a RaspberryPi tramite MQTT

In questo progetto utilizziamo il modulo WiFi IOT Cricket per un semplice sensore per segnalare una temperatura ogni 30 secondi al nostro sistema. Funziona con una batteria in modo da poterlo attaccare ovunque a casa o in giardino. Successivamente è possibile utilizzare IOT Cricket per costruire vari sensori, allarmi, pulsanti, interruttori alimentati a batteria e collegarli anche al nostro broker RPi MQTT pronto all'uso.

Nella prima fase collega le batterie a Cricket.

Cricket è dotato di un sensore di temperatura integrato. Abbiamo solo bisogno di configurarlo per inviare il valore della temperatura al nostro broker MQTT impostando l'indirizzo IP RPi. Per farlo apri il pannello di configurazione di Cricket (vedi i passaggi qui) e applica le seguenti impostazioni (come mostrato nell'immagine qui sotto, per favore regola l'indirizzo IP nella casella "url" sul tuo RPi)

Ora possiamo uscire dalla modalità di configurazione. Il dispositivo è pronto! Cricket sta già inviando dati al nostro broker MQTT ogni 30 secondi.

Passaggio 4: ispezionare i messaggi MQTT

Ispeziona i messaggi MQTT
Ispeziona i messaggi MQTT

Per visualizzare/ricevere messaggi inviati al nostro broker MQTT possiamo utilizzare vari strumenti.

Il più semplice potrebbe essere uno strumento da riga di comando mosquitto_sub. Possiamo installarlo su qualsiasi computer della nostra rete o sul nostro RPi con questo comando:

$ sudo apt-get install mosquitto-clients -y

Ora possiamo eseguire il seguente comando per ascoltare TUTTI gli argomenti e i messaggi inviati tramite il nostro broker MQTT:

$ mosquitto_sub -v -h tuo_indirizzo_IP_RPi -p 1883 -t '#'

…/59A98F494C/nome_dispositivo MyTemperatureDev/59A98F494C/sn_dispositivo 59A98F494C/59A98F494C/hwc_wake_up 3794/59A98F494C/hwc_wifi_enabled 3763/59A98F498_F944…

Quanto sopra è un esempio di output di ciò che IOT Cricket invia al nostro broker. Tra gli altri dati che possiamo vedere c'è una temperatura:

/59A98F494C/temperatura 26.0

Il bello di MQTT è che ci permette di iscriverci solo agli argomenti che ci interessano. Se vogliamo ricevere solo una temperatura, possiamo iscriverci all'argomento /59A98F494C/temp utilizzando il seguente comando:

$ mosquitto_sub -h tuo_indirizzo_IP_RPi -t '/59A98F494C/temp'

…26.126.527.227.6…

Passaggio 5: riepilogo

Riepilogo
Riepilogo

In questo progetto abbiamo mostrato un hardware e un software essenziale per iniziare a costruire sistemi di automazione domestica a basso consumo, efficienti dal punto di vista energetico, basati su WiFi. MQTT è l'essenza su cui basarsi per i sistemi più sofisticati.

L'ecosistema di software e servizi che possono essere integrati con MQTT è ENORME! Ci sono molti ottimi sistemi come Home Assistant, Node RED, Grafana, ecc. per farti ottenere un'ottima esperienza utente del tuo sistema. Non solo possiamo fare una semplice stampa di una temperatura, ma possiamo avere grandi dashboard che visualizzano i dati e gestiscono i tuoi dispositivi.

Ora che abbiamo questa infrastruttura di sistema di base in atto, il cielo è il nostro limite di quali altri dispositivi WiFi possiamo costruire utilizzando i moduli IOT Cricket e aggiungere al nostro sistema di automazione domestica.

Grazie per essere arrivato fin qui. Speriamo che questo tutorial ti sia piaciuto!

Il team di Things On Edge

Passaggio 6: chi siamo

Things On Edge è una società con sede a Cambridge, nel Regno Unito. Progettiamo un modulo Wi-Fi Cricket alimentato a batteria ultra bassa per consentirti di connettere vari dispositivi elettronici a smartphone o altri servizi Internet letteralmente in pochi minuti. Non richiede alcuna programmazione e codifica. Ti consente di integrare i tuoi dispositivi in un enorme ecosistema IOT su API MQTT e

Consigliato: