Cyfrowe algorytmy sterowania AR S1 semestr 4 Projekt 4

Podobne dokumenty
Obiekt. Obiekt sterowania obiekt, który realizuje proces (zaplanowany).

Dla naszego obiektu ciągłego: przy czasie próbkowania T p =2.

O co chodzi z tym MATLAB'em?!

Konrad Słodowicz sk30792 AR22 Zadanie domowe satelita

Szybkie prototypowanie w projektowaniu mechatronicznym

Aproksymacja funkcji a regresja symboliczna

PRZEWODNIK PO PRZEDMIOCIE

1. Cel projektu. Sprawdzić wpływ ograniczeń sygnału sterującego oraz ograniczeń przyrostów sygnału sterującego.

PRZEWODNIK PO PRZEDMIOCIE

1. Regulatory ciągłe liniowe.

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

Regulator PID w sterownikach programowalnych GE Fanuc

Regulator PID w sterownikach programowalnych GE Fanuc

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Podstawy Automatyki. Wykład 7 - obiekty regulacji. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Rys 1 Schemat modelu masa- sprężyna- tłumik

PRZEWODNIK PO PRZEDMIOCIE

Algorytmy sztucznej inteligencji

Optymalizacja ciągła

Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

1. Opis teoretyczny regulatora i obiektu z opóźnieniem.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Wyszukiwanie binarne

Procesy i systemy dynamiczne Nazwa przedmiotu SYLABUS A. Informacje ogólne

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

Programowanie celowe #1

Automatyka i pomiary wielkości fizykochemicznych. Instrukcja do ćwiczenia VI Dobór nastaw regulatora typu PID metodą Zieglera-Nicholsa.

Teoria sterowania Control theory. Elektrotechnika I stopień ogólnoakademicki. niestacjonarne. przedmiot kierunkowy

Matlab - zastosowania Matlab - applications. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Elektrotechnika I stopień Ogólno akademicki. Przedmiot kierunkowy. Obowiązkowy Polski VI semestr zimowy

Systemy. Krzysztof Patan

Badanie wpływu parametrów korektora na własności dynamiczne układu regulacji automatycznej Ćwiczenia Laboratoryjne Podstawy Automatyki i Automatyzacji

E-E-A-1008-s5 Komputerowa Symulacja Układów Nazwa modułu. Dynamicznych. Elektrotechnika I stopień Ogólno akademicki. Przedmiot kierunkowy

Całka nieoznaczona, podstawowe wiadomości

Model Predictive Control

Modelowanie bilansu energetycznego pomieszczeń (1)

Regulacja dwupołożeniowa (dwustawna)

Elektrotechnika II stopień ogólnoakademicki. stacjonarne. przedmiot specjalnościowy. obowiązkowy polski semestr II semestr letni. tak. Laborat. 30 g.

Podstawy Automatyki. Wykład 6 - Miejsce i rola regulatora w układzie regulacji. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Automatyka i sterowania

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k.

Model Predictive Control podstawy

Regulatory o działaniu ciągłym P, I, PI, PD, PID

Modelowanie w projektowaniu maszyn i procesów cz.5

Implementacja rozmytych systemów wnioskujących w zdaniach regulacji

Podstawy Automatyki. wykład 1 ( ) mgr inż. Łukasz Dworzak. Politechnika Wrocławska. Instytut Technologii Maszyn i Automatyzacji (I-24)

PRZEWODNIK PO PRZEDMIOCIE

Identyfikacja obiektów dynamicznych za pomocą sieci neuronowych

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

ELEMENTY AUTOMATYKI PRACA W PROGRAMIE SIMULINK 2013

POLITECHNIKA ŚLĄSKA WYDZIAŁ GÓRNICTWA I GEOLOGII. Roman Kaula

Tematy magisterskie: Lp. Sugerowany stopień, kierunek studiów oraz specjalność Elektrotechnika Magisterska Dr hab. inż.

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

Automatyka i sterowanie w gazownictwie wstęp. Autor: dr inż. Iwona Oprzędkiewicz Nazwa wydziału: WIMiR Nazwa katedry: Katedra Automatyzacji Procesów

Wykresy statystyczne w PyroSim, jako narzędzie do prezentacji i weryfikacji symulacji scenariuszy pożarowych

Automatyka i Regulacja Automatyczna Laboratorium Zagadnienia Seria II

E2_PA Podstawy automatyki Bases of automatic. Elektrotechnika II stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny)

1 Układy równań liniowych

c - częstość narodzin drapieżników lub współczynnik przyrostu drapieżników,

MODELE I MODELOWANIE

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Analityczne metody detekcji uszkodzeń

PRZEWODNIK PO PRZEDMIOCIE

Elektrotechnika II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Ćwiczenie: "Mierniki cyfrowe"

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Elektrotechnika I stopień ogólnoakademicki. niestacjonarne. przedmiot kierunkowy. obieralny polski semestr VIII semestr letni. nie. Laborat. 16 g.

Podstawowe układy cyfrowe

Metody numeryczne Wykład 4

Aparaty słuchowe Hi-Fi z Multiphysics Modeling

1. POJĘCIA PODSTAWOWE I RODZAJE UKŁADÓW AUTOMATYKI

Elektrotechnika I stopień ogólnoakademicki. niestacjonarne. przedmiot kierunkowy. obieralny polski semestr VII semestr zimowy. nie

Procedura modelowania matematycznego

Z-ZIP-103z Podstawy automatyzacji Basics of automation

Rys. 1 Otwarty układ regulacji

Rozwiązywanie równań liniowych. Transmitancja. Charakterystyki częstotliwościowe

MATERIAŁY POMOCNICZE

Automatyka i robotyka ETP2005L. Laboratorium semestr zimowy

Sterowanie w programie ADAMS regulator PID. Przemysław Sperzyński

Przemysłowe sieci informatyczne

Przemysłowe sieci informatyczne

Badanie właściwości dynamicznych obiektów I rzędu i korekcja dynamiczna

CYFROWE PRZTWARZANIE SYGNAŁÓW (Zastosowanie transformacji Fouriera)

Sterowanie napędów maszyn i robotów

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Elektrotechnika II stopień ogólnoakademicki. stacjonarne. przedmiot specjalnościowy. obowiązkowy polski semestr I semestr zimowy

UWAGA. Wszystkie wyniki zapisywać na dysku Dane E: Program i przebieg ćwiczenia:

8. Neuron z ciągłą funkcją aktywacji.

Metody Prognozowania

Struktury specjalizowane wykorzystywane w mikrokontrolerach

Laboratorium Metrologii

Teoria przetwarzania A/C i C/A.

Sterowanie napędów maszyn i robotów

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

Znaleźć wzór ogólny i zbadać istnienie granicy ciągu określonego rekurencyjnie:

Politechnika Warszawska Wydział Samochodów i Maszyn Roboczych Instytut Podstaw Budowy Maszyn Zakład Mechaniki

Transkrypt:

Cyfrowe algorytmy sterowania AR S1 semestr 4 Projekt 4 MPC Sterowanie predykcyjne Cel: Poznanie podstaw regulacji predykcyjnej i narzędzi do badań symulacyjnych Wykonali: Konrad Słodowicz Patryk Frankowski 1. Co to jest sterowanie predykcyjne? Sterowanie predykcyjne (ang. MPC Model Predictive Control), jak wskazuje nazwa, opiera się na predykcji zachowania obiektu. Kiedy na wejściu pojawi się pewne wymuszenie, regulator sprawdza różne możliwe sygnały sterowania i na podstawie pewnego znanego modelu obiektu sprawdza, który z nich da najlepsze, względem pewnego wskaźnika jakości, wyjście. Ponieważ model nie jest idealny, predykcja powtarzana jest co takt, biorąc pod uwagę nowe dane odpowiedź obiektu na ów takt sterowania. Na obiekt podawany jest tylko pierwszy takt z wyznaczonego sygnału sterowania (jest on, bowiem, dyskretny). Innymi słowy, jeśli w chwili k wyznaczony został pewien sygnał sterowania, to do obiektu wejdzie jedynie pierwszy krok, gdyż w chwili k+1 regulator wyznaczy nowy sygnał sterowania itd. Regulator nie ma niekończonej pamięci, może on przewidzieć sygnał wyjścia tylko dla skończonej liczby taktów. Jest to tzw. horyzont predykcji. Sterowanie, natomiast, szukane jest dla krótszej ilości kolejnych taktów tzw. horyzontu sterowania. W teorii, oczywiście, chcielibyśmy, aby zarówno horyzont predykcji jak i sterowania były jak najdłuższe. W praktyce, jednak, ich długość, a zwłaszcza horyzontu sterowania, ma duży wpływ na wydajność regulatora. Informacje o obiekcie mogą być podane regulatorowi w wielu postaciach. W ogólności, model obiektu może być podany w dowolnej formie, przez transmitancję, równania, 1

macierze stanu, serię próbek itp. Poza samym modelem, jednak, regulator musi znać wszelkie ograniczenia sygnałów najlepsze, w teorii, sterowanie jest najczęściej niemożliwe do odtworzenia przez zespoły wykonawcze. Regulator musi również pamiętać historię zachowania obiektu. 2. Matlab MPC Toolbox Program Matlab umożliwia stworzenie kontrolera predykcyjnego. Zadanie to ułatwia MPC Toolbox, dodający wiele funkcji pozwalających na prostą implementację regulatora predykcyjnego. Dodaje on także bloczek owego regulatora do środowiska Simulink. Spróbujemy opisać podstawowe funkcje potrzebne do stworzenia z jego pomocą własnego regulatora predykcyjnego. a) Model obiektu Jak wspomniano wcześniej, regulator predykcyjny musi znać model obiektu. MPC Toolbox pozwala na wprowadzenie go wielu różnych formach, jednak istnieje pewne ograniczenie muszą być to modele liniowe. Po pierwsze, współpracuje on z typowymi metodami wprowadzania modeli liniowych można więc zdefiniować je przez transmitancje (funkcja tf(), zpk() itp.), macierze stanu (funcka ss() itp.) lub wszelkie inne funkcja pozwalające na stworzenie modeli liniowych w Matlabie. Możliwe jest też zaimportowanie modelu stworzonego przy pomocy typowych bloków w środowisku Simulink, toolbox potrafi zlinearyzować ów model jeśli jest on nieliniowy. Po drugie, model może być linearyzacją obiektu nieliniowego wokół punktu pracy. Można tego dokonać pisząc odpowiedni skrypt lub używając przybornika analizy liniowej dostępnego osobno. Po trzecie, Matlab potrafi zidentyfikować obiekt liniowy na podstawie punktów pomiarowych. Może do tego posłużyć System Identification Toolbox, dodający wiele funkcji znacznie ułatwiających identyfikację. Model zaimportować można bezpośrednio z workspace, ułatwia to prosty dialog: 2

b) Zakłócenia Regulator bierze pod uwagę zakłócenia mierzalne oraz niemierzalne, wejściowe i wyjściowe. Zakłócenia mierzalne są jednym z dodatkowych, nieobowiązkowych wejść regulatora. Można zamodelować je jako pewien sygnał. Zakłócenia niemierzalne, natomiast, modelowane są jako wyjście pewnego obiektu, na którego wejście zadany został szum biały o zerowej wartości średniej. Model owego obiektu można zdefiniować przez transmitancję (tf(), zpk()) lub macierze stanu (ss()). MPC Toolbox pozwala na symulację działania regulatora zanim jego tworzenie zostanie sfinalizowane. Można tu łatwo dodać niemierzalne zakłócenia wejść i wyjść jako jeden z typowych sygnałów aby sprawdzić jak regulator radzi sobie z nimi. c) Dobór parametrów Kiedy włączamy okno tworzenia regulatora pojawia się dialog, który wymusza podanie informacji o ilości mierzonych wyjść, sterowań oraz czasie próbkowania. Poza nimi, podstawowe parametry warte uwagi to horyzonty predykcji oraz sterowania. Czas próbkowania jest dość oczywistym parametrem. Trzeba jednak pamiętać, że regulator predykcyjny musi wykonać wiele skomplikowanych operacji co takt. Oznacza to, że dobierając czas próbkowania trzeba też wziąć pod uwagę stopień skomplikowania sterowanego układu i potencjalny czas trwania obliczeń. Dla procesów najczęściej wystarcza czas powyżej sekundy. Podobnie sprawa ma się z horyzontem predykcji. Im jest on dłuższy, tym więcej obliczeń musi być wykonanych. Najczęstszym podejściem jest zwiększanie horyzontu tak długo, jak nie ma to dużego wpływu na wydajność regulatora. Przy większości procesów powinien wystarczyć horyzont mniejszy od 50 taktów. Horyzont sterowania ma największy wpływ na czas trwania obliczeń, bowiem od jego długości zależy ilość potencjalnych rozwiązań zadania optymalizacji. Powinno się, więc, utrzymywać jego długość znacznie mniejszą od długości horyzontu predykcji. Te trzy wielkości są pierwszymi jakie zobaczymy wchodząc w kartę regulatora w oknie MPC Toolbox: 3

d) Ograniczenia wejść (sterowań) i wyjść Ograniczenia, jak wcześniej wspomniano, muszą zostać zdefiniowane aby regulator wiedział w jakim przedziale mogą znajdować się wyliczane przez niego sterowania. W MPC Toolbox mogą być podawane jako ograniczenia twarde (mocne) bezwzględnie nieprzekraczalne lub miękkie (słabe) które zostaną przekroczone, jeśli nie będzie innej możliwości. Możliwe jest też zastosowanie ograniczeń przyrostu wartości. Instrukcja mówi jednak, iż użycie obu ograniczeń (wartości i przyrostu) może spowodować konflikt, więc jeśli oba są wymagane, należy ustawić jedno z ograniczeń jako miękkie. Jak inne, okno wprowadzania ograniczeń jest proste i intuicyjne w obsłudze: Innymi parametrami wartymi uwagi są współczynniki wagowe, opisane w dalszej części. e) Rozwiązanie zadania sterowania Wyznaczenie sterowania sprowadza się do rozwiązania problemu optymalizacji co krok. Problem optymalizacji to program kwadratowy (QP), który uwzględnia zadane ograniczenia sygnałów. Funkcja jakości kosztu jest minimalizowana. Standardowa funkcja kosztu to w suma czterech elementów, zależnych kolejno od wartości wyjść, wartości wejść (sterowań), przyrostu wejść (sterowań) oraz przekroczenia 4

nałożonych ograniczeń. Owe elementy to w ogólności sumy kwadratów błędów (lub w przypadku przyrostów kwadratów przyrostów) wymnożone przez pewne współczynniki wagowe. W przypadku braku ograniczeń ostatni człon sumy znika. Współczynniki wagowe są kolejnymi parametrami, które mogą być dobrane przez użytkownika. Jak łatwo się domyślić ich wartości powinny wskazywać na czym najbardziej zależy nam w sterowaniu szybkim dojściu do wartości czy niskim przeregulowaniom. MPC Toolbox umożliwia też ustawienie wagi ogólnej, od której zależy szybkość reakcji układu oraz jego dokładność. Przeprowadziliśmy kilka symulacji na obiekcie używanym we wcześniejszych ćwiczeniach. Ogólna waga = 1, waga wyjścia = 1, waga wejścia = 0.2, waga przyrostu wejścia = 0.2, brak ograniczeń: Ogólna waga = 0.5, waga wyjścia = 1, waga wejścia = 0.2, waga przyrostu wejścia = 0.2, brak ograniczeń: 5

Jak widać, czas ustalania jest dłuższy, nie występuje jednak przeregulowanie. W obu przypadkach istnieje jednak błąd w stanie ustalonym. Ogólna waga = 1, waga wyjścia = 1, waga wejścia = 0.2, waga przyrostu wejścia = 0.2, ograniczenie wejścia do 0.9: Widać, że dodanie ograniczenia wejścia sprawiło, że sygnał łagodniej dochodzi do stanu ustalonego. Sygnały sterowania nie mogą wymuszać aż tak szybkiej odpowiedzi jak w przypadku bez ograniczeń. 6

MPC Toolbox daje wiele innych możliwości bardzo dogłębnej ingerencji w tworzony regulator. Matlab umożliwia także wyeksportowanie przygotowanego regulatora do rzeczywistej implementacji, choćby w postaci kodu w języku C. W praktyce, znając zasady działania regulatora MPC oraz używane metody matematyczne można takowy regulator zaimplementować w dowolnym środowisku. Literatura: Materiały z wykładów A. Bemporad, M. morari. N. L. Ricker Model Predictive Control Toolbox User's Guide 7