Do Projektu iAutomatyka dołączyli:

AKADEMIA PLC #23 – Protokół MQTT w środowisku UniLogic

153 wyświetleń, autor: Elmark Automatyka.

Protokół MQTT to ultralekki rodzaj transmisji danych, który możemy wykorzystać w środowisku UniLogic.

MQTT (Message Queueing Telemetry Transport) jest przeznaczone do transmisji o niewielkiej przepustowości. Ograniczenie prędkości pozwala na zwiększenie niezawodności. Obecnie wyżej wymieniony protokół znajduje zastosowanie w aplikacjach typu maszyna-maszyna i IoT. Takie rozwiązanie pozwala na utrzymanie komunikacji bez dużego zużycia energii, która jest istotne w przypadku małych urządzeń bezprzewodowych (tak jak w IoT oraz IIoT).

Zasada działania MQTT

MQTT działa w oparciu o trzy podmioty: Publisher, Broker, Subscriber. Unilogic wspiera wszystkie te funkcje, w związku z tym, sterowniki UniStream mogą w pełni wykorzystać ten protokół.

  • Publisher (publicysta) – wysyła wiadomości z przypisanym tematem do odpowiedniego brokera.
  • Broker (pośrednik) – akceptuje i odbiera wiadomość, przypisuje do tematu, a następnie wysyła do Subscribera.
  • Subscriber (odbiorca) – „śledzi” dany temat, w rezultacie otrzymuje wszystkie wiadomości z nim związane.

Protokół MQTT w środowisku UniLogic

Konfiguracje MQTT rozpoczynamy od wyboru zakładki MQTT z drzewa projektu (PLC Communication > Protocols > MQTT).

Drzewo Projektu

Teraz możemy skonfigurować zarówno Subscribera jak i Publishera. Gdy wybierzemy któryś z nich, UniLogic stworzy automatycznie specjalną strukturę.

MQTT General Struct

  • MQTT Process Status – (UNIT32) – wyświetla status połączenia MQTT, może przybierać jedną z trzech wartości: 0 – inicjalizacja w trakcie, 1 – MQTT w trakcie pracy, oraz 2 – MQTT w trybie pauzy.
  • Number of Brokers – (UNIT16) – wartość oznacza liczbę skonfigurowanych brokerów w sieci.
  • (…) of Subscriptions – (UNIT16) – liczba skonfigurowanych subskrybentów w sieci.
  • (…) Publications – (UNIT16) – liczba skonfigurowanych publikacji

MQTT Statics Struct

Struktura ta ma na celu monitorowanie liczby publikacji. Zapisuje liczbę wysłanych(Send Publications), znanych (Acknowledged Publications), odebranych (Received Publications) oraz porzuconych (Dropped) wiadomości. W rezultacie mamy podgląd na stan komunikacji.

Konfiguracja Połączenia Brokera

Aby umożliwić inicjacje prokotołu MQTT w programie UniLogic, musimy najpierw skonfigurować połączenie z Brokerem. Wybieramy w drzewie projektu Broker Connections i klikamy znanego nam zielonego plusa.

MQTT Broker Connection
  • Name – nazwa przypisana Brokerowi, nie istotna w zapisie protokołu
  • ID – indywidualny numer Brokera, nie ma wpływu oraz znaczenia dla protokołu, wykorzystywany tylko w LD.
  • Mode – tryb adresowania (IP lub .url).
  • Port – domyślnie 1883, jeżeli specyfika aplikacji tego wymaga, możliwa jest zmiana.
  • Clean Session – gdy 0, w przypadku utracenia połączenia z subskrybentem, Broker zapisuje na bieżąco wiadomości, które wyśle po ponownym połączeniu.
  • Client ID – możemy tutaj przypisać konkretne ID, które mogą się połączyć z brokerem
  • Hasło – 8-128 znaków

Tak wygląda podstawowa konfiguracja Brokera protokołu MQTT w środowisku UniLogic.

Struktura Podłączenia Brokera

Po dodaniu Brokera, automatycznie stworzona zostanie struktura.

  • Connection Status – (BIT) – 0 połączony, 1 niepołączony.
  • Session Present – (BIT) – 1 gdy odbywa się sesja.
  • Return Code – (UNIT8) – zwraca nam kod statusu pracy.

Konfiguracja Połączenia Subskrybenta

Konfiguracja subskrybenta pozwala na ustalenie, jakie tematy wiadomości będzie odbierał UniStream. Podobnie jak w przypadku Brokera, musimy zacząć od dodania konfiguracji subskrybenta.

MQTT konfiguracja subskrybenta 
  • Name – nazwa przypisana subskrybentowi, nie istotna w zapisie protokołu.
  • ID – indywidualny numer subskrybenta, nie ma wpływu oraz znaczenia dla protokołu, wykorzystywany tylko w LD.
  • Broker – przypisanie nazwy brokera, z którym ma się komunikować subskrybent.
  • Topic – temat, który subskrybujemy.
  • Data – tag, do którego wiadomość jest zastosowana.
  • Quality of Service – opisuje liczbę przyjmowanych retransmisji.
  • Buffered Mode – załączenie powoduje zapis kolejki otrzymywanych wiadomości
  • Subscribe at Boot Time – załączenie powoduje automatyczną subskrypcje tematu po włączeniu urządzenia

Struktura Subscription

Skład automatyczne generowanej struktury:

  • Subscribed Status – (BIT) – 0 połączony, 1 niepołączony.
  • Message Received (Received bit) – załącza się za każdym razem, gdy przychodzi nowa wiadomość.
  • Queue Full – (BIT) – załącza się gdy kolejka wiadomości jest pełna
  • Last Message in Topic – (String) – przechowuje ostatnią wiadomość
  • Last Message Received Time – zapis daty i godziny ostatniej wiadomości

Konfiguracja Połączenia Publication

Zajmiemy się teraz konfiguracją strony publikującej w protokole MQTT. Podobne do poprzednich formuł, wybieramy z podgałęzi opcje Publication Configuration.

MQTT konfiguracja Publication
  • Name – nazwa przypisana, nie istotna w zapisie protokołu.
  • ID – indywidualny numer Publication, nie ma wpływu oraz znaczenia dla protokołu, wykorzystywany tylko w LD.
  • Broker – przypisanie nazwy brokera z którym ma się komunikować publicysta.
  • Topic – temat, który publikujemy.
  • Data – tag, do którego wiadomość jest zastosowana.
  • Quality of Service – opisuje liczbę przyjmowanych retransmisji.
  • Retain Flag – jeżeli jest załączone, w wypadku gdy subskrybent jest offline, wiadomość zostanie wysłana gdy powróci do online.
  • Format – format wysyłanych danych
  • Every Period – częstotliwość wysyłania publikacji
  • Broker Received – załącza się gdy Broker otrzyma wiadomość

Publikacja nie tworzy struktury po dodaniu

Funkcje MQTT w języku LD

Obsługa protokołu MQTT odbywa się głównie za pośrednictwem języka Ladder. Poniżej przedstawiamy bloki funkcyjne związane z tym protokołem.

MQTT Ladder

Teraz przyjrzymy się najważniejszym funkcjom możliwym do implementacji w języku Ladder.

Subskrypcja Tematów (Topic Subscribe)

Bloki funkcyjne związane z subskrypcją tematów:
Subscribe to Topic

Blok służy do subskrybcji nowego tematu. W terminalu A wpisujemy ID Publikacji do której chcemy się podłączyć, B zwraca nam status subskrypcji.

Subscribe All

Blok pozawala nam na jednoczesną subskrypcje wszystkich tematów danego Brokera. Terminale złącz działają identycznie jak w wyżej wymienionym.
Unsubscribe Topic

Podobnie do bloku Subscribe Topic, do złącza A trafia ID Tematu, a zwracany jest status. Pozwala na zakończenie subskrypcji danego tematu.

Łączność z Brokerem (Broker Connection)

Bloki LD związane z łącznością z Brokerem:

Connect Broker

Blok umożliwia podłączenie Publishera/Subscribera do określonego Brokera. Terminal A służy do podłączenia ID brokera.

Disconnect Broker

W przeciwieństwie do wyżej zaprezentowanego bloku, ten pozwala na odłączenie od brokera wskazanego na wejściu A.

Wcześniej w artykule została opisana procedura konfiguracji połączenia Brokera, Subskrybenta i Publicysty. Teraz opiszemy proces wgrywania wewnętrznych konfiguracji tych podmiotów.

Get/Set Broker Configuration i MQTT Broker Configuration

Ta funkcja wymaga od nas zastosowania specjalnego typu danych: MQTT Broker Configuration. W wyniku zastosowania tej struktury, możemy pobierać i wgrywać konfiguracje brokerów.

Struktura danych MQTT Broker Configuration składa się z najstępujących elementów:

  • IP /URL – wprowadzamy tutaj adres Brokera, któremu chcemy wgrać konfiguracje (adres IP lub .url, w zależności który podaliśmy przy konfiguracji połączenia brokera)
  • Port – port do którego został podpięty Broker
  • Clean Session – zwraca dane z konfiguracji podłaczenia
  • Client ID – umożliwia wprowadzenie ID, które będzie mogło się podłączyć

Set/Set Broker Configuration
Pozwala na wgranie/pobranie stworzonej przez nas struktury do/z Brokera. Do złącza Apodpinamy adres Brokera na którym będziemy pracować, do złącza B strukturę konfiguracji (w naszym przypadku Broker42) którą chcemy wgrać (patrz zdjęcie wyżej).

Get/Set Publication Configuration i MQTT Subscription Configuration.

Podobnie jak w przypadku konfiguracji Brokera, struktura konfiguracyjna publicysty jest dedykowana: MQTT Subscription Configuration. Funkcjonalność terminali bloku jest identyczna jak w MQTT Broker Configuration, jednak struktura konfiguracji się różni:

  • Topic – temat publikacji
  • Quality of Service – zawiera informacje zawarte w pliku QoS
  • Retained Flag – zwraca BIT gdy kolejka jest pełna

Get/Set Subscription Configuration i MQTT Subscription Configuration

Konfiguracja struktury subskrypcji nie powinna nam sprawić problemów, ponieważ wszystkie elementy są analogiczne do MQTT Subscription Configuration.

Podsumowanie

Przedstawione dzisiaj funkcje nie są najprostsze do konfiguracji, ponieważ wymaga od użytkownika konfiguracji wielu parametrów. Protokół MQTT w środowisku UniLogic jest z pewnością ciekawą opcją transmisji, która nie wymaga zewnętrznych rozwiązań. Podsumowując, warto znać podstawową funkcionalność MQTT.

Cały kurs ukazał się pierwotnie na blogu Elmark Sterowniki. Kurs jest również dostępy na na portalu automatyka.pl w zakładce Programowanie PLC.

Zachęcamy do zapoznania się z pozostałymi częściami kursu Akademi PLC Elmark, dzięki którym można poznać inne istotne cechy i funkcje sterowników Unitronics:

  1. Sterowniki Unitronics serii UniStream
  2. Uruchomienie sterownika UniStream i instalacja UniLogic
  3. Konfiguracja sprzętowa sterownika Unitronics UniStream
  4. Typy danych dostępnych w sterownikach UniStream
  5. Tagi i struktury w programie UniLogic
  6. Podstawy tworzenia wizualizacji w UniLogic
  7. UniLogic prosty program przycisk + lampka
  8. Timery dostępne w UniLogic
  9. RTC w sterownikach Unistream
  10. String, czyli tekstowy typ danych
  11. DataSampling i archiwizacja danych w UniLogic
  12. I/O w sterownikach PLC UniStream
  13. Alarmy wbudowane w programie UniLogic
  14. UAC, czyli Zarządzanie uprawnieniami użytkowników
  15. Dostęp VNC do sterownika UniStream
  16. Tabele Danych w programie UniLogic
  17. Komunikacja EtherNet/IP
  18. Komunikacja ModBus RTU w UniStream
  19. Regulator PID w sterownikach UniStream
  20. Komunikacja CAN, czyli szeregowa magistrala komunikacyjna
  21. Konfiguracja Falowników w UniLogic
  22. Komunikacja za pomocą protokołu FTP
  23. Protokół MQTT w środowisku UniLogic
  24. Konfiguracja modemu 3G, wysyłanie/odbieranie SMS
  25. Bazy SQL w połączeniu z UniLogic

Wpisy wykorzystujące nabytą wiedzę w zaawansowany sposób

  1. UniStream współpracuje z bazami SQL.
  2. Sterownik PLC integruje się z systemem SCADA.
  3. UniStream działa jako serwer OPC UA.

Newsletter

Zapisz się i jako pierwszy otrzymuj nowości!

Zapoznałem się i akceptuję klauzulę informacyjną.
2 stycznia 2020 / Kategoria: ,
  • Autor: Elmark Automatyka
  • Nasza Firma została założona w roku 1983. Od roku 1998 działamy jako spółka z ograniczoną odpowiedzialnością pod nazwą Elmark Automatyka. Przez kilka pierwszych lat zajmowaliśmy się projektowaniem i produkcją modułowych sterowników mikroprocesorowych "MIKROSTER", opartych na elementach rodziny Intel-8080 i Z-80. Nasze produkty wyróżniały się na rynku wysoką jakością sprzętu i dokumentacji oraz niezawodnością działania. W roku 1989 rozpoczęliśmy dystrybucję na terenie Polski sprzętu firmy Advantech, a następnie wielu innych wiodących producentów elementów i systemów automatyki przemysłowej. Od kilkunastu lat prowadzimy szkolenia dotyczące sprzętu i oprogramowania będącego w naszej ofercie. Wszystkim Klientom dokonującym u nas zakupów zapewniamy bezpłatne doradztwo przed złożeniem zamówienia i profesjonalne wsparcie techniczne po dostarczeniu sprzętu. Posiadamy własny dział serwisu wyposażony w nowoczesne urządzenia diagnostyczne oraz sprzęt do montażu SMD i BGA. Dużą część napraw gwarancyjnych i pogwarancyjnych wykonujemy w naszej Firmie, bez konieczności odsyłania sprzętu do producenta. Pracujemy w trzech lokalizacjach. W dzielnicy Wesoła na przedmieściach Warszawy znajduje się nasza siedziba główna, serwis i montownia komputerów przemysłowych. Przy ul. Bukowińskiej na Mokotowie działa Centrum Szkoleniowe, a na terenie Biznes Parku „City Point” na warszawskim Targówku, mamy nowoczesny magazyn. Łączna powierzchnia naszych biur i magazynów wynosi około 1.800 m. kw. Zatrudniamy 60 wysoko wykwalifikowanych osób. Dzięki naszym Klientom, udaje się nam stale zwiększać nasz potencjał i zakres działalności. Wartość sprzedaży produktów i usług w roku 2018 wyniosła 81 milionów zł. Zrealizowaliśmy ponad 20.000 zamówień. Pamiętamy o tym, że jedynym sposobem na osiągnięcie zysku i rozwoju Firmy jest zadowolenie naszych Klientów.
  • Profil Autora
  • https://www.elmark.com.pl

Reklama

NAJNOWSZE PUBLIKACJE OD UŻYTKOWNIKÓW I FIRM

>KLIKNIJ<

Zostań Mistrzem Automatyki 2020! Powrót Ligi Mistrzów Automatyki WAGO

Zostań Mistrzem Automatyki 2020! Powrót Ligi Mistrzów Automatyki WAGO

>KLIKNIJ<

EVO Signal jako nowe urządzenia sygnalizacyjne firmy WERMA

EVO Signal jako nowe urządzenia sygnalizacyjne firmy WERMA

>KLIKNIJ<

SICK IO-Link Master Starter Kit

SICK IO-Link Master Starter Kit

>KLIKNIJ<

Elektrobarometr – Oddajemy głos Elektroinstalatorom

Elektrobarometr – Oddajemy głos Elektroinstalatorom

>KLIKNIJ<

Bez miniaturowych silników międzynarodowa logistyka byłaby bez szans

Bez miniaturowych silników międzynarodowa logistyka byłaby bez szans

>KLIKNIJ<

ctrIX AUTOMATION: platforma gotowa do współpracy z aplikacjami

ctrIX AUTOMATION: platforma gotowa do współpracy z aplikacjami

>KLIKNIJ<

RFID i systemy identyfikacji optycznej 1D i 2D – Live z firmą Pepperl+Fuchs

RFID i systemy identyfikacji optycznej 1D i 2D – Live z firmą Pepperl+Fuchs

>KLIKNIJ<

EDUKACJA I PRZEMYSŁ – AUTOMATYKA I ROBOTYKA – FATIA GROUP NA RYNKU POLSKIM I MIĘDZYNARODOWYM

EDUKACJA I PRZEMYSŁ – AUTOMATYKA I ROBOTYKA – FATIA GROUP NA RYNKU POLSKIM I MIĘDZYNARODOWYM

>KLIKNIJ<

CLEANBOXY – alternatywa dla konwencjonalnych cleanroomów?

CLEANBOXY – alternatywa dla konwencjonalnych cleanroomów?

>KLIKNIJ<

Wyzwania w produkcji żywności i napojów

Wyzwania w produkcji żywności i napojów

>KLIKNIJ<

Jak powstają chipsy Lay’s? – Fabryki w Polsce

Jak powstają chipsy Lay’s? – Fabryki w Polsce

>KLIKNIJ<

MOSAIC – modułowy sterownik bezpieczeństwa

MOSAIC – modułowy sterownik bezpieczeństwa

>KLIKNIJ<

ctrlX AUTOMATION: Aplikacje w świecie automatyzacji

ctrlX AUTOMATION: Aplikacje w świecie automatyzacji

>KLIKNIJ<

Coboty UR10e zapewniają maksymalne wykorzystanie parku maszynowego Bernacki

Coboty UR10e zapewniają maksymalne wykorzystanie parku maszynowego Bernacki

>KLIKNIJ<

Finder na Energetab 2020 – sterowanie głosowe, miecz świetlny i nagroda

Finder na Energetab 2020 – sterowanie głosowe, miecz świetlny i nagroda

>KLIKNIJ<

Dobór panelu HMI do aplikacji – Część I – Kryteria sprzętowe (hardwarowe)

Dobór panelu HMI do aplikacji – Część I – Kryteria sprzętowe (hardwarowe)

>KLIKNIJ<

Warsaw Industry Week 2020 – prawdziwe święto przemysłu

Warsaw Industry Week 2020 – prawdziwe święto przemysłu

>KLIKNIJ<

Dane z Fabryki Przyszłości dbają o jakość produkcji

Dane z Fabryki Przyszłości dbają o jakość produkcji

>KLIKNIJ<

ctrlX AUTOMATION: Nowy świat automatyzacji

ctrlX AUTOMATION: Nowy świat automatyzacji

>KLIKNIJ<

Falowniki modułowego systemu automatyki MOVI-C® firmy SEW-EURODRIVE

Falowniki modułowego systemu automatyki MOVI-C® firmy SEW-EURODRIVE





MOŻESZ SIĘ TYM ZAINTERESOWAĆ

  • Selektor napędów Panasonic umożliwia przeglądanie napędów z serii MINAS, wyszukiwanie ich w prosty sposób, a nawet porównywanie ze sobą. Dzięki wyszukiwaniu po słowach kluczowych i przy użyciu funkcji filtrowania, potrzeba zaledwie sekund a...
  • EPSITRON®ECO & COMPACT Power OSZCZĘDNOŚĆ KOSZTÓW Zasilacze EPSITRON® ECO i COMPACT Power to nie tylko oszczędność przy zakupie, ale również niższe koszty dzięki łatwej obsłudze oraz braku konieczności serwisowania. Są one doskonałym roz...
  • Nowoczesne dotykowe panele operatorskie HMI firmy WEINTEK Labs. – Bezpłatne oprogramowanie narzędziowe w pełnej wersji – Precyzyjne, dotykowe ekrany wyświetlające szczegółową grafikę – Obszerne biblioteki komponentów grafi...
  • System MasterIN firmy Finder składa się z przekaźnikowych modułów sprzęgających z terminalami Push-in. Technologia ta reprezentuje najnowsze osiągnięcia w bezśrubowych ‘sprężynowych’ zaciskach, oferujących szybką instalację. W porównaniu do...
  • Rozwiązania wizyjne nadają się idealnie do zautomatyzowanych zadań kontrolnych i pomiarowych. Kamery wizyjne 2D i 3D firmy SICK sprawdzają się w ogromnej ilości aplikacji, polegających na pomiarze, lokalizacji, kontroli i identyfikacji. Nas...
  • Urządzenia firmy FATEK istnieją na rynku polskim od 2004 roku i stały się alternatywą dla już istniejących rozwiązań i urządzeń. Niezawodność, korzystna cena i możliwości sterowników PLC sprawiły, że zyskały one ogromne zainteresowanie prog...



KATEGORIE ARTYKUŁÓW
POLECANE ARTYKUŁY
Wydarzenia