Przemysł 4.0 w praktyce. Modbus w chmurze
Materiał prasowy (ELMARK Automatyka) print
Przemysł 4.0, Przemysłowy Internet Rzeczy i rozwiązania chmurowe to obecnie bardzo popularne frazy w świecie przemysłu i IT. Hasła te przez wielu są interpretowane jako czysty marketing i wymyślanie koła na nowo, jednak nic bardziej mylnego. Obecnie dostępne są innowacyjne narzędzia i infrastruktura, które razem tworzą synergiczne połączenie, łatwiejsze do wdrożenia niż kiedykolwiek.
W przeszłości istniały podobne urządzenia i usługi, można też było tworzyć podobne aplikacje do tych współczesnych, jednak było to znacznie trudniejsze i bardziej kosztowne niż dziś. Obecnie tworzenie rozwiązań i usług w chmurze jest najtańsze i najprostsze w historii, co jeszcze bardziej zwiększa powszechność usług i produktów z zakresu IIoT i Przemysłu 4.0.
Opis topologii
W tej chwili uruchomienie serwera bądź maszyny wirtualnej zgodnych z wymaganiami konkretnej aplikacji u najpopularniejszych dostawców chmurowych – takich jak AWS, Azure lub Google Cloud platform – wymaga od użytkownika tylko „wyklikania” konfiguracji. Ponadto dostawcy udostępniają coraz więcej usług działających bezserwerowo (serverless) – dostawca dostarcza jedynie wąską funkcjonalność, z której użytkownik korzysta, zajmując się wszystkim, co dzieje się pod maską. Oznacza to, że użytkownik nie musi zajmować się konfiguracją czy utrzymaniem serwerów i może skupić się nad samą funkcjonalnością. Jedną z takich usług jest tzw. IoT Core AWS, który jest gotowym brokerem protokołu MQTT. W artykule opisana została integracja oprogramowania ThingsPro na komputerze UC-8112-LX firmy Moxa z usługą AWS IoT Core oraz dalsze przetwarzanie danych. Oprogramowanie ThingsPro ma funkcję zbierania danych z urządzeń Modbus RTU/TCP, więc niewielkim kosztem i nakładem sił można zbudować rozwiązanie do odczytu danych z urządzeń używających protokołu Modbus (takich jaki liczniki energii, liczniki mediów, czujniki ciśnienia, dataloggery itp.) i eksportować takie dane do chmury, np. w celu archiwizacji, dalszej analizy czy wizualizacji.
ThingsPro
Oprogramowanie ThingsPro firmy Moxa można zainstalować na komputerze UC-8112 tego samego producenta. Jego główną funkcją jest automatyczne odpytywanie urządzeń Modbus RTU lub TCP Slave oraz udostępnianie bądź wysyłanie tych danych dalej. Komputer ten może udostępniać dane za pomocą znanego ze świata IT interfejsu RESTful API oraz za pomocą Modbus TCP jako slave. Dalsze przesyłanie danych jest możliwe dzięki temu, że w oprogramowaniu zaimplementowane są klient AWS IoT, ogólny klient MQTT oraz klient Sparkplug, a konfiguracja odbywa się przez przeglądarkę.
Przesyłanie i udostępnianie danych Modbus nigdy nie było tak proste i intuicyjne. Komputer UC-8112-LX można wyposażyć w moduł HSPA lub LTE, dzięki czemu może wysyłać np. dane pomiarowe i diagnostyczne z farmy wiatrowej, gdzie nie ma przewodowego dostępu do sieci WAN. Zdalny dostęp jest możliwy za pomocą szyfrowanego połączenia OpenVPN.
Sama konfiguracja jest intuicyjna. Na początku należy ustawić interfejs sieciowy i dodać szablon odczytywanych rejestrów Modbus. Następnym krokiem jest dodanie adresów portów hostów, z których dane będą odczytywane (w przypadku Modbus TCP) lub skonfigurowania portów szeregowych dla Modbus RTU. Na końcu można sprawdzić czy konfiguracja jest poprawna, klikając „TEST” w ustawieniach interfejsu Modbus. Jeśli użytkownik chce wysyłać dane do chmury AWS, wystarczy, że skonfiguruje klienta AWS IoT oraz doda „Rzecz” w konsoli AWS IoT. Po dodaniu wystarczy pobrać dwa certyfikaty, klucz, topic, adres endpoint, port i wprowadzić oraz zaimportować te dane w konsoli ThingsPro. Jeśli użytkownik nie popełnił nigdzie błędu, to od teraz przy każdej zmianie wartości rejestru Modbus wartość ta będzie wysyłana do AWS IoT protokołem MQTT. Konieczne jest oczywiście, by komputer miał dostęp do Internetu – komórkowo lub przez Ethernet.
AWS IoT Core
Dzięki usłudze AWS IoT Core, świadczonej na zasadzie SaaS (oprogramowanie jako usługa) użytkownik nie martwi się o serwery, na których świadczona jest usługa oraz o budowę i utrzymywanie świadczonego oprogramowania. W rzeczywistości jest to broker protokołu MQTT, czyli serwer, z którym łączą się klienci, aby wysyłać lub odbierać dane. Do założenia konta w AWS wystarczy karta kredytowa i 15 minut. Przez pierwszy rok od założenia konta można testować większość usług za darmo, w pewnych limitach. Ceny standardowe za usługi też nie są zbyt wygórowane, np. jeśli do AWS IoT pięć komputerów UC-8112-LX będzie wysyłać jedną wiadomość o wielkości 274 bajtów co minutę, a każda z takich wiadomości wywoła jedną akcję, to miesięczny koszt usługi IoT Core wyniesie zaledwie około dolara. Jeśli każda taka wiadomość będzie uruchamiała akcję, np. funkcję Lambda, wówczas w przypadku stosunkowo prostej funkcji trwającej 500 ms i alokującej 320 MB pamięci RAM, koszt usługi wyniesie również około dolara miesięcznie. Jeśli na koniec użytkownik chciałby zapisywać te dane w usłudze S3 (dysk chmurowy) właśnie za pośrednictwem funkcji w usłudze Lambda, wtedy na koszt S3 składałoby się 0,0245 dolara za 1 GB przechowywanych danych miesięcznie oraz 1,2 dolara za wszystkie akcje zapisu. Łatwo policzyć, że miesięczny całkowity koszt tych usług wyniesie około 3,3 dolara w przypadku, jeśli w S3 przechowywane byłoby maksymalnie 4 GB danych, czyli około 11,22 złotych (3,4 złotego/dolar). To niska kwota, biorąc po uwagę funkcjonalność, jaką się zyskuje.
Podsumowanie
Komputer UC-8112 wraz z oprogramowaniem ThingsPro i usługami chmurowymi tworzą bardzo ciekawą i synergiczną mieszankę, która umożliwia tworzenie nowoczesnych aplikacji w myśl idei Przemysłu 4.0 i IIoT. ThingsPro umożliwia wysyłanie danych z sieci przemysłowych do dostawców chmurowych, a tam dalszą ich obróbkę, przetwarzanie, wizualizowanie, wysyłanie powiadomień e-mail/sms, uczenie maszynowe, przechowywanie, wizualizowanie, upublicznianie i wiele więcej. Jeśli nawet z jakichś przyczyn użytkownik chce tylko przechowywać dane w S3 AWS, a korzystać z usług innego dostawcy, np. hostingu – odczytywanie danych za pomocą dostarczanych api i sdk Amazona nie stanowi problemu. Możliwości jest wiele, dlatego ThingsPro jest bardzo elastycznym rozwiązaniem do łączenia danych z sieci przemysłowych z usługami chmurowymi i innymi aplikacjami.
ELMARK AUTOMATYKA Sp. z o.o.
ul. Niemcewicza 76
05-075 Warszawa-Wesoła
tel. 22 773 79 37, 22 778 99 25
fax 22 773 79 36
e-mail: elmark@elmark.com.pl
www.elmark.com.pl
source: Automatyka 5/2018