PLC Engine, czyli jak wymieniać dane pomiędzy sterownikami PLC a plikami i bazami danych

| Prezentacje firmowe PLC, HMI, Oprogramowanie

Temat archiwizacji danych produkcyjnych nie jest niczym nowym. Sztuką jest natomiast wdrożyć godny zaufania system archiwizacji szybko, a jednocześnie niedrogo. Z PLC Engine jest to jak najbardziej możliwe. W dodatku komunikacja jest obustronna, więc także PLC może otrzymywać dane z bazy lub pliku.

PLC Engine, czyli jak wymieniać dane pomiędzy sterownikami PLC a plikami i bazami danych

Rys. 1. Wymiana danych pomiędzy PLC firmy Siemens z serii S7-1500 a sterownikiem Rockwell CompactLogix

Funkcjonalność archiwizacji danych procesowych posiadają wszystkie popularne systemy SCADA czy MES, a czasem także mniejsze, np. jako opcja dodatkowa do wizualizacji. Jest to jednak zwykle spory wydatek, zwłaszcza przy większej liczbie zmiennych, a możliwości konfiguracji bywają ograniczone, do tego dochodzi komputer, który, jak wiemy, nieraz odmawia posłuszeństwa. Wiele zakładów korzysta także z systemów, wykonanych na zlecenie lub nawet z własnych rozwiązań, stworzonych przez dział IT. Tutaj z kolei koszty widoczne na fakturach mogą być niższe, ale poświęcony czas na wdrożenie również kosztuje, nie mówiąc już o konieczności rozbudowy i bieżącej diagnostyce.

Inną wadą systemów dedykowanych - być może nawet największą - jest ich "przywiązanie" do autorów. Jeśli firma, która wykonała dla nas oprogramowanie, przestanie istnieć lub postanowi się przebranżowić, może to oznaczać duży problem ze sprawnym funkcjonowaniem systemu. Jeszcze gorzej, jeśli program powstał w zakładowym dziale IT i z biegiem czasu któryś z głównych programistów opuści firmę, ktoś pójdzie na emeryturę lub nawet będzie na dłuższym zwolnieniu lekarskim. Komentarze w kodzie programu czy jego dokumentacja mogą okazać się niewystarczające do gładkiego przejęcia kontroli nad archiwizacją przez nowe osoby.

W większości przypadków najlepszym podejściem do archiwizacji danych byłoby rozwiązanie gotowe, dostępne na rynku od dłuższego czasu, niedrogie w zakupie i łatwe we wdrożeniu. Brzmi jak marzenie? W takim razie możemy je łatwo spełnić! Są to bowiem cechy idealnie opisujące oprogramowanie PLC Engine, niemieckiej firmy TANI GmbH, założonej kilka lat temu przez byłych programistów firmy INAT (czytane od tyłu daje TANI). Firma INAT GmbH od 1996 roku zajmowała się komunikacją i diagnostyką w sieciach Ethernet oraz komunikacją OPC i jej wykorzystaniem, w tym głównie do archiwizacji danych właśnie.

Przykładowe konfiguracje oprogramowania PLC Engine

Mimo wielu zmian w produkcie, w tym jego nazwy, rozwiązanie to jest stworzone i rozwijane przez tych samych ludzi od ponad 20 lat. W połączeniu z wąską specjalizacją firmy, daje to gwarancję dopracowanego rozwiązania, a jednocześnie szybkiego reagowania na zachodzące potrzeby klientów, podyktowane zmianami na rynku. Idealnym przykładem jest tutaj szybkie i sprawne zaimplementowanie adresacji symbolicznej sterowników SIMATIC S7-1200 / S7-1500 w serwerze OPC firmy TANI (zawarty również w PLC Engine). Z naszych informacji wynika, że inżynierowie z TANI dokonali tego jako pierwsi na świecie, w dodatku w sposób, który jest najlepszy dla użytkownika, z możliwością przeglądania całej struktury drzewa.

PLC Engine służy do łączenia sterowników PLC (oraz innych urządzeń automatyki) z bazami danych, plikami płaskimi, ale także między sobą (np. komunikacja PLC-PLC różnych producentów). Właśnie PLC Engine jest znacznie udoskonalonym następcą znanego jeszcze z czasów firmy INAT oraz Softing urządzenia Echochange. Dane mogą być nie tylko archiwizowane. Możliwy jest także import z bazy danych lub pliku do PLC. Skonfigurowane zmienne są dostępne również dla komunikacji OPC (PLC Engine jest zarówno serwerem, jak i klientem OPC).

PLC Engine umożliwia dostęp do sterowników Siemens SIMATIC S5 i S7 (oraz kompatybilnych np. VIPA), Allen-Bradley CompactLogix i ControlLogix oraz urządzeń z obsługą protokołu Modbus/TCP np. Wago, Modicon, Schneider Electric i innych. Komunikacja jest bardzo szybka, łatwa w konfiguracji (kreatory połączeń), a program daje wiele możliwości diagnostyki. Sposób wymiany danych deklaruje się w programie za pomocą tabel logicznych, w sposób przypominający projektowanie bazy danych, ale niewymagający tak dużej wiedzy.

Nie trzeba również znać języka SQL, ani niczego programować. Dotyczy to również programu PLC, który pozostawiamy absolutnie nietknięty, co eliminuje ryzyko powstania problemów przy produkcji czy chociażby utraty gwarancji na maszynę. Możliwe jest także wykonywanie obliczeń na danych przed ich dostarczeniem do celu (w locie).

Rys. 2. Wymiana danych pomiędzy PLC firmy Siemens a bazą danych i plikiem CSV

Program obsługuje standardy OPC UA, DA oraz OPC Pipe (tunelowanie - eliminacja problemów DCOM) i współpracuje z bazami danych MySQL, PostgreSQL, Microsoft SQL (MS SQL) oraz innych, z komunikacją przez ODBC. Komunikacja może odbywać się również po protokole MQTT. Aplikacja jest dostępna na różne platformy systemowe i sprzętowe, tj. komputery z systemem Windows lub Linux, ale również Raspberry. Dodatkowo bardzo ciekawą opcją jest możliwość zamówienia wersji sprzętowej PLC Engine. Jest to miniaturowy PC z Linuksem, preinstalowanym serwerem baz danych MySQL i SQLite oraz programem PLC Engine.

Jest to urządzenie typu embedded - bardzo energooszczędne (2 W), niedrogie i bezobsługowe (nie wymaga żadnych dodatkowych licencji ani wykonywania aktualizacji), przez co pozwala zaoszczędzić sporo czasu i pieniędzy. Sam program nie ma również dużych wymagań sprzętowych, więc można go także zainstalować na już istniejącym serwerze, gdzie nie będzie zakłócał pracy innych aplikacji. Zachęcamy do pobrania wersji Demo, która pracuje 72 h z pełną funkcjonalnością www.tanindustrie.de oraz do zobaczenia tutoriali właśnie z oprogramowania PLC Engine: https://www.youtube.com/user/AutomatykaINEE.

Krzysztof Kuźniarz
INEE Sp. z o.o.

www.inee.pl