Messaging Queuing Telemetry Protocol eli MQTT on kevyt viestintäprotokolla, joka on suunniteltu pienen kaistanleveyden laitteisiin ja ympäristöihin. Se on nopea, helppokäyttöinen ja energiatehokas ratkaisu useiden IoT-laitteiden yhdistämiseen ja tietojen vaihtamiseen. Tietojen lähettämiseen tai vastaanottamiseen tarvitaan MQTT-välittäjä/palvelin ja aihe, johon laitteet tai käyttäjät julkaisevat ja tilaavat.

Tässä oppaassa otamme käyttöön MQTT-välittäjän ja Node-RED-työkalun Raspberry Pi: ssä yhdistämään MQTT-yhteensopivia DIY-älykkäitä IoT-laitteita ja käyttämään niitä kodin automaatioon.

Asioita, joita tarvitset

MQTT-palvelimen rakentaminen ja käyttöönotto Node-RED: llä tarvitset seuraavat:

  • Raspberry Pi Zero W tai parempi. Suosittelemme Raspberry Pi 3:n tai 4:n käyttöä (jos saatavilla).
  • microSD-kortti (8 Gt tai suurempi).
  • microSD-kortinlukija.
  • Linux PC, Mac tai Windows PC.
  • Internet-yhteys (Wi-Fi).

Vaihe 1: Asenna Raspberry Pi OS Lite (64-bittinen)

Tarvitset Raspberry Pi OS: n 64-bittisen Lite-version. Vuonna

Raspberry Pi Imager työkalu toisessa tietokoneessa, napsauta Valitse käyttöjärjestelmä > Raspberry Pi OS (muu)ja valitse sitten Raspberry Pi OS Lite (64-bittinen). Lisäksi haluat käyttää Imagerin lisäasetuksia ottaaksesi SSH: n käyttöön (käytimme pi ja vadelma tämän oppaan käyttäjätunnukseksi ja salasanaksi) ja määritä Wi-Fi-yhteys. Lisätietoja saat oppaastamme osoitteessa kuinka asentaa käyttöjärjestelmä Raspberry Pi -laitteeseen. Kun olet kirjoittanut käyttöjärjestelmän kortille, poista se ja aseta se Raspberry Pi -laitteeseen.

Vaihe 2: Yhdistä SSH: n kautta ja päivitä paketit

Voit muodostaa yhteyden Raspberry Pi: hen SSH: n kautta käyttämällä PuTTY: tä Windowsissa tai Terminalon macOS: ssä ja Linuxissa. Sinun pitäisi kuitenkin tietää Raspberry Pi: n IP, jotta voit muodostaa yhteyden SSH: n kautta. Selvittääksesi voit avata langattoman reitittimesi DHCP-asetukset tai käyttää älypuhelimesi Fingapp-sovellusta.

Syötä IP-osoite sisään Kitti ja napsauta Kytkeä. Kirjoita käyttäjätunnuksesi ja salasanasi kirjautuaksesi sisään.

Kirjoita Linux- tai macOS-päätteessä SinunPiKäyttäjänimi@IP-osoite ja kirjoita sitten salasana kirjautuaksesi sisään. Kun olet muodostanut yhteyden SSH: n kautta, suorita seuraava komento päivittääksesi pakettiluettelo ja päivityspaketit.

sudo apt päivitys && sudo apt päivitys y

Vaihe 3: Asenna MQTT Broker

Asenna ja ota MQTT-välittäjä (Mosquitto) käyttöön seuraavasti.

  1. Asenna Mosquitto suorittamalla seuraava komento Pääte-ikkunassa.
    sudo apt Asentaa mosquitto mosquitto-asiakkaat -y
    Tämä aloittaa Mosquitton (MQTT broker) ja asiakaspalvelujen asennuksen.
  2. Ota Mosquitto-palvelu käyttöön asennuksen jälkeen ja tarkista MQTT-versio seuraavilla komennoilla.
    sudosystemctlota käyttöönhyttynen.palvelu
    hyttynen -v
  3. Luo käyttäjätili salliaksesi todetun etäkäytön käyttämällä seuraavaa komentoa.
    sudo mosquitto_passwd -c /etc/mosquitto/passwd ravi
    Tässä ravi on käyttäjänimi (voit käyttää mitä tahansa). Anna salasana pyydettäessä. Kirjoita tämä käyttäjätunnus ja salasana muistiin myöhempää käyttöä varten.
  4. Avaa mosquitto.conf tiedosto nanoeditorissa seuraavalla komennolla.
    sudo nano /etc/mosquitto.conf
    Liitä seuraava koodi nanoeditoriin.
    per_listener_settings totta
    pid_file /run/mosquitto/mosquitto.pid
    sitkeys totta
    persistence_location /var/lib/mosquitto/
    log_dest tiedosto /var/log/mosquitto/mosquitto.log
    include_dir /etc/mosquitto/conf.d
    salli_anonyymi väärä
    kuuntelija 1883
    salasana_tiedosto /etc/mosquitto/passwd
    Lehdistö CTRL+X jonka jälkeen Y ja Tulla sisään tallentaaksesi muutokset.
  5. Käynnistä MQTT-välittäjä uudelleen suorittamalla seuraava komento.
    sudo systemctl käynnistä mosquitto uudelleen
  6. Tarkista MQTT-välittäjän tila nähdäksesi, onko MQTT käynnissä.
    sudo systemctl status mosquitto
    Jos näet yllä olevan lähdön, MQTT on käynnissä.

Vaihe 4: Testaa MQTT Brokeria

Testaa, toimiiko MQTT-välittäjä vai ei, asenna MQTTLens tai vastaava MQTT-sovellus Chromessa tai missä tahansa muussa verkkoselaimessa ja käynnistä se. Anna Raspberry Pi: n IP-osoite ja MQTT-käyttäjänimi/-salasana. Klikkaus Luo yhteys.

Kirjoita mikä tahansa aihe Tilaa kenttään ja samasta aiheesta Julkaista ala. Kirjoita viestikenttään "Hei" tai mikä tahansa ja napsauta Julkaista.

Jos näet viestin tilausten alla, MQTT-välittäjä toimii hyvin.

Vaihe 5: Asenna Node-RED

Node-RED: n avulla voit julkaista viestejä tai lähettää ja vastaanottaa hyötykuormia älylaitteillesi tai älylaitteistasi. Tätä hyötykuormaa voidaan käyttää käynnistämään älylaitteet päälle/pois tai vastaanottamaan tietoja (kuten lämpötilaa) anturilta. Voit käyttää verkkoselainta luodaksesi tällaisia ​​virtauksia Node-RED: ssä ja ohjata älylaitteitasi.

Asenna Node-RED suorittamalla seuraava komento Pääte-ikkunassa.

bash //raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

Tämä lataa ja asentaa Node-RED: n Raspberry Pi -laitteeseen. Valmistuminen voi kestää hetken. Kun Node-RED on asennettu, sinun on luotava Node-RED-asetustiedosto suorittamalla seuraava komento.

node-red admin init

Toimi sitten seuraavasti:

  1. paina Tulla sisään avain.
  2. Haluatko määrittää käyttäjän suojauksen? Valitse Joo. Anna käyttäjätunnus ja salasana. Pidä se turvassa, sillä sitä käytetään Node-REDin kirjautumiseen ja hallintaan verkkokäyttöliittymän kautta.
  3. Valita Täysi pääsy.
  4. Voit lisätä toisen käyttäjän tai valita Ei edetä.
  5. Valitse Ei kun sinua pyydetään ottamaan käyttöön projektin ominaisuudet.
  6. Lehdistö Tulla sisään.
  7. Kirjoita tunnuslause ja pidä se turvassa.
  8. Valitse oletusteema > Monaco (oletus).
  9. Valitse Ei kun pyydetään lataamaan ulkoiset solmut.

Kun tämä on tehty, käynnistä Node-RED uudelleen.

solmu-punainen uudelleenkäynnistys

Nyt voit vierailla Sinun-Vadelma-Pi-IP: 1880 verkkoselaimessa avataksesi Node-RED-hallintapaneelin ja kirjautuaksesi siihen.

Voit nyt luoda vuotoja solmu-PUNAINEN. Alla on esimerkki Node-RED-virtauksesta, jota käytämme WS2812B 8x32 -matriisinäytössämme, joka näyttää erilaisia ​​kotiimme asennettuja anturitietoja reaaliajassa.

Voit myös aloittaa rakentaa itse-älykello käyttämällä MAX7219 pistematriisiaja liitä se MQTT-palvelimeesi näyttääksesi tekstiä tai viestejä siinä.

Ota käyttöön kodin automaatio käyttämällä MQTT: tä ja Node-REDiä

Voit nyt luoda virtauksia ohjataksesi tai valvoaksesi MQTT-yhteensopivia kodin älylaitteita. Voit myös rakentaa tee-se-itse Tasmota-älykytkimiä tai Arduino-pohjaisia ​​älyantureita ja muita älylaitteita MQTT-ohjauksella ja käyttää niitä tämän MQTT- ja Node-RED-palvelimen kanssa. Voit luoda kotiautomaatiovirtoja älypuhelimesi MQTT-asiakkaalta vastaanotettujen tapahtumien, ajan tai hyötykuorman perusteella.

Android-älypuhelimeesi voit asentaa MQTT Dashin muodostaaksesi yhteyden MQTT-välittäjään ja lähettääksesi tai vastaanottaaksesi hyötykuormia eri aiheista, joita älylaitteesi tilaavat tai julkaisevat.