Installa un server MQTT e Node-RED su Raspberry Pi per la domotica

Installa un server MQTT e Node-RED su Raspberry Pi per la domotica

Messaging Queuing Telemetry Protocol, o MQTT, è un protocollo di messaggistica leggero progettato per dispositivi e ambienti con larghezza di banda ridotta. È una soluzione veloce, facile da implementare ed efficiente dal punto di vista energetico per connettere e scambiare informazioni tra più dispositivi IoT. Richiede un broker/server MQTT e l'argomento a cui i messaggi vengono pubblicati e sottoscritti dai dispositivi o dagli utenti per inviare o ricevere le informazioni.





In questa guida, implementeremo il broker MQTT e lo strumento Node-RED su Raspberry Pi per connettere dispositivi IoT intelligenti fai-da-te abilitati per MQTT e utilizzarli per l'automazione domestica.





migliori app per Android TV Box 2018

Cose di cui avrai bisogno

Per creare e distribuire un server MQTT con Node-RED, avrai bisogno di quanto segue:





  • Un Raspberry Pi Zero W o migliore. Si consiglia di utilizzare un Raspberry Pi 3 o 4 (se disponibile).
  • Una scheda microSD (8 GB o superiore).
  • Un lettore di schede microSD.
  • Un PC Linux, Mac o PC Windows.
  • Connessione Internet (Wi-Fi).

Passaggio 1: installa Raspberry Pi OS Lite (64 bit)

Avrai bisogno della versione Lite a 64 bit di Raspberry Pi OS. Nel Imager Raspberry Pi strumento su un altro computer, fare clic su Scegli il sistema operativo > Sistema operativo Raspberry Pi (altro) , quindi selezionare Raspberry Pi OS Lite (64 bit) . Inoltre, ti consigliamo di utilizzare le impostazioni avanzate di Imager per abilitare SSH (abbiamo usato pi e lampone come nome utente e password per questa guida) e configurare la connessione Wi-Fi. Per maggiori dettagli, consulta la nostra guida su come installare un sistema operativo su un Raspberry Pi . Dopo aver scritto il sistema operativo sulla scheda, espellilo e inseriscilo nel tuo Raspberry Pi.

Passaggio 2: connettersi tramite SSH e aggiornare i pacchetti

Puoi connetterti al tuo Raspberry Pi tramite SSH usando PuTTY su Windows o Terminal su macOS e Linux. Tuttavia, dovresti conoscere l'IP del Raspberry Pi per connetterti tramite SSH. Per scoprirlo, puoi aprire le impostazioni DHCP del tuo router wireless o utilizzare Fing app sul tuo smartphone.



  trova l'ip del tuo lampone tramite le impostazioni DHCP del router

Immettere l'indirizzo IP in PuTTY e fare clic Collegare . Digita il tuo nome utente e password per accedere.

  connettersi a lampone pi su ssh

Sul terminale Linux o macOS, digita YourPiUsername@IPAddress e quindi digitare la password per accedere. Una volta connesso tramite SSH, eseguire il comando seguente per aggiornare l'elenco dei pacchetti e aggiornare i pacchetti.





sudo apt update && sudo apt upgrade y

Passaggio 3: installare il broker MQTT

Per installare e abilitare il broker MQTT (Mosquitto), attenersi alla seguente procedura.

  1. Installa Mosquitto eseguendo il seguente comando nella finestra Terminale.
    sudo apt install mosquitto mosquitto-clients -y
      installa il server mosquitto mqtt Verrà avviata l'installazione di Mosquitto (broker MQTT) e dei servizi client.
  2. Dopo l'installazione, abilitare il servizio Mosquitto e verificare la versione MQTT utilizzando i seguenti comandi.008EFBDDFB34A48CCBBF8212A3C803CAD189488D   abilita il servizio zanzara
  3. Creare un account utente per consentire l'accesso remoto autenticato utilizzando il comando seguente.
    sudo mosquitto_passwd -c /etc/mosquitto/passwd ravi
    Qui trattamento è il nome utente (puoi usare quello che vuoi). Immettere la password quando richiesto. Annotare questo nome utente e password per un uso successivo.
  4. Apri il zanzara.conf file nell'editor nano utilizzando il seguente comando.
    sudo nano /etc/mosquitto.conf
    Incolla il codice seguente nell'editor nano.
    per_listener_settings true 
    pid_file /run/mosquitto/mosquitto.pid
    persistence true
    persistence_location /var/lib/mosquitto/
    log_dest file /var/log/mosquitto/mosquitto.log
    include_dir /etc/mosquitto/conf.d
    allow_anonymous false
    listener 1883
    password_file /etc/mosquitto/passwd
      modifica il file di configurazione di mosquitto Premere CTRL+X seguito da Y e accedere per salvare le modifiche.
  5. Riavvia il broker MQTT eseguendo il comando seguente.
    sudo systemctl restart mosquitto
  6. Controllare lo stato del broker MQTT per vedere se MQTT è in esecuzione.
    sudo systemctl status mosquitto
      controllare lo stato del server mqtt Se vedi l'output sopra, MQTT è in esecuzione.

Passaggio 4: testare il broker MQTT

Per verificare se il broker MQTT funziona o meno, installa MQTTLens o un'app MQTT simile in Chrome o qualsiasi altro browser web e avviala. Immettere l'indirizzo IP del Raspberry Pi e il nome utente/password MQTT. Clic Crea connessione .





  connettersi al server mqtt e inviare un messaggio all'argomento di test per verificare che il broker mqtt funzioni

Inserisci qualsiasi argomento nel sottoscrivi campo e lo stesso argomento nel Pubblicare campo. Digita 'Ciao' o qualsiasi altra cosa nel campo del messaggio e fai clic Pubblicare .

  messaggi pubblicati correttamente che indicano che mqtt sta funzionando

Se vedi il messaggio sotto gli abbonamenti, il broker MQTT funziona correttamente.

come fare una voce fuori campo su tiktok

Passaggio 5: installare Node-RED

Con Node-RED puoi pubblicare messaggi o inviare e ricevere payload da o verso i tuoi dispositivi smart. Questo carico utile può essere utilizzato per attivare/disattivare dispositivi intelligenti o ricevere dati (come la temperatura) da un sensore. Puoi utilizzare il tuo browser web per creare tali flussi in Node-RED e controllare i tuoi dispositivi intelligenti.

Per installare Node-RED, eseguire il seguente comando nella finestra Terminale.

bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
  installa il nodo rosso

Questo scaricherà e installerà Node-RED sul tuo Raspberry Pi. Il completamento potrebbe richiedere del tempo. Una volta installato Node-RED, è necessario creare un file di impostazioni Node-RED eseguendo il comando seguente.

node-red admin init

Quindi segui questi passaggi:

  1. premi il accedere chiave.
  2. Vuoi impostare la sicurezza dell'utente? Selezionare . Inserisci un nome utente e una password. Tienilo al sicuro poiché verrà utilizzato per accedere e gestire Node-RED tramite un'interfaccia web.
  3. Scegliere Accesso completo .
  4. È possibile aggiungere un altro utente o selezionare No procedere.
  5. Selezionare No quando viene chiesto di abilitare le funzionalità del progetto.
  6. Premere accedere .
  7. Digita una passphrase e tienila al sicuro.
  8. Scegli il tema predefinito > Monaco (predefinito) .
  9. Selezionare No quando viene chiesto di caricare nodi esterni.
  configurare l'installazione del nodo rosso

Una volta fatto, riavvia Node-RED.

node-red restart

Ora puoi visitare Your-Raspberry-Pi-IP: 1880 in un browser web per aprire e accedere al pannello di amministrazione di Node-RED.

quali sono tutti i trofei di snapchat?
  accedere al nodo rosso sull'ip raspberry pi alla porta 1880

Ora puoi creare flussi in Node-RED. Di seguito è riportato un esempio di flusso Node-RED che utilizziamo per eseguire il nostro display a matrice WS2812B 8x32 che mostra varie informazioni sui sensori installati nella nostra casa in tempo reale.

  flusso rosso del nodo campione per visualizzare vari valori del sensore sul display a matrice 8x32

Per iniziare, puoi anche costruisci un orologio intelligente fai-da-te utilizzando la matrice di punti MAX7219 e collegalo al tuo server MQTT per visualizzare testo o messaggi su di esso.

Abilita la domotica utilizzando MQTT e Node-RED

Ora puoi creare flussi per controllare o monitorare i tuoi dispositivi domestici intelligenti abilitati per MQTT. Puoi anche costruire interruttori intelligenti Tasmota fai-da-te o sensori intelligenti basati su Arduino e altri dispositivi intelligenti con controllo MQTT e utilizzarli con questo server MQTT e Node-RED. Puoi creare flussi per la domotica in base a eventi, orari o payload ricevuti dal client MQTT del tuo smartphone.

Sul tuo smartphone Android, puoi installare MQTT Dash per connetterti al tuo broker MQTT e inviare o ricevere payload da o verso vari argomenti a cui i tuoi dispositivi intelligenti si abbonano o pubblicano.