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.
- Asenna Mosquitto suorittamalla seuraava komento Pääte-ikkunassa.
Tämä aloittaa Mosquitton (MQTT broker) ja asiakaspalvelujen asennuksen.sudo apt Asentaa mosquitto mosquitto-asiakkaat -y
- Ota Mosquitto-palvelu käyttöön asennuksen jälkeen ja tarkista MQTT-versio seuraavilla komennoilla.
sudosystemctlota käyttöönhyttynen.palvelu
hyttynen -v - Luo käyttäjätili salliaksesi todetun etäkäytön käyttämällä seuraavaa komentoa.
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.sudo mosquitto_passwd -c /etc/mosquitto/passwd ravi
- Avaa mosquitto.conf tiedosto nanoeditorissa seuraavalla komennolla.
Liitä seuraava koodi nanoeditoriin.sudo nano /etc/mosquitto.conf
Lehdistö CTRL+X jonka jälkeen Y ja Tulla sisään tallentaaksesi muutokset.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 - Käynnistä MQTT-välittäjä uudelleen suorittamalla seuraava komento.
sudo systemctl käynnistä mosquitto uudelleen
- Tarkista MQTT-välittäjän tila nähdäksesi, onko MQTT käynnissä.
Jos näet yllä olevan lähdön, MQTT on käynnissä.sudo systemctl status mosquitto
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:
- paina Tulla sisään avain.
- 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.
- Valita Täysi pääsy.
- Voit lisätä toisen käyttäjän tai valita Ei edetä.
- Valitse Ei kun sinua pyydetään ottamaan käyttöön projektin ominaisuudet.
- Lehdistö Tulla sisään.
- Kirjoita tunnuslause ja pidä se turvassa.
- Valitse oletusteema > Monaco (oletus).
- 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.