Protokół MQTT – jak łatwo zbudować rozproszony system telemetrii?
Jesteś inżynierem systemów telemetrii i rozproszonych systemów sterowania? Chcesz monitorować parametry pracy swoich urządzeń rozsianych po całym kraju?
Jesteś inżynierem systemów telemetrii i rozproszonych systemów sterowania? Chcesz monitorować parametry pracy swoich urządzeń rozsianych po całym kraju?
Rozbudowa sieci o kolejne urządzenia przy wykorzystaniu starych protokołów komunikacyjnych jest dla Ciebie zbyt czasochłonna? Poznaj protokół komunikacyjny MQTT.
Cechy te mogą się okazać przydatne również w szerszym zastosowaniu – gdy mówimy o konieczności połączenia ze sobą rozległej sieci obiektów, czy urządzeń, rozproszonej na terenie nawet całego kraju. Okazuje się, że cechy protokołu MQTT mogą być bardzo przydatne również w takim scenariuszu, znacząco ułatwiając przygotowanie oraz późniejsze utrzymanie takiej sieci, dając możliwość lepszego zarządzania urządzeń i systemów, które w niej pracują, co może przełożyć się na poprawę efektywności ich działania, a tym samym zmniejszenie kosztów.
MQTT – zasada działania
Message Queue Telemetry Transport (MQTT) – to protokół komunikacyjny oparty o wzorzec publikacja/subskrypcja. To prosty, lekki protokół transmisji danych, przeznaczony do komunikacji pomiędzy urządzeniami niewymagającymi dużej przepustowości. Poprzez ograniczenie prędkości transmisji, protokół MQTT zapewnia bardzo wysoką niezawodność transmisji i idealnie sprawdza się przy połączeniach #maszyna -maszyna, w przemysłowym Internecie rzeczy #IIoT i w urządzeniach mobilnych, ale sprawdzi się również w tradycyjnych systemach telemetrycznych – w zastosowaniach przemysłowych.
Bezpieczeństwo komunikacji w MQTT realizowane jest na poziomie szyfrowania protokołu w oparciu o SSL oraz dostępu do brokera w oparciu o system autentykacji klientów.
Klientem MQTT może być dowolne urządzenie podłączone do sieci, które ma zaimplementowany stos TCP/IP i protokół MQTT. Klient MQTT może jednocześnie pełnić jednocześnie funkcję subscribera i publishera, dzięki czemu komunikacja ma charakter dwukierunkowy.
Klienci nie komunikują się ze sobą bezpośrednio, a w oparciu o element pośredniczący, którym jest broker. Broker pełni rolę serwera, z którym łączą się klienci, aby za jego pośrednictwem publikować informacje. Jego zadaniem jest odbieranie wiadomości od klientów publikujących i rozsyłanie jej do odpowiednich klientów subskrybujących. Taki model pozwala na udostępnianie danych innym klientom bez znajomości ich adresu IP. Dzięki temu możliwa jest wymiana danych pomiędzy wieloma klientami w tym samym czasie.
W jakich zastosowaniach sprawdzi się protokół MQTT?
1.Komunikacja M2M – pomiędzy maszynami i urządzeniami, które muszą wymieniać pomiędzy sobą dane produkcyjne i statusowe podczas normalnej pracy. Bezprzewodowa komunikacja pozwala wykorzystać MQTT w maszynach mobilnych bez obawy o jakość i niezawodność połączenia;
2. Monitorowanie urządzeń wod-kan – przepompownie ścieków to bardzo rozproszone obiekty, które muszą być na bieżąco monitorowane, muszą posiadać możliwość zdalnego sterowania oraz warto, aby mogły wymieniać informacje między sobą. W takim przypadku MQTT uruchomiony w oparciu o modemy GSM jest bardzo dobrym wyborem, gwarantującym szybką i niezawodną komunikację, ograniczając koszty transmisji.
3. Monitoring węzłów cieplnych i magistral przesyłowych – standard MQTT świetnie sprawdza się w systemach, w których konieczne jest monitorowanie magistral przesyłowych na całej ich długości. Szybka komunikacja pomiędzy kolejnymi punktami pomiarowymi pozwala bardzo precyzyjnie i szybko wykryć nieszczelności oraz awarie, ograniczając przy tym koszty transmisji;
4. BMS (Building Management Systems) – to kolejne idealne miejsce do transmisji w oparciu o MQTT. Ilość urządzeń z wbudowanym portem Ethernet w ramach tylko jednego budynku może być bardzo duża, a ilość przesyłanych informacji – niewielka (czujnik temperatury, wilgotności, oświetlenie, liczniki energii). MQTT pozwala spięć je wszystkie w jedną sieć, wizualizować ich pracę oraz udostępniać te dane do zawietrznych systemów monitoringu, nadzoru i bezpieczeństwa.
Jak uruchomić komunikację po MQTT w 5 krokach? To proste!
Krok 1 – Zainstaluj na komputerze przeglądarkę Google Chrome (jeśli nie była zainstalowana wcześniej)
Krok 2 – Dodaj do przeglądarki aplikację MQTTLens
W sieci istniejej wiele darmowych aplikacji pozwalających na proste testy protokołu MQTT. Jedną z nich jest aplikacja MQTTLens, instalowana jako wtyczka do przeglądarki Google Chrome. Znajdziemy ją, wyszukując w przeglądarce hasło MQTTLens.
Krok 3 – Uruchom aplikację MQTTLens
Po zainstalowaniu aplikacji, MQTTLens będzie można uruchomić poprzez ponowne wyszukanie jej po nazwie – w przeglądarce Google Chrome, lub po prostu w aplikacjach na komputerze (Menu START -> MQTTLens).
Krok 4 – Dodaj do połączeń broker ASTOR
Po uruchomieniu aplikacji, w lewej części okna można dodać broker, do którego będzie się łączyć MQTTLens. W obszarze CONNECTIONS klikamy znak „+”, otwierając okno Add a new Connection. Dane brokera firmy ASTOR to:
- Hostname: mqtt.astor.com.pl
- Port: 1883
- Connection name: można wpisać dowolną nazwę
- Username oraz Password: pozostawiamy puste
Po uzupełnieniu tych informacji klikamy w dolnej części okna CREATE CONNECTION
Krok 5 – dodaj subskrypcję tematu ASTORBMS/ActivePower
W ramach brokera, który został uruchomiony, publikowana jest informacja o mocy chwilowej w kW, jaka jest pobierana z przyłącza głównego budynku biurowego firmy ASTOR. Można ją odczytać subskrybując temat ASTORBMS/ActivePower. Aby to zrobić, należy w polu Subscribe wpisać nazwę tematu i należy kliknąć przycisk SUBSCRIBE. Po dodaniu subskrypcji, w dolnej części okna powinny zacząć pojawiać się kolejne wartości zmiennej, publikowanej w interwale około 1 sekundy.
Odczytany parametr jest wartością chwilową zużycia energii elektrycznej w budynku Centrali firmy ASTOR.