Powrót do blogu

Architektura pamięci przemysłowej: ukryte wyzwanie stojące za Przemysłem 4.0

Przemysł 4.0 zależy od systemów pamięci, które umożliwiają szybkie uruchamianie sterowników, przetwarzanie obciążeń czasu rzeczywistego, zachowanie krytycznych danych w przypadku utraty zasilania o...

Przemysł 4.0 jest zwykle opisywany za pomocą widocznych technologii. Połączone linie produkcyjne, sztuczna inteligencja w przemyśle, cyfrowe bliźniaki, autonomiczne roboty i analityka w chmurze często dominują w dyskusjach.

Możliwości te zależą jednak od mniej widocznej części systemu. Każdy sterownik przemysłowy, napęd, robot, platforma wizyjna i komputer brzegowy wymagają niezawodnej pamięci.

Pamięć przechowuje instrukcje uruchamiające urządzenia. Zawiera aktywne zmienne podczas wykonywania programów sterujących. Zachowuje również alarmy, historię procesów, rejestry produkcji i dane diagnostyczne.

W miarę jak systemy przemysłowe stają się coraz bardziej połączone, ilość danych przepływających przez każde urządzenie stale rośnie. Sterowniki muszą przetwarzać więcej informacji bez pogorszenia czasu cyklu, deterministycznego działania ani dostępności urządzeń.

Pamięć przemysłowa musi także działać w warunkach znacznie różniących się od warunków elektroniki konsumenckiej. Może być narażona na wysoką i niską temperaturę, zakłócenia elektryczne, powtarzające się przerwy w zasilaniu, wibracje oraz okresy eksploatacji przekraczające piętnaście lat.

Sama pojemność nie rozwiązuje tych problemów. Inżynierowie muszą również uwzględnić opóźnienia, przepustowość, wytrzymałość na zapis, trwałość danych, zachowanie przy utracie zasilania, cyberbezpieczeństwo oraz długoterminową dostępność komponentów.

Architektura pamięci, która sprawdza się w laboratorium, może zawieść wewnątrz szafy sterowniczej. Konstrukcja, która podczas uruchamiania wydaje się wystarczająca, może również okazać się niewystarczająca po aktualizacjach oprogramowania układowego i wdrożeniu dodatkowych usług danych.

Z tych powodów pamięć stała się jednym z ukrytych wyzwań inżynieryjnych na drodze do Przemysłu 4.0.

Połączone systemy produkcyjne łączące automatykę przemysłową, przetwarzanie brzegowe i analizę danych na dużą skalę

Rysunek 1. Przemysł 4.0 łączy połączone maszyny, rozbudowane gromadzenie danych, rozproszone przetwarzanie i lokalne podejmowanie decyzji.

Przemysł 4.0 to także architektura pamięci

Czwarta rewolucja przemysłowa zmienia miejsce tworzenia, przetwarzania i przechowywania informacji przemysłowych.

Tradycyjne systemy automatyki były stosunkowo scentralizowane. Czujniki przesyłały wartości procesowe do sterowników, a systemy nadrzędne wyświetlały wybrane informacje i rejestrowały alarmy.

Nowoczesne zakłady rozdzielają inteligencję na kilka poziomów. Inteligentne czujniki przeprowadzają diagnostykę. Napędy analizują pracę silników. Sterowniki PLC koordynują sterowanie i komunikację. Komputery brzegowe agregują dane z wielu maszyn.

Platformy chmurowe mogą porównywać wydajność między fabrykami, liniami produkcyjnymi lub flotami urządzeń. Chmura nie zastępuje jednak przetwarzania lokalnego.

Kluczowe decyzje sterujące muszą zapadać blisko maszyny. System produkcyjny nie może przy każdym działaniu zależeć od stałego połączenia zewnętrznego.

Ta rozproszona architektura zwiększa wymagania dotyczące lokalnej pamięci. Każde urządzenie musi przechowywać więcej oprogramowania, utrzymywać większe bufory komunikacyjne i przetwarzać większe ilości danych operacyjnych.

Sterownik PLC może wykonywać logikę sterowania, jednocześnie zarządzając recepturami, alarmami, sesjami Ethernet, usługami sieciowymi oraz rejestrami produkcji. Napęd serwo może przechowywać dane silnika, parametry bezpieczeństwa, wartości strojenia oraz historię zdarzeń.

Robot przemysłowy może obliczać trajektorie, jednocześnie przetwarzając dane wizyjne i wymieniając informacje z otaczającym sprzętem. Brama brzegowa może jednocześnie uruchamiać kilka sterowników protokołów oraz aplikacji analitycznych.

Każde obciążenie stwarza inne wymagania. Niektóre dane muszą być dostępne w ciągu mikrosekund. Inne rekordy można przetworzyć później, ale muszą przetrwać przerwę w zasilaniu.

Architektura pamięci decyduje o tym, czy te wymagania mogą współistnieć bez wpływu na niezawodność systemu.

Projektant systemu przemysłowego musi zatem zdecydować, które informacje pozostają wewnątrz procesora, które są przenoszone do zewnętrznej pamięci RAM, a które wymagają pamięci nieulotnej.

Nie jest to wyłącznie decyzja sprzętowa. Struktura oprogramowania, priorytety sterowania, potrzeby konserwacyjne oraz zasady cyberbezpieczeństwa wpływają na ostateczną architekturę.

Przemysłowe dane mają różne okresy przechowywania

Nie każdy punkt danych ma taką samą wartość operacyjną ani wymagany czas przechowywania.

Błąd położenia obliczony podczas jednego cyklu serwomechanizmu może stać się nieistotny po następnym cyklu. Receptura maszyny może wymagać przechowywania przez wiele lat.

Sekwencja alarmowa może być potrzebna wiele miesięcy później podczas analizy awarii. Certyfikat bezpieczeństwa może pozostać ważny przez kilka kolejnych wersji oprogramowania układowego.

Różnice te tworzą kilka ogólnych klas danych.

Dane programowe obejmują programy rozruchowe, oprogramowanie układowe, systemy operacyjne, biblioteki komunikacyjne oraz aplikacje użytkownika. Informacje te muszą pozostać dostępne po odłączeniu zasilania.

Dane konfiguracyjne obejmują parametry urządzenia, wartości kalibracyjne, ustawienia sieci, receptury oraz ograniczenia specyficzne dla danej maszyny. Zwykle zmieniają się rzadziej, ale wymagają wysokiej integralności.

Dane robocze obejmują zmienne tymczasowe, stosy zadań, bufory komunikacyjne, klatki obrazów oraz obliczenia pośrednie. Wymagają szybkiego dostępu, ale zwykle nie muszą być zachowywane po wyłączeniu.

Dane historyczne obejmują zdarzenia, alarmy, trendy stanu, liczniki produkcji oraz dowody wykonania czynności konserwacyjnych. Mogą być zapisywane nieprzerwanie przez cały cykl życia urządzenia.

Dane bezpieczeństwa obejmują klucze kryptograficzne, certyfikaty, tożsamości urządzeń oraz informacje dotyczące bezpiecznego rozruchu. Ich pojemność może być niewielka, ale nieuprawniony dostęp może stwarzać poważne zagrożenie.

Te klasy danych nie powinny być automatycznie współdzielone przez jeden mechanizm pamięci masowej.

Kod rozruchowy może wymagać długiej retencji i szybkiego odczytu, ale stosunkowo niewielkiej liczby zapisów. Dziennik diagnostyczny może wymagać milionów operacji zapisu.

Bufor systemu wizyjnego może wymagać dużej przepustowości, ale nie musi zachowywać danych po utracie zasilania. Konfiguracja związana z bezpieczeństwem może wymagać zduplikowanego przechowywania i rygorystycznej walidacji.

Architektura pamięci powinna odzwierciedlać te różnice. Wybór urządzenia wyłącznie na podstawie pojemności może prowadzić do niskiej trwałości zapisu, nadmiernych kosztów lub niedopuszczalnego zachowania podczas przywracania działania.

Trzy role pamięci wewnątrz urządzeń przemysłowych

Większość przemysłowych systemów wbudowanych wykorzystuje pamięć do trzech podstawowych funkcji.

Pierwszą funkcją jest przechowywanie programu. Zewnętrzna pamięć flash zwykle przechowuje kod rozruchowy, oprogramowanie układowe i aplikację użytkownika niezbędne do uruchomienia urządzenia.

Drugą funkcją jest pamięć robocza. Rozszerzona pamięć RAM zapewnia tymczasowe miejsce dla aktywnych aplikacji, obliczeń, komunikacji i buforowania danych.

Trzecią funkcją jest przechowywanie danych podtrzymywanych. Ta pamięć zachowuje konfigurację, alarmy, liczniki i historię maszyny po odłączeniu zasilania.

Funkcje te mogą być zintegrowane w jednym układzie procesora lub rozdzielone między kilka urządzeń. Ich wymagania inżynieryjne pozostają jednak różne.

Pamięć programu kładzie nacisk na trwałość danych, niezawodność uruchamiania i bezpieczne aktualizacje. Pamięć robocza kładzie nacisk na opóźnienia, przepustowość i przewidywalny dostęp.

Pamięć podtrzymywana kładzie nacisk na trwałość zapisu, ochronę przed utratą zasilania i długoterminową integralność danych.

Sterownik PLC może używać pamięci flash NOR do przechowywania oprogramowania układowego i kodu aplikacji. Do wykonywania programów, obsługi ruchu sieciowego i przechowywania zmiennych czasu pracy może używać pamięci DRAM lub SRAM.

Inne urządzenie nieulotne może przechowywać podtrzymywane znaczniki, historię zdarzeń i dane konfiguracyjne.

Napęd serwo wykorzystuje podobną organizację. Pamięć flash przechowuje oprogramowanie układowe sterowania i bazy danych silników. Szybka pamięć RAM obsługuje obliczenia prądu, prędkości i położenia.

Pamięć nieulotna zachowuje parametry strojenia, czas pracy i historię usterek.

Roboty przemysłowe, systemy CNC i platformy wizyjne korzystają z tego samego ogólnego modelu, choć ich wymagania dotyczące pojemności i przepustowości mogą być znacznie wyższe.

Zrozumienie tych trzech ról pamięci pomaga inżynierom uniknąć stosowania jednej technologii do każdego rodzaju obciążenia.

Przemysłowa platforma wbudowana z procesorem, komunikacją, wejściami/wyjściami, czujnikami, pamięcią flash, pamięcią RAM roboczą i pamięcią podtrzymywaną

Rysunek 2. Typowy przemysłowy system wbudowany łączy przetwarzanie, wejścia/wyjścia, komunikację, pamięć programu, pamięć roboczą i pamięć danych podtrzymywanych.

Pamięć flash i niezawodne uruchamianie sterownika

Każdy sterownik przemysłowy rozpoczyna działanie od pobrania kodu wykonywalnego z pamięci nieulotnej.

Sekwencja uruchamiania może zainicjować procesor, przetestować sprzęt, skonfigurować interfejsy, zweryfikować oprogramowanie układowe, przywrócić zatwierdzone parametry i uruchomić aplikację użytkownika.

Jeśli zapisany kod jest uszkodzony, sterownik może nie ukończyć tej sekwencji. Maszyna może pozostać niedostępna, nawet gdy każdy element mechaniczny działa prawidłowo.

Pamięć flash NOR jest powszechnie stosowana do przechowywania programów przemysłowych, ponieważ zapewnia nieulotność danych i odczyt swobodny.

W wielu konstrukcjach stosuje się również wykonywanie kodu bezpośrednio z pamięci. Procesor odczytuje instrukcje bezpośrednio z pamięci flash, zamiast kopiować całą aplikację do pamięci RAM.

Takie podejście może skrócić czas uruchamiania i zmniejszyć wymagania dotyczące pamięci roboczej. Zwiększa jednak znaczenie wydajności odczytu z pamięci flash i stabilności interfejsu.

Urządzenie musi dostarczać kod w sposób spójny przy zmianach napięcia i skrajnych temperaturach. Marginesy czasowe muszą pozostać wystarczające w najgorszych warunkach pracy.

Nowoczesne oprogramowanie układowe wymaga większej pojemności niż wcześniejsze aplikacje sterujące. Stosy sieciowe, interfejsy internetowe, biblioteki zabezpieczeń, usługi diagnostyczne i funkcje zdalnych aktualizacji zajmują miejsce w pamięci.

Projektanci muszą również zarezerwować pojemność na przyszłe wydania. Zapełnienie pamięci już przy pierwszej wersji oprogramowania pozostawia niewiele miejsca na poprawki bezpieczeństwa lub nowe funkcje komunikacyjne.

Urządzenia przemysłowe mogą pozostawać w eksploatacji przez piętnaście lat lub dłużej. W tym czasie wymagania dotyczące ich oprogramowania mogą się znacznie zmienić.

Pojemność pamięci na kod powinna zatem uwzględniać realistyczny zapas na rozwój, a nie tylko początkowy rozmiar oprogramowania układowego.

Niezawodność uruchamiania powinna obejmować również sposób odzyskiwania. Urządzenie musi wiedzieć, jak zareagować, gdy weryfikacja oprogramowania układowego się nie powiedzie lub aktualizacja zostanie przerwana.

Aktualizacje oprogramowania układowego nie mogą pozostawiać maszyn niesprawnych

Zdalne aktualizacje oprogramowania układowego są coraz powszechniejsze w połączonych systemach przemysłowych.

Zmniejszają koszty serwisowania i pozwalają producentom usuwać usterki lub luki w zabezpieczeniach bez konieczności odwiedzania każdej instalacji.

Przerwana aktualizacja może jednak uszkodzić aktywny obraz oprogramowania układowego. Awaria zasilania lub utrata komunikacji może uniemożliwić ponowne uruchomienie urządzenia.

Jednym z typowych rozwiązań jest architektura z dwoma obrazami. Sterownik zachowuje bieżące oprogramowanie układowe, zapisując nową wersję w innym obszarze pamięci.

System weryfikuje nowy obraz przed jego aktywacją. Jeśli walidacja się nie powiedzie, nadal korzysta z wcześniejszej wersji.

Taka konstrukcja usprawnia odzyskiwanie, ale wymaga dodatkowej pojemności i starannego zarządzania partycjami.

Proces aktualizacji również musi weryfikować autentyczność. Podłączone urządzenia nie powinny uruchamiać oprogramowania układowego z nieznanego lub nieautoryzowanego źródła.

Bezpieczne uruchamianie ustanawia zaufanie od samego początku procesu startowego. Sterownik sprawdza podpis oprogramowania przed jego wykonaniem.

Proces weryfikacji opiera się na chronionych kluczach i zaufanym kodzie uruchomieniowym. Elementy te muszą być przechowywane w miejscu, którego zwykłe oprogramowanie aplikacyjne nie może dowolnie modyfikować.

Ochrona przed wycofaniem wersji może być również konieczna. Osoba atakująca nie powinna mieć możliwości ponownego zainstalowania starszej wersji oprogramowania układowego zawierającej znane luki w zabezpieczeniach.

Aktualizacje oprogramowania układowego powodują cykle zapisu w pamięci Flash. Ich częstotliwość jest zwykle znacznie mniejsza niż w przypadku rejestrowania zdarzeń, ale nadal należy uwzględnić ją w obliczeniach dotyczących cyklu życia.

Inżynierowie powinni udokumentować maksymalną oczekiwaną liczbę aktualizacji, wymaganą metodę odzyskiwania oraz zachowanie systemu podczas nagłej utraty zasilania.

Kontroler obsługujący zdalne aktualizacje bez niezawodnego mechanizmu awaryjnego powrotu może obniżyć koszty serwisowania, jednocześnie zwiększając ryzyko operacyjne.

Wytrzymałość i trwałość danych pamięci Flash wymagają odrębnego podejścia

Pamięć Flash nie zawsze pozwala na bezpośrednie nadpisywanie danych. Przed zaprogramowaniem nowych informacji obszar może wymagać skasowania.

Operacje kasowania zwykle dotyczą bloków, a nie pojedynczych bajtów. To sprawia, że pamięć Flash jest skuteczna w przypadku oprogramowania układowego, ale bardziej złożona w przypadku często zmienianych danych.

Obraz rozruchowy może zmieniać się tylko kilka razy w roku. Licznik produkcyjny może być aktualizowany co sekundę.

Umieszczenie obu obciążeń w tym samym obszarze pamięci może powodować niepotrzebne zużycie i komplikować odzyskiwanie danych.

Równoważenie zużycia rozkłada zapisy na kilka fizycznych lokalizacji. Zapobiega to zbyt wczesnemu osiągnięciu limitu wytrzymałości przez jeden często aktualizowany adres.

Zduplikowane rekordy mogą również zwiększyć niezawodność. Kontroler zapisuje nową kopię przed unieważnieniem poprzedniej wersji.

Jeśli zasilanie zniknie podczas aktualizacji, pozostanie co najmniej jeden prawidłowy rekord.

Trwałość danych to odrębna kwestia. Urządzenie może tolerować wiele cykli zapisu, ale przechowywać dane przez krótszy czas w podwyższonej temperaturze.

Szafy elektryczne mogą pozostawać ciepłe z powodu napędów, procesorów, zasilaczy i ograniczonego przepływu powietrza.

Urządzenia zewnętrzne mogą być narażone zarówno na wysoką temperaturę w ciągu dnia, jak i na rozruch w niskiej temperaturze.

Inżynierowie powinni oceniać trwałość danych w całym określonym przemysłowym zakresie temperatur. Dane dla temperatury pokojowej dostarczają niepełnych wskazówek.

Kompletny system należy również testować podczas wielokrotnych cykli włączania i wyłączania zasilania. Wiele awarii pamięci masowej występuje podczas zmian napięcia, a nie w czasie stabilnej pracy.

Niezawodność pamięci Flash zależy zatem od współdziałania urządzenia pamięciowego, architektury zasilania, synchronizacji interfejsu i metody aktualizacji oprogramowania.

Rozszerzona pamięć RAM obsługuje aktywne obciążenie

Procesory mają wewnętrzną pamięć SRAM, ale nowoczesne zastosowania przemysłowe często wymagają większej pojemności tymczasowej.

Rozszerzona pamięć RAM obsługuje aktywne programy sterujące, systemy operacyjne, bufory sieciowe, wizualizację, obliczenia analityczne i tymczasowe struktury danych.

Ta pamięć zwykle traci zawartość po odłączeniu zasilania. Jej głównym zadaniem jest zapewnienie szybkiego i przewidywalnego dostępu podczas pracy.

Pamięć DRAM zapewnia dużą pojemność i dużą przepustowość. Jest powszechnie stosowana w systemach, które zarządzają dużymi zbiorami danych lub złożonymi środowiskami programowymi.

DRAM wymaga jednak operacji odświeżania, kontrolowanego taktowania interfejsu oraz starannego projektowania płytki PCB. Może również zwiększać zużycie energii i obciążenie cieplne.

Pamięć SRAM zapewnia prostszy dostęp i przewidywalne działanie, ale zazwyczaj oferuje mniejszą gęstość przy wyższym koszcie.

Właściwy wybór zależy od obciążenia. Kompaktowy sterownik PLC ma inne wymagania niż komputer przemysłowy obsługujący system wizyjny.

Pojemność pamięci należy określać na podstawie szczytowego zapotrzebowania, a nie średniego wykorzystania.

Sterownik może działać normalnie przy umiarkowanym zużyciu pamięci. Duży ruch sieciowy, przechwytywanie danych diagnostycznych lub zmiana receptury mogą powodować tymczasowe szczyty obciążenia.

Niewystarczający zapas może prowadzić do błędów alokacji lub niestabilnego działania podczas tych zdarzeń.

Aplikacje czasu rzeczywistego powinny również unikać niekontrolowanej alokacji dynamicznej. Wielokrotne przydzielanie i zwalnianie pamięci może powodować fragmentację oraz nieprzewidywalne czasy wykonania.

Wiele systemów przemysłowych rezerwuje pamięć podczas uruchamiania. Stałe bufory i określone limity zadań pomagają zachować deterministyczne działanie.

Rozszerzenie pamięci RAM to zatem coś więcej niż dodatkowa pojemność. Musi ono spełniać wymagania dotyczące synchronizacji i niezawodności całej aplikacji.

Różne maszyny mają różne wymagania dotyczące pamięci roboczej

Sterowniki PLC tradycyjnie wykorzystywały pamięć roboczą do przechowywania tabel wejść/wyjść, timerów, liczników, zmiennych programu i danych komunikacyjnych.

Nowoczesne sterowniki utrzymują również bufory alarmów, usługi internetowe, sesje bezpieczeństwa, historię danych oraz kilka protokołów przemysłowych.

Te dodatkowe usługi wyjaśniają, dlaczego współczesne systemy PLC i PAC wymagają znacznie więcej pamięci niż wcześniejsze generacje.

Systemy ruchu stawiają jeszcze jeden wymóg. Sterowniki serwo wykonują obliczenia prądu, prędkości i położenia z wysoką częstotliwością.

Pętle te wymagają stałego dostępu. Duża pojemność pamięci przynosi niewielkie korzyści, jeśli opóźnienia zmieniają się w nieprzewidywalny sposób.

Krytyczne zmienne ruchu mogą pozostawać w szybkiej pamięci wewnętrznej. Dane trajektorii, bufory komunikacyjne i wizualizacja mogą korzystać z zewnętrznej pamięci RAM.

Roboty przemysłowe łączą sterowanie ruchem z planowaniem trajektorii, strefami kolizji, transformacjami współrzędnych i komunikacją z urządzeniami peryferyjnymi.

Roboty sterowane wizyjnie dodają przetwarzanie obrazu i dane modeli. Obciążenia te nie mogą przerywać deterministycznego sterowania osiami.

Systemy CNC wymagają programów obróbki, baz danych narzędzi, interfejsów graficznych, buforów interpolacji oraz obliczeń predykcyjnych.

Szybka obróbka może analizować wiele nadchodzących poleceń ruchu przed ich wykonaniem. Zapewnia to płynny ruch i stabilną wydajność skrawania.

Systemy wizyjne maszynowego przetwarzania obrazu tworzą szczególnie duże tymczasowe zbiory danych. W celu filtrowania, porównywania i rozpoznawania obiektów może być jednocześnie przechowywanych kilka klatek obrazu.

Większość klatek nie wymaga trwałego przechowywania. Rozszerzona pamięć RAM przechowuje je do czasu uzyskania wyniku inspekcji.

Architektura musi zatem odpowiadać zastosowaniu. Logiki PLC, sterowania ruchem, robotyki, CNC i systemów wizyjnych nie można oceniać na podstawie jednej ogólnej specyfikacji pamięci.

Przepustowość pamięci należy oceniać na poziomie całego systemu

Karta katalogowa pamięci może wskazywać imponującą szczytową przepustowość. Rzeczywista aplikacja może osiągać znacznie mniej.

Rdzenie procesora, silniki graficzne, interfejsy sieciowe, kontrolery pamięci masowej i akceleratory mogą współdzielić tę samą magistralę pamięci.

Rywalizacja o zasoby wzrasta, gdy kilka funkcji działa jednocześnie.

Sterownik może działać prawidłowo w normalnych warunkach sterowania, ale zwalniać podczas intensywnej komunikacji lub przechwytywania danych diagnostycznych.

Komputer przemysłowy może prawidłowo przetwarzać obrazy, dopóki wizualizacja, rejestrowanie danych w bazie danych i zdalny dostęp nie występują jednocześnie.

Testy systemu powinny zatem odtwarzać połączone obciążenia. Sterowanie, komunikacja, wyświetlanie, analityka i zapis danych powinny działać jednocześnie.

Opóźnienie jest często równie ważne jak całkowita przepustowość. Zadania czasu rzeczywistego wymagają stałego dostępu, a nie tylko wysokiej średniej szybkości.

Pamięć podręczna może poprawić średnią wydajność procesora. Jednak brak danych w pamięci podręcznej może wydłużyć czas dostępu.

Krytyczny kod i zmienne mogą wymagać umieszczenia w szybkiej pamięci lokalnej. Mniej pilne dane mogą korzystać z zewnętrznej pamięci RAM.

Bezpośredni dostęp do pamięci może przenosić dane między urządzeniami peryferyjnymi a pamięcią bez ciągłego udziału procesora.

Jest to przydatne w przypadku przemysłowego Ethernetu, akwizycji danych i widzenia maszynowego. Tworzy to również wymagania dotyczące synchronizacji.

Procesor musi wiedzieć, kiedy transfery zostały zakończone. Dane w pamięci podręcznej muszą pozostać spójne z zawartością pamięci fizycznej.

Systemy wielordzeniowe zwiększają złożoność, ponieważ kilka procesorów może jednocześnie uzyskiwać dostęp do współdzielonych informacji.

Architektura oprogramowania, przypisanie zadań i ochrona pamięci są zatem kluczowymi elementami projektowania wydajności.

Pamięć do rejestrowania danych zachowuje historię maszyny

Systemy przemysłowe generują alarmy, zmiany stanów, wartości procesowe i pomiary diagnostyczne przez cały czas pracy.

Informacje te wyjaśniają, co wydarzyło się przed awarią. Wspierają również analizę produkcji, planowanie konserwacji, kontrolę jakości i zarządzanie energią.

Pamięć do rejestrowania danych jest obciążana w inny sposób niż pamięć flash programu lub robocza pamięć RAM.

Może przez wiele lat przyjmować ciągłe zapisy. Musi również zachować ważne dane, gdy napięcie zasilające zaniknie.

Szybka maszyna może generować tysiące zdarzeń w ciągu godziny. System monitorowania stanu może stale rejestrować temperaturę, natężenie prądu, drgania i wartości procesowe.

Ilość danych może szybko rosnąć, gdy dodawanych jest wiele czujników.

Nie każdy rekord wymaga trwałego przechowywania. Rutynowe wartości procesowe można podsumowywać, natomiast alarmy i zdarzenia nietypowe powinny być przechowywane dłużej.

Strategia rejestrowania powinna zatem określać priorytet danych, częstotliwość próbkowania, okres przechowywania i akceptowalną utratę danych podczas nagłego wyłączenia.

Trwałość pamięci należy obliczać na podstawie rzeczywistego obciążenia zapisem.

Zmienna zapisywana raz na sekundę generuje ponad trzydzieści milionów zapisów rocznie. Rejestrator działający na poziomie milisekund generuje znacznie większą liczbę.

Obliczenia powinny uwzględniać metadane i operacje zarządzania pamięcią masową. Systemy plików mogą wykonywać więcej fizycznych zapisów, niż żąda aplikacja.

Buforowanie może zmniejszyć liczbę operacji zapisu. Jednak dane przechowywane w roboczej pamięci RAM pozostają narażone na utratę, dopóki nie trafią do pamięci nieulotnej.

Prawidłowy projekt zapewnia równowagę między trwałością, wydajnością a ilością danych, które mogą zostać utracone podczas przerwy w działaniu.

Czujniki przemysłowe i maszyny generujące ciągłe dane procesowe, dane o zdarzeniach i dane diagnostyczne

Rysunek 3. Inteligentne urządzenia produkcyjne generują ciągłe strumienie danych, które należy niezawodnie przetwarzać, przechowywać i odzyskiwać.

Pamięć SRAM podtrzymywana bateryjnie rozwiązywała jeden problem, ale tworzyła inne

Wiele starszych systemów przemysłowych wykorzystywało pamięć SRAM podtrzymywaną bateryjnie do zachowywania danych.

Pamięć SRAM o niskim poborze mocy pozostawała zasilana z baterii po zniknięciu głównego zasilania.

Metoda ta zapewniała szybki dostęp i proste działanie oprogramowania. Sterownik mógł używać zachowanego obszaru jak zwykłej pamięci.

Sprawdzała się w przypadku parametrów maszyn, liczników, receptur, rejestrów zdarzeń i stanu pracy.

Bateria stawała się jednak elementem wymagającym konserwacji. Jej pojemność spadała wraz z wiekiem, temperaturą i warunkami przechowywania.

Słaba bateria mogła pozostać niezauważona, podczas gdy maszyna nadal działała normalnie.

Awaria stawała się widoczna dopiero po zniknięciu głównego zasilania i utracie zachowanych informacji.

Wymiana baterii wymagała procedur serwisowych, zapasu części zamiennych, zaplanowanego dostępu i zarządzania utylizacją.

Zdalne lokalizacje zwiększały skalę tego problemu. Wymiana małej baterii mogła wymagać dojazdu technika do odizolowanej przepompowni lub instalacji infrastruktury komunalnej.

Pamięć podtrzymywana bateryjnie wymagała również układu nadzorującego. Układ wykrywał utratę głównego zasilania i przełączał pamięć SRAM na zasilanie awaryjne.

Musiał zapobiegać niestabilnym zapisom podczas zmian napięcia. Nieprawidłowe przełączanie mogło uszkodzić dane, nawet gdy bateria pozostawała sprawna.

Dodatkowe komponenty zwiększały powierzchnię płytki PCB i tworzyły więcej potencjalnych punktów awarii.

Te ograniczenia skłoniły projektantów do poszukiwania pamięci nieulotnej, która umożliwiałaby częsty zapis bez polegania na wymiennej baterii.

Pamięci RAM nieulotne oferują kilka alternatyw

Nowoczesne technologie pamięci nieulotnych mogą zachowywać dane bez stałego zasilania podtrzymującego.

Żadna pojedyncza technologia nie jest idealna dla każdego zastosowania. Każda zapewnia inną równowagę między gęstością, szybkością, wytrzymałością, kosztem i czasem przechowywania.

F-RAM może obsługiwać częste operacje zapisu przy niskim zużyciu energii podczas zapisu. Nadaje się do liczników, dzienników zdarzeń i zachowywanych zmiennych.

nvSRAM łączy działanie zwykłej pamięci SRAM z mechanizmem przechowywania nieulotnego. Aktywne dane można zachować podczas utraty zasilania.

MRAM oferuje inne podejście, wykorzystując stany magnetyczne do zachowywania informacji. Jej przydatność zależy od wymaganej pojemności, interfejsu i kosztu systemu.

Zarządzana pamięć flash zapewnia znacznie większą gęstość. Jest przydatna w przypadku dużych baz danych, przechowywania obrazów i długich historii.

Jednak pamięć oparta na flashu wymaga zarządzania zużyciem, korekcji błędów i uwzględnienia opóźnienia zapisu.

Metoda przechowywania powinna odpowiadać klasie danych.

Licznik o wysokiej częstotliwości wymaga doskonałej wytrzymałości, ale niewielkiej pojemności. Archiwum obrazów z systemu wizyjnego wymaga znacznie większej pojemności, ale może otrzymywać mniej zapisów w każdej fizycznej lokalizacji.

Zachowany stan maszyny wymaga szybkiego i niezawodnego przechwycenia danych po utracie zasilania. Historyczna baza danych może tolerować dłuższy proces wyłączania.

Inżynierowie powinni unikać wyboru pamięci nieulotnej wyłącznie dlatego, że jest nowsza od pamięci SRAM podtrzymywanej bateryjnie.

Decyzję należy oprzeć na częstotliwości zapisu, wymaganym czasie przechowywania, warunkach środowiskowych i akceptowalnym sposobie odzyskiwania.

Testy powinny obejmować wielokrotne przerwanie zasilania podczas aktywnego zapisu. Ujawnia to słabości, których zwykłe testy trwałości mogą nie wykryć.

Utratę zasilania należy traktować jako zdarzenie zagrażające integralności danych

Przerwa w zasilaniu robi więcej niż tylko zatrzymuje procesor. Może przerwać aktywny zapis i pozostawić niekompletne zapisane informacje.

Skutkiem może być uszkodzony rekord, nieprawidłowa konfiguracja lub uszkodzenie większej struktury plików.

Solidne systemy wykrywają spadek napięcia zasilania, zanim procesor stanie się niestabilny.

Sterownik może wtedy zatrzymać działania nieistotne i zachować informacje krytyczne.

Kondensatory podtrzymujące lub zasilacz bezprzerwowy mogą dostarczyć wystarczającej energii do kontrolowanego wyłączenia.

Wymagany czas zależy od metody przechowywania i ilości danych.

Zapisanie kilku zmiennych zachowywanych może wymagać tylko krótkiego czasu. Zamknięcie bazy danych lub dużego systemu plików może potrwać znacznie dłużej.

Należy nadać priorytet informacjom krytycznym. Sterownik może wymagać zachowania aktywnej receptury, liczby partii, trybu maszyny, stanu awarii i pozycji osi.

Tymczasowe dane wyświetlania i bufory rutynowej komunikacji można zazwyczaj odrzucić.

Logika odzyskiwania ma równie duże znaczenie. Sterownik nie powinien zakładać, że zachowane informacje są prawidłowe tylko dlatego, że istnieją.

Sumy kontrolne mogą wykrywać uszkodzenia. Numery sekwencyjne mogą wskazywać najnowszy kompletny rekord.

Zduplikowana pamięć masowa może zachować zarówno poprzednią, jak i bieżącą wersję podczas aktualizacji.

Uszkodzona konfiguracja może być bardziej niebezpieczna niż jej brak. Maszyna może uruchomić się z nieprawidłowymi parametrami, sprawiając wrażenie normalnie działającej.

Z tego powodu krytyczne rekordy wymagają weryfikacji przed użyciem. W niektórych zastosowaniach wznowienie pracy powinno również wymagać potwierdzenia operatora.

Konserwacja predykcyjna zależy od niezawodnej pamięci brzegowej

Konserwacja predykcyjna opiera się na ciągłych danych o zachowaniu urządzeń.

Czujniki mogą rejestrować drgania, temperaturę, prąd, ciśnienie, prędkość i stan smarowania.

Pomiary te są porównywane w czasie w celu wykrycia pogorszenia stanu, zanim wystąpi awaria funkcjonalna.

Chmura może wspierać analizę floty, ale niezawodna pamięć lokalna nadal pozostaje niezbędna.

Przerwa w komunikacji nie powinna powodować okresu niewidoczności danych. Urządzenie brzegowe powinno buforować dane do czasu przywrócenia połączenia.

Wymagana pojemność bufora zależy od częstotliwości próbkowania, typu danych i przewidywanego czasu trwania awarii.

Przebiegi drgań o wysokiej częstotliwości tworzą znacznie większe zbiory danych niż trendy temperatury.

Dlatego wiele systemów oblicza cechy lokalnie. Całkowite drgania, piki widmowe, współczynnik szczytu i zmiana temperatury wymagają mniej miejsca niż kompletne przebiegi surowe.

Dane surowe można zachować wokół anomalii, alarmów i wybranych okresów diagnostycznych.

Ta metoda zmniejsza obciążenie komunikacji i pamięci masowej, zachowując jednocześnie istotne dowody inżynieryjne.

Jakość danych należy przechowywać razem z pomiarem. Brakujące próbki, usterki czujników, zmiany kalibracji i awarie komunikacji muszą pozostać widoczne.

W przeciwnym razie zamrożone lub niekompletne dane mogą sprawiać wrażenie przedstawiających stabilne działanie maszyny.

Synchronizacja czasu jest również niezbędna. Zdarzenia z napędów, sterowników, bram komunikacyjnych i baz danych historycznych muszą pozostać w prawidłowej kolejności.

Rozregulowany zegar może sprawić, że alarm pojawi się przed wystąpieniem warunku procesowego, który go wywołał.

Niezawodna pamięć, znaczniki jakości danych i zsynchronizowane znaczniki czasu są zatem częścią architektury konserwacji predykcyjnej.

Rzeczywiste maszyny pokazują, dlaczego jeden typ pamięci nie wystarcza

Rozważmy linię pakującą z napędami serwo, czytnikami kodów kreskowych, systemem wizyjnym, przenośnikami i centralnym sterownikiem PLC.

Pamięć flash przechowuje oprogramowanie sprzętowe sterownika, aplikację maszyny, usługi komunikacyjne i oprogramowanie do zarządzania recepturami.

Rozszerzona pamięć RAM obsługuje aktywną logikę, bufory sieciowe, obliczenia produkcyjne i tymczasowe przetwarzanie obrazów.

Pamięć nieulotna zachowuje informacje o partii, liczbę odrzuceń, historię alarmów i usterki napędów.

System wizyjny może kontrolować każde opakowanie, ale przechowywać tylko obrazy wadliwych produktów i wybrane próbki produkcyjne.

Tymczasowe klatki obrazów pozostają w pamięci RAM do czasu zakończenia decyzji inspekcyjnej. Przechowywanie każdego obrazu zajmowałoby niepotrzebnie dużo miejsca.

Po przerwie w zasilaniu sterownik musi odtworzyć prawidłowe informacje o partii. Nie powinien automatycznie wznawiać wszystkich działań mechanicznych.

Częściowo przetworzone produkty mogą pozostać wewnątrz maszyny, a osie serwonapędów mogą wymagać potwierdzenia pozycji.

Zdalna stacja pomp ma inne priorytety.

Łącze komunikacyjne może zniknąć na kilka godzin, ale sterownik PLC musi nadal lokalnie sterować pompami.

Pamięć nieulotna zapisuje ciśnienie, przepływ, prąd silnika, zużycie energii, alarmy i uruchomienia pomp podczas przerwy w komunikacji.

Po przywróceniu komunikacji brama przesyła zbuforowaną historię do platformy centralnej.

Przemysłowe komputery PC używane do systemów wizyjnych, baz danych lub analityki brzegowej tworzą jeszcze większe obciążenia. Mogą wymagać znacznej ilości pamięci DRAM i pamięci masowej półprzewodnikowej.

Odpowiednie przemysłowe platformy komputerowe należy zatem oceniać pod kątem pojemności pamięci, zachowania podczas utraty zasilania, ograniczeń środowiskowych i serwisowalności.

Temperatura, zakłócenia i jakość zasilania kształtują niezawodność

Pamięć przemysłowa działa w większym środowisku elektrycznym i mechanicznym.

Silniki, styczniki, urządzenia spawalnicze, napędy i zasilacze impulsowe generują zakłócenia elektromagnetyczne.

Szybkie interfejsy pamięci mogą stać się wrażliwe na nieprawidłowe prowadzenie ścieżek, niestabilne zasilanie i niewystarczające uziemienie.

Komponent pamięci może spełniać wszystkie wymagania z karty katalogowej, podczas gdy cała płytka nadal pozostaje zawodna.

Układ płytki PCB, integralność sygnałów, ekranowanie i regulacja napięcia wpływają na wynik.

Temperatura stwarza kolejne wyzwanie. Kompaktowe sterowniki i szczelne urządzenia brzegowe mogą pracować bez wentylatorów.

Procesory, układy komunikacyjne i przetwornice zasilania podnoszą temperaturę wewnątrz obudowy.

Wyższa temperatura może wpływać na retencję danych, prąd upływu, taktowanie i żywotność podzespołów.

Urządzenia zewnętrzne mogą w tym samym roku doświadczać uruchamiania na zimno, szybkich zmian temperatury i intensywnego nagrzewania przez promieniowanie słoneczne.

Testowanie wyłącznie w temperaturze pokojowej dostarcza ograniczonych dowodów przydatności do zastosowań przemysłowych.

Cały system należy ocenić w skrajnych warunkach napięcia i temperatury. Należy go również przetestować podczas wielokrotnego włączania i wyłączania zasilania.

Drgania mechaniczne mogą wpływać na wymienną pamięć masową, złącza i połączenia lutowane.

Pamięć lutowana poprawia stabilność mechaniczną, ale może utrudniać naprawy w terenie. Wymienna pamięć masowa ułatwia wymianę, lecz zwiększa ryzyko związane z połączeniami i obsługą.

Właściwa konstrukcja zależy od miejsca instalacji, strategii serwisowej i krytyczności urządzenia.

Integralność danych i cyberbezpieczeństwo zbliżają się do siebie

Błędy pamięci mogą wynikać z zakłóceń elektrycznych, starzenia się podzespołów, niestabilnego zasilania, wad oprogramowania lub zdarzeń radiacyjnych.

Niektóre błędy dotyczą jednego bitu. Inne mogą uszkodzić cały rekord konfiguracji lub strukturę pamięci masowej.

Kody korekcji błędów mogą wykrywać i naprawiać niektóre usterki. Bit parzystości może wykrywać prostsze błędy.

Sumy kontrolne lub skróty kryptograficzne mogą weryfikować oprogramowanie układowe i krytyczne dane konfiguracyjne.

Skorygowane błędy nadal powinny być rejestrowane. Powtarzające się korekty mogą wskazywać na pogarszający się stan sprzętu, nadmierną temperaturę lub problemy z zasilaniem.

Oprogramowanie również może uszkodzić pamięć. Przepełnienia bufora, nieprawidłowe wskaźniki i konflikty zadań mogą uszkodzić dane bez fizycznej awarii urządzenia.

Jednostki ochrony pamięci mogą izolować aplikacje i ograniczać nieautoryzowany dostęp.

Bezpieczny rozruch dodaje kolejną warstwę ochrony. Sterownik weryfikuje autentyczność oprogramowania układowego przed jego wykonaniem.

Klucze bezpieczeństwa i certyfikaty wymagają chronionego przechowywania. Zwykłe oprogramowanie aplikacyjne nie powinno ujawniać prywatnych danych uwierzytelniających.

Interfejsy debugowania również muszą być kontrolowane w urządzeniach produkcyjnych. Otwarty port deweloperski może ominąć inne mechanizmy bezpieczeństwa.

Dzienniki bezpieczeństwa powinny pozostać chronione przed modyfikacją. Osoba atakująca nie powinna móc usunąć śladów, kasując zwykłe pliki.

Wymagania te pokazują, że integralność danych i cyberbezpieczeństwo nie są już odrębnymi zagadnieniami dotyczącymi pamięci.

Ta sama architektura musi chronić informacje zarówno przed przypadkowym uszkodzeniem, jak i celową modyfikacją.

Cykle życia urządzeń przemysłowych stwarzają problem wycofywania produktów z produkcji

Urządzenia przemysłowe często pozostają sprawne znacznie dłużej niż elektronika konsumencka.

Sterownik, napęd lub obrabiarka może być używana przez piętnaście albo dwadzieścia lat. Wybrane urządzenie pamięci może mieć znacznie krótszy okres produkcji.

Wycofanie z produkcji może wymusić przeprojektowanie płytki, nawet gdy pierwotny produkt przemysłowy nadal odnosi sukcesy.

Zamienne urządzenie może deklarować tę samą pojemność i interfejs, a mimo to działać inaczej.

Parametry czasowe, napięcie, sekwencje poleceń, funkcje bezpieczeństwa, trwałość oraz klasa temperaturowa mogą się różnić.

Sterowniki oprogramowania układowego mogą wymagać zmian. Zamiennik należy zweryfikować przy rzeczywistych obciążeniach, zamiast uznawać go automatycznie za kompatybilny.

Planowanie cyklu życia powinno rozpocząć się już podczas pierwotnego projektowania.

Inżynierowie powinni przeanalizować możliwości pozyskania zamienników od drugiego dostawcy, dostępność obudów, zależności programowe oraz przewidywany czas produkcji.

Zarządzane urządzenia pamięci masowej mogą również zgłaszać informacje o stanie, takie jak liczba błędów lub pozostały czas eksploatacji.

Informacje te pozwalają sterownikowi wykryć pogorszenie stanu przed całkowitą awarią.

Pamięć masową można wtedy wymienić podczas zaplanowanego przestoju, zamiast dopiero po nagłej utracie danych.

Dokumentacja jest równie ważna. Przyszłe zespoły inżynierskie muszą rozumieć podział pamięci, procedury aktualizacji, mechanizmy odzyskiwania oraz założenia dotyczące trwałości.

Bez tych informacji późniejsza modyfikacja oprogramowania może nieumyślnie przekroczyć ograniczenia pierwotnego projektu.

Wybór pamięci dla systemu przemysłowego

Praktyczny proces wyboru rozpoczyna się od sklasyfikowania danych.

Inżynierowie powinni zidentyfikować kod programu, zmienne czasu wykonywania, zachowane parametry, dzienniki zdarzeń, dane obrazowe oraz informacje dotyczące bezpieczeństwa.

Kolejnym krokiem jest określenie pojemności. Szacunek powinien obejmować przyszły rozwój oprogramowania, obrazy kopii zapasowych, metadane i przestrzeń na odzyskiwanie danych.

Należy obliczyć obciążenia odczytu i zapisu. Średnie wartości nie wystarczą. Znaczenie mają również szczytowe serie operacji i okresy rejestrowania danych w najgorszym przypadku.

Wymagania dotyczące opóźnień i przepustowości należy określić dla zadań czasu rzeczywistego. Urządzenie o dużej pojemności może nadal nie nadawać się do deterministycznego sterowania.

Trwałość przechowywania i wytrzymałość należy oceniać w całym oczekiwanym zakresie temperatur.

Projekt musi również definiować zachowanie podczas utraty zasilania. Inżynierowie powinni wiedzieć, które dane wymagają natychmiastowego zachowania i ile czasu może potrwać proces wyłączania.

Wykrywanie błędów, bezpieczny rozruch, przechowywanie kluczy i kontrola dostępu należy uwzględnić przed wyborem urządzenia.

Należy również uwzględnić dostępność w całym cyklu życia i zgodność zamienników.

Ostateczna architektura może wykorzystywać kilka technologii pamięci. Często jest to właściwy rezultat, a nie zbędna złożoność.

Pamięć flash może służyć do przechowywania oprogramowania układowego. Szybka pamięć RAM może obsługiwać aktywne sterowanie. Nieulotna pamięć o wysokiej wytrzymałości może zachowywać zdarzenia i zmienne podtrzymywane.

Pamięć masowa o większej gęstości może przechowywać obrazy, bazy danych i długie historie produkcji.

Celem nie jest znalezienie jednej uniwersalnej pamięci. Chodzi o przypisanie każdej klasie danych urządzenia odpowiadającego jej znaczeniu operacyjnemu.

Pamięć pozostanie kluczowym ograniczeniem Przemysłu 4.0

Przyszłe systemy przemysłowe będą wymagać większej pojemności i szybszego dostępu.

Większa liczba czujników wygeneruje więcej lokalnych danych. Analityka brzegowa będzie korzystać z większych modeli i dłuższych historii.

Sterowniki będą przechowywać więcej funkcji bezpieczeństwa, usług komunikacyjnych i oprogramowania diagnostycznego.

Pamięć flash o większej gęstości i pamięć nieulotna będą wspierać te wymagania. Szybsza pamięć RAM usprawni widzenie maszynowe i lokalną analitykę.

Pamięć podtrzymywana bez użycia baterii ograniczy konserwację i usprawni odzyskiwanie danych po utracie zasilania.

Jednak większa pojemność nie wyeliminuje potrzeby zdyscyplinowanej architektury.

Fabryki nie powinny przechowywać bezterminowo każdego surowego punktu danych. Systemy brzegowe muszą decydować, które informacje tworzą wartość operacyjną.

Rutynowe dane można podsumowywać. Szczegółowe informacje można przechowywać w związku z alarmami, awariami lub zdarzeniami dotyczącymi jakości.

Wydajność również musi pozostać przewidywalna. Szczytowa przepustowość jest mniej użyteczna, gdy czasy dostępu stają się niestabilne podczas obciążenia złożonymi zadaniami.

Projektanci systemów przemysłowych będą nadal równoważyć gęstość, opóźnienia, zużycie energii, wytrzymałość, bezpieczeństwo i wsparcie w całym cyklu życia.

Pamięć może pozostać niewidoczna dla operatorów, ale bezpośrednio wpływa na to, czy podłączona maszyna prawidłowo się uruchamia, działa, rejestruje dane i odzyskuje sprawność.

Przemysł 4.0 nie opiera się zatem wyłącznie na czujnikach, sieciach i sztucznej inteligencji.

Opiera się również na niezawodnej pamięci, która zachowuje instrukcje, kontekst i dowody stojące za każdą decyzją przemysłową.

Zostaw komentarz

Pamiętaj, że komentarze muszą zostać zatwierdzone przed ich opublikowaniem.