EICASLAB - EICASLAB

EICASLAB
Deweloper(zy) EICAS Automazione SpA
System operacyjny Windows/Linux
Rodzaj Obliczenia techniczne
Licencja Prawnie zastrzeżony
Strona internetowa www.eicaslab.com

EICASLAB to pakiet oprogramowania zapewniający laboratorium do automatycznego projektowania sterowania i prognozowania szeregów czasowych, opracowany jako końcowy wynik europejskiego projektu ACODUASIS IPS-2001-42068 finansowanego przez Wspólnotę Europejską w ramach Programu Innowacji. Projekt - w trakcie jego trwania - miał na celu dostarczenie w dziedzinie robotyki przełomu naukowego w postaci nowej metodologii projektowania automatycznego sterowania.

Aby ułatwić taki transfer wiedzy, EICASLAB został wyposażony w silnik oprogramowania „zautomatyzowanego algorytmu i generowania kodu”, który pozwala uzyskać algorytm algorytmu sterowania nawet bez głębokiej znajomości teorii i metodologii, które normalnie są wymagane przy tradycyjnym projektowaniu sterowania metodologie.

EICASLAB został i jest faktycznie przyjęty w innych europejskich projektach badawczych dotyczących robotyki (ARFLEX IST-NMP2-016880 i PISA Project NMP2-CT-2006-026697) i motoryzacji (HI-CEPS Project TIP5-CT-2006-031373 i ERSEC Project 7PR 247955). EICASLAB jest wykorzystywany w europejskim przemyśle, instytutach badawczych i nauce do projektowania systemów sterowania i prognozowania szeregów czasowych udokumentowanych w literaturze naukowej i technicznej.

EICASLAB zawiera narzędzia do modelowania zakładów, projektowania i testowania wbudowanych systemów sterowania , wspomagające etapy procesu projektowania strategii sterowania, od koncepcji systemu do generowania kodu oprogramowania sterującego dla ostatecznego celu.

Organizacja oprogramowania

EICASLAB to pakiet oprogramowania składający się z programu głównego o nazwie MASTER, który może wspomagać i zarządzać wszystkimi etapami projektowania sterowania za pomocą zestawu narzędzi, odpowiednio:

  • narzędzie SIMBUILDER, przeznaczone do programowania modeli symulacyjnych instalacji i algorytmów sterowania;
  • narzędzie SIM, przeznaczone do symulacji i oceny działania algorytmów sterowania;
  • narzędzie POST, poświęcone analizie wyników poprzez obróbkę końcową zarejestrowanych danych symulacyjnych;
  • narzędzie MPI/CPO, poświęcone identyfikacji parametrów modelu i optymalizacji parametrów kontrolnych;
  • narzędzie RCP Manager, przeznaczone do zarządzania działaniami Rapid Control Prototyping;
  • narzędzie SLOW MOTION, przeznaczone do powtarzania w trybie offline prób eksperymentalnych wykonywanych w terenie w celu zaawansowanego debugowania i dostrajania.

Funkcje wspierające kontrolę etapów projektowania

Wsparcie koncepcji systemu

EICASLAB zawiera następujące funkcje wspierające koncepcję systemu:

  • Projektowanie architektur sterowania wieloprocesorowego
  • Projektowanie wielopoziomowych hierarchicznych algorytmów sterowania

Rozważane są architektury sprzętowe, w tym wieloprocesorowe, oraz architektury programowe, w tym wielopoziomowe sterowanie hierarchiczne. Oprogramowanie sterujące jest podzielone na funkcje przydzielone przez projektanta do różnych procesorów. Każda funkcja sterująca ma własną częstotliwość próbkowania i okno czasowe na jej wykonanie, które są zaplanowane przez projektanta za pomocą harmonogramu EICASLAB .

Dane mogą być wymieniane między funkcjami sterującymi przydzielonymi do tego samego procesora i między różnymi procesorami należącymi do systemu sterowania zakładem. Uwzględniany jest czas opóźnienia w transmisji danych.

Ostateczne „oprogramowanie aplikacyjne” wygenerowane w C jest podzielone na pliki, z których każdy jest powiązany z określonym procesorem.

Wsparcie symulacji systemu

EICASLAB obejmuje określone obszary robocze do opracowywania, optymalizacji i testowania algorytmów i oprogramowania związanego ze „sterownikiem instalacji”, w tym zarówno „ sterowania automatycznego ”, jak i „generowania trajektorii” oraz „ zakłóceń ” działających na instalację. Do wykonania takiego zadania dostępne są trzy różne obszary robocze.

  • Obszar zakładu, który ma być wykorzystany do symulacji dynamicznego zachowania zakładu za pomocą „dokładnego modelu zakładu”,
  • Obszar sterowania do wykorzystania do projektowania funkcji związanych ze sterowaniem automatycznym i generowaniem trajektorii,
  • Obszar misji, który zostanie wykorzystany do zaplanowania symulowanych prób. Jest podzielony na dwie sekcje, odpowiednio, misję zakładu i misję kontrolną. Pierwsza generuje zakłócenie działające na elektrownię podczas symulowanych prób i planuje wszelkie inne zdarzenia dotyczące wydajności elektrowni, takie jak zmiany parametrów elektrowni. Drugi generuje polecenie hosta, które ma być wysłane do sterowania zakładem podczas symulowanych prób.

Wsparcie w projektowaniu algorytmu sterowania

EICASLAB zawiera następujące narzędzia i funkcje wspierające projektowanie algorytmu sterowania:

  • AAG: Automatyczne generowanie algorytmów
  • MPI: Identyfikacja parametrów modelu
  • CPO: Optymalizacja parametrów kontrolnych

Narzędzie Automatic Algorithm Generation, zaczynając od „uproszczonego modelu zakładu” i od „kontroli wymaganej wydajności”, generuje algorytm sterowania. Na podstawie danych projektowych instalacji, zastosowana metodologia projektowania sterowania pozwala na zaprojektowanie sterowników o gwarantowanej wydajności bez konieczności dostrajania w terenie, pomimo nieuniknionej niepewności, która zawsze istnieje pomiędzy dowolnym modelem matematycznym zbudowanym na podstawie danych projektowych instalacji, a rzeczywista wydajność zakładu (podstawy dotyczące kontroli w przypadku niepewności patrz ). Projektant ma do wyboru trzy podstawowe schematy sterowania i dla każdego z nich ma możliwość wyboru algorytmów sterowania o różnym stopniu skomplikowania. W syntezie automatycznie generowane sterowanie realizowane jest przez wypadkową trzech działań:

  • działanie w pętli otwartej, które jest podawane przez polecenia niezbędne do śledzenia sygnałów referencyjnych obliczonych na podstawie uproszczonego modelu zakładu;
  • kompensacja zakłóceń elektrowni, która jest obliczana na podstawie zakłóceń przewidywanych przez obserwatora stanu elektrowni;
  • zamkniętej pętli działania, który jest wyliczany jako działanie jest niezbędne, aby poprawić błąd stanu roślin w odniesieniu do jednego odniesienia.

Zadanie obserwatora stanu elektrowni może zostać rozszerzone o szacowanie i przewidywanie zakłóceń działających na elektrownię. Przewidywanie i kompensacja zakłóceń w instalacji jest oryginalną funkcją sterowania, która pozwala na znaczne zmniejszenie błędu sterowania. Identyfikacja Parametrów Modelu to narzędzie, które pozwala na identyfikację najbardziej odpowiednich wartości parametrów uproszczonego modelu z zarejestrowanych danych eksperymentalnych lub symulowanych prób przeprowadzonych przy użyciu „dokładnego modelu zakładu”. Wartość „prawdziwa” parametru nie istnieje: model jest przybliżonym opisem instalacji, a następnie „najlepsza” wartość parametru zależy od funkcji kosztu przyjętej do oceny różnicy między modelem a instalacją. Metoda identyfikacji pozwala oszacować najlepsze wartości parametrów uproszczonego modelu z punktu widzenia projektu regulacji w pętli zamkniętej. Optymalizacja parametrów sterowania to narzędzie, które wykonuje strojenie parametrów sterowania w symulowanym środowisku. Optymalizacja jest przeprowadzana numerycznie we wstępnie zdefiniowanej próbie symulacyjnej, to znaczy dla danej misji (sekwencja poleceń gospodarza i zakłócenia działające na elektrownię oraz wszelkie inne potencjalne zdarzenia związane z wydajnością elektrowni) oraz dla danego kosztu funkcjonalnego związanego z wydajnością sterowania elektrownią .

Wsparcie generowania kodu dla ostatecznego celu

Narzędzie EICASLAB Automatic Code Generation dostarcza kod źródłowy ANSI C związany z opracowanym algorytmem sterowania. Ostatecznym rezultatem pracy projektanta jest „oprogramowanie aplikacyjne” w ANSI C , debugowane i testowane, gotowe do kompilacji i połączenia w procesorach sterowania zakładem. „Oprogramowanie aplikacyjne” obejmuje oprogramowanie związane z funkcjami „automatycznego sterowania” i „generowania trajektorii”. Symulowane funkcje sterowania są dokładnie tymi samymi funkcjami, które projektant może przenieść w terenie w rzeczywistym sterowniku zakładu.

Wsparcie dla kontroli strojenia

EICASLAB zawiera następujące narzędzia wspomagające dostrajanie sterowania:

Slow Motion View to narzędzie do wykorzystania w fazie konfiguracji sterowania instalacją, zapewniające zmienną poprzez analizę zmiennych wydajności oprogramowania sterującego podczas prób eksperymentalnych wykonywanych na rzeczywistej instalacji.

Wejścia i wyjścia zakładu oraz polecenia hosta wysyłane do sterownika są rejestrowane podczas prób eksperymentalnych, a następnie mogą być przetwarzane przez EICASLAB w następujący sposób. Zarejestrowane zmienne wejściowe i wyjściowe zakładu są używane w Obszarze Zakładu wewnątrz zmiennych wejściowych i wyjściowych uzyskanych przez symulację zakładu. Zarejestrowane polecenia hosta są używane w obszarze Control Mission wewnątrz polecenia hosta generowanego przez funkcję Control Mission.

Następnie, gdy przeprowadzana jest symulowana próba, funkcja sterująca otrzymuje zarejestrowane dane wyjściowe rzeczywistej instalacji i powiązane zarejestrowane polecenia hosta wewnątrz symulowanych. Ponieważ funkcja sterująca działająca w EICASLAB jest dokładnie taka sama, jaka działa w rzeczywistym sterowniku instalacji, to polecenia wynikające z symulowanej funkcji sterującej i wysyłane z symulowanego sterowania do symulowanej instalacji powinny być dokładnie takie same zarejestrowane dane wejściowe instalacji (chyba że występują błędy numeryczne zależne od różnic między procesorem, na którym działa EICASLAB, a procesorem używanym w rzeczywistym sterowniku instalacji, ale doświadczenie pokazuje, że skutki takich różnic są nieistotne). Następnie zarejestrowana próba eksperymentalna wykonana przez rzeczywisty sterownik instalacji jest całkowicie powtarzana w EICASLAB, z tą różnicą, że teraz proces można przeprowadzić w zwolnionym tempie i, jeśli to przydatne, krok po kroku za pomocą programu debuggera.

Narzędzie Automatic Code Generation może być wykorzystane do wprowadzenia kodu sterownika w systemie operacyjnym Linux Real-time (RTOS) (w dwóch dostępnych wersjach, czyli Linux RTAI i Linux RT z wywłaszczaniem jądra ), w celu przetestowania algorytmu sterowania w Środowisko PC zamiast ostatecznego sprzętu docelowego, wykonując testy Rapid Control Prototyping (RCP). EICASLAB RCP zawiera harmonogram czasu rzeczywistego oparty na wielowątkowych technikach programowania, który może działać na procesorze wielordzeniowym .

Narzędzie do automatycznego generowania kodu może być użyte do wstawienia kodu kontrolera w końcowym celu sprzętowym. Po wykonaniu takiej operacji można przeprowadzić testy Hardware In the Loop (HIL), polegające na pilotowaniu – zamiast rzeczywistej instalacji – instalacji symulowanej w EICASLAB i działającej na twoim komputerze, odpowiednio skonfigurowanej i połączonej za pomocą niezbędnych interfejsów sprzętowych z końcowym Cel sprzętowy.

Bibliografia