Tartalomjegyzék:
- Kellékek
- 1. lépés: Kezdeti beállítás (az operációs rendszertől függően)
- 2. lépés: Mosquitto beállítás:
- 3. lépés: Csomagolj
Videó: SmartHome vezeték nélküli kommunikáció: az MQTT extrém alapjai: 3 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
Az MQTT alapjai:
** Házi automatizálási sorozatot fogok készíteni, végig fogom menni azon lépéseken, amelyeket megtettem, hogy megtanuljak mindent, amit a jövőben csináltam. Ez az Instructable az alapvonal annak meghatározásához, hogyan kell beállítani az MQTT -t a jövőbeli Instructables -ben való használatra. Ennek a tartalomnak a tanításai azonban minden olyan projektre vonatkoznak, amelyet vállalni szeretnének. **
A dolgok internete:
A tárgyak internete elfoglalja a világot, és különösen az olyan közösségekben, mint a miénk itt, az Instructables -nél. Amióta belépek ebbe a közösségbe, az emberek épülnek
Az internethez csatlakoztatott és irányított eszközök. Amikor a Dolgok Internetével dolgozik, nehéz nem betartani az MQTT protokollt. Ez egy kommunikációs protokoll, mint mások, amelyeket ma az interneten használnak, mint például a HTTP vagy az FTP, de a működési módja más, ezért ideális a tárgyak internete alkalmazásaihoz.
Mi az MQTT:
Az MQTT (Message Queuing Telemetry Transport egy könnyű kommunikációs protokoll, amely közzétételi/előfizetési architektúrát használ. A HTTP, amelyet az internet nagy része használ, egy kérés/válasz rendszerre épül. Ez azt jelenti, hogy kérést kap egy ügyféltől, és elküldi válasz az adott ügyfélre. Az MQTT -nek van egy szervere is (brókernek nevezik), valamint számos kliens. A HTTP -vel ellentétben az MQTT lehetővé teszi az ügyfelek számára, hogy közzétegyenek vagy feliratkozzanak bizonyos „témákra”. Ez lehetővé teszi a szélesebb körű kommunikációt egy központi pont, a közvetítő. Minden csomópont közzétehet egy témát a közvetítőn, és az adott témára feliratkozott bármely csomópont megkapja az üzenetet. Az ügyfelek több témára is feliratkozhatnak, majd több irányelvet vagy frissítést kaphatnak.
Az egész rendszer eseményvezérelt, és lehetővé teszi, hogy a bróker üzenetei minden előfizetett ügyfélhez eljussanak. Tehát a HTTP helyett, ahol az ügyfél kéri az információt, az ügyfél közvetlenül az alkusztól kapja meg az információt az átvételkor. Vannak beépített szolgáltatások is, amelyek lehetővé teszik a különböző biztosítékokat, például a QOS specifikációkat. A QOS specifikáció lehetővé teszi a brókernek, hogy meghatározza, hogy egy üzenetet legfeljebb egyszer, legalább egyszer vagy pontosan egyszer kell -e kézbesíteni. Ez biztosítja, hogy az adatokat a kívánt módon juttassuk el minden ügyfélhez. Az ügyfelek azt is kérhetik, hogy a témájukban közzétett üzenetek puffereljenek a brókerben abban az esetben, ha bármilyen okból leválasztják őket. Amint visszatér az internetre, az adatok eljutnak az ügyfélhez.
Egy téma semmi különös, csak sokféle karakterlánc, amelyeket egyesítenek és elválasztanak perjelekkel. Az alábbi példában használt formátum a következő: otthon/hálószoba/mennyezeti fény. Minden perjelet egy téma után kell elhelyezni, amely egy altémát jelöl. Így üzenetet lehetne közzétenni otthonra, ahol a ház összes eszköze megkapja. Közvetlenül az otthoni/hálószobába tehető közzé, ahol a hálószobában lévő összes eszköz megkapja az üzenetet. És lemehet az adott eszközre, mint az első otthon/hálószoba/mennyezeti lámpa, ahol csak a hálószoba mennyezeti lámpája fogadja az üzenetet. Rendkívül praktikus, ahogy az ilyen eszközöket absztrahálhatjuk egy egész ökoszisztémáig, különösen, ha az otthoni automatizálásról van szó. Vannak további módszerek a témák lebontására, és a későbbi Instructables -ben részletesebben foglalkozom velük, ahol az alkalmazásnak a legtöbb értelme van.
Kellékek
Az alábbiak közül csak egy szükséges:
Ubuntu:
Windows alrendszer Linuxra: https://ubuntu.com/wsl (Csak akkor, ha nem rendelkezik Linux/MacOS rendszerrel)
MacOS: MacBook szükséges
Ez kötelező:
Mosquitto MQTT Broker - Letöltve az apt -get segítségével (Dokumentáció:
1. lépés: Kezdeti beállítás (az operációs rendszertől függően)
MacOS/Linux:
Nincs szükség beállításra, csak nyissa meg a terminált, és ugorjon át a Mosquitto Setup -ra!
Ablakok:
Ha Windows rendszert használ, telepítenie kell a Windows alrendszert Linuxra. Ez egy rendkívül könnyen használható és rendkívül értékes eszköz, amely lehetővé teszi Ubuntu terminál futtatását a Windows rendszeren belül. Nincs szükség az Ubuntu telepítésére és kettős indítására, csak a fejlesztés teszteléséhez a terminálon!
Telepítési lépések:
1. Lépjen a Windows Store -ba, és keressen rá az ubuntu kifejezésre
2. Töltse le és telepítse a Windows alrendszert Linuxra
3. Nyissa meg az alkalmazást, és kövesse az utasításokat a beállítás befejezéséhez, és készen áll a folytatásra!
2. lépés: Mosquitto beállítás:
Tehát, amint azt az MQTT bevezetőjében tárgyaltuk, a protokollhoz bróker (szerver) szükséges. Ez a bróker az alapja az összes ügyfélkapcsolatnak. Ebben az alkuszban minden üzenet áthalad és sorba kerül. Sok lehetőség közül választhat egy bróker számára, és ezeket megtalálhatja az interneten, de az egyik, amelyet használni fogunk, valószínűleg a leggyakoribb: Mosquitto.
A Mosquitto egy Linux alapú MQTT bróker, rengeteg funkcióval. Ennek a funkciónak a sajátosságaiba most nem térnék ki, de néhány alapvető követelmény, amelyet teljesít, a felhasználó/jelszó hitelesítés, valamint a TLS titkosítás támogatása, amelyek mind hasznosak a dolgok internete eszközeinek fejlesztésében.
Lépések:
Mindezeket a lépéseket egy terminál ablakban kell elvégezni.
1. Telepítse a Mosquitto és az MQTT klienseket
sudo apt-get install mosquitto mosquitto-kliensek
2. Feliratkozás egy témára
mosquitto_sub -t "teszt"
Ez előfizet egy témára. Ezt a témát "-t" jelöli, a téma értéke pedig "teszt". Ez az érték a "-t" után bármi lehet, amit el szeretne menteni néhány speciális foglalás esetén.
3. Nyisson meg egy új terminál ablakot, és tegyen közzé egy üzenetet a "teszt" témához
mosquitto_pub -t "teszt" -m "Hello World with MQTT!"
Ez üzenetet tesz közzé a "teszt" témában, lehetővé téve, hogy másik terminálpéldányunk megkapja az üzenetet az előfizetési oldalon. A közzétett üzenetet "-m" jelzi, és az üzenet értéke "Hello World With MQTT". Ez az üzenet, akárcsak a téma, bármire megváltoztatható!
4. Lépjen az első terminál ablakba az eredmények megtekintéséhez! Egy üzenetet kell kapnia, amely azt mondja: "Hello World With MQTT". Ha ezt nem látja, győződjön meg arról, hogy a megfelelő témát írta be. Ha sikeresen befejezte ezt, folytassa a játékot. Próbáljon ki különböző témákat, altémákkal és különböző üzenetekkel!
3. lépés: Csomagolj
Ez az! Miután mindezt befejezte, megérti az MQTT működésének alapjait. Ez egy nagyon kezdetleges oktatóanyag, amely csak az MQTT protokoll minimumát mutatja. A Future Instructables részletesebben bemutatja, hogyan működik a protokoll a gyakorlatban a tárgyak internetével, különösen az Arduino -t futtató ESP8266 modulokkal. Az első gyakorlati alkalmazásom az okos kávéfőző lesz, ami jelenleg a szobámban van. Ha meg szeretné tanulni, hogyan készítsen egy kávéfőzőt, amelyet a telefonjáról és az Alexa -ról is vezérelhet, kövessen engem további oktatóanyagokért.
Ajánlott:
Vezeték nélküli Arduino robot a HC12 vezeték nélküli modul használatával: 7 lépés
Vezeték nélküli Arduino robot a HC12 vezeték nélküli modul használatával: Hé srácok, üdv újra. Korábbi hozzászólásomban elmagyaráztam, hogy mi az a H -híd áramkör, az L293D motorvezérlő IC, a malackalapú L293D motorvezérlő IC a nagyáramú motorvezérlők vezetéséhez, és hogyan tervezheti meg és készítheti el saját L293D motorvezérlő tábláját
Távirányítású autó - Vezeték nélküli vezeték nélküli Xbox 360 vezérlővel: 5 lépés
Távirányítású autó - vezérelhető a vezeték nélküli Xbox 360 vezérlő használatával: Ezek az utasítások saját távirányítású autó létrehozásához, vezeték nélküli Xbox 360 vezérlővel vezérelhetők
Ötven méter hatótávolságú vezeték nélküli hozzáférési pont TP Link WN7200ND USB vezeték nélküli adapterrel Raspbian Stretch -en: 6 lépés
Ötven méter hatótávolságú vezeték nélküli hozzáférési pont TP Link WN7200ND USB vezeték nélküli adapterrel a Raspbian Stretch -en: A Raspberry Pi kiválóan alkalmas biztonságos vezeték nélküli hozzáférési pontok létrehozására, de nem rendelkezik jó hatótávolsággal, TP Link WN7200ND USB vezeték nélküli adaptert használtam annak kiterjesztéséhez. Szeretném megosztani, hogyan kell csinálniMiért akarok málna pi -t használni router helyett? T
DIY vezeték nélküli mikrofon vezeték nélküli gitárrendszerhez: 4 lépés
DIY Wireless Mic to Wireless Guitar System: Néztem néhány videót és néhány zenekart, és szinte közülük vezeték nélküli rendszert használ a gitáron. Megőrülök, mozogok, sétálok, és azt csinálok, amit akarnak, anélkül, hogy a zsinórt használnám, ezért arról álmodozom, hogy lesz egy .. De .. nekem ez most túl drága, ezért erre jutottam
Hackeljen be egy vezeték nélküli kaputelefont egy vezeték nélküli riasztókapcsolóba vagy be/ki kapcsolóba: 4 lépés
Hackeljen be egy vezeték nélküli kaputelefont egy vezeték nélküli riasztókapcsolóba vagy be/ki kapcsolóba: Nemrég építettem egy riasztórendszert, és telepítettem a házamba. Mágneses kapcsolókat használtam az ajtókon, és bekötöttem a padláson. Az ablakok egy másik történet, és a kemény huzalozás nem volt lehetőség. Szükségem volt egy vezeték nélküli megoldásra, és ez