SYM T 27-01.DOC, MODELOWANIE CIĄGŁYCH I DYSKRETNYCH UKŁADÓW REGULACJI


Modelowanie ciągłych i dyskretnych układów regulacji

Badania w dziedzinie czasu

1. Wprowadzenie

Badania symulacyjne stanowią istotny element w procesie projektowania układów sterowania. Przeprowadza się je głównie w przypadkach, gdy ze względu na występujące w układzie nieliniowości lub jego złożoną strukturę, rozwiązania analityczne nie istnieją albo są zbyt skomplikowane. Przykładowo w przypadku nieciągłych (impulsowych) układów regulacji metoda symulacji pozwala w sposób łatwiejszy określić wpływ odstępu próbkowania na działanie układu, niż żmudna analiz dużej liczby transmitancji nieciągłych. Przed przystąpieniem do symulacji układów skomplikowanych, których działania nie jesteśmy w stanie przewidzieć, celowe jest przeprowadzenie symulacji układów uproszczonych (np. zlinearyzowanych) w celu zorientowania się co do wpływu poszczególnych parametrów na wyniki symulacji. Wówczas dobór sensownych zakresów zmian parametrów jest łatwiejszy.

W ćwiczeniu tym elementy i układy regulacji badane są metodą modelowania numerycznego (symulacji numerycznej). Wykorzystywany jest program MatLab wraz z pakietem Simulink zawierającym zestaw funkcji stanowiących modele dynamiczne podstawowych elementów: źródeł sygnałów, elementów liniowych ciągłych i dyskretnych, elementów nieliniowych i różnych elementów pomocniczych. Simulink wykorzystuje graficzne środowisko WINDOWS, umożliwiając łatwe opisywanie modelowanych układów przez tworzenie ich schematów blokowych. W instrukcji podano podstawowe informacje na temat wykorzystywanych programów. Szerszy opis programu Matlab i pakietu Simulink można znaleźć w literaturze [1, 2, 3].

W ramach przygotowania do ćwiczenia należy zapoznać się z podstawowymi zagadnieniami dotyczącymi metod numerycznych (np. [4, 5, 6]).

2. Opis programu MatLab i biblioteki Simulink

Matlab jest językiem programowania wysokiego poziomu zawierającym kilkaset standardowych funkcji przeznaczonych do opisu i rozwiązywania specjalistycznych zagadnień z różnych działów matematyki. Możliwości Matlaba poszerzają tzw. przyborniki, które są specjalizowanymi pakietami funkcji przeznaczonych do rozwiązywania zagadnień z różnych dziedzin, np. teorii regulacji, identyfikacji, analizy sygnałów, optymalizacji, przetwarzania obrazów, modelowania sieci neuronowych itp.

Po uruchomieniu Matlaba pojawia się znak zachęty (prompt) ">>" oznaczający gotowość do pracy. Znak ten otwiera linię poleceń. W kolejnych liniach wpisuje się nazwy instrukcji języka Matlab, tworząc program. Poniweaż program Matlab pracuje jako interpreter, to możliwa jest również praca interaktywna, tj. natychmiastowe wykonywanie obliczeń wg wprowadzonych instrukcji. Możliwe jest też wpisanie nazwy funkcji lub wcześniej przygotowanego programu. Opis wybranego elementu języka Matlab można uzyskać przez wpisanie polecenia help nazwa elementu.

Otwarcie okna pakietu Simulink (rys.1) możliwe jest na dwa sposoby:

Przez wpisanie polecenia Simulink w linii poleceń. Jest to okno biblioteczne, ponieważ zawiera zestaw symboli graficznych grup elementów, umożliwiających budowanie schematu blokowego modelowanego układu.

Przez wybranie opcji New, a następnie Model z menu File. W tym przypadku nie są wyświetlane ikony grup elementów, możliwe jest natomiast wczytanie pliku z uprzednio stworzonym modelem.

0x01 graphic

Rys. 1. Okno pakietu Simulink z grupami elementów

W oknie Simulinka dostępne są następujące grupy elementów:

Sources elementy generujące różne sygnały pobudzające badane układy,

Sinks elementy "odbierające" i wizualizujące sygnały,

Discrete elementy do symulacji układów dyskretnych,

Linear elementy do symulacji układów liniowych ciągłych,

Nonlinear elementy do symulacji układów nieliniowych,

Conections elementy pomocnicze, służące do wykonywania połączeń między

elementami modelowanego układu,

Extras elementy dodatkowe

Każdy grupa elementów może być rozwijana przez dwukrotne kliknięcie przyciskiem myszy - uzyskuje się wówczas dostęp do poszczególnych elementów. Podobnie, przez wskazanie i dwukrotne kliknięcie, uzyskuje się dostęp do parametrów każdego z elementów, zarówno w ramach poszczegółnych bibliotek, jak i w ramach tworzonego schematu blokowego badanego układu.

W podanym niżej skrótowym opisie elementy najczęściej wykorzystywane w ćwiczeniu wyróżniono przez pogrubienie ich nazwy.

Grupa Sources:

Clock - generator czasu, podaje czas bieżący w trakcie symulacji, uniezależnia skalę czasu od szybkości komputera

Digital Clock - j. w. lecz zdyskretyzowany z zadanym odstępem próbkowania

Repeating Sequence - sekwencja wartości definiowana przez użytkownika

Signal Generator - generator funkcyjny (sygnał sinusoidalny, piłowy, prostokątny lub losowy)

Constant - wartość stała w czasie

Pulse Generator - generator sygnału impulsowego o zadanych parametrach

Sine Wave - generator sygnału sinusoidalnego

Step Input - generator sygnału skokowego o deklarowanych wartościach początkowej i końcowej oraz czasie skokowej zmiany wartości

From File - wartości odczytywane z pliku

From Workspace - odczyt danych z przestrzeni roboczej (pamięci danych) Matlaba

Crip Signal - sygnał sinusoidalny o częstotliwości wzrastającej liniowo

Random Number - sygnał pseudoprzypadkowy generowany w każdym kroku całkowania numerycznego

Band-Limited White Noise - j.w., ale nowa wartość generowana co zadany odstęp próbkowania; zastosowanie zamiast Random Number pozwala przyspieszyć czas obliczenia

Grupa Sink:

Scope - wykreśla przebieg sygnału anaolgicznie do oscyloskopu

Graph - wykres czasowy wartości sygnału, przy stałych zakresach czasu i wartości sygnału, deklaruje się zakresy wartości na osiach, oraz typ i kolor poszczególnych linii wykresu

Auto-scale Graph - j.w. lecz skala dopasowuje się automatycznie do wartości, dodatkowo deklaruje się maksymalną licznę punktów, które obejmuje wykres

XY-Graph - wykres sygnału Y w funkcji sygnału X

To Workspace - przekazuje dane do przestrzeni roboczej Matlaba

To File - zapisuje dane w pliku

Stop Simulation - zatrzymanie symulacji, gdy na wyjściu pojawi się sygnał różny od zera

Hit Crossing - zmniejsza krok całkowania (zwiększa dokładność obliczeń) po przekroczeniu zadanej wartości sygnału

Grupa Discrete:

Uwaga: okres próbkowania może być definiowany oddzielnie dla każdego elementu.

Unit Delay - opóźnienie sygnału o jeden okres próbkowania, deklaruje się okres próbkowania i wartość początkową

Discret Zero-Pole - transmitancja dyskretna definiowana przez podanie zer, biegunów i współczynnika wzmocnienia.

Filter - transmitancja dyskretna definiowana w postaci funkcji wymiernej zmiennej z-1

Discrete Transfer Fn - transmitancja definiowana w postaci funkcji wymiernej zmiennej z

Discrete State-Space - element opisany za pomocą równań stanu

Zero Order-Hold - ekstrapolator zerowego rzędu dla danego czasu próbkowania

First Order-Hold - ekstrapolator pierwszego rzędu dla danego czasu próbkowania

Discrete Time Integrator - dyskretny element całkujący, deklaruje się okres próbkowania i wartość początkową

Grupa Linear

Sum - sumator wartości z poszczególnych wejść, deklaruje się znaki dla poszczególnych wejść

Inner Product - element mnożący dwa sygnały wejściowe

Integrator - element całkujący z deklarowanym warunkiem początkowym

Derivative - element różniczkujący

Gain - element proporcjonalny (wzmacniacz)

Matrix Gain - element mnożący sygnał wektorowy przez zadaną macierz

Slider Gain - element proporcjonalny o wzmocnieniu zadawanym graficznie (za pomocą suwaka)

Transfer Fn - transmitancja operatorowa K(s) w postaci funkcji wymiernej; wielomiany licznika i mianownika definiuje się przez podanie współczynników począwszy od współczynnika przy najwyższej potędze zmiennej s

Zero-Pole - transmitancja definiowana przez podanie zer, biegunów i wzmocnienia

State-Space - element opisany równaniami stanu

Grupa Nonlinear

Sign - realizuje finkcję sign (określa znak) dla sygnału wejściowego

Ralay - symuluje przekaźnik dwupołożeniowy z histerezą, deklaryje się warunki załączenia i wyłączeia oraz wartości na wyjściu w stania załączenia i wyłączenia

Backlash - modeluje histerezę

Saturation - wzmacniacz bezinercyjny z nasyceniem, deklaryje się górną i dolną wartość w stanie nasycenia

Quantizer - symuluje kwantowanie z zadanym krokiem

Dead Zone - symuluje strefę martwą (przedział nieczułóści)

Rate Limiter - ogranicza szybkość zmian sygnału

Product - element mnożący sygnały wejściowe

Abs - określa wartość bezwzględną sygnału

Look_Up Table - wyznacza wartości funkcji odcinkowo-liniowej o węzłach zadanych w postaci tablicy

2-D Look-Up Table - analogicznie j.w. lecz dla dwóch sygnałów (tablica dwuwymiarowa)

Relational Operator - porównanie sygnałów wejściowych wg zadeklarowanego operatora relacji

Logical Operator - j.w. lecz deklarowana jest relacja logiczna

Combinatorial Logic - realizuje funkcję logiczną opisaną tablicą prawdy

Fcn - przetwarza sygnał wejściowy wg zadeklarowanej funkcji typu y=f(x)

S-Function - przetwarza sygnał wg tzw. funkcji systemowej, tj. dowolnej funkcji zdefiniowana wcześniej w języku Matlaba

MATLAB Function - przetwarza sygnał wg funkcji standardowej Matlaba

Reset Integrator - element całkujący z możliwością restartu, tj. ponownego rozpoczęcia całkowania od wartości podanej na drugie wejście (wartość początkowa), w chwili gdy wartość na trzecim wejściu staje się niezerowa

Memory - element pamięci sygnału, wprowadza opóźnienie o jeden krok całkowania

Transport Delay - opóźnienie transportowe (przesunięcie sygnału w czasie), deklaruje się czas opóźnienia

Variable Transport Delay - sterowane opóźnienie transportowe

Limited Integrator - element całkujący z ograniczeniem, deklaruje się dolną i górną wartość ograniczenia oraz wartość początkową

Grupa Connections:

Inport - wejście do symulowanego systemu, jeżeli jest on podsystemem

Outport - wyjście z symulowanego systemu, jeżeli jest on podsystemem

Mux - multiplekser łączący kilka sygnałów skalarnych w jeden sygnał wektorowy, wykorzystywany dla zobrazowania kilku przebiegów na jednym wykresie Auto-scale Graph

Demux - demultiplekser rozdzielający sygnał wektorowy na sygnały skalarne

Grupa Extras:

Simulink Demos - przykłady systemów do symilacji w simulinku

Most commonly used blocks - zawiera najczęściej używane elementy z różnych grup. Grupę tę można bezpośrednio otworzyć z linii poleceń Matlaba poleceniem blicklib.

Convertion - elementy pozwalające dokonać konwersji układu współrzędnych

Flip-Flops - elementy symulujące przerzutniki D, SR itp.

PID Controllers - elementy symulujące regulatory PID

Analyzers - elementy do przetwarzania i analizy sygnałów

W górnej części okna Simulink umieszczona jest linia zleceń. Poza typowymi w systemie WINDOWS grupami zleceń (File, Edit) istnieje grupa zleceń do określania parametrów symulacji: Simulation. Poszczególne zlecenia są następujące:

Start - uruchumienie symulacji / Stop - przerwanie symulacji

Pause - zatrzymanie symulacji

Restart - wznowienie symulacji

Parameters - wybór rodzaju algortymu całkowania numerycznego i parametrów:

Start Time - czas rozpoczęcia symulacji

Stop Time - czas zakończenia obliczeń

Min Step Size, Max Step Size - minimalny i maksymalny krok czasowy całkowania numerycznego

Tolerance - dopuszczalny błąd całkowania

Return Variables - nazwa zmiennej pojawiającej się w przestrzeni roboczej Matlaba po zakończeniu symulacji

Przeprowadzenie badani asymulacujnego wymaga stworzenia schematu blokowego stanowiącego model badanego układu. Konstruowanie nowego modelu polega na:

Otwarciu nowego okna (zlecenie File | New)

Przenoszeniu do tego okna ikon reprezentujących potrzebne elementy wybrane z odpowiednich grup elementów (uprzednio otwartych podwójnym kliknięciem)

Połączeniu wejść i wyjść tych elementów w odpowiednią strukturę - przez ciącnięcie linii od wyjść do wejść przy wciśniętym lewym przycisku myszy

Nadaniu parametrom elementów układu pożądanych wartości - przez podwójne kliknięcie na ikonie elementu rozwija się okno jego parametrów

Uruchomienie symulacji odbywa się poleceniem Simulation | Start.

3. Modelowanie wybranych elementów i układów

W ramach ćwiczenia należy przeprowadzić symulacyjne badanie elementów i układów wskazanych przez prowadzącego. Poniżej przedstawiono przykładowe zagadnienia.

3.1. Układy ciągłe

I. Modelowanie na podsatwie równań różniczkowych.

Podstawą do modelowania układu jest jego opis w postaci równania różniczkowego. Na jego podstawie tworzony jest schemat strukturalny złożony z podstawowych elementów realizujących operacje statyczne (sumowanie i wzmocnienie proporcjonalne) oraz dynamiczne (całkowanie i różniczkowanie) a także penne operacje nieliniowe w przypadku modelowania układów nieliniowych.

Jako przykład wykorzystany jest element opisany równaniem różniczkowym o postaci:

0x01 graphic

Przyjmując oznaczenia: y1=y i y2=y' równanie (1) można zapisać w postaci układu równań:

y1' = y2 y1 =  y2 dt

y2' = b/a2 x - (a1/a2) y2 - (a0/a2) y1

Układ taki można zamodelować wykorzystując elementy całkujące i proporcjonalne. Odpowiedni schemat pokazano na rys. 2

0x01 graphic

Rys. 2. Struktura modelu elementu opisanego równaniem drugiego rzędu.

W ramach ćwiczenia należy wyznaczyć analogiczny schemat modelu układu opisanego podanym przez prowadzącego równaniem różniczkowym lub transmitancją oraz wyzanaczyć przebiegi odpowiedzi tego układu na zadane sygnały wejściowe.

II. Modelowanie układów złożonych

Typowa struktura zamkniętego układu regulacji pokazana jest na rysunku 3.

0x01 graphic

Rys. 3. Zamknięty układ regulacji

Należy przeprowadzić badania układu przyjmując różne założenia:

a) Dana jest transmitancja obiektu Ko = 1/(10s+1) oraz układu pomiarowego Kp = 1. Należy zaprojektować regulator (wyznaczyć jego transmitancję), tak, aby czas odpowiedzi na skokową zmianę wartości zadanej dla całego układu był mniejszy  krotnie od czsu odpowiedzi obiektu, a wzmocnienie nie uległo zmianie. Przeprowadzić symulacje przyjmując różne wartości współczynnika α. Rejestrować następujące sygnały: wejściowy, wyjściowy układu i dla porównania wyjściowy dla analogicznego obiektu w układzie otwartym oraz sygnał na wyjściu zaprojektowanego regulatora.

  1. Zbadać zachowanie się układu w sytuacji, gdy rzeczywista transmitancja obiektu jet różna od przyjętej do projektowania regulatora. Taka sytuacja może mieć miejsce jeżeli identyfikacja rzeczywistego obiektu nie jest przeprowadzona wystarczająco dokładnie.

Przyjąć następujące transmitancje obiektów:

0x01 graphic

Porównać wykresy odpowiedzi czasowych obiektu z punktu a) i podanych wyżej.

3.2. Układy impulsowe

I. Elementy: całkujący, różniczkujący, inercyjny 1-rzędu i 2-rzędu

Wzorując się na podanym niżej przykładzie należy:

  1. wychodząc z równania różniczkowego odpowiedniego elementu ciągłego wyprowadzić równanie w postaci różnicowej, a następnie przekształcić do postaci rekurencyjnej

  2. skonstruować model i przeprowadzić badanie symulacyjne, zakładając różne okresy próbkowania

Przykład: Równanie różniczkowe opisujące ciągły element inercyjny pierwszego rzędu ma postać

0x01 graphic

Przybliżając pochodną ilorazem różnicowym oraz przyjmując oznaczenia: tk=kt,gdzie k oznacza numer bieżącej chwili czasowej, a t jest okresem impulsowania, można zapisać:

0x01 graphic

a stąd po przekształceniach uzyskuje się równanie rekurencyjne:

0x01 graphic

Równanie takie można zamodelować układem przedstawionym na rysunku 4.

0x01 graphic

Rys.4. Schemat strukturalny modelu impulsowego elementu inercyjnego pierwszego rzędu

II. Układ regulacji (wg rys. 3) z regulatorem nieciągłym

a) Zamodelować regulator dyskretny dobrany przy założeniach jak w pkt. 3.1.IIa

b) przeprowadzić badanie symulacyjne układu dla różnych okresów próbkowania

3.3. Układy nielinowe

I. Zamknięty układ regulacji

Sprawdzić działanie układu regulacji pokazanego na rysunku 3 z regulatorem dobranym jak w pkt. 3.1.IIa w następujących sytuacjach:

  1. przy założeniu ograniczenia mocy dostarczonej do wejścia obiektu przez regulator (każdy elemnent rzeczywisty podlega takim ograniczeniom), wstawiając na wyjściu regulatora element Saturation z grupy Nonlinear. Założyć poziom ograniczenia mniejszy niż przyjęty stopień skrócenia czasu odpowiedzi 

  2. obiekt jest elementem pierwszego rzędu z opóźnieniem (element Transport Delay z grupy Nonlinear); obliczenie przeprowadzić dla różnych wartości czasu opóźnienia.

4. Pytania kontrolne.

1. Co wyróżnia elementy dynamiczne?

2. Wymień podstawowe typy elementów dynamicznych idealnych.

3. Jakie znasz sposoby opisu matematycznego tych elementów?

4. Jakie parametry charakteryzują dynamikę elementów i układów?

5. Narysuj trzy podstawowe struktury połączeń elementów w układach regulacji?

6. Jakie elementy nazywa się ciągłymi, a jakie nieciągłymi (impulsowymi)?

7. Czy jest możliwe włączenie w jednym układzie elementów ciągłych i impulsowych? W jaki sposób?

8. Czy współczynniki równań opisujących elementy dyskretne zależą od okresu próbkowania? Dlaczego?

9. Omów analityczne sposoby wyznaczania odpowiedzi układów dynamicznych?

10. Jakie miary mogą służyć do oceny jakości regulacji?

  1. Jaki jest sens numerycznego modelowania ukadów dynamicznych?

  2. Omów zagadnienie nieliniowości w układach sterowania.

  3. Wskaż różnice pomiędzy elementami idealnymi (opisanymi modelema uproszczonym), a rzeczywistymi (realizowalnymi fizycznie). Podaj przykłady.

Literatura:

[1] Klamka J., Ogonowski Z.: Teoria systemów liniowych. Skrypt Pol. Śląskiej, Gliwice, 1996.

[2] Brzózka J.: Ćwiczenia z automatyki w Matlabie i Simulinku. Wyd. Mikom, Warszawa, 1997

[3] Osowski S.: Modelowanie układów dynamicznych z zastosowaniem języla SIMULINK. Oficyna wydawnicza Polit. Warszawskiej, 1999

[4] Krupka. J., Morawski R.Z., Opalski L.J.: Wstęp do metod numerycznych., Oficyna wydawnicza Polit. Warszawskiej, 1999

[5] Fortuna Z., Macukow B., Wąsowski J.: Metody numeryczme. WNT, 1982

[6] Bogucka S. (red.):Metody numeryczne w technice. skrypt Polit. Śląskej, nr 418, Gliwice, 1973

(HUk), plik: SYM_T_27-01.DOC

Laboratorium Podstaw Automatyki Modelowanie - dziedzina czasu

- 2 -

Laboratorium Podstaw Automatyki



Wyszukiwarka

Podobne podstrony:
modelowanie ciągłych i dyskretnych układów regulacji
Modelowanie ciągłych i dyskretnych układów regulacji w dziedzinie czasu by Gabcio
pais modelowanie obiektów ciągłych i dyskretnych układów regulacji
cwiczenie 4 modelowanie dyskretnych ukladów regulacji
IDENTYF 27-01.DOC, IDENTYFIKACJA OBIEKTÓW DYNAMICZNYCH
REG PID 27-01.DOC, Laboratorium Podstaw Automatyki
6 Dyskretne układy regulacji, rozdział 9 Jakość dyskretnych układów regulacji
27 01 2011
01 Podstawy modelowania
Reg PR 27-01 , LABORATORIUM PODSTAW AUTOMATYKI
2015 08 20 07 44 27 01
Modelowanie i symulacja prostych układów elektrycznych w programie?SPOC

więcej podobnych podstron