Integracja OT i IT – prosto i efektywnie

3 marca 2021

Żyjemy w czasach transformacji cyfrowej. Coraz częściej konwencjonalne rozwiązania z dziedziny automatyzacji przemysłu przestają być wystarczające, a zarówno producenci jak i ich klienci końcowi dostrzegają rosnącą potrzebę doposażania układów sterujących w rozwiązania umożliwiające łatwą i szybką integrację z systemami IT. 

Jak wynika z najnowszego raportu Smart Industry Polska 2020, ponad 25% uczestników badania deklaruje plany wdrożenia rozwiązań digitalizacyjnych w swoich przedsiębiorstwach co oznacza przeszło dwukrotny wzrost w porównaniu z rokiem 2018. Przyczyn należy doszukiwać się m.in. w dynamicznych zmianach jakie możemy zaobserwować w gospodarce, podejściu do ekologii, ale również w codziennych zwyczajach konsumentów. Duży wpływ na wzrost zainteresowania rozwiązaniami digitalizacyjnymi mają także trendy formujące się obecnie w przemyśle. To właśnie firmy oferujące innowacje, niespotykane dotychczas w maszynach czy instalacjach, stają się liderami w branży i zwiększają swoją wartość na rynku. Często mówi się także o tym, że „dane to nowa waluta” – właściwe wykorzystanie tych danych faktycznie przekłada się na wzrost zysków i oszczędności m.in. dzięki zagadnieniom takim jak predictive-maintenance czy analiza danych pod kątem zużycia energii. Widzimy więc, że digitalizacja nie jest tylko pustym sloganem, ale niesie ze sobą realne i wymierne korzyści zarówno dla producentów maszyn jak i użytkowników tychże.

 

Należy pamiętać, że masowe dane generowane przez czujniki i system sterujący nie mają wielkiej wartości, dopóki nie zostaną we właściwy sposób przetworzone. To zadanie stawiane jest szerokiej gamie różnorodnych systemów IT, począwszy od baz danych, poprzez lokalne systemy do zarządzania produkcją (np. wszelkiej maści systemy ERP i MES) aż po zaawansowane aplikacje obliczeniowe uruchamiane w chmurze. Niniejszy artykuł stanowi przegląd rozwiązań umożliwiających ich integrację z konwencjonalnymi systemami automatyki SIMATIC.

Podejście klasyczne

Mechanizmy umożliwiające komunikację z nadrzędnymi systemami informatycznymi nie są technologiczną nowinką i stosowane są w systemach sterowania już od wielu lat. Możemy je spotkać chociażby w branżach, w których gromadzenie wiarygodnych danych na temat wyrobu jest niezbędne na każdym etapie produkcji. Mowa tu zwłaszcza o przemyśle farmaceutycznym czy automotive gdzie systemy traceability pełnią kluczową rolę w zapewnieniu ciągłości i spójności łańcucha dostaw. Również pozostałe branże, jak intralogistyka, wymagają często powiązania programu sterującego ze zbiorami danych przechowującymi informacje o właściwościach produktu czy jego lokalizacji w magazynie.
 

W realizacji takich zagadnień pomocne są przede wszystkim systemy SCADA stanowiące niejako łącznik pomiędzy warstwą OT (Operation Technology) i IT (Information Technology). Systemy te oferują szeroki wachlarz protokołów komunikacyjnych umożliwiających wymianę danych z systemami sterowania, a dodatkowo posiadają zintegrowane mechanizmy archiwizacji w bazach danych SQL. Oprócz funkcji zintegrowanych, do dyspozycji programisty pozostają także funkcje tworzone przez użytkownika w postaci skryptów VisualBasic lub JavaScript (w przypadku systemu WinCC Unified). Ponieważ oprogramowanie SCADA wymaga uruchomienia na komputerze przemysłowym klasy IPC, wszystkie zagadnienia komunikacyjne niemożliwe do zaimplementowania bezpośrednio w wizualizacji, mogą być zrealizowane za pomocą zewnętrznych aplikacji tworzonych w językach wysokopoziomowych, np. C# lub Java.
 

Tego typu aplikacje bardzo często znajdują zastosowanie także wtedy, gdy instalacja lub maszyna nie korzysta z oprogramowania SCADA. Dzięki szeroko dostępnym bibliotekom programistycznym mogą odwoływać się bezpośrednio do sterowników PLC klasy SIMATIC – zarówno w oparciu o protokół S7 jak i inne dostępne mechanizmy komunikacyjne np. OUC (Open User Communication czyli funkcje bazujące na rodzinie protokołów TCP/IP) czy Modbus. Taka koncepcja współpracy pomiędzy systemami IT i warstwą OT spotykana jest dzisiaj w wielu sprawnie działających aplikacjach i instalacjach przemysłowych bazujących na całym portfolio sterowników SIMATIC, począwszy od jednostek S7-300 aż po S7-1500

Chmury obliczeniowe i bazy danych

Choć opisana w poprzednim akapicie koncepcja sprawdza się w wielu aplikacjach, stosowanie surowych funkcji OUC ograniczone jest do części systemów IT, działających zwykle w sieciach lokalnych przedsiębiorstwa. „Otwarcie się” na świat zewnętrzny wymaga nieco innego podejścia, zarówno jeśli chodzi o wykorzystywane protokoły komunikacyjne jak i bezpieczeństwo danych. Nowe wersje bloków dostępne w sterownikach S7-1200/1500 wspierają szyfrowanie danych przy pomocy protokołu SSL/TLS oraz definiowanie hosta poprzez nazwę domenową (QDN – Qualified Domain Name), co czyni z nich doskonałą bazę dla specyficznych funkcji do obsługi protokołów znanych dotychczas ze świata IT. 
 

Zaliczyć możemy do nich między innymi HTTP (HyperText Transfer Protocol) oraz MQTT (Message Queuing Telemetry Transport) – w obu przypadkach z możliwością szyfrowania ruchu sieciowego. Funkcje te, dostępne w formie darmowych bibliotek do środowiska TIA Portal, bazują na blokach OUC i implementują rozwiązania specyficzne dla danego protokołu. Konfiguracja połączenia i transmisji danych realizowana jest w maksymalnie uproszczony sposób, przy pomocy prostego interfejsu w bloku DB. W przypadku MQTT, mamy do dyspozycji zarówno operację publikacji danych do brokera jak i ich subskrypcję w oparciu o określony topic. Połączenie z serwerem może być uwierzytelniane poprzez login i hasło użytkownika, a także za pomocą certyfikatu SSL/TLS dzięki czemu komunikacja realizowana jest w sposób bezpieczny i zapewniający integralność danych. Dostajemy więc gotowe narzędzie współpracujące z szeregiem chmur obliczeniowych dostępnych aktualnie na rynku, a także lokalnymi i zdalnymi brokerami MQTT działającymi w aplikacjach tworzonych przez użytkowników. Jeśli aplikacja implementuje dodatkowo interfejs REST API, z pomocą przychodzi biblioteka do obsługi protokołu HTTP(S) umożliwiająca wymianę informacji za pomocą podstawowych metod POST i GET.
 

Standardowym wyzwaniem z jakim często borykają się programiści automatycy jest archiwizacja bądź odczyt danych z serwerów bazodanowych – zwłaszcza gdy taka komunikacja musi być zrealizowana bezpośrednio w sterowniku PLC. Taką możliwość daje funkcja LSQL_Microsoft, również dostępna w formie darmowej biblioteki. Blok działa w oparciu o protokół TDS i pozwala na wykonanie podstawowych zapytań SQL (Create, Read, Update, Delete) wysyłając je bezpośrednio do serwera, z pominięciem interfejsu ODBC. Funkcja współpracuje z wszystkimi wersjami Microsoft SQL Server i można ją uruchomić na sterownikach S7-1200 (FW V4.4) i S7-1500 (FW ≥ V2.5).

Web API w sterownikach S7-1500
 

Nowością, jeśli chodzi o wymianę informacji na linii S7-1500 – aplikacja IT, jest zaimplementowana w FW2.8 funkcjonalność Web API. Umożliwia ona dostęp do danych sterownika oraz wykonywanie w nim pewnych operacji za pomocą prostych zapytań POST wysyłanych po protokole HTTPS. Zapytania te są następnie przetwarzane na poziomie zintegrowanego webserwera, sterownik wykonuje wywołaną metodę (np. PlcProgram.Read) i zwraca odpowiedź do nadawcy. Niezbędne dla danej metody parametry wysyłane są w formacie JSON (JavaScript Object Notation), dzięki czemu cały proces komunikacji przy pomocy Web API realizowany jest w sposób zunifikowany i stosowany powszechnie w wielu aplikacjach IT. 

Rozwiązania PC-based

Chociaż w sterownikach S7-1200/1500 możemy wykorzystać szereg gotowych funkcji umożliwiających komunikację z nadrzędnymi systemami, w dalszym ciągu rozwiązania bazujące na komputerach IPC dają nam najwięcej możliwości w tej materii. Mowa tu nie tylko o wspomnianym wcześniej oprogramowaniu SCADA, ale również rozwiązaniach przeznaczonych dla sterowników klasy S7-1500 Software Controller. Sterowniki te, pracując całkowicie niezależnie od systemu operacyjnego Windows, mają możliwość wymiany informacji z aplikacjami pracującymi  pod jego kontrolą. Takie połączenie możemy zrealizować przy pomocy pakietu programistycznego SIMATIC Open Development Kit. Pakiet ten bazuje na środowisku .NET Framework i dostarcza programiście szereg szablonów i bibliotek pozwalających wygenerować bloki FB wywoływane w programie PLC oraz sterowniki komunikacyjne w formie plików DLL, łączące te bloki z aplikacją użytkownika. Jeśli nie jesteśmy zainteresowani tworzeniem własnej aplikacji lub nie mamy odpowiedniej wiedzy programistycznej, Siemens dostarcza szereg gotowych bibliotek bazujących na pakiecie ODK, np. SIMATIC ODK 1500S SQL Driver umożliwiającą komunikację z wieloma typami baz danych. Rozwiązania te mogą być wykorzystane przy współpracy ze sterownikami S7-1500 Software Controller pracującymi na platformach IPC, S7-1500 Open Controller, a także na sterowniku CPU1518 MFP.

Rozważając temat automatyki PC-based należy wspomnieć także o swoistej rewolucji w kontekście tworzenia aplikacji IT i współpracy z konwencjonalnymi systemami sterowania, czyli rozwiązaniach Industrial Edge. Jest to platforma służąca do uruchamiania skonteneryzowanych aplikacji – zarówno tworzonych przez użytkownika jak i pozyskiwanych z repozytorium IEH (Industrial Edge Hub). Rozwiązanie to umożliwia masowe zarządzanie urządzeniami IED (Industrial Edge Device) tzn. instalację, aktualizację i kasowanie aplikacji na wielu urządzeniach jednocześnie oraz zapewnia mechanizmy bezpieczeństwa jak szyfrowanie danych i uwierzytelnianie TFA. Platforma bazuje na ekosystemie Docker, dzięki czemu każda uruchomiona aplikacja (lub jej składnik) stanowi osobny kontener, bez wpływu na pozostałe serwisy i procesy. Poszczególne urządzenia IED możemy porównać do telefonów lub tabletów z systemem Android/iOS, na które pobieramy interesujące nas aplikacje z ogólnodostępnych repozytoriów zarządzanych przez twórców systemu. W przypadku platformy Edge mogą to być to m.in. aplikacje do akwizycji danych z urządzeń polowych, wizualizacji, łączenia z chmurami obliczeniowymi, wspomagające system automatyki lub zaawansowane aplikacje obliczeniowe bazujące na sieciach neuronowych i skomplikowanych modelach matematycznych.

Nigdy nie było prościej!

Nowe generacje sterowników PLC służą już nie tylko do wykonywania operacji logicznych sterujących procesem, ale coraz częściej wyposażane są w liczne mechanizmy ułatwiające ich integrację z zaawansowanymi systemami IT. Liczne poziomy zabezpieczeń dostępne na każdym etapie budowania aplikacji (począwszy od bezpiecznych produktów tworzonych z założeniem „Security by default”, poprzez ochronę know-how aż po mechanizmy szyfrowania komunikacji i uwierzytelniania użytkowników) zapewniają integralność i bezpieczeństwo przetwarzanych danych. Funkcje programowe w połączeniu z dodatkowymi systemami jak Industrial Edge czy platformy PC-based sprawiają, że wdrażanie rozwiązań digitalizacyjnych jeszcze nigdy nie było tak proste i intuicyjne. 

Kontakt

Artur Nowocień

Wsparcie aplikacyjne SIMATIC

 

Zapisz się do newslettera

Interesują Cię aktualności Siemens Polska? Zasubskrybuj nasz Newsletter