Stwórz aplikację obsługującą protokół MQTT

Wraz z przyspieszeniem wdrażania technologii IoT, programiści coraz częściej muszą łączyć dużą liczbę rozproszonych urządzeń w sieciach o niestabilnym połączeniu lub ograniczonym pasie przepustowości. W takich środowiskach, wybór protokołu komunikacyjnego jest kluczowy. MQTT stał się powszechnie stosowanym standardem dla systemów IoT i systemów opartych na zdarzeniach, ze względu na jego niewielki rozmiar, niskie opóźnienia i efektywny model komunikacji oparty na publikacji i subskrypcji.

MQTT jest na tyle elastyczny, że pozwala na realizację projektów automatyzacji, od małych demonstracji koncepcyjnych, po duże, produkcyjne wdrożenia. Umożliwia wymianę danych w czasie rzeczywistym między urządzeniami, jednocześnie minimalizując obciążenie sieci, co czyni go idealnym rozwiązaniem dla takich zastosowań, jak sieci czujników, automatyzacja przemysłowa i zdalne monitorowanie.

Altova MobileTogether oferuje natywne wsparcie dla tworzenia aplikacji wykorzystujących protokół MQTT na platformy iOS, Android i Windows. Dzięki podejściu opartego na minimalnej ilości kodu i szybkiego tworzenia aplikacji mobilnych (RMAD), programiści mogą szybko zintegrować komunikację MQTT w aplikacjach działających na różnych platformach, zachowując jednocześnie kontrolę nad logiką aplikacji i zarządzaniem danymi.

Sprawdźmy, jak to działa.

Protokół komunikacyjny MQTT

Standardowy protokół komunikacyjny OASIS, MQTT (Message Queuing Telemetry Transport), umożliwia przesyłanie danych telemetrycznych między urządzeniami w sytuacjach, gdy występuje ograniczona przepustowość, wysokie opóźnienia lub niestabilne połączenie sieciowe. Ten lekki protokół wykorzystuje architekturę opartą na modelu "publikacja/subskrypcja", zaprojektowaną z myślą o niezawodnej komunikacji między urządzeniami, co czyni go idealnym rozwiązaniem dla zastosowań w obszarze Internetu Rzeczy (IoT).

Model komunikacji MQTT, oparty na decentralizacji, umożliwia urządzeniom publikowanie informacji do centralnego brokera oraz subskrybowanie tematów, które ich interesują. Broker filtruje wiadomości na podstawie ich tematu. Klient może subskrybować jeden lub więcej tematów i otrzymywać odpowiednie wiadomości od brokera. Klient może zarówno publikować, jak i subskrybować tematy.

Dzięki swojej lekkości, protokół MQTT zapewnia minimalne zużycie pasma i niskie opóźnienia, co czyni go dobrym wyborem dla środowisk o ograniczonych zasobach, takich jak te, w których działają urządzenia IoT o ograniczonej mocy obliczeniowej i przepustowości. Jednocześnie, MQTT jest wysoce skalowalny i może obsługiwać połączenia między milionami urządzeń inteligentnych.

MQTT jest wykorzystywany w różnych zastosowaniach, w tym w systemach inteligentnych domów inteligentne biuro, i systemy inteligentnych miast. Obecnie, ten protokół jest szczególnie ważny w automatyzacji przemysłowej.

Automatyzacja Internetu Rzeczy w przemyśle

Aplikacje Internetu Rzeczy Przemysłowych (IIoT), wykorzystujące protokół MQTT do komunikacji między urządzeniami, znajdują zastosowanie w różnych branżach, takich jak produkcja, opieka zdrowotna, energetyka oraz przemysł naftowy i gazowy. W tych systemach, MQTT jest często używany do przesyłania danych telemetrycznych i zdarzeń między sensorami, urządzeniami brzegowymi i usługami backendowymi, zapewniając niezawodną i wydajną komunikację w środowiskach, w których warunki sieci i możliwości urządzeń mogą się znacząco różnić.

Na przykład, w inteligentnej fabryce wykorzystującej protokół MQTT, czujniki umieszczone na linii produkcyjnej przesyłają w czasie rzeczywistym dane dotyczące stanu maszyn i wskaźników jakości do centralnego serwera. Dzięki aplikacji, która subskrybuje te dane, menedżerowie zakładu mogą podejmować natychmiastowe decyzje, optymalizować procesy i zwiększać ogólną efektywność.

Oto niektóre z najczęstszych korzyści wynikających z wykorzystania protokołu MQTT w automatyzacji przemysłowej:

MQTT Korzyści dla IIoT (Przemysłowego Internetu Rzeczy)
Efektywna i lekka komunikacja Lekka konstrukcja minimalizuje obciążenie protokołu, co czyni go idealnym rozwiązaniem dla dużej liczby rozproszonych urządzeń przemysłowych.
Monitorowanie w czasie rzeczywistym, alerty i kontrola Model publikacji/subskrypcji umożliwia przesyłanie danych z czujników i statusu urządzeń w czasie rzeczywistym, co zapewnia responsywne monitorowanie i kontrolę.
Skalowalność dla dużych wdrożeń Skaluje się efektywnie wraz ze wzrostem liczby urządzeń, zapewniając niezawodną komunikację w dużych środowiskach IIoT.
Komunikacja między urządzeniami (M2M) Umożliwia asynchroniczną, autonomiczną wymianę danych między urządzeniami, wykorzystując model publikacji/subskrypcji.
Zdalny monitoring i konserwacja Aktualizacje statusu w czasie rzeczywistym wspierają zdalne diagnozowanie i konserwację, pomagając zmniejszyć przestoje.
Efektywność energetyczna Niskie zużycie pasma i minimalne obciążenie pomagają zmniejszyć zużycie energii w urządzeniach o ograniczonych zasobach lub zasilanych bateryjnie.
Interoperacyjność i standaryzacja Jako protokół oparty na standardach, MQTT wspiera interoperacyjność między urządzeniami różnych producentów.

Oczywiście, te korzyści mają zastosowanie również w sytuacjach spoza sektora przemysłowego, takich jak inteligentne systemy biurowe i inteligentne miasta.

Firmy potrzebują łatwych w obsłudze aplikacji klienckich, które umożliwiają zarządzanie i monitorowanie automatyzacji realizowanej za pomocą protokołu MQTT. Właśnie tutaj pojawia się Altova MobileTogether.

Jak tworzyć aplikacje wykorzystujące protokół MQTT

Altova MobileTogether to rozwiązanie o niskim poziomie kodowania i atrakcyjnej cenie, przeznaczone do tworzenia aplikacji obsługujących protokół MQTT, służących do monitorowania i zarządzania komunikacją między urządzeniami inteligentnymi. Niezależnie od tego, czy potrzebujesz stworzyć panel do zdalnego monitorowania, czy klienta do zarządzania operacjami w czasie rzeczywistym, MobileTogether pozwala na szybkie wdrożenie rozwiązania MQTT.

Dzięki MobileTogether, tworzysz aplikację raz, a następnie generujesz wersje dla urządzeń iOS, Android i Windows, a także klienta działającego w przeglądarce HTML5 (tworzysz raz, wdrażasz wszędzie).

Oto prosty przykład aplikacji, którą stworzyliśmy, aby zademonstrować tę funkcjonalność w scenariuszu automatyzacji inteligentnego domu:

Wsparcie dla protokołu MQTT w MobileTogether umożliwia aplikacjom dołączanie do sieci MQTT jako nadawcy, odbiorcy lub obu tych ról jednocześnie.

Środowisko programistyczne wykorzystuje połączenie intuicyjnego interfejsu użytkownika opartego na przeciąganiu i upuszczaniu, potężnego języka wizualnego programowania Action Tree do obsługi zdarzeń oraz standaryzowanego programowania funkcyjnego do wyboru i przetwarzania danych. To unikalne, oparte na minimalnej ilości kodu podejście, ułatwia definiowanie i testowanie różnych aspektów aplikacji wykorzystującej protokół MQTT:

  • Zaimplementuj rozwiązanie, które może subskrybować i anulować subskrypcje tematów, publikować wiadomości oraz łączyć się i rozłączać z brokerem

  • Integruj zaawansowane wykresy, diagramy i pulpity nawigacyjne

  • Określ działania, które mają być wykonane, gdy rozwiązanie otrzyma wiadomość MQTT

  • Skonfiguruj usługę MQTT

  • Symuluj i debuguj zachowanie aplikacji podczas procesu tworzenia, wykorzystując nagrane, rzeczywiste dane wejściowe

Kompleksowe i łatwe w implementacji wsparcie dla protokołu MQTT w MobileTogether daje programistom elastyczność w tworzeniu szerokiej gamy aplikacji do automatyzacji przemysłowej oraz innych systemów inteligentnych urządzeń.

Rozpoczęcie tworzenia pierwszej aplikacji obsługującej protokół MQTT w platformie MobileTogether jest proste. Platforma ta zawiera obszerną dokumentację dotyczącą tworzenia aplikacji wykorzystujących MQTT, dostępną w pliku pomocy, który można uzyskać po pobraniu bezpłatnego programu MobileTogether Designer.