Sisukord:
- Tarvikud
- Samm: esmane seadistamine (olenevalt teie operatsioonisüsteemist)
- Samm 2: Mosquitto seadistamine:
- 3. samm: lõpetage
Video: SmartHome'i traadita side: MQTT äärmuslikud põhitõed: 3 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
MQTT põhitõed:
** Ma kavatsen teha koduautomaatika sarja, ma lähen läbi samme, mida ma tegin, et õppida kõike, mida olen tulevikus teinud. See juhend on lähtepunkt, kuidas seadistada MQTT minu tulevastes juhistes kasutamiseks. Selle sisu õpetused on aga rakendatavad kõigi projektide puhul, mida soovitakse ette võtta. **
Asjade Internet:
Asjade Internet võtab üle maailma ja eriti sellistes kogukondades nagu meie siin Instructablesis. Sellest ajast, kui ma selle kogukonnaga liitusin, on see inimeste ehitamisega juurdunud
Interneti kaudu ühendatud ja juhitavad seadmed. Asjade Internetiga töötamisel on raske mitte tulla protokolli MQTT järgi. See on sideprotokoll nagu teised, mida tänapäeval Internetis kasutatakse, näiteks HTTP või FTP, kuid selle toimimisviis on erinev, mistõttu on see ideaalne asjade Interneti rakenduste jaoks.
Mis on MQTT:
MQTT (Message Queuing Telemetry Transport on kerge suhtlusprotokoll, mis kasutab avaldamis-/tellimisarhitektuuri. HTTP, mida enamik Internetist kasutab, on üles ehitatud päringute/vastuste süsteemile. See tähendab, et saab kliendilt päringu ja saadab vastus sellele kliendile. MQTT -l on ka server (nn maakler) ja palju kliente. Erinevalt HTTP -st võimaldab MQTT klientidel avaldada või tellida konkreetseid teemasid. See võimaldab laiemat suhtlust tsentraliseeritud punkt, vahendaja. Iga sõlm saab avaldada vahendaja teema ja iga selle teemaga liitunud sõlm saab sõnumi. Kliendid saavad tellida ka mitu teemat ja seejärel saada mitu direktiivi või värskendust.
Kogu süsteem on sündmustepõhine ja võimaldab maakleri sõnumeid edastada igale tellitud kliendile. Nii et kui HTTP, kus klient teavet küsib, lükatakse klient selle kättesaamisel otse maaklerilt. Samuti on sisseehitatud teenused, mis võimaldavad erinevaid kaitsemeetmeid, näiteks QOS-i spetsifikatsioone. QOS -spetsifikatsioon võimaldab maakleril määrata, kas sõnum tuleb edastada kõige rohkem üks kord, vähemalt üks kord või täpselt üks kord. See tagab, et andmed edastatakse igale kliendile nõutaval viisil. Samuti saavad kliendid taotleda, et nende teemal avaldatud sõnumid puhverdataks maakleris juhuks, kui nad sellest mingil põhjusel lahti ühendatakse. Kui see on võrgus tagasi, edastatakse need andmed kliendile.
Teema pole midagi erilist, see on lihtsalt mitmesugused stringid, mis on ühendatud ja eraldatud kaldkriipsudega. Allpool kasutatava näite vorming on järgmine: kodu/magamistuba/laevalgus. Iga kaldkriips paigutatakse alateema tähistamiseks teema järele. Seega võiks avaldada teate koju, kus kõik maja seadmed selle vastu võtavad. Selle võiks avaldada otse koju/magamistuppa, kus sõnumi saavad kõik magamistoas olevad seadmed. Ja see võib minna konkreetse seadme juurde, nagu esmalt näidatud kodu/magamistuba/laevalgus, kus sõnumi saab ainult magamistoa laevalgusti. See, kuidas saame selliseid üksikuid seadmeid kogu ökosüsteemini abstraheerida, on äärmiselt mugav, eriti kui tegemist on koduautomaatikaga. Teemade jaotamiseks on veel viise ja ma lähen nendesse edasi tulevastes Instructablesides, kus rakendus on kõige mõttekam.
Tarvikud
Vaja on ainult ühte järgmistest.
Ubuntu:
Windowsi allsüsteem Linuxile: https://ubuntu.com/wsl (ainult siis, kui teil pole Linuxit/MacOS -i)
MacOS: nõuab MacBooki
See on nõutav:
Mosquitto MQTT Broker - alla laaditud apt -get abil (dokumentatsioon:
Samm: esmane seadistamine (olenevalt teie operatsioonisüsteemist)
MacOS/Linux:
Seadistamist pole vaja, lihtsalt avage oma terminal ja minge üle Mosquitto seadistusele!
Windows:
Kui kasutate Windowsi, peate installima Windowsi allsüsteemi Linuxile. See on ülilihtne kasutada ja äärmiselt väärtuslik tööriist, mis võimaldab teil Windowsis Ubuntu terminali käitada. Pole vaja Ubuntu installida ja topeltkäivitada, et testida terminali arengut!
Paigaldamise sammud:
1. Minge Windowsi poodi ja otsige üles ubuntu
2. Laadige alla ja installige Windowsi allsüsteem Linuxile
3. Avage rakendus ja järgige seadistamise lõpuleviimiseks juhiseid ning olete valmis jätkama!
Samm 2: Mosquitto seadistamine:
Nii nagu MQTT -i tutvustuses arutati, nõuab protokoll maaklerit (serverit). See maakler on iga kliendiga loodud ühenduse aluseks. Kõik sõnumid edastatakse ja vahendatakse selles maakleris. Maakleri jaoks on palju valikuid ja leiate need veebist, kuid see, mida me kasutame, on tõenäoliselt kõige levinum: Mosquitto.
Mosquitto on Linuxil põhinev MQTT maakler, millel on palju funktsioone. Ma ei hakka praegu selle funktsionaalsuse spetsiifikasse süvenema, kuid mõned põhinõuded, millele see vastab, on kasutaja/parooli autentimine ja TLS -krüptimise tugi, mis kõik on kasulikud asjade Interneti -seadmete arendamisel.
Sammud:
Kõik need toimingud tuleks lõpetada terminaliaknas.
1. Installige Mosquitto ja MQTT kliendid
sudo apt-get install mosquitto mosquitto-kliendid
2. Telli teema
mosquitto_sub -t "test"
See tellib teema. Seda teemat tähistab "-t" ja teema väärtus on "test". See väärtus, mis järgneb "-t" -le, võib olla kõik, mida soovite mõne erireservatsiooni jaoks salvestada.
3. Avage uus terminaliaken ja avaldage teade "test"
mosquitto_pub -t "test" -m "Tere maailm koos MQTT -ga!"
See avaldab sõnumi teemale "test", mis võimaldab meie teisel terminali eksemplaril saada teate tellimuse poolel. Avaldatud sõnumit tähistab "-m" ja sõnumi väärtus on "Hello World With MQTT". Seda sõnumit, nagu ka teemat, saab muuta soovitud kujul!
4. Minge tulemuste vaatamiseks esimesse terminaliaknasse! Peaksite nägema sõnumit „Tere maailm koos MQTT -ga”. Kui te seda ei näe, veenduge, et sisestasite õige teema. Kui olete selle edukalt lõpetanud, jätkake sellega mängimist. Proovige erinevaid teemasid koos alateemade ja erinevate sõnumitega!
3. samm: lõpetage
See ongi! Kui olete kõik lõpetanud, saate aru, kuidas MQTT töötab. See on väga algeline õpetus, mis näitab lihtsalt MQTT protokolli miinimummäära. Future Instructables tutvustab põhjalikumalt, kuidas protokoll praktiliselt asjade internetiga töötab, eriti ESP8266 moodulitega, mis käitavad Arduino. Minu esimene praktiline rakendus on nutikas kohvimasin, mis mul praegu toas on. Kui soovite õppida, kuidas valmistada kohvimasinat, mida saab juhtida nii teie telefonist kui ka Alexast, järgige kindlasti rohkem õpetusi.
Soovitan:
LoRa 3–8 km traadita side ja odav E32 (sx1278/sx1276) seade Arduino, Esp8266 või Esp32 jaoks: 15 sammu
LoRa 3Km kuni 8Km traadita side madala hinnaga E32 (sx1278/sx1276) seadmega Arduino, Esp8266 või Esp32 jaoks: loon raamatukogu EBYTE E32 haldamiseks, tuginedes LoRa seadme Semtech seeriale, väga võimas, lihtne ja odav seade. 3 km versioon siin, 8 km versioon siin Nad saavad töötada 3000–8000 m kaugusel ja neil on palju funktsioone
Traadita krüpteeritud side Arduino: 5 sammu
Traadita krüptitud side Arduino: Tere kõigile! Selles teises artiklis selgitan teile, kuidas kasutada kiipi Atecc608a traadita side tagamiseks. Selleks kasutan traadita osa ja Arduino UNO jaoks NRF24L01+. Mikrokiibi ATECC608A on kujundanud
Pikamaa, 1,8 km, Arduino kuni Arduino traadita side HC-12-ga: 6 sammu (piltidega)
Pikamaa, 1,8 km, Arduino-Arduino traadita side HC-12-ga: Selles juhendis saate teada, kuidas suhelda Arduinode vahel pikal, kuni 1,8 km kaugusel vabas õhus. HC-12 on traadita jadaport kommunikatsioonimoodul, mis on väga kasulik, äärmiselt võimas ja hõlpsasti kasutatav. Kõigepealt leiad
Traadita side NRF24L01 transiiverimooduli abil Arduino -põhiste projektide jaoks: 5 sammu (piltidega)
Traadita side NRF24L01 transiiverimooduli abil Arduino-põhiste projektide jaoks: see on minu teine juhendatav õpetus robotite ja mikrokontrollerite kohta. On tõesti hämmastav näha teie robotit elusana ja ootuspäraselt töötamas ning uskuge mind, et on lõbusam, kui juhite oma robotit või muid asju juhtmevabalt kiire ja
Kuidas õigesti mõõta traadita side moodulite energiatarvet madala energiatarbimise ajastul?: 6 sammu
Kuidas õigesti mõõta traadita side moodulite energiatarvet madala energiatarbimise ajastul?: Madal energiatarve on asjade internetis äärmiselt oluline mõiste. Enamik IoT -sõlme peab saama toite patareidest. Ainult juhtmeta mooduli energiatarvet õigesti mõõtes saame täpselt hinnata, kui palju akut