De ce IoT favorizează MQTT?

Apr 21, 2025 Lăsaţi un mesaj

MQTT (Message Queuing Telemetry Transport), în termeni umani, înseamnă Message Queuing Telemetry Transport. În urmă cu câțiva ani, când partea PC a prevalenței multor ingineri pur și simplu nu a auzit un termen giratoriu, dar odată cu dezvoltarea treptată a tehnologiei Internet of Things (IoT), acest protocol apare din ce în ce mai frecvent în ochii marilor ingineri. Acest lucru a făcut ca mulți ingineri să cunoască doar numele, dar nu și semnificația, și mulți oameni chiar au crezut că acesta este un fel de protocol dezvoltat odată cu dezvoltarea IoT. De fapt, protocolul MQTT a fost inventat pentru prima dată în urmă cu mai bine de 20 de ani, iar în 1999 Andy Stanford Clark de la IBM și Alan Nippe de la Cirrus Link au scris prima versiune a protocolului. De atunci, protocolul a fost standardizat la nivel internațional ca protocol de mesagerie bazat pe publicare/abonare-în conformitate cu standardul ISO (ISO/IEC PRF 20922). IBM a prezentat specificația MQTT versiunea 3.1 la Structured Information Standards Facilitation Organization în 2013, împreună cu o cartă pentru a se asigura că doar un număr mic de modificări ar putea fi utilizat și protocolul MQ de atunci pentru a fi utilizat și de atunci specificația MTT. într-o serie de nişe de atunci. Odată ce infrastructura tehnică a IoT a fost finalizată, acest protocol străvechi a început să aibă prima primăvară.


Straturi de transport și aplicație ale rețelei


După cum știm cu toții, dezvoltarea rapidă a Internetului lucrurilor până acum nu poate părăsi infrastructura rețelei de comunicații, acum puteți controla orice colț al lumii în casa unui comutator de lumină din cameră sau pentru a face control industrial, puteți, de asemenea, controlul de la distanță al mișcării unui robot, maturitatea acestei tehnologii se bazează pe comunicarea în rețea ca bază. Tehnologia principală a tehnologiei actuale de rețea este modelul OSI cu șapte-straturi, desigur, aplicația reală utilizează de fapt modelul de rețea cu patru-layer TCP/IP.


Modelul de rețea cu patru straturi TCP / IP al celui de-al treilea strat de transport este celebrul protocol TCP / IP, acest strat al scopului principal al protocolului este utilizat pentru a trimite un computer pe transmisia de date de comunicare în rețea la adresa IP specificată a celeilalte mașini de mai sus, de exemplu, o adresă IP „192.168.137.19 De exemplu, dacă o mașină cu adresa IP „192.168.137.19” dorește. trimiteți un pachet binar de 16 octeți către o mașină cu adresa IP „192.168.137.10”, apoi este posibil să utilizați protocolul TCP/IP pentru a-l transmite. În schimb, atunci când transferăm date folosind TCP, folosim de obicei socket-uri.


Dar atunci când adresa IP a mașinii "192.168.137.19" pentru a trimite date către mașina "192.168.137.10", acest pachet de pachete TCP din interiorul datelor este de fapt în numele a ceea ce semnificația capătului de primire a adresei IP a capătului de recepție al mașinii "192.168.137.10" este acest pachet de date, cum este problema acestui pachet de date37.168.137.168.1 lăsat la stratul de transport deasupra stratului de protocoale de rezolvat, care sunt protocoalele de la nivelul aplicației. Desigur, dacă protocoalele dvs. nu doresc să dea rețelei obișnuite de computere pe rezoluție, puteți merge, de asemenea, să dezvolte unele dintre propriile protocoale ale stratului de aplicație, nu contează, scopul stratului de transport este doar de a trece datele către mașina țintă deasupra acestuia.


Munca noastră de zi cu zi, divertismentul se va întâlni adesea cu o varietate de protocoale de nivel de aplicație, cum ar fi atunci când deschideți o pagină web, imaginea este afișată în acea poziție, butonul pentru a indica în jos este de a realiza ce funcție, aceasta este prin protocolul HTML HyperText Transfer Protocol (engleză: HyperTextTransferProtocol, abrevierea: HTTP) de acord. Acest lucru asigură că atunci când o pagină din site-ul dvs. este solicitată de orice dispozitiv, acel dispozitiv o poate afișa corect. În afară de HTTP, există multe alte protocoale de nivel de aplicație precum DNS, FTP etc., iar protocolul MQTT, care este protagonistul nostru astăzi, este unul dintre ele.


De ce IoT favorizează MQTT


Cu toate protocoalele grozave ale stratului de aplicații disponibile pentru aplicațiile noastre existente, de ce strălucește MQTT în spațiul IoT. Alegerea protocolului MQTT nu este neîntemeiată; MQTT este un protocol de rețea ușor și flexibil, care se străduiește să atingă echilibrul potrivit pentru dezvoltatorii IoT:


Acest protocol ușor poate fi implementat pe dispozitive hardware cu constrângeri severe și rețele cu latență mare/lățime de bandă limitată.


Flexibilitatea sa face posibilă suportarea diverselor scenarii de aplicații pentru dispozitive și servicii IoT.


Majoritatea dezvoltatorilor sunt deja familiarizați cu serviciile web HTTP. Deci, de ce să nu lăsați dispozitivele IoT să se conecteze la serviciile web? Dispozitivele își pot trimite datele sub formă de solicitări HTTP și pot primi actualizări de la sistem sub formă de răspunsuri HTTP. Acest model de cerere și răspuns are câteva limitări serioase:


HTTP este un protocol de sincronizare. Clientul trebuie să aștepte ca serverul să răspundă. browserele web au această cerință, dar cu prețul scalabilității. În spațiul IoT, un număr mare de dispozitive și o rețea care este probabil să nu fie de încredere sau să aibă o latență mare fac comunicarea sincronă problematică. Protocoalele de mesagerie asincrone sunt mai potrivite pentru aplicațiile IoT. Senzorii trimit citiri și lasă rețeaua să determine cea mai bună rută și timp pentru a le livra dispozitivelor și serviciilor țintă.


HTTP este unidirecțional. Clientul trebuie să inițieze conexiunea. În aplicațiile IoT, dispozitivul sau senzorul este de obicei clientul, ceea ce înseamnă că nu pot primi pasiv comenzi din rețea.


HTTP este un protocol unu-la-. Clientul face o cerere și serverul răspunde. Livrarea mesajelor către toate dispozitivele din rețea nu este doar dificilă, ci și costisitoare, ceea ce este un caz comun de utilizare în aplicațiile IoT.


HTTP este un protocol greu cu multe antete și reguli. Nu este potrivit pentru rețele constrânse.


Din aceste motive, cele mai multe-sisteme scalabile de înaltă performanță folosesc magistrale de mesaje asincrone pentru schimbul intern de date în loc de servicii web.


Modelul de abonare/publicare


Interesant este că acest server de protocol MQTT este de fapt un design mult mai simplu decât un server web, deoarece urmărește să fie un serviciu eficient. mecanismul prin care MQTT trimite și primește în primul rând mesaje este oarecum similar cu relația dintre site-ul nostru public și dumneavoastră, cititorii.


În lumea reală, tu și eu suntem asemănători cu un dispozitiv MQTT conectat la un server unificat, te abonezi la noi din interes sau dintr-un fel de afecțiune pentru numărul nostru public, iar când în fiecare zi trimit un mesaj text, vei apărea pe telefonul mobil în care am transmis mesajul, acest proces, vei obține informațiile mele într-un mod cunoscut sub numele de În acest proces, modul în care obțineți informațiile mele și publicarea acestui număr se numește „abonamentul meu” la acest număr public. Și toată lumea poate la articolul meu, puteți să vă simțiți liber să-mi lăsați un mesaj, acest comportament este comportamentul de „publicare” al tuturor, iar eu țin mereu în fața unui impuls pentru a vedea mesajul tuturor, acesta este un fel de comportament „abonament”. În acest proces, toate informațiile externe nu au nimic de-a face cu noi, pur și simplu comunicăm cu fluxul de informații în două direcții. Mecanismul de mesagerie din MQTT se bazează și pe modelul Publicare - Subscribe. Mecanismul de livrare a mesajelor MQTT se bazează, de asemenea, pe modelul „Publicare” - „Abonare”.


Pașii specifici MQTT sunt:


Pasul 1:Utilizați primul pentru a obține un server MQTT, apoi creați un nou produs de comunicare MQTT.


Pasul 2:Apoi mergeți să vă conectați la acest server, doi parametri importanți pentru a vă conecta la server sunt numărul gazdei (nume de domeniu sau adresa IP) și numărul portului.


Pasul 3:Dacă utilizați o platformă de server cloud-terță parte, poate fi necesar să vă conectați la acest dispozitiv utilizând ID-ul produsului și informațiile de autentificare, ambele pot fi găsite în backend-ul Device Cloud.


Odată terminați acești trei pași, vă puteți abona sau posta mesaje la subiectele corespunzătoare.


Voi întocmi un document pentru a vă arăta cum să „curvă” o platformă de acces deschis în cloud pentru dispozitive China Mobile.


Acești trei pași se aplică atât dezvoltării de aplicații software, cât și dezvoltării microcontrolerelor. În dezvoltarea microcontrolerului, dacă utilizați comenzi AT și comunicații cu modulul WIFI extern, atunci modulul general poate veni cu comenzi AT + MQTT, care este cea mai bună modalitate de a reduce foarte mult presiunea asupra microcontrolerului. Sau puteți accesa direct datele stratului de transport TCP/IP și apoi analiza MQTT, ceea ce necesită ca utilizatorul să aibă o înțelegere profundă a protocolului MQTT pentru a analiza și propriile date Json, așa că, în general, atunci când faceți dispozitive încorporate, este recomandat să folosim direct modulul gata-realizat cu protocolul MQTT, analizarea directă a comenzii AT este mai convenabilă.


Studiu de caz:


Control de la distanță al luminilor și obținerea temperaturii actuale a camerei.


În acest caz, este de fapt una dintre cele mai simple aplicații ale MQTT. În primul rând, placa de control încorporată în cameră este conectată în principal la server prin WIFI, care poate controla întrerupătorul de lumină și, de asemenea, poate colecta temperatura. Dispozitivul final aflat la distanță este un telefon mobil.


Pentru a menține comunicarea, mai întâi trebuie să fie conectate la același server MQTT.


Informațiile despre temperatură de pe partea dispozitivului sunt colectate de dispozitiv, așa că trebuie să publice datele colectate la subiectul „Temperatura”, în timp ce telefonul mobil primește informații despre temperatură, așa că trebuie să se aboneze la subiectul „Temperatura”. Odată ce dispozitivul trimite informațiile despre temperatură către „subiectul de temperatură”, subiectul va fi primit de telefonul mobil.


Controlul luminii de pe partea dispozitivului este executat de dispozitiv, deci trebuie să se aboneze la subiectul „comutator de lumină”, în timp ce telefonul mobil controlează comutatorul de lumină, deci trebuie să publice informații de control la acest subiect „comutator de lumină”. Odată ce telefonul mobil trimite un mesaj de lumină aprinsă la subiectul „lumină aprinsă”, subiectul va fi recepționat de terminal, iar apoi comanda de lumină aprinsă va fi executată.

Trimite anchetă

whatsapp

Telefon

E-mail

Anchetă