Produkcja w czasie rzeczywistym – architektura baz danych

Współczesny inżynier-automatyk ma do dyspozycji moc obliczeniową niemal niewyobrażalną jeszcze nieco ponad 10 lat temu. Rozbudowa podstawowych produkcyjnych baz danych może znacznie ułatwić i poprawić projektowanie, unowocześnianie i obsługę procesów produkcyjnych.

 

W roku 1988 przewodniczyłem zespołowi projektowemu, który opracował jeden z pierwszych systemów informatycznych, który to system miał się posługiwać relacyjną bazą danych. System rejestrował produkcję szpuli nylonu dla firmy DuPont. Zasadnicza architektura była oparta na sterowniku PLC 2/30 Allen-Bradley, który komunikował się z komputerem DEC MicroVax (sprzężonym w klaster). Pomimo faktu, że wiedzieliśmy, jakich danych potrzebujemy ani sprzęt, ani oprogramowanie nie były w stanie prowadzić dziennika ani generować raportów dla szczegółowych informacji, jakie były niezbędne. Do roku 1998 moduły konstrukcyjne rozbudowanego systemu informatycznego były już osiągalne.

Na przestrzeni ostatnich pięciu lat inżynieryjne oraz biznesowe zapotrzebowanie na dane z procesów produkcyjnych doprowadziły do ustrukturyzowanego i modularnego podejścia do opracowywania produkcyjnych systemów informacyjnych, opartych na relacyjnych bazach danych.

Oczekiwania co do serwisowania przemysłowych systemów informatycznych, zajmujących się procesami, są takie same jak w przypadku systemów oprogramowania do sterowania procesami. To znaczy, że personel zajmujący się w zakładzie systemem sterowania musi rozumieć i być w stanie wykryć i usunąć usterki zakładowego systemu informacji o procesie, bez potrzeby angażowania eksperta IT, dostępnego 24 godziny na dobę, 7 dni w tygodniu.

Powyższy wykres pokazuje podstawową architekturę produkcyjnego systemu informatycznego, zbudowaną na bazie danych procesów firmy, serwera sieci Web oraz kolektora danych z procesów

 

Podstawowe kryteria projektowe dla produkcyjnego systemu informatycznego obejmują: udokumentowany kod, utrzymanie ruchu zakładu, własność klienta, otwartą dołączalność bazy danych oraz konieczność zastąpienia produktów w przyszłości. Opierając się na tych kryteriach trzy podstawowe moduły konstrukcyjne systemu to: serwer procesowej bazy danych, kolektor danych procesowych oraz raportowanie oparte na sieci Web.

 

Serwer danych procesowych

Tak jak zostało to pokazane na schemacie po lewej stronie, serwer danych procesowych to serwer bazy danych oraz serwer sieci Internet/Intranet. Serwer danych procesowych może znajdować się w pomieszczeniu komputerów biurowych lub też poza zakładem, dostępny poprzez bezpieczne połączenie internetowe. Wymogi dotyczące pamięci dla większości zakładów produkcyjnych wynoszą od 512 MB do 40 GB. System archiwizuje dane powyżej 6 miesięcy.

Aby obsłużyć zapotrzebowania związane z obsługą informacji pochodzących z produkcji i procesów oraz odnieść sukces w projektowaniu/budowaniu produkcyjnej bazy danych, konieczne jest wypracowanie komunikacji oraz współpracy pomiędzy działem IT, a inżynierami zajmującymi się sterowaniem, co nie należy do typowych praktyk. Powód: umiejętności z zakresu obsługi komputera i oprogramowania potrzebne do ustawienia produkcyjnej bazy danych to takie same umiejętności, jakie są niezbędne do zbudowania bazy danych systemu finansowego, magazynowego czy też bazy danych kontaktów. Porównując opracowywanie produkcyjnej bazy danych z innymi projektami tworzenia baz danych widać, że różnice zaczynają się pojawiać już na etapie koncepcji i projektu. To właśnie tutaj niezbędny jest wkład inżyniera-automatyka, który pomoże zidentyfikować pochodzenie oraz format danych i zamienić je w odpowiednie jednostki inżynieryjne lub też metryki produkcyjne, które będą zrozumiałe dla zarządu produkcji.

Regulatory i sterowniki z hal produkcyjnych automatycznie podają dane do produkcyjnej bazy danych. Może to zostać wykonane poprzez bezpośrednie łącze komunikacyjne do PLC, bądź też sterownik działający w trybie DCS. W przypadku już istniejących systemów lub regulacji mikroprocesorowej (kod skompilowany) podejściem alternatywnym jest umieszczenie czujników w kluczowych lokalizacjach i przekazywanie danych produkcyjnych poprzez sieć przemysłową do bazy danych. Projekt produkcyjnej bazy danych może okazać się narzędziem do zwiększania konkurencyjności, jeśli pozyskiwane informacje są używane do realizowania celów firmy. Aby z powodzeniem zaprojektować bazę danych, konieczne jest zrozumienie definicji tabeli – gdzie są potrzebne obrazy bazy danych oraz wiedza o tym, w jaki sposób pisać na serwerze przechowywane procedury (w rozumieniu „stored procedures”). Kiedy jest sporządzana kwerenda (zapytanie wybierające do bazy danych) dla raportu, jeśli wywołanie raportu na ekranie zajmuje więcej niż kilka sekund, najprawdopodobniej będzie to trwało zbyt długo i może wymagać przeprojektowania.

Inżynierowie-automatycy powinni odgrywać kluczową role w określaniu minimalnych kryteriów niezbędnych dla zapewnienia odpowiedniej prędkości oraz ilości danych. Na przykład dla procesu homogenizacji zapisy z procesu przechowywane w produkcyjnej bazie danych wymagają jedynie podania wysokiej temperatury, niskiej temperatury oraz średniej temperatury, które to dane trzeba przechowywać tylko przez pewien czas. Inżynier-automatyk powinien spisać kod PLC, by przekazać te parametry do kolektora danych procesowych.

 

Kolektor danych procesowych

Serwer bazy danych może zostać zaprojektowany i zbudowany przez personel IT, ale kolektor danych znajduje się na hali produkcyjnej i zazwyczaj należy do zakresu obowiązków inżyniera-automatyka.

Kolektor to punkt zbiorczy dla wszystkich danych produkcyjnych. Jego zasadniczą funkcją jest zbieranie danych pochodzących od regulatorów pracujących na produkcji, przechowywanie danych w wersji „lite” produkcyjnej bazy danych oraz zapewnianie transakcyjnego zarządzania zapisami dla procesowego serwera danych.

 

 

     Bazy danych pracujące w czasie rzeczywistym zapewniają informacje zwrotne w czasie rzeczywistym

     Zbieranie i analizowanie danych (w czasie rzeczywistym) pochodzących z hal produkcyjnych odgrywa zasadniczą rolę w zaspokajaniu potrzeb rynkowych. Potrzeb, które determinują stałą jakość produktu oraz krótszy czas wprowadzania produktów na rynek. Wysyłając dane produkcyjne do systemu sterującego bazy danych, pracujące w czasie rzeczywistym, pozwalają na podejmowanie decyzji prawie w czasie rzeczywistym oraz wpływają na wymuszanie realizacji specyfikacji jakościowych. Na wiele sposobów kontrolne bazy danych, pracujące w czasie rzeczywistym, po prostu zapewniają „systemy wspierające podejmowanie decyzji” w zakładzie.

     Wielu klientów wykorzystuje sterujące sprzężenie zwrotne w czasie rzeczywistym do sterowania jakością w systemie zamkniętej pętli. Wielu klientów przetwarza informacje zwrotne otrzymane w czasie rzeczywistym, wykorzystując je do kontroli jakości procesu w układzie zamkniętym. Na przykład regulacje rządowe (tj. prawne) wymagają od producentów poduszek powietrznych rejestrowania i weryfikowania danych jakościowych na każdym etapie procesu na linii montażowej. Tutaj system sterujący (zazwyczaj PLC dla producentów dyskretnych) wysyła kody produktu oraz informacje o jakości do bazy danych. W bazie dane są przechowywane, a poduszki powietrzne sprawdza się czy spełniają one wymagane kryteria. Informacje o tej samej transakcji są przekazywane z powrotem do systemu sterującego, zawiadamiając w ten sposób, że: „tak, dane o tym produkcje zostały zapisane, a jakość jest ok.”, lub: „tak, informacje o tym produkcie zostały zapisane, ale jakość jest zła”. Jeśli zachodzi taka potrzeba, informacje zwrotne uruchamiają proces, który ma na celu uśnięcie wadliwego produktu z linii produkcyjnej.

     Producenci łączą: sieci, inteligentne programowalne sterowniki danych, zespoły serwerów OPC oraz niezawodne mechanizmy transakcyjne, które scalają pracujące w czasie rzeczywistym bazy danych z systemami sterującymi. Produkty te pomagają zapewnić architekturę transportową służącą do przenoszenia danych do oraz z sytemu sterującego. Bazy danych systemów sterujących, pracujące w czasie rzeczywistym, wymagają niezawodnych systemów o wysokiej prędkości transmisji. Aby producenci mogli uruchamiać procesy (ręczne oraz zautomatyzowane) oraz usuwać wady jakościowe, muszą szybko i niezawodnie przesyłać dane z produkcji do bazy danych i z powrotem.

     Dlaczego wiec w architekturach systemów producenci nie przechowują danych bliżej hal produkcyjnych? Dzisiejsze komercyjne bazy danych zapewniają długi czas przydatności. Przez lata Microsoft, Oracle oraz IBM skupiały swoje wysiłki na wysoce dostępnych architekturach. Im bliżej produkcyjnych architektur przechowuje się informacje, tym trudniej może być producentom dostać się do nich. Przechowywanie w bazach sterujących czasu rzeczywistego zapewnia wielu użytkownikom bezpieczny i otwarty dostęp do danych.

     Dla klientów wymagających baz danych czasu rzeczywistego (nastawionych na dane) istnieje wiele rozwiązań. Producenci mogą wybierać rozwiązania, pozwalające na utrzymanie logiki firmy/jakości w bazie danych, ponieważ rozwiązania z zakresu baz sterujących pracujących w czasie rzeczywistym mogą po prostu przekazywać dane do administracji pochodzące z produkcji. Ponieważ, być może, sterujące bazy danych czasu rzeczywistego nigdy nie zastąpią bezpieczeństwa oferowanego przez przechowywanie wszystkich danych na poziomie PLC – po części ze względów bezpieczeństwa oraz z powodu niewiarygodnych statystyk czasu sprawności – użytkownicy mogą również wybrać dostęp do informacji produkcyjnych poprzez nastawiony na dane sterownik. Producenci mogą również wybrać rozszerzenie rozwiązania hybrydowego poprzez kopiowanie wszystkich specyfikacji jakościowych na sterownik, poprzez aplikacje bazy danych, po czym porównywać dane na sterowniku z bieżącym danymi z produkcji pobieranymi bezpośrednio z linii produkcyjnej.

     Mike Pantaleano jest dyrektorem ds. marketingu produktu w firmie Rockwell Software.

 

Produkcyjna baza danych w kolektorze będzie przechowywać wartości danych w czasie rzeczywistym w takiej samej strukturze tabeli oraz formatach danych jak serwer danych procesowych. Inżynier-automatyk może przejąć odpowiedzialność za dane znajdujące się w kolektorze, a administrator bazy danych może być odpowiedzialny za dane przechowywane na serwerze danych procesowych. W ten sposób produkcyjna baza danych staje się wspólnym gruntem dla IT oraz inżynierów-automatyków, w celu zapewnienia obsługi zapotrzebowań informacyjnych zakładu.

Serwerem może być komputer przemysłowy znajdujący się w bliskości procesu produkcyjnego; tutaj zalecane jest zastosowanie obudowy NEMA 4/12, skrzynka kolektora ma trzy połączenia: Ethernet (do serwera oraz innych komputerów zakładu), przemysłowy interfejs sieciowy o wysokiej prędkości (Modbus, DeviceNet itd.) oraz zasilanie. Dostępna na rynku duża ilość doskonałych sterowników może pomóc w przełożeniu danych z PLC bezpośrednio do bazy danych kolektora danych procesowych.

Poprzez zastosowanie serwera sieci Web, takiego jak serwer Microsoft IIS (Internet Information Services), do diagnostyki oraz składania najważniejszych raportów inżynier-automatyk może zapewnić integralność danych pomiędzy serwerem danych procesowych a kolektorem.

Kiedy połączenie sieciowe pomiędzy kolektorem danych a serwerem danych jest przerwane lub zablokowane, transakcje danych są przechowywane na kolektorze danych i przekazywane do serwera danych po ponownym ustanowieniu połączenia. Zazwyczaj kolektor danych procesowych jest konfigurowany w taki sposób, żeby przechowywał dane z trzech zmian.

 

Raportowanie oparte na sieci Web

Użytkownikami końcowymi informacji pochodzących z produkcji są zazwyczaj: menadżerowiezakładu, pracownicy kontroli jakości oraz kierownicy produkcji. Najczęściej poszukiwane raporty to „wyniki” oraz „metryki” z produkcyjnej bazy danych. Poniżej znajdują się przykłady raportów, jakie można uzyskać na bazie tej
architektury:

  • dane jakościowe,
  • raporty o przestojach,
  • raporty zgodności wysyłek,
  • system zamówień powiązany oprogramowaniem do zarządzania czasem,
  • raporty o zużyciu składników produkcyjnych,
  • raporty produkcyjne dla każdej zmiany.

 

Raporty są generowane poprzez przeglądarkę sieci Web. Kiedy menadżer zakładu ustawia przeglądarkę na serwer danych procesowych, zyskuje dostęp do portalu informacyjnego.

Raport można uznać za „zapis w procesowej bazie danych”, zapewniający wycinki informacji dla wybranego zestawu parametrów, takich jak zmiana, partia czy zamówienie.

Pod pokrywą serwera danych procesowych tam, gdzie znajduje się oprogramowanie i konfiguracja dla raportów, serwer sieci Web wykonuje aktywne strony serwera, przy użyciu skryptu Visual Basic, często wywołując zapisane procedury z bazy danych, aby uzyskać pożądane informacje.

Skonstruowane w ten sposób raportowanie oparte na sieci Web, nie wymaga instalowania żadnych aplikacji na komputerze użytkownika (ani zakupu żadnych dodatkowych licencji), a informacje są dostępne poprzez sieć Intranetu lub bezpieczne połączenie Internetu.

 

Walter J. Cholawsky jest głównym inżynierem w Program4 Engineering Inc., firmie inżynieryjnej specjalizującej się w przemysłowym oprogramowaniu sterującym oraz informatycznym.