Komputerowa symulacja układów automatycznej regulacji w
Transkrypt
Komputerowa symulacja układów automatycznej regulacji w
KOMPUTEROWA SYMULACJA UKŁADÓW AUTOMATYCZNEJ REGULACJI W ŚRODOWISKU MATLAB/Simulink Barbara ŁYSAKOWSKA, Grzegorz MZYK WROCŁAW 2005 Opiniodawcy Stanisław Bańka Danuta Rutkowska Korekta Alina Kaczak Opracowanie komputerowe w systemie LaTeX Grzegorz Mzyk Oficyna Wydawnicza Politechniki Wrocławskiej Wybrzeże Wyspiańskiego 27, 50-370 Wrocław 3 Spis rzeczy 1. Wprowadzenie 1.1. Zawartość i struktura podrecznika ˛ . . . . . . . . . . . . . . . . . . . . 1.2. Istota i cele symulacji komputerowej . . . . . . . . . . . . . . . . . . . 2. Środowisko programowe MATLAB — podstawy 2.1. Informacje wstepne ˛ . . . . . . . . . . . . . . . . . . . . . . . . 2.2. Środowisko pakietu MATLAB . . . . . . . . . . . . . . . . . . 2.2.1. Linia poleceń, komunikacja z systemem operacyjnym . 2.2.2. Definiowanie i modyfikacja zmiennych, obszar roboczy 2.2.3. Operacje na macierzach . . . . . . . . . . . . . . . . . 2.2.4. Funkcje algebry numerycznej w programie MATLAB . 2.3. Tworzenie i uruchamianie M -skryptów . . . . . . . . . . . . . 2.4. Funkcje pakietu Control System Toolbox . . . . . . . . . . . . 2.5. Nakładka graficzna Simulink . . . . . . . . . . . . . . . . . . 2.5.1. Edytor graficzny . . . . . . . . . . . . . . . . . . . . . 2.5.2. Źródła sygnałów (Sources) . . . . . . . . . . . . . . . . 2.5.3. Rejestratory sygnałów (Sinks) . . . . . . . . . . . . . . 2.5.4. Elementy i bloki liniowe z czasem ciagłym ˛ (Linear ) . . 2.5.5. Elementy nieliniowe (Nonlinear ) . . . . . . . . . . . . 2.5.6. Systemy z czasem dyskretnym (Discrete) . . . . . . . 2.5.7. Widoczność danych w programie MATLAB . . . . . . 2.6. Korzystanie z funkcji HELP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ 3.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2. Zakres tematyczny ćwiczenia . . . . . . . . . . . . . . . . . . . . . . . 3.2.1. Liniowe równanie różniczkowe, transformacja Laplace’a . . . . 3.2.2. Opis liniowego systemu dynamicznego z czasem ciagłym ˛ w przestrzeni stanów, systemy wielowymiarowe . . . . . . . . . . . . . 3.2.3. Sterowalność, osiagalność ˛ i obserwowalność . . . . . . . . . . . 3.3. Badania komputerowe . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1. Wyznaczanie charakterystyk czasowych . . . . . . . . . . . . . 7 7 8 11 11 11 12 12 13 13 14 15 16 17 20 21 21 22 23 24 24 25 25 26 26 27 29 30 30 4 3.3.2. Identyfikacja parametrów typowych członów liniowych . 3.3.3. Numeryczny rozkład funkcji wymiernej na ułamki proste 3.3.4. Testowanie sterowalności i obserwowalności systemu . . 3.3.5. Przykładowe odpowiedzi skokowe . . . . . . . . . . . . . 3.4. Przykłady praktyczne . . . . . . . . . . . . . . . . . . . . . . . 3.4.1. Ładowanie kondensatora w układach RC i CR . . . . . . 3.4.2. Zbiornik z ciecza˛ . . . . . . . . . . . . . . . . . . . . . . 3.4.3. Termometr jako układ inercyjny pierwszego rzedu ˛ . . . 3.5. Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 33 33 33 36 36 38 39 40 4. Systemy o złożonej strukturze i ich stabilność 4.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Zarys tematyczny ćwiczenia . . . . . . . . . . . . . . . . . . . . 4.2.1. Struktura szeregowa . . . . . . . . . . . . . . . . . . . . 4.2.2. Struktura równoległa . . . . . . . . . . . . . . . . . . . . 4.2.3. Struktura szeregowo-równoległa . . . . . . . . . . . . . . 4.2.4. Struktura ze sprze˛ żeniem zwrotnym . . . . . . . . . . . 4.2.5. Badanie stabilności systemów ze sprze˛ żeniem zwrotnym 4.2.6. Określanie stabilności systemów za pomoca˛ MATLAB . 4.3. Badania komputerowe . . . . . . . . . . . . . . . . . . . . . . . 4.3.1. Detekcja rzedu ˛ inercyjności . . . . . . . . . . . . . . . . 4.3.2. Detekcja rzedu ˛ astatyzmu . . . . . . . . . . . . . . . . . 4.3.3. Badanie stabilności układów złożonych . . . . . . . . . . 4.3.4. Struktury regulatorów P, PI i PID . . . . . . . . . . . . 4.3.5. Funkcje pakietu MATLAB do budowania struktur . . . 4.4. Przykład praktyczny — wzmacniacz operacyjny . . . . . . . . . 4.5. Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 41 42 42 43 44 45 48 51 53 53 54 55 58 59 59 61 . . . . . . . . . . . . 63 63 63 63 65 66 67 68 68 68 70 70 72 5. Charakterystyki czestotliwościowe ˛ obiektów dynamicznych 5.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Zakres tematyczny ćwiczenia . . . . . . . . . . . . . . . . . . . . 5.2.1. Odpowiedź systemu liniowego na pobudzenie sinusoidalne 5.2.2. Transmitancja widmowa . . . . . . . . . . . . . . . . . . . 5.2.3. Charakterystyki czestotliwościowe ˛ . . . . . . . . . . . . . 5.2.4. Zapas amplitudy i zapas fazy . . . . . . . . . . . . . . . . 5.3. Program ćwiczenia . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4. Komputerowe badanie charakterystyk . . . . . . . . . . . . . . . 5.4.1. Wyznaczanie charakterystyk amplitudowo-fazowych . . . 5.4.2. Wyznaczanie charakterystyk Bodego . . . . . . . . . . . . 5.4.3. Wyznaczanie gestości ˛ widmowej mocy sygnału . . . . . . 5.5. Przykład praktyczny — głowica radiowa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ 6.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2. Własności UAR w stanie ustalonym . . . . . . . . . . . . . . 6.2.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . 6.2.2. Program ćwiczenia . . . . . . . . . . . . . . . . . . . . 6.2.3. Badania komputerowe . . . . . . . . . . . . . . . . . . 6.3. Kryteria jakości regulacji — dobór nastaw . . . . . . . . . . . 6.3.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . 6.3.2. Program ćwiczenia . . . . . . . . . . . . . . . . . . . . 6.3.3. Badania komputerowe . . . . . . . . . . . . . . . . . . 6.3.4. Przybliżona analiza układów nieliniowych . . . . . . . 6.4. Przykłady praktyczne . . . . . . . . . . . . . . . . . . . . . . 6.4.1. Sterowanie reczne ˛ napełnianiem zbiornika . . . . . . . 6.4.2. Układ Automatycznej Regulacji Czestotliwości ˛ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 75 78 78 82 87 93 93 97 99 102 108 108 109 7. Układy automatyki z czasem dyskretnym 7.1. Wprowadzenie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1.1. Równanie różnicowe . . . . . . . . . . . . . . . . . . . . . . . . 7.1.2. Transformacja Z . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1.3. Transmitancja systemu z czasem dyskretnym . . . . . . . . . . 7.1.4. Transmitancja widmowa . . . . . . . . . . . . . . . . . . . . . . 7.1.5. Standardowe pobudzenia dyskretne . . . . . . . . . . . . . . . . 7.1.6. Stabilność układów z czasem dyskretnym . . . . . . . . . . . . 7.1.7. Ekstrapolator i impulsator . . . . . . . . . . . . . . . . . . . . . 7.1.8. System pobudzany procesem losowym . . . . . . . . . . . . . . 7.1.9. Identyfikacja liniowych systemów dynamicznych z czasem dyskretnym . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2. Program ćwiczenia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3. Badania komputerowe . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.1. Wyznaczanie odpowiedzi impulsowych, transformacja Z . . . . 7.3.2. Identyfikacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.3. Przykładowe wyniki symulacji komputerowej . . . . . . . . . . 7.3.4. Badanie stabilności . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.5. Systemy złożone . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.6. Analiza korelacyjna procesu wyjściowego . . . . . . . . . . . . . 7.4. Przykład praktyczny — filtracja dźwieku ˛ . . . . . . . . . . . . . . . . . 7.5. Podsumowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 111 111 112 113 114 114 115 117 118 Literatura 131 Indeks 133 119 123 124 124 124 126 126 126 129 129 129 6 7 1. Wprowadzenie 1.1. Zawartość i struktura podrecznika ˛ Podrecznik ˛ jest adresowany do osób studiujacych ˛ na kierunkach politechnicznych zwiazanych ˛ z automatyka˛ i robotyka, ˛ elektronika˛ i telekomunikacja˛ oraz informatyka. ˛ Od czytelnika wymaga sie˛ znajomości podstaw automatyki w zakresie: transformacji Laplace’a, charakterystyk czasowych i czestotliwo˛ ściowych liniowych członów dynamicznych, kryteriów stabilności systemów liniowych, analizy układów ze sprze˛ żeniem zwrotnym, właściwości układów regulacji typu P, PI i PID, a także transformacji Z oraz opisu i analizy systemów z czasem dyskretnym. W celu uzupełnienia wiedzy teoretycznej ze wskazanego zakresu, szczególnie polecana jest monografia [5]. Celem podrecz˛ nika jest pomoc w rozwinieciu ˛ umiejetności ˛ w zakresie zastosowania teoretycznych podstaw automatyki w zagadnieniach praktycznych przez komputerowa˛ symulacje˛ wybranych procesów dynamicznych. Aby rozważania nie były prowadzone w oderwaniu od zjawisk rzeczywistych, zagadnienia teoretyczne sa˛ przeplatane mniej formalnymi przykładami zastosowania teorii systemów liniowych. Ksia˛żka składa sie˛ z sześciu rozdziałów. Każdy z nich może być traktowany jako materiał dydaktyczny do jednego lub kilku ćwiczeń komputerowych (laboratoryjnych). Rozdział 2 jest krótkim kursem obsługi środowiska programowego MATLAB, w zakresie analizy, symulacji i graficznej reprezentacji prostych systemów automatyki. Pakiet ten wybrano ze wzgledu ˛ na prostote˛ obsługi oraz powszechne zastosowanie w inżynierskich badaniach Układów Automatycznej Regulacji (UAR). Rozdziały 3—6 poświecone ˛ sa˛ analizie systemów liniowych z czasem ciagłym, ˛ badaniu charakterystyk, analizie stabilności, nastawianiu regulatorów. Rozdział 7 dotyczy opisu i analizy stabilności liniowych prostych i złożonych systemów z czasem dyskretnym. Rozpatruje sie˛ także zagadnienie 8 1. Wprowadzenie przejścia procesu losowego przez liniowy system dynamiczny oraz identyfikacje˛ jego parametrów metoda˛ najmniejszych kwadratów. Materiał do każdego ćwiczenia rozpoczyna sie˛ od obszernego wstepu ˛ teoretycznego. Nastepnie ˛ przedstawiony jest plan badań, sposób ich realizacji komputerowej i przykładowe wyniki eksperymentów. Podane sa˛ również ćwiczenia symulacyjne i obliczeniowe oraz proste przykłady praktyczne z różnych dziedzin, np. fizyki, elektroniki, mechaniki. Autorzy pragna˛ serdecznie podziekować ˛ Panu prof. dr hab. inż. Zygmuntowi Hasiewiczowi, autorowi pierwszego zestawu ćwiczeń laboratoryjnych z Podstaw Automatyki, na bazie którego mogli rozwinać ˛ i udoskonalić ich zakres tematyczny, wprowadzajac ˛ jednocześnie komputerowa˛ implementacje˛ w środowisku MATLAB. 1.2. Istota i cele symulacji komputerowej W celu podkreślenia znaczenia symulacji komputerowej rzeczywistych zjawisk dynamicznych omówiono kolejne fazy projektowania układu automatycznej regulacji na przykładzie sterowania poziomem wody w jeziorze. Pierwszym krokiem jest zdefiniowanie obiektu sterowania i ustalenie sygnału wyjściowego y(t) obiektu, jako celu sterowania, czyli takiej jego cechy fizycznej, która˛ należy sterować. Określa sie˛ również sygnał wejściowy u(t) — wielkość fizyczna˛ majac ˛ a˛ zasadniczy wpływ na y(t), np. obiekt — jezioro z zapora˛ na rzece, y(t) — poziom wody w jeziorze w chwili t, u(t) — położenie zasuwy w zaporze w chwili t. z (t ) u (t ) OBIEKT y (t ) Rys. 1.1. Graficzna reprezentacja obiektu regulacji Na obiekt oddziałuja˛ również inne wielkości z(t) — zwane zakłóceniami, trudne lub zbyt kosztowne w analizie, czesto ˛ o charakterze przypadkowym (np. opady deszczu, parowanie). Dla obiektu z rysunku 1.1 poszukuje sie˛ możliwie najlepszej formuły matematycznej F (wzoru, funkcjonału) opisujacej ˛ zależność y(t) od u(t) y(t) ≈ F(u(t − τ )), gdzie τ = 0, ..., ∞ 1.2. Istota i cele symulacji komputerowej 9 Tabela 1.1. Wyniki do rankingu Liczba dni: τ Liczba punktów zawodnika A: uA Liczba punktów zawodnika B: uB 7 1 1 14 2 1 21 1 2 Obiekt identyfikuje sie, ˛ korzystajac ˛ z teoretycznych praw fizyki oraz zgromadzonych eksperymentalnie wartości pomiarów u(t) i y(t). W pracy ograniczamy sie˛ do obiektów liniowych (spełniajacych ˛ zasade˛ superpozycji), działajacych ˛ bez zakłóceń z(t). Zasada superpozycji mówi, że w systemie liniowym odpowiedź na sume˛ dwóch dowolnych pobudzeń jest zawsze taka sama, jak suma odpowiedzi na każde z tych pobudzeń z osobna, tzn. jeżeli system liniowy przetwarza u1 (t) → y1 (t) oraz u2 (t) → y2 (t), to u1 (t) + u2 (t) → y1 (t) + y2 (t). Rt Przykładowo, system całkujacy ˛ sygnał wejściowy: y(t) = 0 u(t)dt jest liniowy (liniowość całki) i dynamiczny (wyjście zależy od historii wejścia), system natomiast opisany równaniem y(t) = |u(t)| jest nieliniowy (kontrprzykład: dla u1 (t) = 1(t) i u2 (t) = −1(t), |u1 (t) + u2 (t)| = 0, a |u1 (t)| + |u2 (t)| = 2 · 1(t)) i statyczny. W systemach liniowych F jest splotem sygnału wejściowego u(t) z pewna˛ funkcja˛ wagowa˛ k(t) — charakterystyka˛ czasowa˛ obiektu, która˛ w toku dalszych rozważań nad opisem układów automatyki nazwiemy odpowiedzia˛ impulsowa˛ Z ∞ u(t − τ )k(τ )dτ . y(t) = 0 Splot jest pojeciem ˛ kluczowym, a jego zrozumienie jest niezbedne ˛ w dalszych badaniach. Wytłumaczymy jego dyskretna˛ wersje˛ na podstawie prostego systemu rankingu zawodników sportowych. Celem jest określenie, który z dwóch zawodników (A czy B) jest aktualnie w lepszej formie, na podstawie ostatnio zdobytych wyników w zawodach. W tym celu ustala sie˛ pewna˛ funkcje˛ wagowa˛ k(τ ), preferujac ˛ a˛ ostatnio zdobyte wyniki, np. k(τ ) = τ1 , gdzie τ oznacza liczbe˛ (całkowita) ˛ dni, które upłyneły ˛ od zdobycia punktów przez danego zawodnika. Nastepnie ˛ dla każdego zawodnika splata sie˛ procesy zdobytych przez nich punktów uA i uB (patrz tabela) z wagami k(τ ), tzn. yA = 1 · 1 1 1 +2· +1· , 7 14 21 yB = 1 · 1 1 1 +1· +2· . 7 14 21 Ponieważ yA > yB , przyjmuje sie, ˛ że zawodnik A jest aktualnie lepszy. 10 1. Wprowadzenie u(t) MODEL OBIEKTU y(t ) - ε (t) A yzad Rys. 1.2. Symulowany Układ Automatycznej Regulacji (UAR) Celem identyfikacji jest znalezienie charakterystyki k(τ ) obiektu. Dalsze badania prowadzi sie˛ nie na obiekcie rzeczywistym, lecz na modelu komputerowym otrzymanym w wyniku identyfikacji. Umożliwia to obniżenie kosztów, podnosi poziom bezpieczeństwa, przyspiesza badania. Sterowanie w układzie zamknietym ˛ ma na celu takie ustawianie wejścia obiektu u(t), aby jego wyjście y(t) możliwie szybko i dokładnie przyjmowało żadan ˛ a˛ przez nas wartość yzad . Regulacja automatyczna polega na wprowadzeniu elementu realizujacego ˛ algorytm A, który na podstawie różnicy ε(t) = yzad − y(t) wyznaczy odpowiednie sterowanie u(t) (tzw. sygnał regulacji). Element realizujacy ˛ algorytm sterowania A bedziemy ˛ nazywać regulatorem, a cały zamkniety ˛ układ — Układem Automatycznej Regulacji (UAR). Wszystkie kolejne etapy wdrożenia stanowia˛ całościowy proces symulacji komputerowej UAR, za pomoca˛ przydatnego w obliczeniach technicznych środowiska MATLAB. Układ Automatycznej Regulacji nazywamy liniowym, gdy zarówno obiekt, jak i regulator sa˛ liniowe. Ostatni etap projektu (wdrożenie) wia˛że sie˛ z zainstalowaniem czujników, przetworników, odpowiednio zaprogramowanych sterowników mikroprocesorowych i elementów wykonawczych (np. siłowników) na rzeczywistym obiekcie. 11 2. Środowisko programowe MATLAB — podstawy 2.1. Informacje wstepne ˛ Niniejszy rozdział jest wprowadzeniem do programu MATLAB, w zakresie potrzebnym do symulacji liniowych systemów dynamicznych z czasem ciagłym ˛ i z czasem dyskretnym. Jest niezbedn ˛ a˛ instrukcja, ˛ umożliwiajac ˛ a˛ przeprowadzenie ćwiczeń laboratoryjnych z zakresu teoretycznych podstaw automatyki na uczelniach technicznych. Proponowany plan ćwiczeń oraz dodatkowe informacje sa˛ udostepnione ˛ na stronie WWW http://diuna.ict.pwr.wroc.pl/grmz. Zakłada sie˛ nastepuj ˛ ace ˛ minimalne wymagania dotyczace ˛ sprzetu ˛ i oprogramowania komputerowego: • pamieć ˛ RAM: 64 MB lub wieksza; ˛ • system operacyjny: Windows 95/98 lub nowszy; • zainstalowany MATLAB w wersji 5.2 (lub nowszej), z pakietem Control System Toolbox oraz nakładka˛ graficzna˛ Simulink. Działanie wszystkich symulacji i skryptów zostało także przetestowane w programie MATLAB w wersji 6.5. 2.2. Środowisko pakietu MATLAB Pełna instalacja programu MATLAB (łacznie ˛ z Control System Toolbox i Simulink ) znajduje sie˛ w folderze c:\matlab i zajmuje około 400 MB pamieci ˛ dyskowej dla wersji 5.2 oraz około 1 GB dla wersji 6.5. Plikiem uruchomieniowym jest c:\matlab\bin\matlab.exe (ikona na pulpicie). 12 2. Środowisko programowe MATLAB — podstawy 2.2.1. Linia poleceń, komunikacja z systemem operacyjnym Uruchomienie c:\matlab\bin\matlab.exe powoduje otwarcie okna z linia˛ poleceń (ang. command line), pokazanego na rysunku 2.1. Każde polecenie jest wykonywane po jego wpisaniu za znakiem zachety ˛ >> i naciśnieciu ˛ klawisza ENTER. Rys. 2.1. Okno poleceń Do przykładowych poleceń należa: ˛ pwd — wyświetla aktualny katalog (ang. print working directory); cd nowykat — zmienia bieżacy ˛ katalog na nowykat; who — wyświetla liste˛ wszystkich zmiennych zdefiniowanych w przestrzeni roboczej; clear — czyści przestrzeń robocza˛ (wartości i etykiety wszystkich zmiennych zostaja˛ wykasowane). Przestrzeń robocza˛ (wszystkie zmienne i ich wartości, ang. WorkSpace) można zapisać w pliku z rozszerzeniem *.mat, wydajac ˛ z menu /File polecenie /SaveWorkspaceAs. Analogicznie, możliwe jest otwarcie zapamietanego ˛ środowiska poprzez wydanie polecenia /File/LoadWorkspace. 2.2.2. Definiowanie i modyfikacja zmiennych, obszar roboczy Zdefiniowanie nowej zmiennej, lub modyfikacja już istniejacej ˛ nastepuje ˛ przez proste przypisanie jej wartości, np. polecenie x = 8; — definiuje zmienna˛ o nazwie x (jeśli wcześniej taka nie istniała) i nadaje jej wartość 8, średnik na końcu wyłacza ˛ tzw. echo. Aktualna˛ wartość zmiennej można odczytać wpisujac ˛ jej nazw˛e (bez średnika), czyli polecenie x — powoduje wyświetlenie wartości 8. Dla skalarów dostepne ˛ sa˛ operatory: *, /, +, — i ^(potegowanie). ˛ 2.2. Środowisko pakietu MATLAB 13 2.2.3. Operacje na macierzach Należy mieć świadomość, że środowisko MATLAB (skrót od ang. Matrix Laboratory) w całości jest oparty na macierzach. Wszelkie sygnały (ich dyskretne odpowiedniki) sa˛ przechowywane właśnie jako macierze (ewentualnie wektory jako macierze jednokolumnowe). Macierz definiuje sie˛ korzystajac ˛ z nawiasów kwadratowych [ ], znaku przecinka lub spacji, jako separatora elementów w danym wierszu oraz·średnika ¸ jako separatora wierszy, np. polecenie 1 2 definiujace ˛ macierz A postaci wyglada ˛ nastepuj ˛ aco ˛ 3 4 A=[1,2;3,4] Do poszczególnych elementów macierzy odwołujemy sie˛ przez nawiasy okra˛ głe, np. A(i,j)— oznacza element w i-tym wierszu i j-tej kolumnie macierzy A, może on stanowić tzw. lvalue, czyli oprócz wyświetlenia zawartości komórki macierzy dopuszczalne jest przypisanie jej określonej wartości, np. A(1,2)=8 Macierz można także definiować blokami, np. polecenie B=[A,A] · ¸ 1 2 1 2 utworzy macierz B postaci . 3 4 3 4 Sekwencje uporzadkowane ˛ (np. kolejne elementy ciagu ˛ arytmetycznego) uzyskuje sie˛ przez konwencje˛ zapisu£ wyrażenia macierzowego min:[krok]:max, ¤ np. symbol 1:3:10 oznacza wektor 1 4 7 10 , a polecenie · ¸ 1 2 3 C=[1:3;1:2:5] — definiuje macierz C postaci . 1 3 5 W rozumieniu operacji macierzowych według Cauchy’ego dostepne ˛ sa˛ operatory *, +, — oraz ^. Natomiast mnożenie i dzielenie tablic (ang. array) wykonuje sie˛ z użyciem operatorów tablicowych .* (kropka-gwiazdka) i ./ (kropkaslash). 2.2.4. Funkcje algebry numerycznej w programie MATLAB Przedstawiono nazwy najcześciej ˛ używanych procedur numerycznej algebry liniowej: eye(n) — definiowanie macierzy jednostkowej o rozmiarach n × n; zeros(n,m) — definiowanie macierzy zerowej o rozmiarach n × m; ones(n,m) — definiowanie macierzy o rozmiarach n × m zbudowanej z samych jedynek; 14 2. Środowisko programowe MATLAB — podstawy det(A) — obliczanie wyznacznika macierzy kwadratowej A; inv (A) — wyznaczanie macierzy odwrotnej do A: A−1 ; równoważna postać polecenia to: A^(-1); trace(A) — obliczanie śladu macierzy A (sumy elementów na głównej przekatnej); ˛ lu(A) — wyznaczanie rozkładu LU (na iloczyn dwóch macierzy trójkatnych) ˛ macierzy A; chol (A) — wyznaczanie rozkładu Cholesky’ego macierzy A (patrz np. [9]); svd (A) — wyznaczanie rozkładu wzgledem ˛ wartości szczególnych macierzy A (tzw. rozkład SVD, [9]); eig(A) — wyznaczanie wartości własnych macierzy A; rand(n,m) — generacja macierzy losowej o rozmiarach n × m i elementach z rozkładu jednostajnego U [0, 1]; randn(n,m) — generacja macierzy losowej o rozmiarach n × m i elementach z rozkładu normalnego N (0, 1); plot() — rysowanie wykresów na płaszczyźnie; plot3 () — rysowanie wykresów trójwymiarowych; stem() — rysowanie przebiegów z czasem dyskretnym; roots() — numeryczne znajdowanie pierwiastków wielomianu; residue() — rozkład funkcji wymiernej na ułamki proste; rlocus() — znajdowanie pierwiastków układu zamknietego. ˛ 2.3. Tworzenie i uruchamianie M -skryptów Ciag ˛ poleceń programu MATLAB można umieścić w osobnym pliku tekstowym (skrypcie) z rozszerzeniem *.m. W tym celu należy wybrać z menu /File polecenie /New/M-file, co spowoduje otwarcie okna edytora pokazanego na rysunku 2.2. Dostepne ˛ sa˛ oczywiście instrukcje warunkowe (if ...) oraz iteracyjne (while, for ). Przykładowy skrypt może mieć postać: %Sekwencyjne wypełnienie wektora liczbami losowymi for i=1:10 W(i)=i^2 end Znak % służy do wstawiania komentarzy. Uruchomienie skryptu polega na wybraniu z menu edytora /Tools, polecenia /Run. Gdy istnieje plik z rozszerzeniem *.mdl o tej samej nazwie, wówczas nastepuje ˛ jego otwarcie. Możliwe jest również uruchomienie przez wpisanie nazwy M-skryptu w linii poleceń MATLAB. Wymaga to ustawienia odpowiedniej ścieżki dostepu ˛ do zbioru 2.4. Funkcje pakietu Control System Toolbox 15 Rys. 2.2. Edytor skryptów tekstowych dyskowego. Można to uczynić na dwa sposoby: korzystajac ˛ z polecenia cd, lub zapisujac ˛ ścieżk˛e w zbiorze dostepnych ˛ lokalizacji (menu /File/SetPath). 2.4. Funkcje pakietu Control System Toolbox Specjalistyczne zestawy dodatkowych funkcji systemu MATLAB umieszczone sa˛ w tzw. Toolbox -ach (ang. pudełka z narzedziami, ˛ nazywane przybornikami) sa˛ dodatkowymi, specjalistycznymi zestawami funkcji MATLAB a. Niektóre z nich nie sa˛ zawarte w licencji podstawowej oprogramowania i należy je zakupić. Pakiet Control System Toolbox to dodatkowy, tematyczny przybornik funkcji, dotyczacy ˛ analizy i sterowania systemów dynamicznych. Jego obsługa nie wymaga żadnych dodatkowych umiejetności ˛ od użytkownika w zakresie obsługi oprogramowania. Definiowanie systemu liniowego, którego transmitancja jest funkcja˛ wymierna˛ zmiennej zespolonej s, opiera sie˛ na utworzeniu dwóch wektorów wierszowych, zawierajacych ˛ odpowiednio współczynniki wielomianu licznika i mianownika transmitancji. Definicje˛ rozpoczyna sie˛ od wpółczynnika przy najwyższej potedze ˛ do wyrazu wolnego, np. systemowi całkujacemu ˛ o transmitancji 1/s odpowiadaja˛ wektory [1] (licznik) i [1, 0] (mianownik). Odsyłamy także do wzoru (3.10). Istnieje zestaw funkcji, które, na podstawie wspomnianych wektorów, komputerowo symuluja˛ działanie systemu. Przykładem może być funkcja tf () (ang. transfer function — funkcja przejścia). Do najcześciej ˛ wykorzystywanych funkcji zawartych w pakiecie Control System Toolbox należa: ˛ bode(sys) — wyznaczanie charakterystyk Bodego systemu sys; feedback (sys1,sys2 ) — tworzenie systemu złożonego (sys1 z ujemnym (domyślnie) sprze˛ żeniem zwrotnym sys2 ); 16 2. Środowisko programowe MATLAB — podstawy freqresp(sys,w ) — wyznaczanie odpowiedzi systemu sys w dziedzinie czesto˛ tliwości (Re(K(jω)),Im(K(jω))) dla wartości pulsacji zadanych w wektorze w ; gensig(typ,okres) — generacja standardowych sygnałów, np. dla ustawień typ=’sin’, okres=1 — funkcja generuje fale˛ sinusoidalna˛ o okresie 1s; impulse(sys) — wyznaczanie odpowiedzi impulsowej systemu sys; kalman() — projektowanie filtru Kalmana; lsim(sys,u,t) — symulacja liniowego systemu sys przy dowolnym pobudzeniu zawartym w wektorze u, (t — wektor czasu); ltiview (typ,sys) — wykreślanie charakterystyki typu typ (np. ’step’, ’impulse’, ’nyquist’ ) systemu sys; parallel (sys1,sys2 ) — połaczenie ˛ równoległe systemów sys1 i sys2 ; step(sys) — wyznaczanie odpowiedzi systemu sys na skok jednostkowy; series(sys1,sys2 ) — połaczenie ˛ szeregowe systemów sys1 i sys2 ; ss(A,B,C,D) — tworzenie systemu liniowego na podstawie opisu w przestrzeni stanów (ang. state space): x0 = Ax + Bu, y = Cx + Du; ss2tf (L,M ) — konwersja w kierunku odwrotnym do funkcji ss(); tf (L,M ) — tworzenie systemu na podstawie wektorów współczynników transmitancji, licznika L i mianownika M transmitancji operatorowej K(s); rlocus(L,M ) — przedstawienie na płaszczyźnie (Re K(jω), Im K(jω)) pierwiastków układu zamknietego. ˛ Inne ważne polecenia MATLAB bed ˛ a˛ sukcesywnie podawane wraz z koniecznościa˛ ich zastosowania w kolejnych M -plikach w dalszych rozdziałach podrecznika. ˛ 2.5. Nakładka graficzna Simulink Nakładka Simulink ułatwia tworzenie schematów graficznych połaczeń ˛ modeli i ich reprezentacji graficznych oraz zwalnia użytkownika w znacznym stopniu ze znajomości składni funkcji pakietu Control System Toolbox. Uruchomienie nakładki odbywa sie˛ poleceniem simulink, co powoduje otwarcie okna zawierajacego ˛ zbiór przyborników (rys. 2.3). Oprócz niego otwiera sie˛ także „czyste” okno edytora graficznego modeli (rys. 2.4). Dostepne ˛ w Simulink u modele graficzne sa˛ pogrupowane nastepuj ˛ aco: ˛ • Sources — modele źródeł sygnałów (generatory); • Sinks — modele odbiorników sygnałów i urzadzeń ˛ pomiarowych (rejestratorów); • Discrete — modele liniowych obiektów dynamicznych z czasem dyskretnym; 2.5. Nakładka graficzna Simulink 17 Rys. 2.3. Przyborniki nakładki graficznej Simulink • Linear — modele liniowych obiektów dynamicznych z czasem ciagłym; ˛ • Nonlinear — statyczne elementy o charakterystykach nieliniowych (również z histereza); ˛ • Connections — bloki wspomagajace ˛ konstruowanie skomplikowanych struktur połaczeń; ˛ • Blocksets&Toolboxes — dodatkowe bloki i biblioteki, ich zawartość zależy od zainstalowanej wersji programu. 2.5.1. Edytor graficzny Budowa graficznych schematów blokowych odbywa sie˛ na zasadzie „przeciagania ˛ myszka” ˛ bloków z zasobników do okna edytora graficznego (rys. 2.4). Schemat (zbiór odpowiednio połaczonych ˛ generatorów, modeli obiektów i re- Rys. 2.4. Graficzny edytor modeli (schematów blokowych symulacji) 18 2. Środowisko programowe MATLAB — podstawy jestratorów) można zapisać w pliku z rozszerzeniem *.mdl. Połaczenia ˛ mie˛ dzy poszczególnymi blokami nastepuj ˛ a˛ również przez „przeciaganie”. ˛ Wezły ˛ połaczeniowe ˛ uzyskujemy, przytrzymujac ˛ klawisz Ctrl. Symulacje˛ gotowego modelu dynamicznego uruchamia sie˛ poleceniem Ctrl+T (/Start w menu /Simulation). Okno ustawień parametrów symulacji (rys. 2.5) wywołuje sie˛ poleceniem Ctrl+E (/Parameters w menu /Simulation). Rys. 2.5. Parametry symulacji komputerowej Właściwości i parametry elementów zawartych w schemacie zmienia sie˛ po dwukrotnym kliknieciu ˛ na poszczególne obiekty schematu symulacji (patrz przykłady na rys. 2.6—2.8). Na rysunku 2.6 przedstawiono okno ustawień parametrów sygnału skokowego. Znaczenie ustawień jest nastepuj ˛ ace: ˛ • Step time = 1 — moment, w którym nastepuje ˛ skok wartości wyjściowej bloku Step; • Initial value = 0 — wartość poczatkowa ˛ (przed skokiem); • F inal value = 1 — wartość końcowa (po skoku). Takie ustawienia powoduja˛ zatem symulacje˛ sygnału wejściowego typu 1(t − 1), tzn. skoku jednostkowego z opóźnieniem τ = 1. Na rysunku 2.7 parametrami sa˛ współczynniki wielomianów licznika i mianownika transmitancji symulowanego systemu z czasem ciagłym: ˛ 2.5. Nakładka graficzna Simulink 19 Rys. 2.6. Właściwości bloku źródłowego sygnału skoku jednostkowego STEP Rys. 2.7. Właściwości bloku liniowego Transfer Function • N umerator = [1] — licznik transmitancji, o postaci: 1; • Denominator = [1 2] — mianownik transmitancji, o postaci: s + 2. Sygnał wyjściowy obiektu trafia do bloku typu TO FILE (rys. 2.8), w którym: • F ilename — oznacza nazw˛e pliku dyskowego, do którego zostanie on skierowany; • V ariable name — nazwa zmiennej, za pomoca˛ której bedzie ˛ on w danym pliku identyfikowany; • Sample time — czas próbkowania (−1: ustawienie domyślne). Zmienne zawarte w tym zbiorze (*.mat) można potem załadować do obszaru roboczego środowiska MATLAB (patrz punkt 2.2.1.). 20 2. Środowisko programowe MATLAB — podstawy Rys. 2.8. Właściwości rejestratora To File 2.5.2. Źródła sygnałów (Sources) Ze wzgledu ˛ na ćwiczenia laboratoryjne z podstaw automatyki najbardziej przydatne sa˛ nastepuj ˛ ace ˛ bloki generujace ˛ sygnały (rys. 2.9): Rys. 2.9. Bloki generujace ˛ sygnały wejściowe 2.5. Nakładka graficzna Simulink 21 pulse — impulsy Diraca [5]; step — skok jednostkowy; ramp — sygnał liniowo narastajacy; ˛ sine wave — sinusoida o stałej amplitudzie i czestotliwości; ˛ from file — sygnał (wektor) zawarty w wyspecyfikowanym pliku; random number — generator liczb pseudolosowych; from workspace — źródło danych oparte na zmiennej obszaru roboczego. 2.5.3. Rejestratory sygnałów (Sinks) Wśród bloków rejestrujacych ˛ (rys. 2.10) wykorzystywać bedziemy ˛ nastepu˛ jace: ˛ scope — rejestrator jednowymiarowy (w dziedzinie czasu); xy graph — rejestrator dwuwymiarowy na płaszczyźnie XY; display — urzadzenie ˛ pomiarowe z wyświetlaczem cyfrowym; to file — zapis do pliku dyskowego; to workspace — zapis do nazwanej zmiennej w przestrzeni roboczej. Rys. 2.10. Bloki odbiorcze — rejestrujace ˛ sygnały 2.5.4. Elementy i bloki liniowe z czasem ciagłym ˛ (Linear) Spośród modeli zasobnika Linear (rys. 2.11), podstawowym układem automatyki jest blok Tranfer Function opisany już szczegółowo w punkcie 2.5.1, a także bloki: 22 2. Środowisko programowe MATLAB — podstawy Gain — wzmacniacz liniowy (bezinercyjny), którego parametrem jest wzmocnienie; Sum — w˛ezeł sumacyjny o dowolnej liczbie wejść i dowolnej kombinacji znaków (np. ustawienie + + +− oznacza sumator czterowejściowy z jednym wejściem ujemnym (negatywnym)); Integrator — idealny (bezinercyjny) element całkujacy ˛ o transmitancji 1/s, (przypadek szczególny bloku Transfer Fcn); State-Space — system liniowy o opisie w przestrzeni stanów; Derivative — idealny element różniczkujacy ˛ (o transmitancji s). Rys. 2.11. Modele liniowe z czasem ciagłym ˛ 2.5.5. Elementy nieliniowe (Nonlinear) Mimo że podrecznik ˛ opisuje systemy liniowe, to jednak ich analiza komputerowa może w pewnych wypadkach wymagać znajomości bloków o charakterystyce nieliniowej (np. technika kreślenia charakterystyk czestotliwościowych, ˛ obiekty liniowe z regulatorami typu przekaźnik dwupołożeniowy). W szczególności zasobnik Nonlinear (rys. 2.12) zawiera nastepuj ˛ ace ˛ bloki: Transport Delay — opóźnienie w dziedzinie czasu, z możliwościa˛ ustawienia warunku poczatkowego; ˛ 2.5. Nakładka graficzna Simulink 23 Fcn — realizacja dowolnej formuły matematycznej (domyślna nazwa sygnału wejściowego: u); Matlab Fcn — realizacja dowolnej funkcji (skryptu) MATLAB a. Rys. 2.12. Modele nieliniowe 2.5.6. Systemy z czasem dyskretnym (Discrete) Na rysunku 2.13 przedstawiono dostepne ˛ symulatory obiektów z czasem dyskretnym. Wśród nich należy wyróżnić: Unit Delay — dyskretny element opóźniajacy; ˛ Discrete-Time Integrator — dyskretny element całkujacy; ˛ Discrete Filter — liniowy filtr autoregresyjny; Discrete Transfer Fcn — element opisany za pomoca˛ dowolnej transmitancji dyskretnej. 24 2. Środowisko programowe MATLAB — podstawy Rys. 2.13. Modele z czasem dyskretnym 2.5.7. Widoczność danych w programie MATLAB Wartości wszystkich zmiennych załadowanych do środowiska MATLAB sa˛ widoczne w Simulink u, wartości zaś wszystkich zmiennych Simulink a sa˛ widoczne w oknie ścieżki poleceń MATLAB. 2.6. Korzystanie z funkcji HELP W przypadku nieznajomości działania instrukcji, można uzyskać pomoc, przez wydanie w oknie głównym MATLAB polecenia help nazwa_funkcji lub korzystać z lokalnych zbiorów w formacie HTML, wybierajac ˛ polecenie /HelpDesk z menu /Help. 25 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ 3.1. Wprowadzenie W ćwiczeniu bada sie˛ odpowiedzi czasowe typowych pojedynczych lub szeregowo połaczonych, ˛ liniowych układów dynamicznych z czasem ciagłym, ˛ na standardowe pobudzenia typu: funkcja impulsowa (wywodzaca ˛ sie˛ z impulsu Diraca), skok jednostkowy i sinusoida. Dla ustalonego typu funkcji wejścia (np. funkcji impulsowej) należy wyznaczyć odpowiedzi dla układów o transmitancjach ogólnej postaci K(s) = L(s) , M (s) (3.1) gdzie licznik i mianownik sa˛ wielomianami zmiennej zespolonej s = α + jβ o stopniach odpowiednio l i m (zakłada sie, ˛ że l 6 m) L(s) = bl sl + ... + b1 s + b0 , M (s) = am sm + ... + a1 s + a0 . Taki iloraz dwóch wielomianów nazywa sie˛ funkcja˛ wymierna˛ zmiennej s. Wyznaczenie odpowiedzi impulsowej bedzie ˛ polegało na rozkładzie Y (s) na sume˛ ułamków prostych i obliczeniu odwrotnej transformaty Laplace’a. Otrzymane wyniki należy porównać z uzyskanymi z użyciem pakietu MATLAB, a wyznaczone odpowiedzi impulsowe k(t), odpowiadajace ˛ różnym K(s) — zilustrować graficznie. Na podstawie wykresów szacuje sie˛ założone w symulacji komputerowej parametry (zakładajac ˛ ich nieznajomość), takie jak: stałe czasowe T , wzmocnienia k, opóźnienia τ , wartości pulsacji ω itp. Dla wejścia typu u(t) = sin ωt można wyznaczyć wzmocnienie amplitudy i przesuniecie ˛ fazowe w stanie ustalonym. Wyniki badań komputerowych porównuje sie˛ z wynikami analizy teoretycznej. 26 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ 3.2. Zakres tematyczny ćwiczenia 3.2.1. Liniowe równanie różniczkowe, transformacja Laplace’a Jak powiedziano we wprowadzeniu, system liniowy splata sygnał wejściowy z funkcja˛ wagowa˛ k(t) (odpowiedzia˛ impulsowa). ˛ Jest ona odpowiedzia˛ na impuls Diraca, przy zerowych warunkach poczatkowych. ˛ Funkcja k(t) w pełni charakteryzuje właściwości systemu liniowego. Jest to konsekwencja˛ bogactwa informacji, jaka˛ daje nieskończenie strome zbocze (skok wartości) pobudzenia (i w konsewencji nieograniczone pasmo czestotliwości ˛ sygnału). Sygnały takie nazywa sie˛ ustawicznie pobudzajacymi ˛ dowolnego rzedu. ˛ Należy do nich również skok jednostkowy [15], [16]. Stacjonarne, liniowe układy dynamiczne z czasem ciagłym ˛ maja˛ swoja˛ reprezentacje˛ matematyczna˛ w postaci liniowego równania różniczkowego typu wejście u — wyjście y (SISO — single input — single output) dm y(t) dm−1 y(t) dy(t) + a0 y(t) + a + ... + a1 m−1 dtm dtm−1 dt dl u(t) dl−1 u(t) du(t) + b0 u(t), + b + ... + b1 = bl l−1 l l−1 dt dt dt am (3.2) gdzie l 6 m. Liczbe˛ m nazywa sie˛ rzedem ˛ równania różniczkowego (3.2) przy ˛ że założeniu, że am 6= 0. W ćwiczeniu zakłada sie, dl−1 u(t) du(t) /t=(0−) = ... = / = 0. dt dtl−1 t=(0−) Wartości wyjścia systemu i jego kolejnych pochodnych w chwili t = 0 nazywa sie˛ warunkiem poczatkowym. ˛ Mówimy, że jest on zerowy (ozn. W P = 0) jeśli u(0−) = dy(t) dm−1 y(t) /t=(0−) = ... = / = 0. (3.3) dt dtm−1 t=(0−) W teorii podstaw automatyki stosuje sie˛ opis liniowego systemu dynamicznego, reprezentujacy ˛ jego strukture, ˛ oparty na transmitancji operatorowej K(s). Opis ten (patrz rys. 3.1) otrzymuje sie˛ przez zastosowanie transformaty Laplace’a do obu stron równania (3.2), zakładajac ˛ zerowy warunek poczat˛ kowy. Transmitancja K(s) jest funkcja˛ zmiennej zespolonej s = α + jβ i ma postać y(0−) = K(s) , bl sl + bl−1 sl−1 + ... + b1 s + b0 Y (s) = . U (s) am sm + bm−1 sm−1 + ... + a1 s + a0 (3.4) 3.2. Zakres tematyczny ćwiczenia u (t ) =ˆ U ( s ) 27 K (s) Y ( s ) =ˆ y (t ) Rys. 3.1. Reprezentacja struktury układu automatyki Transmitancja (3.4) umożliwia otrzymanie dynamicznego przebiegu wyjścia y(t)=Y b (s) = K(s)U (s), jeżeli znany jest przebieg sygnału wejściowego u(t). Uwaga. Oznaczenie = b jest uproszczonym zapisem zarówno przejścia do transformaty Laplace’a, jak również przejścia do odwrotnej transformaty Laplace’a, np. u(t)=U b (s) oznacza, że U (s) = ${u(t)} oraz U(s)=u(t), b że u(t) = −1 $ {U (s)}. 3.2.2. Opis liniowego systemu dynamicznego z czasem ciagłym ˛ w przestrzeni stanów, systemy wielowymiarowe Zarówno sygnał wejściowy, jak i wyjściowy układu liniowego moga˛ być wielowymiarowe (MIMO — multiple input — multiple output) u1 (t) u2 (t) , u(t) = ... up (t) y1 (t) y2 (t) . y(t) = ... yq (t) Duże znaczenie ma opis zachowania sie˛ systemu liniowego z użyciem tzw. zmiennych stanu x1 (t), ..., xr (t) zawartych w wektorze stanu [5], [7], [14] x1 (t) x2 (t) . x(t) = ... xr (t) Wielkości x1 (t), ..., xr (t) maja˛ najcześciej ˛ konkretne znaczenie fizyczne określajace ˛ stan, w którym system sie˛ znajduje (np. systemem może być lecacy ˛ ˛ na jakiej sie˛ znajduje, x2 (t) — jego predkości ˛ a, ˛ samolot, x1 (t) — wysokościa, x3 (t) — azymutem, x4 (t) — poziomem paliwa w chwili t itp.). 28 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ System liniowy opisuje w przestrzeni stanów (ang. state space) układ równań ½ 0 x (t) = Ax(t) + Bu(t) (3.5) y(t) = Cx(t) + Du(t) gdzie A jest stała˛ macierza˛ o wymiarach r×r, B i D — macierzami o wymiarach r × p, a C — macierza˛ o wymiarach q × r. Dla uproszczenia ograniczymy sie˛ do układów ściśle właściwych, czyli takich, w których D = 0. System opisany układem równań (3.5) jest asymptotycznie stabilny wtedy i tylko wtedy, gdy wszystkie wartości własne macierzy A leża˛ wewnatrz ˛ okregu ˛ jednostkowego. Wtedy wektor Ax(t) jest w sensie euklidesowym krótszy od wektora x(t) [9]. W przypadku skalarnym oznacza to A ∈ (−1, 1). Po zastosowaniu przekształcenia Laplace’a do równań (3.5), przy zerowych warunkach poczatkowych, ˛ otrzymuje sie˛ zwiazek ˛ miedzy ˛ macierza˛ transmitancji K(s) systemu liniowego a macierzami A, B i C w opisie w przestrzeni stanów K(s) = C(sI − A)−1 B. Macierz K(s) ma wymiary q × p, a jej elementami sa˛ funkcje wymierne zmiennej zespolonej s K1,1 (s) K1,2 (s) ... K1,p (s) K2,1 (s) K2,2 (s) ... ... . (3.6) K(s) = ... ... ... ... ... Kq,p (s) Kq,1 (s) ... Przy zerowych warunkach poczatkowych ˛ zachodza˛ zależności Y(s) = K(s)U(s); Yi (s) = p X Ki,j (s)Uj (s); i = 1, 2, ..., q, j=1 gdzie U1 (s) U2 (s) oraz Y(s) = U(s) = ... Up (s) Y1 (s) Y2 (s) . ... Yq (s) (3.7) Funkcja przejścia Ki,j (s) jest zatem transmitancja, ˛ określajac ˛ a˛ wpływ j-tego wejścia układu na i-te wyjście. 3.2. Zakres tematyczny ćwiczenia 29 3.2.3. Sterowalność, osiagalność ˛ i obserwowalność Ze wzgledu ˛ na zachowanie sie˛ układów dynamicznych w układach regulacji automatycznej najistotniejsze sa˛ właściwości sterowalności i obserwowalności. Definicja 1. Układ nazywamy sterowalnym, jeżeli istnieje ograniczone przedziałami ciagłe ˛ sterowanie u(t) przeprowadzajace ˛ ten układ z dowolnego stanu poczatkowego ˛ x(t0 ) do dowolnego stanu końcowego x(tk ) w chwili t = tk , w skończonym czasie, 0 6 tk − t0 6 ∞ [15]. Definicja 2. Układ nazywamy obserwowalnym, jeżeli przy dowolnym sterowaniu u(t) istnieje skończona chwila tk , po której, na podstawie sygnałów (wektorowych) u(t) i y(t) w przedziale czasu od t0 do tk , można wyznaczy´c stan ˛ t0 [15]. układu x(t0 ) w dowolnej chwili poczatkowej Definicja 3. Układ nazywamy osiagalnym, ˛ jeżeli dla dowolnego stanu docelowego xf istnieje skończona chwila tf > 0 oraz sterowanie u(t) w przedziale [0, tf ] takie, że gdy x(0) = 0, wówczas x(tf ) = xf [7]. Dane właściwości maja˛ zasadnicze znaczenie w teorii sterowania. Jeżeli stwierdzimy, że system jest sterowalny, oznacza to, iż można skutecznie doprowadzić go w skończonym czasie do dowolnego stanu zadanego; sensowne jest wówczas projektowanie układu sterowania. Jeśli natomiast system jest obserwowalny, to na podstawie obserwacji jego sygnału wejściowego i wyjścia w skończonym czasie, można ustalić jego stan poczatkowy, ˛ co z kolei decyduje o jego identyfikowalności. O sterowalności i obserwowalności systemu liniowego rozstrzygaja˛ twierdzenia. Twierdzenie 1. Układ jest sterowalny wtedy i tylko wtedy, gdy macierz S = [B, AB, A2 B, ... An−1 B] (3.8) jest pełnego rzedu ˛ [15]. Twierdzenie 2. Układ jest obserwowalny wtedy i tylko wtedy, gdy macierz T T W = [CT , CT AT , CT A2 , ... CT An−1 ] jest pełnego rzedu ˛ [15]. (3.9) 30 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ 3.3. Badania komputerowe 3.3.1. Wyznaczanie charakterystyk czasowych W ćwiczeniu należy obliczyć analitycznie, a nastepnie ˛ wyznaczyć komputerowo odpowiedzi impulsowe k(t), odpowiedzi skokowe λ(t) i (dodatkowo) na pobudzenie typu u(t) = sin ωt dla układów o transmitancjach: K1 (s) = k — proporcjonalny (bezinercyjny); k — inercyjny pierwszego rzedu; ˛ K2 (s) = Ts + 1 k K3 (s) = — inercyjny drugiego rzedu; ˛ (T1 s + 1)(T2 s + 1) k K4 (s) = 2 — oscylacyjny drugiego rzedu; ˛ s + as + b k K5 (s) = — całkujacy ˛ z inercja; ˛ s(T s + 1) ks K6 (s) = ˛ z inercja; ˛ — różniczkujacy Ts + 1 K7 (s) = e−sτ — opóźniajacy; ˛ K8 (s) = ke−sτ — opóźniajacy ˛ z inercja. ˛ Ts + 1 Przykładowy schemat do wykonania badań w Simulink u, przy pobudzeniu u(t) = 1(t), przedstawia rysunek 3.2. W celu uzyskania charakterystyk czasowych nie w formie graficznej, lecz w formie ciagów ˛ liczbowych, należy zamienić elementy rejestrujace ˛ typu Scope na rejestratory zmiennych do pliku (To File) lub do zmiennych w przestrzeni roboczej (To Workspace). Dla każdego z symulowanych układów należy powtórzyć badanie przy zmianie jednego z parametrów (np. k, T, P, a...) w stosunku do układu oryginalnego oraz zaobserwować wpływ poszczególnych parametrów na postać odpowiedzi skokowych. Całość badań należy powtórzyć dla pobudzenia u(t) = δ(t). W tym celu należy zamienić blok Step na układ przybliżajacy ˛ delte˛ Diraca, przedstawiony na rys. 3.3, stosujac ˛ układ różniczkujacy ˛ i inercje˛ o małej stałej czasowej d. Istnieje również gotowa funkcja MATLAB o nazwie impulse(). Przy wyznaczaniu odpowiedzi układów na pobudzenie sinusoidalne należy użyć bloku źródłowego o nazwie SineWave, dostepnego ˛ w grupie Sources. 3.3. Badania komputerowe 31 Rys. 3.2. Badanie odpowiedzi różnych układów dynamicznych na skok jednostkowy 3.3.2. Identyfikacja parametrów typowych członów liniowych Gdy mamy do dyspozycji komplet charakterystyk wyznaczonych w punkcie 3.3.1, wówczas zakładamy, że parametry systemów sa˛ nieznane (np. uznajemy, że charakterystyki pochodza˛ z badań nad rzeczywistymi systemami). Znamy jedynie: • postać odpowiedzi skokowej λ(t) lub impulsowej k(t); • strukture˛ transmitancji, np. K(s) = k/(T s + 1); należy wówczas wyznaczyć (zidentyfikować) nieznane parametry systemu (np. k i T — rys. 3.4). Identyfikacja parametrów polega na znalezieniu charakterystycznych punktów w odpowiedzi skokowej i impulsowej. Może to czesto ˛ wymagać określenia stycznej do danej charakterystyki. Proponuje sie˛ nastepuj ˛ ace ˛ dwie metody: 32 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ Rys. 3.3. Generator impulsu Diraca Rys. 3.4. Wyznaczanie parametrów elementu inercyjnego pierwszego rzedu ˛ • metoda graficzna — polegajaca ˛ na wykreśleniu charakterystyki w dużej skali, recznemu ˛ wykreśleniu stycznej i znalezieniu odpowiednich punktów; • metoda numeryczna — aby wyznaczyć styczna, ˛ np. do charakterystyki skokowej λ(t) w punkcie t0 , odczytujemy z charakterystyki wyznaczonej ˛ w postaci numerycznej wartości w dwóch punktach: t0 i t0 + ∆t. Nastepnie obliczamy parametry m i c linii prostej y = mt + c przechodzacej ˛ przez ˛ na definicje˛ pochodnej, punkty (t0 , λ(t0 )) i (t0 + ∆t, λ(t0 + ∆t)). Ze wzgledu wartość ∆t powinna być możliwie mała, bliska zeru. W praktyce musi ona jednak przekraczać wartość dokładności reprezentacji liczb w komputerze. W przypadku niektórych systemów wyższego rzedu ˛ istnieje potrzeba znalezienia tzw. punktu przegiecia ˛ charakterystyki, należy w tym celu numerycznie zróżniczkować te˛ charakterystyk˛e po czasie i znaleźć chwile˛ t0 , w której nastepuje ˛ zmiana znaku pochodnej. 3.3. Badania komputerowe 33 3.3.3. Numeryczny rozkład funkcji wymiernej na ułamki proste Środowisko MATLAB umożliwia rozkład funkcji wymiernej na ułamki proste (znajdowanie residuów). Niech w naszym przypadku K(s) = 2s3 + 5s2 + 3s + 6 . s3 + 6s2 + 11s + 6 (3.10) Skrypt dokonujacy ˛ rozkładu ma nastepuj ˛ ac ˛ a˛ postać: licznik=[2 5 3 6]; mianownik=[1 6 11 6]; [r,p,k]=residue(licznik,mianownik) Wynikami działania skryptu sa˛ −6 −3 r = −4 p = −2 k = 2; 3 −1 co interpretuje sie˛ nastepuj ˛ aco ˛ K(s) = −4 3 −6 + + + 2. s+3 s+2 s+1 Umożliwia to natychmiastowe obliczenie odpowiedzi impulsowej k(t) = −6e−3t + −4e−2t + 3e−t + 2δ(t). 3.3.4. Testowanie sterowalności i obserwowalności systemu Należy zdefiniować system liniowy z czasem ciagłym ˛ na podstawie współczynników znanej transmitancji K(s) i korzytajac ˛ z funkcji ss() przekształcić go do opisu w przestrzeni stanów. Zbudować odpowiednie macierze sterowalności i obserwowalności podane w twierdzeniach 1 i 2. Za pomoca˛ funkcji det() lub rank() określić ich rzedy. ˛ 3.3.5. Przykładowe odpowiedzi skokowe Na rysunkach 3.5 i 3.6 przedstawiono uzyskana˛ w MATLAB odpowiedź 1 skokowa˛ układu o transmitancji K(s) = s2 +as+1 dla parametru a równego odpowiednio 1 i −0, 1. 34 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ Rys. 3.5. Odpowiedź skokowa dla a = 1 Rys. 3.6. Odpowiedź skokowa dla a = −0, 1 3.3. Badania komputerowe Rys. 3.7. Odpowiedź skokowa układu o transmitancji KI (s) Rys. 3.8. Odpowiedź skokowa układu o transmitancji KD (s) 35 36 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ Z kolei na rysunkach 3.7 i 3.8 przedstawiono odpowiedzi skokowe układu całkujacego ˛ z inercja˛ KI (s) = 1 ; s(3s + 1) oraz układu różniczkujacego ˛ z inercja˛ KD (s) = s . s+1 3.4. Przykłady praktyczne 3.4.1. Ładowanie kondensatora w układach RC i CR Jako przykład praktyczny opiszemy zjawisko ładowania kondensatora o pojemności C, ze źródła napiecia ˛ stałego U, przez rezystor R (rys. 3.9). R C u(t) y(t) Rys. 3.9. Czwórnik RC jako układ inercyjny pierwszego rzedu ˛ Zakładamy, że podanie napiecia ˛ wejściowego U nastepuje ˛ w chwili t = 0 u(t) = U · 1(t) oraz zerowy warunek poczatkowy, ˛ tzn. że napiecie ˛ na kondensatorze y(t) w chwili t = 0 ma wartość y(0) = 0. Opierajac ˛ sie˛ na podstawowych prawach elektrotechniki (prad ˛ ładowania kondensatora jest równy pradowi ˛ płynacemy ˛ przez rezystor — I prawo Kirchhoffa), otrzymujemy nastepuj ˛ acy ˛ opis układu dynamicznego C u(t) − y(t) d y(t) = , dt R (3.11) 3.4. Przykłady praktyczne 37 który jest liniowym równaniem różniczkowym pierwszego rzedu. ˛ Po przekształceniu wzoru (3.11) do postaci RC d y(t) + y(t) = u(t) dt (3.12) i zastosowaniu do (3.12) obustronnej transformacji Laplace’a Y (s)(RCs + 1) = U (s), otrzymujemy transmitancje˛ systemu K(s) = 1 Y (s) = , U (s) Ts + 1 gdzie T = RC. Układ z rysunku 3.9 zachowuje sie˛ zatem jak człon inercyjny pierwszego rzedu, ˛ o stałej czasowej zależnej od przyjetych ˛ wartości rezystancji i pojemności. Jego charakterystyki czasowe można zatem z powodzeniem badać nie na rzeczywistym układzie elektrycznym, lecz na modelu (patrz punkt 3.3.1) Y (s) = 1 U (s) Ts + 1 Na podstawie przebiegu napiecia ˛ na kondensatorze nie można zidentyfikować wartości pojemności C i rezystancji R, można jedynie określić ich iloczyn RC = T . Wzmocnienie układu w stanie ustalonym wynosi K(0) = 1, co oznacza, iż lim y(t) = U. t→∞ W układzie przedstawionym na rysunku 3.10, sygnałem wyjściowym jest napiecie ˛ na rezystorze. C u(t) R y(t) Rys. 3.10. Czwórnik CR jako rzeczywisty układ różniczkujacy ˛ 38 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ Układ opisuje równanie C d y(t) uc (t) = , dt R gdzie uc (t) jest napieciem ˛ na kondensatorze, równym uc (t) = u(t) − y(t). Stad ˛ ¶ µ d d y(t) u(t) − y(t) = C dt dt R i po zastosowaniu obustronnej transformacji Laplace’a RC(sU (s) − sY (s)) = Y (s), jego transmitancja ma postać K(s) = RCs 1 . RCs + 1 Czwórnik CR z rysunku 3.10 realizuje różniczkowanie z inercja. ˛ Model układu jest nastepuj ˛ acy ˛ (patrz symulacje w 3.3.1.) Y (s) = 1 1 U (s), gdzie Ti = T = RC. Ti s T s + 1 3.4.2. Zbiornik z ciecza˛ Na rysunku 3.11 przedstawiono wyidealizowany układ napełniania pojemnika o stałym przekroju poziomym p. Jako sygnał wejściowy u(t) traktujemy przepływ przez zawór. Jego jednostka˛ niech bedzie ˛ [umax m3 /s], który w istocie określa położenie kurka, gdzie ˛ przepływ przez zawór przy jego całkowiumax jest parametrem określajacym tym otwarciu, np. umax = 0, 001 oznacza maksymalny przepływ 1[dm3 /s]. Sygnałem wyjściowym jest wysokość poziomu cieczy. Warunkiem poczatko˛ wym jest poziom cieczy w zbiorniku w chwili t = 0. Niech bedzie ˛ on zerowy, tzn. y(0) = 0 (zbiornik pusty). Jest oczywiste, że ilość cieczy znajdujaca ˛ sie˛ w zbiorniku w chwili t jest równa ilości cieczy, która przepłyneła ˛ przez zawór od chwili poczatkowej ˛ do chwili t, czyli Z t u(t)dt, py(t) = 0 a zatem 1 pY (s) = U (s). s 3.4. Przykłady praktyczne 39 u(t) y(t) p Rys. 3.11. Zbiornik z ciecza˛ jako układ całkujacy ˛ Stad ˛ K(s) = 1 1 Y (s) = = , gdzie Ti = p U (s) ps Ti s i układ ten jest układem całkujacym, ˛ gdzie p decyduje o szybkości całkowania, tzn. im wiekszy ˛ przekrój zbiornika, tym wolniejsze narastanie poziomu cieczy. Liniowość systemu rozpatrywanego w powyższym przykładzie wynika z tego, że p = const. Nie należy jednak nabrać przekonania, iż rzeczywiste procesy przepływu i gromadzenia cieczy przy prostej geometrii zbiorników sa˛ procesami liniowymi. Nieliniowe zachowanie sie˛ procesu może wynikać choćby z wystepowania ˛ odpływów (skończona objetość ˛ zbiorników). 3.4.3. Termometr jako układ inercyjny pierwszego rzedu ˛ Niech wielkościa˛ wyjściowa˛ bedzie ˛ długość słupka rteci ˛ y(t) w tradycyjnym termometrze lekarskim. Jest ona proporcjonalna z pewnym współczynnikiem w (w ograniczonym zakresie) do temperatury rteci ˛ ϑHg (t) y(t) = wϑHg (t). W chwili t = 0 rteć ˛ znajduje sie˛ w temperaturze pokojowej (np. ϑHg (0) = ϑpok = 20 ◦ C). Pobudzenie układu polega na umieszczeniu bańki termometru w temperaturze ciała, np. ϑc = 36, 6 ◦ C. Rteć ˛ nagrzewa sie˛ zgodnie z zasada, ˛ iż szybkość zmian ϑHg (t) jest proporcjonalna do różnicy temperatur ϑc i 40 3. Charakterystyki czasowe obiektów z czasem ciagłym ˛ ϑHg (t) (poczatkowo ˛ szybko, później coraz wolniej), co opisuje liniowe równanie różniczkowe pierwszego rzedu ˛ dϑHg (t) = T (ϑc − ϑHg (t)). dt zatem y(t) = yc (1 − e−t/T ), ˛ ϑHg (t) = ϑc („kogdzie yc jest wskazaniem termometru w temperaturze rteci niec pomiaru”), a stała czasowa T zależy od konstrukcji termometru (np. objetości ˛ bańki, grubości szkła). Typowe wartości stałej czasowej T termometrów lekarskich zawieraja˛ sie˛ w granicach od kilku do kilkudziesieciu ˛ sekund. 3.5. Podsumowanie Celem badań przeprowadzonych w ćwiczeniu było poznanie komputerowych technik w zagadnieniach: • identyfikacji struktury i parametrów liniowych systemów dynamicznych z czasem ciagłym ˛ na podstawie jego odpowiedzi czasowych (impulsowej k(t), skokowej λ(t) i na pobudzenie sinusoidalne); • metod komputerowej symulacji systemów o zadanym opisie; • komputerowej weryfikacji właściwości obserwowalności, sterowalności i osiagalności ˛ systemów; • numerycznego rozkładu funkcji wymiernych na ułamki proste; • wyznaczania standardowych odpowiedzi czasowych obiektów. 41 4. Systemy o złożonej strukturze i ich stabilność 4.1. Wprowadzenie Rzeczywiste systemy czesto ˛ składaja˛ sie˛ z mniejszych, połaczonych ˛ i przez to współzależnych, prostych obiektów. Dlatego istotna jest ich reprezentacja za pomoca˛ modeli odzwierciedlajacych ˛ rzeczywiste struktury połaczeń. ˛ Pojedyncze układy dynamiczne moga˛ tworzyć struktury o różnym stopniu złożoności. Najbardziej powszechne sa˛ połaczenia ˛ szeregowe, równoległe, szeregowo-równoległe i ze sprze˛ żeniem zwrotnym, majace ˛ podstawowe znaczenie przy tworzeniu bardziej złożonych struktur systemów. Stad ˛ wywodzi sie, ˛ fundamentalny w automatyce, złożony system dynamiczny zwany Układem Automatycznej Regulacji (UAR). Jest on złożona˛ struktura˛ szeregowa˛ (najcześciej ˛ składajac ˛ a˛ sie˛ z dwóch pojedynczych układów), zawierajac ˛ a˛ dodatkowo petl ˛ e˛ ujemnego sprze˛ żenia zwrotnego. Przez pojecie ˛ regulacja określa sie˛ sterowanie w układzie zamknietym, ˛ który jest zdolny automatycznie kontrolować swoje zachowanie i utrzymywać sie˛ w określonym stanie, zwanym celem sterowania. Najcześciej ˛ celem sterowania jest utrzymywanie (regulacja) wartości wyjścia obiektu (sygnału y(t)) na tym samym poziomie jak sygnał zadajacy ˛ y0 (t), zwany wejściem odniesienia. Intuicyjny opis struktury Układu Automatycznej Regulacji i funkcji pełnionych przez jego elementy wprowadzono już w rozdziale 1. Zainteresowanym polecane sa˛ szczególnie prace [1] i [15]. Matematycznym opisem złożonej struktury systemu dynamicznego z czasem ciagłym ˛ jest transmitancja operatorowa, zwana transmitancja˛ systemu złożonego lub transmitancja˛ wypadkowa˛ (zastepcz ˛ a). ˛ 42 4. Systemy o złożonej strukturze i ich stabilno´sć 4.2. Zarys tematyczny ćwiczenia Rozważmy pojedynczy liniowy układ dynamiczny (rys. 3.1), opisany transmitancja˛ operatorowa˛ K(s) , L(s) Y (s) = (przy założeniu realizowalności stL(s) 6 stM (s)) U (s) M (s) Z pojedynczych układów składa sie˛ połaczenia ˛ szeregowe, równoległe oraz szeregowo-równoległe. 4.2.1. Struktura szeregowa Transmitancja szeregowego systemu złożonego (rys. 4.1) o wejściu u(t) oraz wyjściu y(t) przy zerowym warunku poczatkowym ˛ y(0−) = dp y(t) dy(t) /t=(0−) = ... = / = 0, dt dtp t=(0−) gdzie p = stM1 (s) + stM2 (s) − 1 jest nastepuj ˛ aca: ˛ K(s) , u (t ) =ˆ U ( s) Y (s) = K1 (s) · K2 (s) U (s) K1 ( s) K 2 ( s) y (t ) =ˆ Y ( s ) Rys. 4.1. Połaczenie ˛ szeregowe systemów Przykład Pojedyncze systemy inercyjne wyższego rzedu ˛ (m > 3) czesto ˛ aproksymuje sie˛ struktura˛ szeregowego połaczenia ˛ układu inercyjnego pierwszego rzedu ˛ z układem opóźniajacym ˛ o τ > 0 (rys. 4.2), czyli można aproksymować K(s) = k k ≈ e−sτ , (sT1 + 1)(sT2 + 1)...(sTm + 1) Ts + 1 gdzie opóźnienie τ oraz stała czasowa T , wyrażajace ˛ inercje˛ układu, sa˛ dobierane w sposób najlepiej przybliżajacy ˛ przebieg odpowiedzi układu inercyjnego m-tego rzedu ˛ (np. według reguły Padé [3]). 4.2. Zarys tematyczny ćwiczenia u(t ) 43 k sT + 1 e− sτ y(t ) Rys. 4.2. Układ przybliżajacy ˛ strukture˛ elementu wieloinercyjnego modelem inercyjnym pierwszego rzedu ˛ z opóźnieniem 4.2.2. Struktura równoległa Transmitancja równoległego systemu złożonego (rys. 4.3) o wejściu u(t) oraz wyjściu y(t) jest nastepuj ˛ aca: ˛ K(s) , u(t ) Y (s) = K1 (s) + K2 (s). U (s) K1 ( s) K 2 (s) y1 (t ) + y (t ) = y1 (t ) + y2 (t ) + y2 (t ) Rys. 4.3. Połaczenie ˛ równoległe systemów Przykład Transmitancja opisujaca ˛ strukture˛ idealnego regulatora PID ma postać ∗ (s) = k1 + KPID k2 + k3 s. s Jest to zapis matematyczny nie uwzgledniaj ˛ acy ˛ w sposób jawny współczynnika proporcjonalności kp , stałych Ti oraz Td , a także inercyjności działania rzeczywistych elementów różniczkujacych ˛ i całkujacych ˛ w regulatorach PID ∗ (s) (patrz przykł. w punkcie 4.2.3). Przez to uproszczenie transmitancja KPID reprezentuje strukture˛ równoległa˛ (bez interakcji nastaw), przedstawiona˛ na rysunku 4.4. 44 4. Systemy o złożonej strukturze i ich stabilno´sć k1 + u(t ) 1 k2 s y(t ) + + k3 ⋅ s Rys. 4.4. Struktura idealnego (bezinercyjnego) regulatora PID 4.2.3. Struktura szeregowo-równoległa Strukture˛ połaczenia ˛ szeregowo-równoległego przedstawiono na rysunku 4.5. u(t ) K2 ( s) + K1 (s) K3 (s) y(t ) + Rys. 4.5. Połaczenie ˛ szeregowo-równoległe Transmitancja takiego systemu złożonego jest postaci K(s) , Y (s) = K1 (s) · (K2 (s) + K3 (s)) . U (s) Przykład Uwzgledniwszy ˛ transmitancje˛ operatorowa˛ rzeczywistego regulatora PID (jego możliwa˛ techniczna˛ realizacje, ˛ z uwzglednieniem ˛ inercji „pasożytniczej” ˛ eciu ˛ współczynelementu różniczkujacego, ˛ o stałej czasowej Tp ) i po wyciagni nika proporcjonalności kp przed nawias, otrzymuje sie˛ zapis ¶ µ Td s 1 + , KPID (s) = kp 1 + Ti s Tp s + 1 co ilustruje struktura przedstawiona na rysunku 4.6. Bardziej złożona struktura regulatora wyodrebnia ˛ w sposób bezpośredni trzy podstawowe parametry (tzw. nastawy) regulatora PID: kp — współczynnik wzmocnienia (lub tzw. zakres proporcjonalności liczony jako k1p 100%), Ti — stała całkowania (tzw. czas 4.2. Zarys tematyczny ćwiczenia 45 zdwojenia), Td — stała różniczkowania (tzw. czas wyprzedzenia). Zagadnienie to zostanie omówione szerzej w rozdziale 6, [1][12]. 1 u(t ) + 1 Ti s kp Td ⋅ s + 1 Tp s + 1 y(t ) + Rys. 4.6. Rzeczywisty regulator PID 4.2.4. Struktura ze sprze˛ żeniem zwrotnym Układ Automatycznej Regulacji (UAR) jest najważniejszym złożonym systemem w automatyce, zamknietym ˛ za pomoca˛ petli ˛ ujemnego sprze˛ żenia zwrotnego. Jego struktura zapewnia regulacje˛ sygnału wyjściowego obiektu — y(t) i w konsekwencji sygnału wejściowego na regulator, czyli sygnału błedu ˛ (tzw. uchyb ε(t) = y(t)−y0 (t)). Strukture˛ UAR przedstawiono na rysunku 4.7. y 0 (t ) ε (t ) + _ K R (s) u (t ) KO (s) y (t ) y (t ) Rys. 4.7. Schemat układu automatycznej regulacji (UAR) Transmitancje KR (s) i KO (s) opisuja˛ strukture˛ regulatora oraz obiektu. Wymaga sie, ˛ aby sygnał wyjściowy obiektu jak najszybciej i najdokładniej nada˛żał za wartościa˛ zadana˛ (żadanym ˛ ustawieniem) y0 (t). W praktyce naj˛ Tak wyglada ˛ podcześciej ˛ y0 jest w pewnych odcinkach czasu wartościa˛ stała. stawowe zadanie automatycznej regulacji, czyli sterowania obiektem w układzie zamknietym. ˛ Regulator jest najcześciej ˛ typu PID o znanej transmitancji, z możliwościa˛ ustawienia parametrów kp , Ti i Td , natomiast transmitancje˛ obiektu KO (s) próbuje sie˛ określać na podstawie pomiarów w wyniku procesu identyfikacji, zakładajac, ˛ że jest on rzeczywiście liniowy i stacjonarny (współczynniki wielomianów L(s) i M (s) nie zmieniaja˛ sie˛ w czasie). Dla zapewnienia wymaganej wartości sygnału y(t) jest ona nieustanie porównywana z wartościa˛ zadana˛ y0 (t) — założonym celem sterowania. Idealna byłaby 46 4. Systemy o złożonej strukturze i ich stabilno´sć sytuacja (niemożliwa do osiagni ˛ ecia ˛ w praktyce), w której dla każdego y0 (t) zachodzi y(t) = y0 (t). (4.1) Jest to niemożliwe z kilku powodów. Ze wzgledu ˛ na własności obiektu wymaganie (4.1) może w istocie oznaczać wymaganie nieskończonych wartości sterowań u(t). Pojawiaja˛ sie˛ także zakłócenia odchylajace ˛ wartości sygnału ˛ zakłócewyjścia y(t) od pożadanej, ˛ docelowej wartości y0 (t) (sa˛ to najcześciej nia addytywne, tzn. dodajace ˛ sie˛ do wartości wyjściowej y(t)). Istota automatycznej regulacji polega na tym, że system nie stara sie˛ ewentualnych zakłóceń mierzyć (poznawać ich wartości w każdej chwili), tylko niweluje ich wpływ przez ciagłe ˛ porównywanie y(t) do y0 (t). W ten sposób powstaje najważniejszy sygnał systemu UAR — bład ˛ (uchyb) regulacji ε(t) = y0 (t) − y(t). Z sygnału ε(t) korzysta regulator, którego podstawowym zadaniem jest wytworzenie takiego sterowania u(t), aby utrzymywać uchyb ε(t) na jak najniższym poziomie. W niniejszym rozdziale przedstawiono analize˛ transmitancji zastep˛ ˛ zwanego Układem Automatycznej Regulacji czej KZ (s) systemu zamknietego, (UAR) (rys. 4.7). Gdy system jest otwarty, czyli nie została utworzona petla ˛ ujemnego sprze˛ żenia zwrotnego, wówczas transformata uchybu E(s) (tzn. E(s) = b ε(t)) jest tożsama z wejściem Y0 (s), a transmitancje˛ Kotw (s) oblicza sie˛ jak dla systemu szeregowego Kotw (s) = Y (s) = KR (s)KO (s), E(s) stad ˛ Y (s) = KR (s)Ko (s)E(s) = Kotw (s)E(s). (4.2) Po zamknieciu ˛ petli ˛ wzór (4.2) oczywiście dalej obowiazuje, ˛ natomiast transformata uchybu powstaje nastepuj ˛ aco ˛ E(s) = Y (s) − Y0 (s), stad ˛ Y0 (s) = E(s) + Y (s). 4.2. Zarys tematyczny ćwiczenia 47 ε (t ) ε (t ) y0 (t ) + _ y(t ) KO (s) u(t) KR (s) Rys. 4.8. Układ Automatycznej Regulacji z sygnałem uchybu jako wyjściem Zamkniety ˛ Układ Automatycznej Regulacji ma transmitancje˛ zastepcz ˛ a˛ równa˛ ilorazowi transformat odpowiednich sygnałów wejściowych i wyjściowych (W P = 0) KZ (s) , Kotw (s)E(s) Kotw (s) Y (s) = = . Y0 (s) E(s) + Kotw (s)E(s) 1 + Kotw (s) (4.3) Postulat (4.1) oznacza zatem żadanie, ˛ aby KZ (s) = 1, tzn. Kotw (s) = ∞ lub równoważnie, aby odpowiedź układu zamknietego ˛ na skok jednostkowy wartości zadanej była identyczna ze skokiem jednostkowym λZ (t) = 1(t), co w praktyce jest niemożliwe. Jakość regulacji określa sie˛ zatem na podstawie przebiegu sygnału błedu ˛ ε(t). Im jest on „mniejszy”, tym lepiej. Powstaje jednak problem jak porównać dwie funkcje (np. ε1 (t) i ε2 (t)). Każda˛ miare˛ (funkcje˛ o wartościach nieujemnych, spełniajac ˛ a˛ „warunek trójkata” ˛ R [9]), która ∞ funkcji czasu ε(t) przyporzadkowuje ˛ liczbe˛ rzeczywista˛ q (np. q = 0 |ε(t)| dt), nazywać bedziemy ˛ wskaźnikiem jakości regulacji. Ze wzgledu ˛ na istotność sygnału ε(t), schemat z rysunku 4.7 przedstawia sie˛ w zmodyfikowanej graficznie (odwróconej) postaci (rys. 4.8) z sygnałem uchybu na wyjściu UAR. Przez traktowanie ε(t) jako wyjścia systemu złożonego, definiuje sie˛ tzw. transmitancje˛ uchybowa: ˛ KE (s) , E(s) . Y0 (s) Jej znajomość umożliwia wyznaczenie przebiegu czasowego błedu ˛ regulacji (czyli jego dynamiki), przy dowolnym przebiegu sygnału zadajacego ˛ ε(t)=E(s) b = KE (s)Y0 (s). 48 4. Systemy o złożonej strukturze i ich stabilno´sć Wzór na transmitancje˛ uchybowa˛ KE (s), w zależności od transmitancji ˛ aco ˛ obiektu KO (s) i regulatora KR (s), otrzymuje sie˛ nastepuj E(s) = Y0 (s) − Y (s), Y (s) = KR (s)KO (s)E(s) = Kotw (s)E(s), stad ˛ KE (s) = E(s) 1 E(s) = = . E(s) + Y (s) E(s) + Kotw (s)E(s) 1 + Kotw (s) (4.4) Otrzymaliśmy inna˛ transmitancje˛ tego samego układu zamknietego, ˛ przez traktowanie jako jego wyjście — sygnał uchybu. Gdy znamy KE (s), można obliczyć sygnał błedu ˛ ε(t) wprost ze wzoru: E(s) = 1 Y0 (s). 1 + Kotw (s) Należy zauważyć, że obie transmitancje układu zamknietego, ˛ KZ (s) oraz KE (s), (inne, gdyż inne sygnały sa˛ traktowane jako wyjściowe) maja˛ identyczne mianowniki (patrz wzory (4.3) i (4.4)), co ma fundamentalne znaczenie w analizie stabilności Układu Automatycznej Regulacji. 4.2.5. Badanie stabilności systemów ze sprze˛ żeniem zwrotnym Podstawowa˛ właściwościa, ˛ jaka˛ powinien spełniać każdy system automatyki jest stabilność. Intuicyjne pojecie ˛ stabilności mówi, że gdy podamy na wejście systemu dowolny sygnał ograniczony, wówczas na jego wyjściu y(t) otrzymamy również sygnał ograniczony (definicja według Laplace’a). Równoważna, formalna definicja stabilności jest nastepuj ˛ aca: ˛ Definicja 4. System nazywamy stabilnym (asymptotycznie), je´sli przy dowolnym warunku poczatkowym ˛ i zerowym pobudzeniu zachodzi: lim y(t) = 0. t→∞ Dla systemu stabilnego Z 0 ∞ |k(t)| dt < ∞, a także granica limt→∞ λ(t) istnieje i jest skończona. 4.2. Zarys tematyczny ćwiczenia 49 Do zasady tej należy podejść nieco inaczej przy określaniu stabilności UAR. W tak złożonym systemie najważniejszym sygnałem jest bład ˛ dynamiczny ε(t), a wiec ˛ to jego ograniczoność bedzie ˛ przede wszystkim wymagana. Natomiast na wejście całego UAR podaje sie˛ sygnał zadajacy ˛ y0 (t), którego wartość określa realizacje˛ celu sterowania obiektem. W układach liniowych technicznie realizowalnych, gdzie podstawowym opisem struktury układu (prostego i złożonego) jest transmitancja operatorowa K(s) , L(s) bl sl + ... + b1 s + b0 Y (s) = = , U (s) M (s) am sm + ... + a1 s + a0 musza˛ być spełnione nastepuj ˛ ace ˛ warunki: am 6= 0, najcześciej ˛ am = 1, l 6 m, oraz wszystkie warunki poczatkowe ˛ zerowe. O stabilności systemu otwartego, jak i zamknietego ˛ decyduje mianownik transmitancji zastepczej, ˛ odpowiednio Motw (s) i MZ (s). Zauważmy dodatkowo, że ponieważ KE (s) = 1 1 Motw (s) = , = L (s) o tw 1 + Kotw (s) Lotw (s) + Motw (s) 1 + Mo tw (s) wiec ˛ mianownik transmitancji każdego systemu zamknietego ˛ jest suma˛ licznika i mianownika transmitancji systemu otwartego. Przykład Po zamknieciu ˛ petli ˛ ujemnego sprze˛ żenia zwrotnego w systemie o trans˛ ma postać mitancji Kotw (s) = 1/(s + 1) mianownik transmitancji zastepczej MZ (s) = s + 2. Przyjmujemy M (s) = 0 i otrzymujemy tzw. równanie charakterystyczne systemu automatyki. Ma ono m rozwiazań ˛ (pierwiastków) zespolonych s1 , ... ..., sm (sk = Re sk + j Im sk ), gdzie m jest stopniem mianownika transmitancji. Pierwiastki mianownika M (s) nazywa sie˛ czesto ˛ biegunami transmitancji K(s). Można zatem dokonać przekształcenia równania charakterystycznego M (s) = am sm + ... + a1 s + a0 = am (s − s1 )(s − s2 )...(s − sm ) = 0. Stabilność systemu (otwartego i zamknietego) ˛ jest ściśle zwiazana ˛ z położeniem jego biegunów s1 , ..., sm na płaszczyźnie zespolonej (Re s, Im s). 50 4. Systemy o złożonej strukturze i ich stabilno´sć O zwiazku ˛ miedzy ˛ transmitancja, ˛ a stabilnościa˛ systemu rozstrzygaja˛ poniższe twierdzenia [5]: Twierdzenie 3 (stabilność). Liniowy system dynamiczny z czasem ciagłym ˛ jest asymptotycznie stabilny wtedy i tylko wtedy, gdy wszystkie bieguny jego transmitancji leża˛ w lewej półpłaszczy´znie płaszczyzny zespolonej (Re s, Im s), tzn. ich cze˛´sci rzeczywiste sa˛ ujemne: Re s1 < 0, Re s2 < 0, ... Re sm < 0. (4.5) Twierdzenie 4 (granica stabilności). System jest na granicy stabilno´sci wtedy i tylko wtedy, gdy Re s1 6 0, Re s2 6 0, ... Re sm 6 0; przy czym bieguny transmitancji, dla których zachodza˛ równo´sci, sa˛ co najwyżej jednokrotne. Lemat 1. Jeżeli sk = Re sk + j Im sk jest biegunem transmitancji K(s) (tzn. M (sk ) = 0), to jego warto´s´c sprze˛żona s∗k = Re sk − j Im sk również jest biegunem K(s). Lemat 1 mówi, że pierwiastki sa˛ położone symetrycznie wzgledem ˛ osi rzeczywistej Im s = 0 (sa˛ parami sprze˛ żone). Przykład Gdy stopień mianownika wynosi m = 2, wtedy istnieja˛ nastepuj ˛ ace ˛ możliwości położenia biegunów: — dwa różne bieguny rzeczywiste; — dwa równe bieguny rzeczywiste (mówimy „biegun o krotności dwa”); — dwa bieguny nie leżace ˛ na osi rzeczywistej, ale położone symetrycznie, tzn. jeden jest sprze˛ żeniem drugiego. Bieguny transmitancji układów z czasem ciagłym, ˛ które nie sa˛ rzeczywiste, wprowadzaja˛ oscylacje w odpowiedzi skokowej. Własności odpowiedzi skokowej λ(t) w zależności od położenia biegunów dla przykładu zestawiono w tabeli: λ(t) Re s1 < 0 i Re s2 < 0 Re s1 > 0 lub Re s2 > 0 s1 , s2 ∈ R brak oscylacji, stabilność brak oscylacji, λ(t) → ∞ s1 , s2 ∈ /R osylacje gasnace ˛ oscylacje niegasnace ˛ 4.2. Zarys tematyczny ćwiczenia 51 Badanie stabilności układu opiera sie˛ zatem na sprawdzeniu położenia biegunów jego transmitancji. Analityczne rozwiazanie ˛ równania charakterystycznego M (s) = 0 jest możliwe tylko przy m 6 4. Możliwe jest jednak sprawdzenie, czy warunek (4.5) jest spełniony, bez konieczności znajdowania s1 , ..., sm . Do tego celu służa˛ tzw. kryteria stabilności, np. Routha—Hurwitza, Hurwitza, Michajłowa i Nyquista, które sa˛ znane z literatury [1], [5], [7], [11], [15]. Omówimy je wyłacznie ˛ w kontekście przydatności w analizie numerycznej środowiska MATLAB. 4.2.6. Określanie stabilności systemów za pomoca˛ MATLAB Za pomoca˛ odpowiednich poleceń MATLAB można określić numerycznie położenie wszystkich pierwiastków równania charakterystycznego MZ (s) = 0, czyli biegunów transmitancji KZ (s) układu regulacji automatycznej. Jest to sprawdzanie stabilności Układu Automatycznej Regulacji wprost z podstawowego twierdzenia o stabilności liniowych systemów ciagłych. ˛ W stosunku do metody bezpośredniej, pewien postep ˛ wnosza˛ kryteria algebraiczne badania stabilności, stanowiace ˛ warunki nałożone na współczynniki równania charakterystycznego. Można zauważyć, że w układzie regulacji bardzo istotne znaczenie ma współczynnik wzmocnienia otwartego układu regulacji. Przedstawmy transmitancje˛ układu otwartego w postaci 0 Kotw (s) = K · Kotw (s), gdzie K jest liczba˛ dodatnia˛ określajac ˛ a˛ wzmocnienie w petli ˛ układu regulacji (K = kp kO ). Wtedy równanie charakterystyczne układu zamknietego ˛ można zapisać jako 0 0 1 + K · Kotw (s) = 0, czyli Kotw (s) = − 1 . K Zależność ta jest punktem wyjścia dla dwóch metod oceny właściwości układu zamknietego ˛ (w tym przede wszystkim jego stabilności): metody Nyquista i metody linii pierwiastkowych. Metoda Nyquista badania stabilności jest metoda˛ czestotliwościow ˛ a, ˛ przez co można ja˛ sprawdzać doświadczalnie (bez znajomości parametrów transmitancji systemu). W najprostszym i najcześciej ˛ spotykanym przypadku, kiedy układ otwarty jest stabilny, w celu oceny stabilności układu zamknie˛ tego wymagane jest tylko wykreślenie charakterystyki amplitudowo-fazowej (w skrócie: a—f) układu otwartego w układzie współrzednych ˛ (Re Kotw (jω), Im Kotw (jω)). 52 4. Systemy o złożonej strukturze i ich stabilno´sć Charakterystyk˛e te˛ można wyznaczyć komputerowo poleceniem nyquist() w MATLAB. Wniosek z podstawowego kryterium stabilności Nyquista jest nastepuj ˛ acy: ˛ układ zamkniety ˛ otrzymany z charakterystyki stabilnego układu otwartego jest stabilny wtedy i tylko wtedy, gdy charakterystyka a—f układu otwartego nie obejmuje punktu (−1, j0). W przypadku gdy system otwarty nie jest stabilny, odsyłamy do pełnego omówienia kryterium Nyquista w mono0 grafii [5]. Zauważmy, że przyjecie ˛ Kotw (jω) = K · Kotw (jω) powoduje dogodna˛ interpretacje˛ wykresu Nyquista: charakterystyka a—f układu o transmitancji 0 Kotw (jω) nie powinna obejmować punktu −1/K. Interpretacje˛ kryterium Ny0 quista przy założeniu Kotw (jω) = −1/K przedstawiono na rys. 4.9. Rys. 4.9. System zamkniety ˛ stabilny przy K = K1 , niestabilny przy K = K2 Linia pierwiastkowa jest to miejsce geometryczne (na płaszczyźnie zespolonej) pierwiastków równania charakterystycznego układu zamknietego ˛ regulacji, otrzymane przy uzmiennianiu jednego z parametrów (najcześciej ˛ współczynnika wzmocnienia) układu otwartego [14], [15]. Metoda ta nie jest obecnie powszechnie stosowana, chociaż daje wiele informacji o właściwościach układu, ponieważ bieguny transmitancji określaja˛ ściśle zachowanie sie˛ układu (rys. 4.10). W MATLAB można łatwo przedstawić interpretacje˛ krytycznego przypadku kryterium Nyquista i linii pierwiastkowych, czyli określić parametry układu zamknietego ˛ bed ˛ acego ˛ na granicy stabilności. 4.3. Badania komputerowe 53 Rys. 4.10. Parametry zamknietego ˛ układu regulacji na granicy stabilności według kryterium Nyquista oraz kryterium linii pierwiastkowych 4.3. Badania komputerowe 4.3.1. Detekcja rzedu ˛ inercyjności Należy wyznaczyć odpowiedź skokowa˛ systemu szeregowego (rys. 4.11a), złożonego z ustalonej liczby n elementów inercyjnych pierwszego rzedu: ˛ Ki (s) = ki , (i = 1, ..., n). Ti s + 1 Nastepnie ˛ wyznaczyć komputerowo odpowiedź skokowa˛ systemu złożonego. Zakładamy, że rzad ˛ inercyjności n systemu złożonego jest nieznany, korzystamy jedynie z jego odpowiedzi skokowej i wyznaczamy n. W tym celu można dokonać wielokrotnego komputerowego różniczkowania sygnału odpowiedzi skokowej λ(t) i wykorzystać teoretyczna˛ właściwość [5],[15] λ0 (0) = λ(2) (0) = ... = λ(n−1) (0) = 0 oraz λ(n) (0) 6= 0. Pierwsza, niezerujaca ˛ sie˛ pochodna odpowiedzi skokowej w chwili t = 0, mówi o rzedzie ˛ inercyjności układu. 54 4. Systemy o złożonej strukturze i ich stabilno´sć Rys. 4.11. Struktura szeregowa, równoległa i ze sprze˛ żeniem zwrotnym 4.3.2. Detekcja rzedu ˛ astatyzmu Detekcja rzedu ˛ astatyzmu polega na wyznaczeniu odpowiedzi skokowej systemu szeregowego złożonego z ustalonej liczby n elementów całkujacych ˛ Kl (s) = 1 , (l = 1, ..., n). Tl s Nastepnie ˛ wyznacza sie˛ komputerowo odpowiedź skokowa˛ systemu złożonego. Zakładamy, że rzad ˛ astatyzmu n systemu złożonego jest nieznany, korzystamy jedynie z jego odpowiedzi skokowej i wyznaczamy n. W tym celu dokonujemy wielokrotnego komputerowego różniczkowania sygnału λ(t) i wykorzystujemy właściwość [15] λ0 (t) = λ(2) (t) = ... = λ(n) (t) = 0 oraz λ(n+1) (t) 6= 0. 4.3. Badania komputerowe 55 Nastepnym ˛ zadaniem bedzie ˛ utworzenie systemu o strukturze równoległoszeregowej, zbudowanego z połaczonych ˛ równolegle dwóch gałezi, ˛ zawierajacych ˛ podsystemy astatyczne rzedów ˛ odpowiednio: n1 i n2 . Należy zbadać rzad ˛ astatyzmu całego systemu złożonego. 4.3.3. Badanie stabilności układów złożonych Korzystajac ˛ ze znanych kryteriów, zbadać stabilność układu drugiego rzedu ˛ K(s) = as2 k + bs + c Wyznaczyć zakresy wartości parametrów a, b i c , dla których system jest: • stabilny; • oscylacyjny. Wszystkie możliwości zilustrować wynikami symulacji komputerowych (odpowiednimi charakterystykami skokowymi). Pierwiastki zespolone wielomianu dowolnego stopnia można wyznaczyć numerycznie za pomoca˛ funkcji MATLAB o nazwie roots(a), gdzie a jest wektorem zawierajacym ˛ współczynniki badanego wielomianu. Chodzi o położenie pierwiastków równania charakterystycznegoM (s) = 0, lub MZ (s) = 0, na płaszczyźnie zespolonej. Stabilność systemów ze sprzeżeniem ˛ zwrotnym Za pomoca˛ znanych kryteriów (np. Hurwitza, Nyquista) zbadać stabilność układu po zamknieciu ˛ petli ˛ ujemnego sprze˛ żenia zwrotnego (rys. 4.11c). Proponowany obiekt: Kotw (s) = k . (s + 1)3 Wyznaczyć transmitancje˛ zastepcz ˛ a˛ systemu zamknietego ˛ oraz wykresy charakterystyk czasowych, gdy system ten jest stabilny i niestabilny. Po podstawieniu za s + 1 = w i rozwiazaniu ˛ ze wzgledu ˛ na w równania charakterystycznego układu zamknietego ˛ w3 + k = 0, otrzymujemy w1 = √ 3 kejπ , w2 = √ 3 kejπ/3 , w3 = √ 3 ke−jπ/3 , 56 czyli pierwiastki √ 3 s1 = kejπ − 1, 4. Systemy o złożonej strukturze i ich stabilno´sć s2 = √ 3 kejπ/3 − 1, s3 = √ 3 ke−jπ/3 − 1. Położenie biegunów transmitancji systemu zamknietego ˛ si przy k zmieniajacym ˛ sie˛ w zakresie 0, ..., ∞ przedstawiono na rysunku 4.12. Najlepiej jest oceniać stabilność UAR na podstawie stabilności układu otwartego o transmitancji Kotw (s) = KR (s)KO (s). Ocena opiera sie˛ na spostrzeżeniu, że w mianowniku transmitancji wszystkich typów układów zamknie˛ tych wystepuje ˛ wyrażenie 1 + Kotw (s). Po przyrównaniu do zera, zależność: 1 + Kotw (s) = 0, można uważać za równanie charakterystyczne układu zamknietego. ˛ Stad ˛ wynika, że wartości zmiennej zespolonej s, dla których równanie to jest spełnione, sa˛ biegunami układu zamknietego. ˛ Należy zbadać, czy wszystkie te bieguny leża˛ w lewej półpłaszczyźnie zmiennej zespolonej s (za pomoca˛ poleceń MATLAB rlocus() oraz rlocfind () wystepuj ˛ acych ˛ zawsze razem), ponieważ wówczas zamkniety ˛ układ regulacji bedzie ˛ stabilny. Po napisaniu prostego skryptu w MATLAB należy wykreślić na płaszczyźnie (Re s, Im s) wszystkie bieguny układu zamknietego, ˛ a oprócz tego pokazać jego zachowanie i zapas bezpieczeństwa, przy zmianie parametrów układu. Dotyczy to przede wszystkim parametrów regulatora, ponieważ parametry obiektu (jego wzmocnienie, stałe czasowe i opóźnienia) sa˛ zazwyczaj ustalone. Pokażemy teraz kolejny przykład M -skryptu, który oblicza krytyczna˛ wartość współczynnika wzmocnienia regulatora proporcjonalnego kp,kryt. o transmitancji KR (s) = kp , dla której układ bedzie ˛ na granicy stabilności (rys. 4.12). %Obliczenie kp,kryt dla obiektu o transmitancji %K(s)=ko/(sT+1)^3 i regulatora %proporcjonalnego KR(s)=kp clear %Dane clc T1=10;T2=10;T3=10;k0=1; %Licznik i mianownik układu otwartego L=k0; M1=[T1 1]; M2=[T2 1]; M3=[T3 1]; M0=conv(M2,M1); M=conv(M0,M3); 4.3. Badania komputerowe 57 rlocus(L,M); [K,bieguny]=rlocfind(L,M); k=round(K) MZ=[T1*T2*T3 T1*T2+T1*T3+T2*T3 T1+T2+T3 1+k]; t=1:0.1:200; step(k,MZ,t); Rys. 4.12. Położenie biegunów transmitancji systemu zamknietego ˛ według kryterium linii pierwiastkowych Polecenia MATLAB wprowadzone w tym skrypcie: conv(a,b) — iloczyn dwóch wielomianów; rlocus(L,M) — pokazuje pierwiastki równania M (s) + kp L(s) = 0 L(s) (1 + kp M(s) = 0) w zależności od kp ; rlocfind(L,M) — pozwala wybrać współrzedne ˛ żadanego ˛ bieguna; round(A) — funkcja zaokraglaj ˛ aca ˛ do najbliższej liczby całkowitej. Dwie ostatnie linie M -skryptu pozwalaja˛ wykreślić odpowiedź skokowa˛ UAR, dla uprzednio wyliczonej krytycznej wartości współczynnika wzmocnienia, który zaokraglony ˛ do liczby całkowitej wynosi kp,kryt = 8. W tym przypadku odpowiedź skokowa bedzie ˛ wykresem oscylacji niegasnacych, ˛ których okres Tosc można odczytać wprost z niego. Wartość Tosc jest parametrem 58 4. Systemy o złożonej strukturze i ich stabilno´sć potrzebnym do nastawiania bezpiecznego przebiegu stanów przejściowych w Układzie Automatycznej Regulacji (według jednej z reguł Zieglera—Nicholsa, mówimy o tym w punkcie 6.3). Przykład Dany skrypt stanowi przykład symulacji systemu, który po zamknieciu ˛ jest strukturalnie niestabilny. W Układzie Automatycznej Regulacji (UAR), gdzie KR (s) = sT1 i (regulator 10 typu I) oraz KO (s) = s(1+T s)2 , T = 10, określić parametr Ti dla którego UAR bedzie ˛ stabilny. Narysować jego odpowiedź skokowa. ˛ %Dane T=10; Ti= %parametr %Wspolczynniki transmitancji ukladu otwartego L=10; M1=[0 1 0]; M2=[0 Ti 0]; M3=[T*T 2*T 1]; M0=conv(M2,M1); M=conv(M0,M3); %Wspolczynniki transmitancji ukladu zamknietego LZ=[0 0 0 0 10]; MZ=[T*T+Ti 2*T*Ti Ti 0 10]; t=1:100; step(LZ,MZ,t); grid Nie można znaleźć parametru regulatora Ti , dla którego system zamkniety ˛ byłby stabilny. Jest to spowodowane podwójnym zerowym biegunem, wystepu˛ jacym ˛ w transmitancji układu otwartego. Przykładowa˛ odpowiedź skokowa˛ (dla Ti = 10) przedstawiono na rysunku 4.13. 4.3.4. Struktury regulatorów P, PI i PID Kolejnym zadaniem komputerowej symulacji jest obserwacja wpływu nastaw regulatorów typu P, PI i PID na ich odpowiedzi skokowe oraz wyjaśnienie potrzeby stosowania każdej z gałezi ˛ regulatora w procesie regulacji. 4.4. Przykład praktyczny — wzmacniacz operacyjny 59 Rys. 4.13. Odpowiedź zamknietego ˛ układu niestabilnego (strukturalnie) 4.3.5. Funkcje pakietu MATLAB do budowania struktur Do konstrukcji złożonych systemów automatyki można użyć standardowych funkcji pakietu Control System Toolbox o nazwach series(), parallel () i feedback (). Skrypt tworzy wszystkie konfiguracje połaczeń ˛ dwóch identycz1 . nych elementów prostych o transmitancjach K(s) = s+1 sys1=tf([1],[1 1]); sys2=tf([1],[1 1]); %%tworzenie systemu szeregowego sysser=series(s1,s2) %%tworzenie systemu równoległego syspar=parallel(s1,s2) %%połaczenie ˛ systemu s1 z systemem s2 w petli ˛ sprze˛żenia zwrotnego sysfeed=feedback(s1,s2) 4.4. Przykład praktyczny — wzmacniacz operacyjny Jako przykład zastosowania sprze˛ żeń zwrotnych w praktyce omówimy działanie typowego wzmacniacza operacyjnego, realizowanego np. przez powszechnie znany hybrydowy układ scalony ULY7741. Model idealnego wzmacniacza operacyjnego (rys. 4.15) posiada dwa wejścia — pozytywne i przesuwajace ˛ faze˛ o π i spełnia nastepuj ˛ ace ˛ postulaty: 60 4. Systemy o złożonej strukturze i ich stabilno´sć Rys. 4.14. Struktura regulatorów P, PI i PID • nieskończone wzmocnienie K i liniowość w pełnym zakresie wejścia; • nieskończone pasmo przenoszenia (brak inercji); • nieskończona impedancja wejściowa (zerowe prady ˛ wejściowe); • zerowa impedancja wyjściowa. W praktyce wymagania te sa˛ ograniczone przez skończone napiecie ˛ zasilania, wystepowanie ˛ „pasożytniczych” pojemności w układzie i nieliniowa˛ nature˛ zjawisk opisujacych ˛ tranzystory. Układ z dołaczonymi ˛ rezystorami (rys. 4.16) można opisać nastepuj ˛ aco ˛ y(t) = ku(t) − k R1 y(t), R1 + R2 4.5. Podsumowanie 61 K + Rys. 4.15. Model wzmacniacza operacyjnego. a wzmocnienie układu ma postać k y(t) = 1 u(t) 1 + k R1R+R 2 k≈∞ = R1 + R2 R2 =1+ . R1 R1 R2 R1 + y(t) u(t) Rys. 4.16. Układ wzmacniacza o wzmocnieniu 1 + R2 /R1 Wzmacniacz operacyjny jest zatem blokiem uniwersalnym, na bazie którego, poprzez dobór prostych i tanich elementów sprze˛ żenia zwrotnego, można wpływać na właściwości układu złożonego, tj. wzmocnienie, pasmo przenoszenia itp. Zmieniajac ˛ wartość R2 , regulujemy wzmocnienie układu z rysunku 4.16. Gdy natomiast stosujemy pojemności w petli ˛ sprze˛ żenia zwrotnego, można również, na bazie wzmacniacza operacyjnego, skonstruować elementy różniczkujace ˛ lub całkujace. ˛ Analize˛ takich przypadków pozostawiamy czytelnikowi. 4.5. Podsumowanie Ćwiczenie miało na celu poznanie nastepuj ˛ acych ˛ zagadnień zwiazanych ˛ z symulacja˛ komputerowa˛ systemów o złożonej strukturze: • wyznaczanie operatorowych transmitancji zastepczych ˛ systemów o typowych strukturach połaczeń; ˛ • istota Układu Automatycznej Regulacji (UAR) i różne konwencje jego przedstawiania; 62 4. Systemy o złożonej strukturze i ich stabilno´sć • badanie stabilności systemów złożonych na podstawie typowych przykładów; • komputerowa implementacja kryteriów stabilności systemów z czasem ciagłym ˛ w środowisku MATLAB; • detekcja rzedu ˛ inercyjności i astatyzmu systemów złożonych; • budowa regulatorów P, PI i PID za pomoca˛ standardowych obiektów liniowych dostepnych ˛ w nakładce graficznej Simulink. 63 5. Charakterystyki czestotliwościowe ˛ obiektów dynamicznych 5.1. Wprowadzenie W rozdziale bada sie˛ podstawowe układy liniowe w dziedzinie czestotliwo˛ ści. Utworzone charakterystyki amplitudowo-fazowe (a—f) i Bodego opisuja˛ jednoznacznie zachowanie i cechy dynamiczne tych układów. Analiza układów w dziedzinie czestotliwości ˛ znajduje powszechne zastosowanie w teorii przetwarzania sygnałów, przede wszystkim w zagadnieniach telekomunikacyjnych. 5.2. Zakres tematyczny ćwiczenia 5.2.1. Odpowiedź systemu liniowego na pobudzenie sinusoidalne Załóżmy, że system liniowy o transmitancji K(s) = L(s)/M (s) jest pobudzany sygnałem sinusoidalnym u(t) = sin ωt o stałej pulsacji. Transformata Laplace’a jego odpowiedzi ma wtedy postać Y (s) = Q(s) W (s) L(s) U (s) + + , M (s) M (s) M (s) (5.1) ˛ z typem sygnału gdzie U (s) = ω/(s2 + ω2 ), składnik Q(s)/M (s) jest zwiazany wejściowego i wystepuje ˛ zawsze, natomiast W (s)/M (s) pochodzi od niezerowego warunku poczatkowego. ˛ Zakładajac, ˛ że zajmujemy sie˛ systemem asymptotycznie stabilnym i chcac ˛ wyznaczyć składowa˛ ustalona˛ wyjścia, niech warunek poczatkowy ˛ bedzie ˛ zerowy W (s) = 0. Rozkładamy dwa pierwsze składniki 64 5. Charakterystyki czestotliwo´ ˛ sciowe obiektów dynamicznych w (5.1) na ułamki proste Q(s) αs + β (αs + β)M (s) + Q(s)(s2 + ω 2 ) L(s) ω Q(s) + = = + s2 + ω 2 M (s) M (s) s2 + ω2 M (s) (s2 + ω 2 )M (s) (5.2) i mnożymy skrajne strony równania (5.2) przez (s2 + ω 2 )M (s), otrzymujemy ωL(s) + (s2 + ω 2 )Q(s) = (αs + β)M (s) + Q(s)(s2 + ω 2 ). (5.3) Po podstawieniu teraz do równania (5.3) kolejno s = jω oraz s = −jω, otrzymujemy układ dwóch równań liniowych: ( L(jω) = β + jωα ω M(jω) L(−jω) = β − jωα ω M(−jω) z dwiema niewiadomymi α i β. Dodanie, a nastepnie ˛ odjecie ˛ tych równań stronami i skorzystanie z faktu, iż K(jω)+K(−jω) = 2 Re K(jω) oraz K(jω)− K(−jω) = 2j Im K(jω) prowadzi do rozwiazania ˛ α = Im K(jω); β = ω Re K(jω); stad ˛ Im K(jω) · s + Re K(jω) · ω = |K(jω)| Yust (s) = s2 + ω 2 Im K(jω) |K(jω)| Re K(jω) |K(jω)| s2 + ω 2 ·s+ ·ω . Odpowiedź asymptotycznie stabilnego systemu liniowego o transmitancji K(s), pobudzanego sygnałem sinusoidalnym u(t) = sin ωt, ma zatem w stanie ustalonym postać yust (t) = A sin(ωt + ϕ), (5.4) czyli jest również sinusoida, ˛ o pulsacji ω — identycznej jak pulsacja sygnału wejściowego. Wzmocnienie amplitudy A oraz wprowadzone przesuniecie ˛ fazowe ϕ sa˛ zależne od ω, odpowiednio A(ω) = |K(jω)| , ϕ(ω) = arg K(jω). (5.5) 5.2. Zakres tematyczny ćwiczenia 65 5.2.2. Transmitancja widmowa Funkcja zespolona K(jω) we wzorze (5.5) oznacza transmitancje˛ widmowa˛ systemu zdefiniowana˛ nastepuj ˛ aco ˛ K(jω) , K(s)s=jω Podobnie jak każda˛ liczbe˛ zespolona˛ transmitancje˛ widmowa˛ K(jω) można przedstawić w różnych (wzajemnie równoważnych) postaciach, np.: • algebraicznej K(jω) = Re K(jω) + j Im K(jω) = P (ω) + jQ(ω); • wykładniczej K(jω) = |K(jω)| ej arg K(jω) = A(ω)ejϕ(ω) . Zwiazek ˛ miedzy ˛ P (ω) i Q(ω) a A(ω) i ϕ(ω) jest nastepuj ˛ acy ˛ [1]: p A(ω) = P 2 (ω) + Q2 (ω); Q(ω) ; ϕ(ω) = arctan P (ω) P (ω) = A(ω) cos ϕ(ω); Q(ω) = A(ω) sin ϕ(ω). Zależność (5.4) określa ceche˛ charakterystyczna˛ systemów liniowych, które w przeciwieństwie do systemów nieliniowych nie wprowadzaja˛ tzw. wyższych harmonicznych. Odpowiedź (w stanie ustalonym) systemu liniowego na dowolna˛ kombinacje˛ liniowa˛ N sygnałów sinusoidalnych u(t) = N X ai sin(ωi t + φi ), i=1 przy znajomości transmitancji widmowej K(jω) uzyskuje sie˛ wprost, jako yust (t) = N X Ai ai sin(ω i t + φi + ϕi ), i=1 gdzie Ai = |K(jω i )| oraz ϕi = arg K(jω i ). Fakt ten uzasadnia celowość wyznaczenia charakterystyki K(jω) w funkcji pulsacji ω ∈ [0, ∞). 66 5. Charakterystyki czestotliwo´ ˛ sciowe obiektów dynamicznych Rys. 5.1. Charakterystyka amplitudowo-fazowa systemu K(s) = 1 s+1 5.2.3. Charakterystyki czestotliwościowe ˛ Już na poczatku ˛ wystepuje ˛ techniczny problem zwiazany ˛ z graficzna˛ prezentacja˛ funkcji ω 7−→ K(jω). Ponieważ K(jω) jest zespolone, jej wykres leży w przestrzeni trójwymiarowej o osiach (ω, Re K(jω), Im K(jω)). Najcześciej ˛ spotykane sa˛ dwie konwencje reprezentacji: • Charakterystyka amplitudowo-fazowa (a-f) — rzut trójwymiarowej krzywej w przestrzeni (ω, Re K(jω), Im K(jω)), gdzie ω ∈ [0, ∞), na płaszczyzne˛ (Re K(jω), Im K(jω)). Zaleta˛ takiej reprezentacji jest możliwość odczytania z wykresu zarówno modułu A, jak i argumentu ϕ transmitancji K(jω) systemu. Przykładowa˛ charakterystyk˛e a-f przedstawiono na rysunku 5.1. Gdy nie znamy transmitancji K(s), wówczas tylko na podstawie współrzed˛ nych wybranego punktu P = (Re K(jω 0 ), Im K(jω 0 )) na płaszczyźnie nie ma możliwości ustalenia konkretnej pulsacji ω0 , która˛ ten punkt reprezentuje. Rozwiazaniem ˛ (nie zawsze satysfakcjonujacym) ˛ może być umieszczanie dodatkowych etykiet w wybranych punktach charakterystyki. • Charakterystyki Bodego — wzmocnienie amplitudy A i przesuniecie ˛ fazy ϕ w funkcji pulsacji ω przedstawiono na dwóch osobnych wykresach. Osie odcietych, ˛ reprezentujace ˛ pulsacje˛ ω, sa˛ przy tym wyskalowane logarytmicznie. Przedział odpowiadajacy ˛ 10-krotnemu wzrostowi pulsacji nazywa sie˛ dekada. ˛ Wzmocnienie amplitudy wyraża sie˛ w decybelach W = 20 log A(ω), dB. 5.2. Zakres tematyczny ćwiczenia 67 Ułatwia to wyznaczanie charakterystyk zastepczych ˛ przy analizie systemów połaczonych ˛ szeregowo, przez proste sumowanie. Przykładowe charakterystyki Bodego pokazano na rysunku 5.2. Rys. 5.2. Charakterystyki Bodego systemu o transmitancji K(s) = 1/(s + 1) Można wykazać [5], że wzmocnienie W systemu inercyjnego m-tego rzedu ˛ zmniejsza sie˛ o 20 m decybeli na dekade˛ (właściwość te˛ obserwuje sie˛ przy dużych pulsacjach, przy których dominujace ˛ znaczenie ma składnik mianownika K(jω) z najwyższa˛ poteg ˛ a˛ ω). Wartość W = 0 dB (odpowiadajaca ˛ A = 1) jest granica˛ miedzy ˛ wzmocnieniem a tłumieniem. 5.2.4. Zapas amplitudy i zapas fazy Ważnymi wielkościami, stanowiacymi ˛ intuicyjna˛ miare˛ „odległości” systemu od obszaru niestabilności po zamknieciu ˛ petli ˛ ujemnego sprze˛ żenia zwrotnego, sa˛ (rys. 5.3 i 5.4): • zapas amplitudy (ang. Gm — gain margin) — odwrotność wzmocnienia |K(jω A )| dla pulsacji ω A , przy której arg K(jω A ) = −π; • zapas fazy (ang. Pm — phase margin) — brakujace ˛ do π przesuniecie ˛ fazowe: π − arg K(jω F ) przy pulsacji ω F , dla której |K(jωF )| = 1. Na rysynku 5.3 przedstawiono przykład ilustrujacy ˛ wynik działania funkcji MATLAB margin(), zastosowanej do wyznaczenia zapasu amplitudy i fazy 3 dla systemu o transmitancji K(s) = (s+1) 3 . Na rysunku 5.4 zobrazowano te wielkości na charakterystyce amplitudowo-fazowej. 68 5. Charakterystyki czestotliwo´ ˛ sciowe obiektów dynamicznych Rys. 5.3. Zapas amplitudy i zapas fazy (charakterystyka Bodego) 5.3. Program ćwiczenia W ćwiczeniu należy wyznaczyć charakterystyki czestotliwościowe ˛ systemów wymienionych w punkcie 3.3. Na podstawie charakterystyk amplitudowofazowych i charakterystyk Bodego dokonać próby detekcji rzedu ˛ inercyjności i oszacowania parametrów systemu. Wyznaczyć zapas amplitudy i fazy systemów. Dla systemów o oscylacyjnej odpowiedzi skokowej zaobserwować zjawisko rezonansu. Zbadać zależność czestotliwości ˛ rezonansowej od parametrów systemu. 5.4. Komputerowe badanie charakterystyk 5.4.1. Wyznaczanie charakterystyk amplitudowo-fazowych Istnieja˛ dwa sposoby wykreślenia charakterystyki amplitudowo-fazowej systemu o transmitancji K(s) za pomoca˛ programu MATLAB. Pierwszy sposób wymaga znajomości (wyprowadzenia) postaci analitycznej (wzoru) cześci ˛ rzeczywistej i urojonej K(jω). Przykładowo, dla systemu 5.4. Komputerowe badanie charakterystyk 69 Rys. 5.4. Zapas amplitudy i zapas fazy (charakterystyka a—f) inercyjnego pierwszego rzedu ˛ o transmitancji K(s) = k/(T s + 1) otrzymujemy K(jω) = k (1 − jωT ) k = ; 1 + jωT (1 + jωT ) (1 − jωT ) a zatem Re K(jω) = k −kωT oraz Im K(jω) = . 1 + ω2T 2 1 + ω2T 2 (5.6) Metoda opiera sie˛ na zbudowaniu bloków realizujacych ˛ formuły (5.6) i wysterowanie ich przez dowolna˛ zmienna˛ MATLAB (symulujac ˛ a˛ różne wartości ω), zmieniajac ˛ a˛ sie˛ w zakresie 0, ..., ∞ (np. przebieg liniowo narastajacy, ˛ ang. Ramp). Na rysunku 5.5 przyjeto ˛ k = 1 i T = 1. Etykieta u jest domyślna˛ nazwa˛ sygnału wejściowego bloku nieliniowego typu Fcn. Wartości wyjściowe bloków, wyznaczajace ˛ cześć ˛ rzeczywista˛ i urojona, ˛ rejestrowane sa˛ na rejestratorze dwuwymiarowym XYGraph. Drugi sposób — bardziej uniwersalny — opiera sie˛ na użyciu funkcji freqresp() i nie wymaga żadnych wstepnych ˛ obliczeń symbolicznych, co w wypadku bardziej złożonych systemów może być trudne. Podano przykład skryptu wyznaczajacego ˛ charakterystyk˛e amplitudowo-fazowa˛ systemu o transmitancji K(s) = k/(s + 1)3 . 70 5. Charakterystyki czestotliwo´ ˛ sciowe obiektów dynamicznych Rys. 5.5. Wyznaczanie charakterystyk amplitudowo-fazowych przy znajomości postaci analitycznej Re K(jω) i Im K(jω) k=4; sys=tf([k],[1 3 3 1]); %zdefiniowanie systemu liniowego w=0:0.01:10; %warto´sci pulsacji dla których należy wyznaczy´c K(jw) r=freqresp(sys,w); %wyznaczenie K(jw) systemu przy pulsacjach w for i=1:1001 %zabieg techniczny (konwersja) rr(i)=r(1,1,i); end; %zabieg techniczny (konwersja) plot(rr,’rx’); %rysowanie ch-ki (czerwone krzyżyki) grid on; %siatka skalujaca ˛ na wykresie hold on; %mozliwo´s´c umieszczenia wielu wykresów w jednym oknie Przykładowe charakterystyki amplitudowo-fazowe systemów przedstawiaja˛ rysunki 5.6 i 5.7. 5.4.2. Wyznaczanie charakterystyk Bodego Do kreślenia pary charakterystyk Bodego służy funkcja bode(). Przykład 1 jej użycia dla systemu o transmitancji K(s) = s2 +as+1 przedstawia skrypt. a=1; sys=tf([1],[1 a 1]); %zdefiniowanie systemu liniowego bode(sys) 5.4.3. Wyznaczanie gestości ˛ widmowej mocy sygnału W nowszych wersjach pakietu MATLAB możliwa jest analiza gestości ˛ widmowej mocy sygnału. Służy do tego blok Power Spectral Density zasobnika Simulink Extras (pod warunkiem jego zainstalowania) w nakładce Simulink. 5.4. Komputerowe badanie charakterystyk Rys. 5.6. Charakterystyka a-f systemu K(s) = 71 k (s+1)3 przy k = 4 i k = 8 Rys. 5.7. Charakterystyka amplitudowo-fazowa systemu o transmitancji 1 K(s) = T s+1 dla stałych czasowych T = 1 (krzyżyki) oraz T = 10 (kółka) 72 5. Charakterystyki czestotliwo´ ˛ sciowe obiektów dynamicznych 5.5. Przykład praktyczny — głowica radiowa Zbadamy zachowanie sie, ˛ w stanie ustalonym, czwórnika złożonego z trzech elementów liniowych — rezystora o rezystancji R, kondensatora o pojemności C i cewki o indukcyjności L (rys. 5.8), pobudzanego napieciem ˛ wejściowym u(t) = sin ωt. R u(t) L C y(t) Rys. 5.8. Układ RLC Reaktancje rezystora, kondensatora i cewki wynosza˛ odpowiednio: XR (ω) = R, 1 , XC (ω) = jωC XL (ω) = jωL. Zastepcza ˛ reaktancja połaczonych ˛ równolegle L i C ma postać XLC (ω) = L XL (ω)XC (ω) C = XL (ω) + XC (ω) j(ωL − 1 . ωC ) Wzmocnienie amplitudy A = |K(jω)| całego układu (czwórnika) zależy zatem od pulsacji w nastepuj ˛ acy ˛ sposób A= |XLC (ω)| , |R + XLC (ω)| a ponieważ wartość XLC (ω) jest czysto urojona, to A 6 1. Wartość maksy˛ gdy |XLC (ω)| = ∞. malna wzmocnienia amplitudy (Amax = 1) jest osiagana, Sytuacja taka wystepuje ˛ wówczas, gdy ωL = 1 , ωC 5.5. Przykład praktyczny — głowica radiowa 73 czyli przy pulsacji (tzw. rezonansowej) sygnału wejściowego 1 ω rez = √ . LC Na podstawie praw elektrotechniki L= εS z 2 µp oraz C = , l d stwierdzamy, że wartość pulsacji rezonansowej ωrez zależy od liczby zwojów indukcyjności z, przenikalności magnetycznej rdzenia cewki µ, rozmiarów rdzenia — przekroju p i długości l, a także odległości i powierzchni okładek kondensatora S i d oraz stałej elektrycznej ε izolatora, który je rozdziela. W stanie ustalonym układ RLC pełni wiec ˛ role˛ filtru środkowozaporowego, co jest wykorzystywane we wszelkiego rodzaju głowicach radiowych. Zmiana pojemności C lub indukcyjności L umożliwia dostrajanie sie˛ do różnych czestotliwości ˛ nadajników. Rezystancja obcia˛żenia wyjścia tego układu wynosi ∞. Pomija sie˛ rezystancje˛ cewki. 74 75 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ 6.1. Wprowadzenie Układ Automatycznej Regulacji (UAR) jest podstawowym systemem automatyki i składa sie˛ z obiektu regulacji i regulatora, o transmitancjach odpowiednio KO (s) i KR (s). Jego struktura, przedstawiona w rozdziale 4, umożliwia powstanie uchybu regulacji ε(t) = y0 (t) − y(t), jako sygnału wejścia na regulator. Transmitancja regulatora KR (s) zawsze podlega wyborowi, natomiast transmitancja obiektu KO (s) jest ustalona i może być nieznana (należy ja˛ wówczas określić w procesie identyfikacji). Po zdjeciu ˛ charakterystyki czasowej rzeczywistego obiektu, klasyfikuje sie˛ go do jednej z opisanych kategorii. Liniowe układy regulacji można podzielić na dwa typy: • z obiektami o cechach inercyjnych wysokiego rzedu; ˛ • z obiektami o cechach całkujacych ˛ z inercja˛ (astatycznych). Różne cechy dynamiczne obu typów obiektów regulacji należy zidentyfikować w oddzielnym postepowaniu, ˛ ale ich znajomość jest bardzo ważna, ponieważ wymagaja˛ innych algorytmów doboru nastaw (zwanych w literaturze pierwsza˛ i druga˛ metoda˛ Zieglera—Nicholsa) [14]. Transmitancja inercyjnego obiektu rzeczywistego rzedu ˛ m ≥ 3 ma postać KO1 (s) = k . (T1 s + 1)(T2 s + 1)...(Tm s + 1) W celu ustalenia algorytmu regulacji takim obiektem buduje sie˛ jego model uproszczony (aproksymujacy). ˛ Inercyjność wysokiego i nieznanego rzedu ˛ m > 3 aproksymuje sie˛ układem opóźniajacym ˛ o τ , połaczonym ˛ szeregowo 76 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ z elementem inercyjnym pierwszego rzedu ˛ o wzmocnieniu k i stałej czasowej TZ (można to zrobić według tzw. reguły Padé [3]). Transmitancja układu przybliżonego ma postać (1) Kapr (s) = ke−sτ . TZ s + 1 Ważny jest również dodatkowy parametr a (rys. 6.1), stosowany w doborze nastaw regulatorów (co zostanie przedstawione później). Charakterystyka skokowa λ(t) obiektu rzeczywistego może zostać wykreślona w wyniku symulacji komputerowej. W ten sposób otrzymamy parametry zastepcze ˛ (τ , TZ , a) transmitancji aproksymujacej ˛ obiekt, które wejda˛ do algorytmu regulacji i reguł doboru odpowiednich regulatorów oraz ich nastaw [3]. Rys. 6.1. Wyznaczanie parametrów τ , TZ i a na podstawie odpowiedzi skokowej układu inercyjnego W praktyce, bardzo czesto ˛ obiekt inercyjny współpracuje z elementem całkujacym, ˛ którym może być np. silnik wykonawczy. Transmitancja operatorowa idealnego elementu całkujacego ˛ ma postać K(s) = k/s. Dołaczenie ˛ wykonawczego elementu całkujacego ˛ do obiektu inercyjnego powoduje, że tworzy sie˛ połaczenie ˛ szeregowe i całość ma właściwości całkujace ˛ (biegun transmitancji w punkcie s = 0). Transmitancja tak powstałego rzeczywistego obiektu 6.1. Wprowadzenie 77 Rys. 6.2. Wyznaczanie parametrów τ , TZ i a na podstawie odpowiedzi skokowej układu całkujacego ˛ z inercja˛ całkujacego ˛ z inercja, ˛ jako drugiego typu obiektów, może być nastepuj ˛ aca ˛ KO2 (s) = k . s(T1 s + 1)(T2 s + 1)...(Tm s + 1) Pojedynczy zerowy biegun transmitancji świadczy o pojedynczym elemencie całkujacym ˛ (wielokrotne bieguny zerowe najcześciej ˛ wprowadzaja˛ strukturalna˛ niestabilność do układu). Dodatkowo, inercyjność obiektu nie powinna być wysokiego rzedu ˛ (m 6 3). W tym przypadku przyjmuje sie˛ model aproksymujacy ˛ o transmitancji zastepczej ˛ (2) Kapr (s) = ke−sτ , s gdzie k = 1/TZ . Aby uzyskać parametry zastepcze ˛ (aproksymujace) ˛ takiego obiektu, które wejda˛ do algorytmu regulacji, trzeba również je zidentyfikować w procesie komputerowej symulacji jego odpowiedzi λ(t) na skok jednostkowy. Metode˛ wyznaczania parametrów τ i TZ ilustruje rysunek 6.2. W przypadku aproksymacji obiektów z cechami całkujacymi ˛ wyznacza sie˛ również dodatkowy parametr a (liczony bezwzglednie), ˛ który ma duże znacze- 78 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Tabela 6.1. Zgrubne nastawy regulatorów Typ regulatora P PI PID kp 1/a 0, 9/a 1, 2/a Ti — 3τ 2τ Td — — τ /2 nie w procesie ustalania orientacyjnych wartości nastaw regulatorów w Układzie Automatycznej Regulacji (nie precyzuja˛ one żadnego kryterium jakości regulacji). Orientacyjne wartości nastaw parametrów regulatorów dla układu z obiektem inercyjnym i obiektem całkujacym ˛ przedstawiono w tabeli 6.1 [3]. Parametry nastaw regulatorów z tabeli 6.1 sa˛ obliczane w wyniku oszacowania graficznych przebiegów odpowiedzi skokowych typowych obiektów regulacji i moga˛ służyć tylko do orientacyjnych, wstepnych ˛ pomiarów. W literaturze znane sa˛ algorytmy regulacji oparte na szacunkach doświadczalnych i obliczeniach symbolicznych lub numerycznych. Wszystkie algorytmy regulacji wywodza˛ sie˛ jednak z inżynierskich (doświadczalnych) reguł doboru nastaw zaproponowanych przez Zieglera i Nicholsa (1942 r. i lata późniejsze), znanych pod nazwa˛ I i II metody Zieglera—Nicholsa [14]. 6.2. Własności UAR w stanie ustalonym 6.2.1. Wprowadzenie W pracy systemu automatycznej regulacji, przy ustalonym wejściowym sy˛ wielkości ustagnale zadajacym ˛ y0 (t) = 1(t), dokładność regulacji określaja: lone uchybów i uchyby przejściowe (dynamiczne). Uchyb dynamiczny określa dokładność regulacji systemu w stanie przejściowym, jego wartość poczatkow ˛ a˛ oznaczymy jako εp , lim ε(t), t→0 natomiast uchyb ustalony oblicza sie˛ z zależności εust , lim ε(t). t→∞ W stabilnym Układzie Automatycznej Regulacji, dla sygnału zadajacego ˛ y0 (t) = 1(t) te granice istnieja. ˛ Oznacza to, że w stabilnym układzie można badać wielkość błedu ˛ w stanie ustalonym i bedzie ˛ on zawsze ograniczony. Od jego wielkości zależy jeden z podstawowych warunków jakości regulacji. Całościowo, jakość regulacji można oceniać na podstawie trzech warunków [5] 6.2. Własno´sci UAR w stanie ustalonym 79 • zapasu stabilności; • małej wartości uchybu w stanie ustalonym; • dużej szybkości regulacji. Podane warunki wnosza˛ zwykle przeciwstawne wymagania i przyjmuje sie˛ rozwiazania ˛ kompromisowe. Aby badać komputerowo przebieg sygnału błedu ˛ ε(t), należy przede wszystkim utworzyć odpowiedni układ z sygnałem ε(t) jako jego sygnałem wyjściowym (rys. 6.3). W rezultacie powstanie specjalna transmitancja układu zamknietego, ˛ zwana transmitancja˛ uchybowa˛ (mówiliśmy o tym również w rozdz. 4): KE (s) , 1 E(s) = , Y0 (s) 1 + Kotw (s) gdzie Kotw (s) = KR (s)KO (s). Y0 (s) + E(s) E(s) _ Y (s) otwarcie UAR KO (s) U ( s) KR (s) Rys. 6.3. Układ Automatycznej Regulacji z sygnałem uchybu ε(t) — jako wyjściem Z transmitancji uchybowej KE (s) wyprowadza sie˛ sygnał błedu ˛ E(s)=ε(t), b którego różne przebiegi czasowe można ogladać ˛ na wykresach programu MATLAB/Simulink. Obliczmy wartość εust przy założeniu, że y0 (t) = 1(t), a także wybrany został regulator KR (s) (określone sa˛ parametry (kp , Ti , Td )), oraz znana jest postać transmitancji systemu otwartego Kotw (s). Na podstawie twierdzenia Abela [5] εust , lim ε(t) = lim sE(s) = lim sKE (s)Y0 (s) = lim s t→∞ s→0 s→0 s→0 1 Y0 (s). 1 + KR (s)KO (s) Postuluje sie, ˛ aby |εust | < εmax < ∞, gdzie εmax jest skończone, może nia˛ być np. wartość |εust | , która wystapiłaby ˛ w układzie zamknietym ˛ bez regulatora [4]. Jak widać z zależności, wielkość ˛ y0 (t), εust zależy od parametrów regulatora i wejściowego sygnału zadajacego 80 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ przy czym transmitancja KO (s) jest stała. Jeśli założymy, że y0 (t) = 1(t), to o jakości regulacji w stanie ustalonym bedzie ˛ decydować transmitancja ˛ szeregowego. Kotw (s) = KR (s)KO (s), czyli struktura całego bloku połaczenia Regulacja statyczna i astatyczna Układ Automatycznej Regulacji (UAR), w którym Kotw (s) nie ma bieguna w punkcie s = 0 nazywamy statycznym [5], [15]. Jeśli ponadto układ otwarty jest stabilny, to jego wzmocnienie w stanie ustalonym wynosi Kotw (0). Rozumowanie takie prowadzi do wniosku, że otwarty system regulacji (statycznej ) nie ma właściwości całkujacych, ˛ natomiast po zamknieciu ˛ sygnał błedu ˛ w sta˛ różny od zera. Wynika to z nastepuj ˛ acej ˛ właściwości: nie ustalonym εust bedzie Jeśli y0 (t) = 1(t), to w statycznym, stabilnym UAR εust = lim ε(t) = t→∞ 1 6= 0. 1 + Kotw (0) Przypomnijmy dla porzadku, ˛ czym jest pojecie ˛ wzmocnienia w stanie ustalonym, ponieważ jego wartość decyduje o cechach układu regulacji. Definicja 5. Je´sli granica limt→∞ λ(t) istnieje, to nazywamy ja˛ wzmocnieniem układu w stanie ustalonym. Wzmocnienie w stanie ustalonym jest obliczane w naszym przypadku tylko dla systemu otwartego. Wyprowadzimy je wprost z definicji, pamietaj ˛ ac, ˛ że wejściem jest y0 (t), a wyjściem — sygnał y(t) lim y(t) = lim sY (s) = lim sKotw (s)Y0 (s) = t→∞ s→0 s→0 1 = lim sKotw (s) = lim Kotw (s) = Kotw (0) s→0 s s→0 Rozważymy teraz przypadek regulacji astatycznej. Załóżmy, że Kotw (s) ma pojedynczy biegun w punkcie s = 0. Układ otwarty jest wiec ˛ niestabilny (lub na granicy stabilności [5]). Gdy zerowych biegunów jest wiecej, ˛ to ich liczba określa tzw. rzad ˛ astatyzmu [15]. Astatyczny Układ Automatycznej Regulacji nie ma charakterystyki statycznej, a ma nastepuj ˛ ac ˛ a˛ właściwość: Jeśli y0 (t) = 1(t), to w astatycznym, stabilnym UAR εust = lim ε(t) = 0. t→∞ 6.2. Własno´sci UAR w stanie ustalonym 81 Można to łatwo wykazać z twierdzenia Abela [5], ponieważ 1 lim ε(t) = lim sE(s) = lim sKE (s)Y0 (s) = lim sKE (s) = t→∞ s→0 s→0 s→0 · ¸ s 1 1 = lim KE (s) = lim = = 0. s→0 s→0 1 + Kotw (s) 1+∞ W rozważanym przypadku Kotw (0) = ∞, ponieważ zawiera zerowy biegun. Stad ˛ układ astatyczny automatycznej regulacji (oczywiście jeżeli jest stabilny) zapewnia zerowy bład ˛ regulacji w stanie ustalonym. Jest to pożadana ˛ cecha regulacji układu. Należy jednak pamietać, ˛ że w takim systemie, po otwarciu petli ˛ sprze˛ żenia zwrotnego, jest on niestabilny. Poza tym można wykazać, że np. astatyzm rzedu ˛ drugiego, tzn. podwójny biegun transmitancji Kotw (s) najcześciej ˛ powoduje niestabilność strukturalna˛ systemu zamknietego ˛ (system zamkniety ˛ jest niestabilny niezależnie od nastaw regulatora i zmian parametrów). Świadczy o tym podany przykład. Przykład Niech transmitancja układu otwartego ma postać Kotw (s) = s2 (Tks+1) . Zbadać, czy po zamknieciu ˛ petli ˛ ujemnego sprze˛ żenia zwrotnego bedzie ˛ on stabilny. Mianownik transmitancji systemu zamknietego ˛ ma postać MZ (s) = Lotw (s) + Motw (s) = T s3 + s2 + k, Na podstawie warunku koniecznego stabilności według kryterium Hurwitza (tzw. twierdzenia o współczynnikach) system zamkniety ˛ nie jest stabilny, niezależnie od parametrów T i k, gdyż wielomian MZ (s) ma zerowy współczynnik przy pierwszej potedze ˛ s. Stabilność systemu zamknietego ˛ można też rozstrzygnać ˛ za pomoca˛ znanego kryterium Nyquista, na podstawie przebiegu charakterystyki amplitudowo-fazowej układu otwartego. Obliczmy dla naszego przykładu transmitancje˛ widmowa˛ Kotw (jω) = P (ω) + jQ(ω). Kotw (s)|s=jω = Kotw (jω) = kT −k +j ω 2 (1 + ω2 T 2 ) ω(1 + ω 2 T 2 ) Można teraz oszacować przebieg charakterystyki amplitudowo-fazowej dla pulsacji ω ∈ [0, ∞) P (ω) → −∞ oraz Q(ω) → ∞, gdy ω → 0; P (ω) → 0 oraz Q(ω) → 0, gdy ω → ∞. 82 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Z oszacowania przebiegu charakterystyki amplitudowo-fazowej wynika, że zawsze bedzie ˛ obejmowała punkt (−1, j0) (patrz rys. 6.4), ponieważ zawsze przebiega nad ujemna˛ cześci ˛ a˛ osi P (ω). Niezależnie zatem od parametrów T i k system zamkniety ˛ jest niestabilny. Rys. 6.4. Charakterystyka amplitudowo-fazowa układu otwartego — system zamkniety ˛ niestabilny 6.2.2. Program ćwiczenia W ćwiczeniu bedziemy ˛ badać przebiegi sygnału błedu ˛ w stanie ustalonym εust , w systemie regulacji o różnych transmitancjach obiektu KO (s) i regulatorach typu P, I oraz PI. Regulator PID, ze swoja˛ cześci ˛ a˛ różniczkujac ˛ a˛ w transmitancji, nie ma wpływu na wielkość sygnału εust . Ważna jest różnica w działaniu regulujacym ˛ regulatorów P oraz I, a także połaczenie ˛ ich zalet w działaniu regulatora PI. Jak wiemy, istnienie εust zależy od tego, czy układ jest stabilny, a wiec ˛ stabilność układu zamknietego ˛ należy sprawdzić w pierw˛ wynosiło zero lub bedzie ˛ szym punkcie ćwiczenia. Natomiast to, czy εust bedzie liczba˛ różna˛ od zera zależy od tego, czy układ otwarty ma cechy statyzmu lub astatyzmu. Decyduje o tym nastepuj ˛ aca ˛ właściwość [5], wynikajaca ˛ z postaci mianownika transmitancji uchybowej KE (s): Niech y0 (t) = 1(t). Granica limt→∞ ε(t) istnieje wtedy i tylko wtedy, gdy system regulacji jest stabilny. 6.2. Własno´sci UAR w stanie ustalonym 83 System regulacji jest stabilny, jeśli jego równanie charakterystyczne MZ (s) = 0 spełnia warunki któregoś ze znanych kryteriów stabilności dla układów zamknietych. ˛ Z poprzedniego rozdziału wiemy, że istnieja˛ układy regulacji statycznej i astatycznej. Decyduje o tym struktura układu otwartego Kotw (s) = KR (s)KO (s). Według Pełczewskiego [15], o cechach statyzmu lub astatyzmu układu mówi ˛ sie˛ zawsze wzgledem ˛ zewnetrznego ˛ sygnału zadajacego ˛ y0 (t), który najcześciej wynosi y0 (t) = 1(t). Taki rodzaj regulacji automatycznej jest regulacja˛ stałowartościowa˛ i jej zadaniem jest utrzymanie wyjścia obiektu y(t) jak najbliżej wartości sygnału zadajacego ˛ y0 (t), dla każdej chwili. Można jednak również badać działanie układów tzw. regulacji nada˛żnej, gdy sygnał zadajacy ˛ y0 (t) jest funkcja˛ czasu, np. w postaci wielomianu [15]: y0 (t) = A0 + A1 t + A2 t2 + ... + Ar tr . Jest to typ regulacji programowej (nada˛żnej), w której regulator ma spełnić zadanie realizacji programu nada˛żania wyjścia obiektu y(t) za zmieniajac ˛ a˛ sie˛ w czasie wartościa˛ sygnału zadajacego ˛ y0 (t). W programie ćwiczenia rozpatrzymy oba te przypadki regulacji, dla dwóch rodzajów obiektów: obiektu typu inercyjnego (o stopniu ≤ 3) oraz obiektu typu całkujacego ˛ (z inercja). ˛ Na poczatek ˛ założymy, że wejściowy sygnał zadajacy ˛ y0 (t) = 1(t). Jako pierwszy rozważymy przypadek, gdy obiekt jest typu inercyjnego, a regulator proporcjonalny typu P. Dlatego transmitancja układu otwartego nie ma biegunów równych zeru, mamy wiec ˛ do czynienia z regulacja˛ statyczna. ˛ Możemy teraz obliczyć bład ˛ εust w tym przypadku i wykazać, że εust 6= 0. Przykład 1 Dane sa: ˛ KO (s) = k T s+1 ; εust = KR (s) = kp ; y0 (t) = 1(t). lim ε(t) = lim sE(s) = t→∞ s→0 1 = lim sKE (s) = lim KE (s) = s→0 s s→0 1 1 = lim 6= 0. = s→0 1 + kp k 1 + kp k T s+1 Obliczymy teraz wartość εust w przypadku tego samego obiektu inercyjnego oraz regulatora typu PI. 84 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Przykład 2 Dane sa: ˛ KO (s) = k T s+1 ; KR (s) = kp (1 + 1 Ti s ); y0 (t) = 1(t). 1 lim ε(t) = lim sE(s) = lim sKE (s) = lim KE (s) = t→∞ s→0 s→0 s s→0 1 1 = lim = = lim s→0 1 + kp (1 + 1 ) k s→0 1 + kkp Ti s+kkp 2 Ti s T s+1 T Ti s +Ti s " # · ¸ 1 1 = 0. = = kkp 1+∞ 1+ 0 εust = Ponieważ w transmitancji układu otwartego wystapił ˛ pojedynczy biegun zerowy, pochodzacy ˛ od regulatora PI, stad ˛ UAR realizuje regulacje˛ astatyczna, ˛ czego efektem jest zerowanie sie˛ błedu ˛ w stanie ustalonym. W dalszym ciagu ˛ w przypadku tej samej ustalonej wartości sygnału zadajacego ˛ y0 (t) = 1(t) zbadamy zachowanie układu regulacji, gdy obiekt jest typu całkujacego, ˛ a regulator typu P oraz typu PI. Przykład 3 Dane sa: ˛ KO (s) = εust = k s(T s+1) ; KR (s) = kp ; y0 (t) = 1(t). lim ε(t) = lim sE(s) = lim KE (s) = s→0 s→0 " # 1 1 = = lim =0 kp k k k s→0 1 + 1 + p0 s(T s+1) t→∞ W transmitancji układu otwartego wystapił ˛ również pojedynczy biegun zerowy, lecz pochodzacy ˛ od transmitancji obiektu. Mamy do czynienia z regulacja˛ astatyczna, ˛ a bład ˛ w stanie ustalonym wynosi zero. Przykład 4 Dane sa: ˛ KO (s) = k s(T s+1) ; KR (s) = kp (1 + 1 Ti s ); y0 (t) = 1(t). 1 lim ε(t) = lim sE(s) = lim sKE (s) = lim KE (s) = t→∞ s→0 s→0 s s→0 1 1 = lim = lim = 1 k T sk +k p p i k s→0 1 + kp (1 + s→0 1 + Ti s ) s(T s+1) Ti s s(T s+1) " # 1 1 = lim = =0 kk s→0 1 + Ti skkp +kkp 1 + 0p s2 Ti (T s+1) εust = 6.2. Własno´sci UAR w stanie ustalonym 85 W transmitancji układu otwartego wystapił ˛ podwójny biegun zerowy, jeden z nich od obiektu całkujacego, ˛ a drugi od całkujacych ˛ cech regulatora PI. Pamietaj ˛ ac ˛ o tym, że wejściowy sygnał zadajacy ˛ układu jest skokiem jednostkowym, otrzymujemy zerowa˛ wartość błedu ˛ w stanie ustalonym, podobnie jak dla układu regulacji z regulatorem typu P, gdzie obiekt również miał cechy całkujace. ˛ Podsumujemy teraz wszystkie rezultaty badań zachowania układu w stanie ustalonym, gdy wejściowy sygnał zadajacy ˛ jest funkcja˛ skoku jednostkowego. Statyczne lub astatyczne cechy regulacji zależa, ˛ jak wiemy, od transmitancji układu otwartego. Uogólnimy zapis tej transmitancji do nastepuj ˛ acej ˛ postaci: Kotw (s) = Lotw (s) Lotw (s) = h , Motw (s) s Notw (s) przy czym Lotw (s) i Notw (s) sa˛ wielomianami zmiennej s majacymi ˛ niezerowe wyrazy wolne, a h jest nazywane rzedem ˛ astatyzmu. Gdy zatem h = 0, wówczas transmitancja Kotw (s) = Lotw (s)/Notw (s) nie ma biegunów równych zeru. Transmitancja taka prezentuje układ statyczny wzgledem ˛ sygnału zadajacego. ˛ Można wyciagn ˛ ać ˛ nastepuj ˛ ace ˛ wnioski: Wniosek 1. Gdy sygnał zadajacy ˛ jest „stały” (y0 (t) = 1(t)), wówczas w statycznym stabilnym układzie regulacji (h = 0) uchyb, przy t → ∞, da˛ży do niezerowej wartości ustalonej, εust 6= 0. Wniosek 2. Gdy sygnał zadajacy ˛ jest „stały” (y0 (t) = 1(t)), wówczas w astatycznym stabilnym układzie regulacji (h > 0) uchyb, przy t → ∞, da˛ży do zera, εust = 0. ˛ o cechach astatyzmu Zerowe bieguny w transmitancji Kotw (s), decydujace układu regulacji, moga˛ pochodzić od transmitancji obiektu, od regulatora lub od obydwu z nich. Rozważmy teraz przypadek, gdy wejściowy sygnał zadajacy ˛ jest funkcja˛ czasu w postaci wielomianu [15]: y0 (t) = A0 + A1 t + A2 t2 + ... + Ar tr Jeżeli r > 1, to w układzie statycznym (h = 0), uchyb ε(t) → ∞, przy t → ∞. Ilustruje to przykład 5. Przykład 5 Dane sa: ˛ y0 (t) = t · 1(t), KO (s) = εust = 1 T s+1 ; KR (s) = kp . lim ε(t) = lim sE(s) = lim sKE (s)Y0 (s) = s→0 s→0 ¸ · 1 1 1 1 =∞ = lim s = lim = s→0 1 + kp 1 s2 s→0 s(1 + kp ) 0 · (1 + kp ) T s+1 t→∞ T s+1 86 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Przykład 5 potwierdza, że układ nie potrafi nada˛żyć za sygnałem y0 (t) = t · 1(t), nie daje on także gwarancji ograniczonego uchybu. Nie można wiec ˛ mówić o układzie stabilizacji. Natomiast w układzie regulacji astatycznej (h > 0) moga˛ wystepować ˛ nastepuj ˛ ace ˛ przypadki: • limt→∞ ε(t) = 0, gdy h > r; • limt→∞ ε(t) = εust 6= 0, gdy h = r; • limt→∞ ε(t) = ∞, gdy h < r. Ich ilustracja˛ sa˛ dwa nastepne ˛ przykłady. Przykład 6 Dane sa: ˛ y0 (t) = t · 1(t), KO (s) = εust = 1 s(T s+1) ; KR (s) = kp (1 + 1 Ti s ). lim ε(t) = lim sE(s) = lim sKE (s)Y0 (s) = t→∞ s→0 s→0 1 1 1 = lim s = = lim 1 1 2 k s→0 1 + s→0 s(1 + p Ti s+kp ) s s(T s+1) kp (1 + Ti s ) s(T s+1)Ti s " # 1 1 = lim = =0 k T s+k k p p i s→0 s + 0 + 0p (T s+1)Ti s W przykładzie 6 rzad ˛ astatyzmu regulacji h = 2 przewyższa stopień wielomianowej zmienności wejścia (r = 1), dlatego bład ˛ w stanie ustalonym jest równy zeru — system regulacji nada˛ża za wejściowym sygnałem odniesienia (co potwierdza przypadek pierwszy). Przykład 7 Dane sa: ˛ y0 (t) = t2 · 1(t), KO (s) = εust = 1 s(T s+1) ; KR (s) = kp (1 + 1 Ti s ). lim ε(t) = lim sE(s) = lim sKE (s)Y0 (s) = lim sKE (s) t→∞ s→0 s→0 2 ³ s→0 2 k s 1 + s(T s+1) kp (1 + " # 2 2Ti = 6= 0 = kkp kkp 0 + Ti = lim ´ = lim s→0 s2 + 1 ) Ti s s→0 2 kkp Ti s+kkp Ti (T s+1) 2 = s3 = W przykładzie 7 rzad ˛ astatyzmu jest taki sam jak parametr r, h = r = 2, bład ˛ w stanie ustalonym jest pewna˛ stała, ˛ wynikajac ˛ a˛ z parametrów układu otwartego, co potwierdza przypadek drugi (h = r). Na podstawie obliczeń, wynikajacych ˛ z zastosowania twierdzenia Abela o wartości granicznej ([5]) wnioskujemy, że astatyzm układu regulacji wzgledem ˛ 6.2. Własno´sci UAR w stanie ustalonym 87 sygnału zadajacego ˛ może wystepować ˛ wtedy, gdy w układzie sa˛ człony całkujace. ˛ Zależnie od relacji rzedu ˛ astatyzmu układu otwartego wzgledem ˛ stopnia ˛ ustalony εust zamknietego ˛ układu wielomianu sygnału zadajacego ˛ y0 (t), bład regulacji może wynosić zero lub być pewna˛ stała. ˛ Jej wielkość, jak wiemy z przykładu 7, zależy od parametrów obiektu i regulatora. Możemy wiec ˛ na te˛ wielkość wpływać, zmieniajac ˛ parametry regulatora i poprawiajac ˛ przez to jakość regulacji. Podwyższanie rzedu ˛ astatyzmu regulatora może być dobrym sposobem na likwidacje˛ uchybu ustalonego, czyli popraw˛e jakości regulacji. Sposób ten ma jednak zasadnicza˛ wade, ˛ polegajac ˛ a˛ na tym, że może spowodować utrate˛ stabilności układu, doprowadzajac ˛ do niestabilności strukturalnej, czyli niezależnej od wartości któregokolwiek z parametrów regulatora i obiektu. Problem taki przedstawiono w przykładzie z rozdziału 4. Zadanie jakie stoi przed układem regulacji, w którym wejściowy sygnał zadajacy ˛ jest funkcja˛ wielomianowa, ˛ polega na tym, aby wyjście obiektu nada˛żało za zmieniajac ˛ a˛ sie˛ wartościa˛ y0 (t). Mówimy wówczas o systemie nada˛żnym, w którym zadanie regulacji jest nazywane regulacja˛ programowa.˛ Istnieja˛ jednak ˛ on przykłady regulacji programowej takie, że εust → ∞, gdy t → ∞. Wystapi na przykład wtedy, gdy w układzie z regulatorem P i obiektem z cechami całkujacymi, ˛ na wejście podamy sygnał zadajacy ˛ y0 (t) = t2 · 1(t). Mimo że układ otwarty jest astatyczny (h = 1, biegun zerowy pochodzacy ˛ od obiektu), to po zamknieciu ˛ wyjście obiektu nie nada˛ża za wejściowym sygnałem zadajacym. ˛ Jest to przypadek, w którym nie można mówić o procesie regulacji w UAR. Nie wystarczy jakakolwiek zmiana parametrów regulatora, ani obiektu. Aby ˛ przywrócić zdolności regulacyjne (εust < ∞), należy zmienić sygnał zadajacy y0 (t) lub strukture˛ układu otwartego Kotw (s). 6.2.3. Badania komputerowe Badania komputerowe umożliwiaja˛ wykonanie wszystkich niezbednych ˛ symulacji zachowania układu w stanie ustalonym, co b edziemy ˛ oceniać od strony przebiegów sygnału błedu ˛ regulacji ε(t) po „odpowiednio” długim czasie. Ten czas, liczony jako limt→∞ ε(t), oznacza, że po jego upływie w UAR zanikaja˛ wszystkie dynamiczne procesy przejściowe i staje sie˛ on układem statycznym, zapewniajacym ˛ realizacje˛ celu regulacji, którym jest maksymalne zbliżenie sie˛ (i ustalenie) wartości wyjścia obiektu y(t) na poziomie sygnału zadajacego ˛ y0 (). W programie ćwiczenia jest wiele przykładów, których wyniki można umieścić w tabelach zbiorczych (na końcu tego rozdziału). Przedstawimy obecnie realizacje˛ komputerowa˛ niektórych z nich, w postaci schematów blokowych Simulink oraz M -skryptów MATLAB. W ten sposób należy postepować, ˛ aż do 88 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ wykonania symulacji komputerowych wraz z wykresami przebiegów sygnału ε(t) dla wszystkich przypadków z tabeli 6.1. Z wykresów przebiegów sygnału ε(t) można zauważyć jak wygladaj ˛ a˛ stany ustalone dla różnych konfugura˛ cji struktury UAR. Oprócz tego należy obliczyć εust teoretycznie, korzystajac ˛ z podstawowego wzoru εust = limt→∞ ε(t), czyli wszystkie granice, korzystajac ze wzoru ε(t)=E(s) b = KE (s)Y0 (s). Ćwiczenie 1a. Przyjmujemy: k = 1, kp = 1, T = 1. Schemat do badań wykonany w Simulink przedstawiono na rysunku 6.5. Rys. 6.5. Regulacja typu P z obiektem inercyjnym Rys. 6.6. Przebieg błedu ˛ regulacji (ilustracja do ćwiczenia 1a) Uzyskany przebieg błedu ˛ regulacji przedstawiono na rysunku 6.6. Bład ˛ ten ustala sie˛ na niezerowej wartości: limt→∞ ε(t) = 0, 5. 6.2. Własno´sci UAR w stanie ustalonym 89 Ćwiczenie 1b. Przyjmujemy: k = 1, kp = 1, T = 1, Ti = 0.5. Schemat do badań wykonany w Simulink przedstawiono na rysunku 6.7. Rys. 6.7. Regulacja PI z obiektem inercyjnym Uzyskany przebieg błedu ˛ regulacji przedstawiono na rysunku 6.8. Bład ˛ ten da˛ży do zera dzieki ˛ całkujacym ˛ właściwościom regulatora. Rys. 6.8. Przebieg błedu ˛ regulacji (ilustracja do ćwiczenia 1b) Ćwiczenie 2a. Przyjmujemy: k = 1, kp = 1, T = 1. Schemat do badań wykonany w Simulink przedstawiono na rysunku 6.9. Uzyskany przebieg błedu ˛ regulacji przedstawia rysunek 6.10, przyrost y0 (t) jest zbyt szybki (rzad ˛ r = 2), aby układ regulacji mógł za nim nada˛żyć (h = 1), zatem limt→∞ ε(t) = ∞. 90 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Rys. 6.9. Regulacja P z obiektem całkujacym ˛ i wejściem y(t) = t2 · 1(t) Rys. 6.10. Wyjście obiektu i sygnał zadajacy ˛ (ilustracja do ćwiczenia 2a) Ćwiczenie 2b. Przyjmujemy: k = 1, kp = 1, T = 1 i Ti = 0, 5. Schemat do badań wykonany w Simulink przedstawiono na rysunku 6.11. Uzyskany przebieg błedu ˛ regulacji przedstawiono na rysunku 6.12. Komputerowa symulacja układów regulacji pozwala badać przebiegi sygnałów błedu ˛ regulacji ε(t) (i jednocześnie przebiegi wyjścia obiektu y(t)), dla stanów ustalonych, aby stwierdzić, czy układ ma cechy regulacji statycznej, astatycznej, lub też czy sygnał y(t) nada˛ża za programowo zmieniajacym ˛ sie˛ sygnałem zadajacym ˛ y0 (t). Standardowym sygnałem wejściowym badanych UAR jest skok jednostkowy, czyli y0 (t) = 1(t). Przede wszystkim od parametrów przyjetego ˛ regulatora zależy jakość regulacji, oceniana na podstawie trzech wymagań: stabilności, wielkości błedu ˛ w stanie ustalonym i dynamiki 6.2. Własno´sci UAR w stanie ustalonym 91 Rys. 6.11. Regulacja PI z obiektem całkujacym ˛ Rys. 6.12. Przebieg błedu ˛ regulacji (ilustracja do ćwiczenia 2b) zmniejszania sie˛ błedu. ˛ Z tak przyjetymi ˛ parametrami jakości regulacji najlepiej „daje sobie rade” ˛ regulator PID, co jest wnioskiem oczywistym. Ciekawe również bedzie ˛ sprawdzenie, jak wybrany regulator w UAR potrafi nada˛żać za programowo zmieniajacym ˛ sie˛ sygnałem zadajacym ˛ y0 (t) i minimalizować bład ˛ regulacji ε(t). Tutaj również regulatory o bardziej złożonej strukturze lepiej realizuja˛ zadanie regulacji nada˛żnej. Lepsza realizacja zadania regulacji automatycznej w stanie ustalonym oznacza ograniczona˛ (możliwie mała) ˛ wartość εust w przypadku regulacji statycznej lub εust = 0 w przypadku regulacji astatycznej. Gdy limt→∞ ε(t) = ∞ układ regulacji nie spełnia swego zadania i należy zmienić strukture˛ regulatora i dostroić jego parametry. Wyniki symulacji należy umieścić w dwóch tabelach zbiorczych (tab. 6.2 i 6.3). 92 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Tabela 6.2. Regulacja stałowartościowa Typ regulatora: Typ obiektu: y0 (t) = εust = P całk. z iner. 1(t) ... PI całk. z iner. 1(t) ... P iner. 3-rz. 1(t) ... PI iner. 3-rz. 1(t) ... Tabela 6.3. Regulacja nada˛żna, r = 1, 2... Typ regulatora: Typ obiektu: y0 (t) = εust = P całk. z iner. tr · 1(t) ... PI całk. z iner. tr · 1(t) ... P iner. 3-rz. tr · 1(t) ... PI iner. 3-rz. tr · 1(t) ... Na koniec podamy dwa dodatkowe przykłady, ciekawe od strony modyfikacji postaci wzoru na transmitancje˛ układu zamknietego ˛ KZ (s). Przykład 2 = Y (s). b Wyznaczanie odpowiedzi układu na sygnał y0 (t) = t1(t)=1/s 0 Y (s) 1 1 Niech Kotw (s) = s(s+1) , wtedy KZ (s) = Y0 (s) = s2 +s+1 , zatem Y (s) = KZ (s) · 1 1 1 · = 3 2 2 s s +s +s s Odpowiedź układu na przebieg liniowo narastajacy ˛ jest wiec ˛ równoważna odpowiedzi skokowej systemu o transmitancji s3 +s12 +s . Skrypt jest zatem nastepuj ˛ acy ˛ num=[0 0 0 1]; den=[1 1 1 0]; t=0:0.1:10; y=step(num,den,t); plot(t,y,’x’); grid xlabel(’t sec’); ylabel(’Odpowied´z na sygnał liniowo narastajacy’); ˛ Przykład Jeżeli KZ (s) zawiera cześć ˛ różniczkujac ˛ a, ˛ np. KZ (s) = 10s + 4 s2 + 4s + 4 6.3. Kryteria jako´sci regulacji — dobór nastaw 93 (wyraz 10s), to zwieksza ˛ sie˛ dynamika stanu przejściowego. Jednak dzieje sie˛ to kosztem dużego przeregulowania widocznego w odpowiedzi na skok jednostkowy. W poniższym przykładzie przeregulowanie wynosi powyżej 200% (rys. 6.13): num=[0 10 4]; den=[1 4 4]; t=0:0.1:10; step(num,den,t) %efekt dużego przeregulowania Rys. 6.13. Efekt przeregulowania w układzie z różniczkowaniem 6.3. Kryteria jakości regulacji — dobór nastaw 6.3.1. Wprowadzenie Jednym z najbardziej newralgicznych stanów w pracy układu jest tzw. stan przejściowy, wystepuj ˛ acy ˛ w chwili uruchomienia systemu. Jest on obserwowany najcześciej ˛ jako duża wartość sygnału błedu ˛ w chwili t = 0, a liczony nastepuj ˛ aco ˛ εp , lim ε(t). t→0 94 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Ponieważ może to być stan niebezpieczny dla obiektu regulacji (np. w układach napieciowych, ˛ w których wystapi ˛ a˛ przejściowe oscylacje √ sinusoidalne w chwili t = 0 może powstać tzw. „przepiecie” ˛ wynoszace ˛ U 2, czyli napiecie ˛ o ponad 40% wieksze ˛ od napiecia ˛ nominalnego U ), wiec ˛ szczególnie w tym momencie ważny jest algorytm regulacji. W celu ochrony układu przed zniszczeniem stosuje sie˛ różne techniki, takie jak np. „powolne” zmiany wartości zadanej, ograniczenie akcji różniczkujacych ˛ regulatora, różniczkowanie sygnału wyjściowego, a nie uchybu itp. Parametry regulatorów musza˛ być tak dobrane, aby zapewnić szybka˛ i bezpieczna˛ prace˛ całego układu od chwili t = 0, aż do jego osiagni ˛ ecia ˛ stanu ustalonego, gdy zanikna˛ w nim procesy przejściowe. Właściwy dobór nastaw regulatorów P, PI i PID, czyli parametrów kp , Ti i Td zapewni stabilna˛ prace˛ (bez przeregulowań) każdego z układów regulacji automatycznej, a przede wszystkim odpowiednia˛ jakość regulacji, która˛ bedziemy ˛ oceniać na podstawie wybranych kryteriów jakości. Wybór kryteriów jakości regulacji jest dostosowany do potrzeb zachowania systemu. Zachowanie systemu bedziemy ˛ oceniać na podstawie przebiegu sygnału błedu ˛ ε(t) oraz specjalnie konstruowanych kryteriów jakości regulacji, z których najbardziej znane i stosowane sa˛ tzw. całkowe wska´zniki jako´sci regulacji [12]. Spośród tych kryteriów wybierzemy całke˛ z kwadratu uchybu, oznaczona˛ nastepuj ˛ aco ˛ ISE = Z T ε2 (t)dt, Integrated Square Error ; 0 gdzie górna granica T jest czasem skończonym, wybranym w sposób arbitralny po to, aby było możliwe numeryczne wyznaczenie całki. Spośród kryteriów nie wymagajacych ˛ dodatkowych obliczeń, a pozwalajacych ˛ oceniać jakość regulacji bezpośrednio z przebiegu ε(t) najpopularniejsze sa˛ dwa kryteria odcinkowe: — czas regulacji, czyli czas po którym bład ˛ ε(t) jest odpowiednio bliski εust . Inaczej jest on zwany „reguła˛ stopu” tr : |ε(t) − εust | 6 δ, t > tr , δ = 5%(εp − εust ), gdzie εp oznacza uchyb w chwili t = 0. — przeregulowanie, określane dla systemów oscylacyjnych, jako ¯ ¯ ¯ ε2 ¯ κ = ¯¯ ¯¯ · 100 % ε1 6.3. Kryteria jako´sci regulacji — dobór nastaw 95 Wartości obu tych kryteriów ocenia sie˛ graficznie z wykresu przebiegu ε(t) (rys. 6.14), przy założonym standardowym sygnale zadajacym ˛ y0 (t) = 1(t). Rys. 6.14. Oszacowanie przeregulowania na podstawie przebiegu uchybu Ważna˛ rzecza˛ przy obliczaniu wartości dwóch podanych kryteriów „graficznych” jest zapewnienie, aby bład ˛ w stanie ustalonym εust był zerowy εust = 0. Jeśli układ jest typu statycznego, co oznacza, że εust > 0, można było te˛ wartość odjać. ˛ Oznacza to, że w ocenie dwóch ostatnich kryteriów jakości regulacji bierzemy pod uwage˛ bład ˛ dynamiczny ε(t) = ε(t) − εust , a wartość εust = limt→∞ ε(t) należy obliczyć i podstawić do wzoru na ε(t). Otrzymaliśmy w ten sposób trzy kryteria oceny jakości regulacji w systemie UAR, badajac ˛ jego zachowanie w stanie przejściowym. Sa˛ to nastepuj ˛ ace ˛ kryteria jakości regulacji: 1) czas regulacji tr ; 2) przeregulowanie κ; 3) całka z kwadratu uchybu ISE. Im mniejsze wartości osiagaj ˛ a˛ podane wskaźniki, tym lepsza jest jakość regulacji. W zadaniu regulacji automatycznej należy przede wszystkim ustalić 96 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ typ obiektu i zidentyfikować jego transmitancje˛ KO (s), jeśli nie jest a priori znana. Przypomnijmy z rozdziału 4, że obiekty automatyki dzielimy na dwa typy, dajace ˛ sie˛ z powodzeniem aproksymować jedna˛ z transmitancji zastep˛ czych: 1) Obiekty inercyjne, np. KO (s) = ke−sτ ; Ts + 1 2) Obiekty całkujace, ˛ np. e−sτ 1 ke−sτ = ; k= . s sT T Sposób uzyskiwania parametrów k, T, τ w procesie aproksymacji rzeczywistych odpowiedzi skokowych obu typów obiektów został również zaproponowany w rozdziale 4. Wyróżniamy wiec ˛ dwa typy obiektów o znanych opisach: typ inercyjny (statyczny) i typ całkujacy ˛ (astatyczny). W drugim przypadku, gdy opis jest nieznany i należy go zidentyfikować, można to stosunkowo prosto przeprowadzić w procesie również opisanym wcześniej. Drugim podstawowym problemem regulacji ciagłej ˛ jest dobór nastaw regulatorów tworzacych ˛ UAR, majac ˛ do wyboru regulator P, PI oraz PID, gdzie transmitancja regulatora ma postać KO (s) = KR (s) = kp (1 + 1 + Td s). Ti s W literaturze istnieja˛ algorytmy doboru nastaw regulatorów według Zieglera— Nicholsa. Sa˛ to opracowane doświadczalnie, sugerowane ustawienia wielkości wzmocnienia kp , czasu całkowania Ti oraz czasu różniczkowania Td na podstawie zdejmowanych charakterystyk funkcji przejścia (transfer function) obiektu. W wyniku wielu eksperymentów powstały dwie podstawowe metody Zieglera— Nicholsa, rozwijane i modyfikowane w latach późniejszych. Pierwsza metoda Zieglera—Nicholsa Należy eksperymentalnie zdjać ˛ odpowiedź rzeczywistego obiektu na pobudzenie skokiem jednostkowym. Jeśli obiekt nie zawiera elementu (elementów) całkujacego, ˛ ani dominujacych biegunów zespolonych (co wprowadziłoby oscylacje), wówczas odpowiedź na skok jednostkowy ma kształt litery S. Jak wiemy z rozdziału 4 tego typu krzywa˛ aproksymujemy do postaci opisanej −sτ transmitancja˛ K(s) = ke T s+1 . Ziegler i Nichols zaproponowali w tym przypadku dobór parametrów w UAR z regulatorem P, PI lub PID według danych z tabeli 6.4, [14]. 6.3. Kryteria jako´sci regulacji — dobór nastaw 97 Tabela 6.4. Nastawy według I metody Zieglera—Nicholsa Typ regulatora P PI PID kp T /τ 0, 9T /τ 1, 2T /τ Ti ∞ τ /0, 3 2τ Td 0 0 0.5τ Tabela 6.5. Nastawy według II metody Zieglera—Nicholsa Typ regulatora P PI PID kp 0, 5kP,kryt 0, 45kP,kryt 0, 6kP,kryt Ti ∞ Tosc /1, 2 Tosc /2 Td 0 0 Tosc /8 Druga metoda Zieglera—Nicholsa Zakładamy nieznajomość tranmitancji obiektu KO (s). W układzie ustawiamy regulator tylko na działanie proporcjonalne, tj. KR (s) = kp (Ti = 0, ˛ (o ile to możliwe) zwiekszamy ˛ parametr kp od 0 do warTd = 0), a nastepnie ˛ znajduje sie˛ na granicy tości krytycznej kP,kryt , przy której układ zamkniety stabilności, tzn. na wyjściu obiektu obserwuje sie˛ oscylacje niegasnace ˛ (metody tej nie można zastosować, gdy charakterystyka wyjścia obiektu nie może osiagn ˛ ac ˛ przebiegu oscylacji niegasnacych ˛ dla dowolnego kp ). W ten sposób można doświadczalnie (np. z wykresu) ściagn ˛ ać ˛ okres oscylacji niegasnacych ˛ ˛ ac ˛ dla jakiego wzmocnienia krytycznego kP,kryt one wystapiły. ˛ Tosc , pamietaj Doświadczalny dobór parametrów regulatorów zaproponowano w tabeli 6.5 [3], [12], [14]. Zauważmy, że gdy znamy model matematyczny obiektu (znana jest transmitancja KO (s)), wówczas możemy zastosować metode˛ rozmieszczenia pierwiastków (rlocus()), w celu znalezienia wartości wzmocnienia krytycznego ˛ ω kryt , gdzie Tosc = ω2π . WarkP,kryt oraz pulsacji oscylacji niegasnacych k ry t tości te można znaleźć w punktach przeciecia ˛ linii pierwiastków z osia˛ urojona˛ jω. Oczywiście, gdy linie pierwiastków nie przecinaja˛ osi jω, metody tej nie można zastosować. 6.3.2. Program ćwiczenia I metoda Zieglera—Nicholsa 1. Wyznaczyć komputerowo odpowiedź skokowa˛ obiektu typu wieloinercyjke−sτ nego i aproksymować go za pomoca˛ transmitancji K(s) = sT . ZidentyfikoZ +1 wać parametry τ , T , a i k (patrz rys. 6.1). 98 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ 2. Wyznaczyć komputerowo odpowiedź skokowa˛ obiektu typu całkujacego ˛ ke−sτ e−sτ i aproksymować go za pomoca˛ transmitancji K(s) = s = T s . Określić parametry τ , T , a i k (patrz rys. 6.2). Obiekty obu typów identyfikuje sie˛ na podstawie ich odpowiedzi skokowej. Z ustalonych parametrów aproksymacji τ , T , a i k dobrać ustawienia w Układzie Automatycznej Regulacji (rys. 6.15): • z regulatorem P o transmitancji KR (s) = kp ; • z regulatorem PI o transmitancji KR (s) = kp (1 + T1i s ); • z regulatorem PID o transmitancji KR (s) = kp (1 + T1i s + Td s); W badaniach zakładamy zawsze ten sam wejściowy sygnał zadajacy ˛ y0 (t) = 1(t). y 0 (t ) ε (t ) + _ K R (s) u (t ) KO (s) y (t ) y (t ) Rys. 6.15. Model układu automatycznej regulacji 3. Skorzystać z I tabeli doboru nastaw regulatorów wg Zieglera—Nicholsa i wykreślić przebiegi y(t), y0 (t) i ε(t). Dla każdego typu układu (z regulatorami P, PI i PID) wybrać kryteria jakości regulacji: ISE, tr i κ. Skonstruować dodatkowy miernik kryterium całkowego (jak na rys. 6.17). 4. Wartości kryteriów jakości regulacji dla nastaw według Zieglera—Nicholsa przedstawić w tabeli zbiorczej: P PI PID tr , s κ, % ISE, − Ponieważ nastawy doboru regulatorów według Zieglera—Nicholsa sa˛ orientacyjne i daja˛ zawsze zbyt wielkie przeregulowanie (dopuszczalne to ok. 25%), należy samodzielnie poprawić wyniki zamieszczone w tabeli (ponieważ te kryteria sa˛ minimalizowane, wiec ˛ — zmniejszyć). Odkryć zależności, np. takie gdzie w stosunku do nastaw Zieglera—Nicholsa można: — zmniejszać kP — co daje mniejsze przeregulowanie; ˛ ecia ˛ zerowego uchybu; — zmniejszać Ti — dla szybszego osiagni — zwiekszać ˛ Td — dla poprawienia dynamiki spadku błedu. ˛ 6.3. Kryteria jako´sci regulacji — dobór nastaw 99 II metoda Zieglera—Nicholsa Ziegler i Nichols jako pierwsi zauważyli, że transmitancje zasadniczej wiek˛ szości obiektów regulacji sa˛ typu wieloinercyjnego (kształt litery S odpowiedzi skokowej). W tej metodzie nie znajduja˛ zastosowania obiekty typu całkujacego ˛ z inercja, ˛ poza tym zakładamy, że matematyczny model transmitancji obiektu KO (s) jest znany. Znajdowanie bezpiecznych dla obiektu nastaw regulatorów należy rozpoczać ˛ od regulatora typu P, z wejściowym sygnałem zadajacym ˛ y0 (t) = 1(t). — Doprowadzić układ na granice˛ stabilności, z wykresu ε(t) odczytać Tosc — okres oscylacji niegasnacych. ˛ ˛ oscylacje niegasnace ˛ i zapamietać ˛ ten — Stwierdzić dla jakiego kP nastapiły parametr jako kP,kryt . — Z tabeli nastaw regulatorów według Zieglera-Nicholsa wybrać odpowiednie (bezpieczne) wartości kP , Ti i Td w zależności od wybranego typu regulatora. Napisać odpowiednie M-skrypty w MATLAB dla nastaw regulatorów, według Zieglera—Nicholsa. Opracować tabele˛ zbiorcza˛ wartości kryteriów jakości regulacji. Zaproponować lepsze parametry regulacji (np. Pessena, Kupfmuellera [1], [11]). 6.3.3. Badania komputerowe W ćwiczeniu należy przeprowadzić eksperyment doboru wybranych parametrów regulatorów w układzie z zadanym typem obiektu, stosujac ˛ I i II metode˛ Zieglera—Nicholsa. Zbadać stany nieustalone systemu pod katem ˛ obserwacji przejściowych przebiegów dynamicznych sygnału błedu ˛ ε(t). Zaprojektujmy efektywny układ regulacji dla obiektu o transmitancji KO (s) = 1 . (T s + 1)3 Dla uproszczenia prezentacji przyjmijmy T = 1. Analize˛ rozpoczynamy od ˛ znalezienia wzmocnienia krytycznego kp,kryt i okresu oscylacji niegasnacych Tosc , gdy obiekt z regulatorem typu P jest na granicy stabilności. Po prostych przekształceniach algebraicznych otrzymuje sie˛ Kotw (jω) = Potw (ω) + jQotw (ω) = kp (1 − 3ω 2 T 2 ) + = (1 − 3ω 2 T 2 )2 + ω2 T 2 (3 − ω2 T 2 )2 −kp ωT (3 − ω2 T 2 ) +j (1 − 3ω2 T 2 )2 + ω 2 T 2 (3 − ω 2 T 2 )2 100 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Rys. 6.16. Schematy symulacji układów automatycznej regulacji Według kryterium Nyquista, charakteryka a—f układu otwartego, bed ˛ acego ˛ na granicy stabilności, przechodzi przez punkt (−1, j0).√ Przyrównujemy cześć ˛ urojona˛ do zera, Q(ω) = 0, i wnioskujemy, że ωosc = 3, czyli 2π Tosc = √ ≈ 3.63. 3 Przyrównujemy natomiast cześć ˛ rzeczywista˛ do −1, czyli rozwiazujemy ˛ równanie Re Kotw (jω) = −1, i otrzymujemy kP,kryt = 8. Wzmocnienie krytyczne można także wyznaczyć np. z kryterium Hurwitza, biorac ˛ pod uwage, ˛ że: Mz (s) = Lotw (s) + Motw (s) = kp + (s + 1)3 . 6.3. Kryteria jako´sci regulacji — dobór nastaw 101 Rys. 6.17. Pomiar całkowych wskaźników jakości regulacji Macierz Hurwitza ma postać 3 kP + 1 0 , 0 H3 = 1 3 0 3 kP + 1 co prowadzi do wymagania ∆2 = 9 − (kP + 1) > 0, czyli kP < 8. Znalezienie miejsc zerowych wielomianu licznika Q(ω) może być niemożliwe analitycznie (np. gdy stopień wielomianu jest wiekszy ˛ niż 3). Należy wówczas znaleźć je numerycznie. W naszym przypadku licznikQ(ω) = a3 ω3 + a2 ω 2 + a1 ω + a0 , gdzie a3 = −kP = −8, a2 = 0, a1 = −3kP = −24 i a0 = 0. Należy zatem wywołać funkcje˛ MATLAB roots(—8,0,—24,0). Uzyskane za pomoca˛ reguły Zieglera—Nicholsa doświadczalne nastawy regulatora PID wynosza˛ odpowiednio kP = 4, 8 Ti = 1, 32 Td = 0, 32 Dalej przedstawiamy skrypt konstruujacy ˛ Układ Automatycznej Regulacji i kreślacy ˛ przebiegi y(t) i ε(t) przy założonych ustawieniach regulatora PID: Regulator=tf([2.03 6.34 4.8],[1.32 0]); Obiekt=tf([1],[1 3 3 1]); SysOtw=series(Regulator,Obiekt) UAR=feedback(SysOtw,1); y=step(UAR); 102 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ e=1—y; plot(y); hold on; grid on; plot(e); Wynik działania skryptu przedstawiono na rysunku 6.18. Rys. 6.18. Odpowiedź układu z regulatorem PID na skok jednostkowy dla nastaw według Zieglera—Nicholsa Z wykresów można odczytać, że zaprogramowany układ realizuje regulacje˛ typu astatycznego (bład ˛ w stanie ustalonym przy wejściu y0 (t) = 1(t) wynosi zero). Graficzne odcinkowe kryteria jakości regulacji wynosza: ˛ κ = 60%, ˛ wartości zbyt duże i można je próbować poprawić, tr = 150 s, sa˛ to wiec stosujac ˛ np. parametry algorytmu Pessena. Kryterium całkowe ISE wymaga zbudowania specjalnego „miernika wartości kryterium”, jak np. na rys. 6.17 (o czym mówiliśmy wcześniej). 6.3.4. Przybliżona analiza układów nieliniowych W zasadniczej wiekszości ˛ rzeczywistych układów regulacji pojawiaja˛ sie˛ zjawiska natury nieliniowej, wynikajace ˛ np. z wystepowania ˛ nasyceń, luzów, 6.3. Kryteria jako´sci regulacji — dobór nastaw 103 ograniczonych pojemności zbiorników itp. W ogólnym przypadku nieliniowy element dynamiczny opisuje nieliniowe równanie różniczkowe postaci F (y (n) , y(n−1) , .., y, x(m−1) , ..., x, t) = 0. Układ nieliniowy pobudzony sygnałem sinusoidalnym sin ωt, w przeciwieństwie do układu liniowego, daje na wyjściu dodatkowe składowe harmoniczne o innych (wyższych) pulsacjach niż pulsacja podstawowa ω. Przykładowy schemat badań w Simulink ilustrujacych ˛ te˛ ceche˛ przedstawiono na rysunku 6.19. Rys. 6.19. Obserwacja widm procesów wyjściowych elementów nieliniowych Analiza systemów zawierajacych ˛ elementy nieliniowe jest przez to znacznie trudniejsza niż analiza systemów liniowych. W szczególności nie ma zastosowania transformacja Laplace’a oraz ograniczone znaczenie maja˛ odpowiedzi skokowe i impulsowe (amplituda pobudzenia ma wpływ na charakter (kształt) odpowiedzi ). W rozdziale tym ograniczymy sie˛ do analizy układów regulacji, w których regulator jest statyczny i stacjonarny, tzn. jego charakterystyka jest po prostu funkcja˛ nieliniowa˛ y = f (u). Połaczenie ˛ szeregowe elementów o charakterystykach f1 (u) i f2 (u) realizuje funkcje˛ f2 (f1 (u)), natomiast połaczenie ˛ równoległe — funkcje˛ f1 (u) + f2 (u). Bardziej złożone struktury połaczeń ˛ (np. z dodatnim sprze˛ żeniem zwrotnym) 104 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ moga˛ prowadzić do niejednoznacznej charakterystyki zastepczej ˛ (tzw. histerezy) [18]. Przykład praktyczny. Powszechnie stosowanymi regulatorami nieliniowymi sa˛ zawory termostatyczne w grzejnikach CO. Ich charakterystyka ma postać z rysunku 6.20. Rys. 6.20. Charakterystyka statyczna termostatu Sygnał wyjściowy regulatora termostatycznego u — położenie zaworu dopływu ciepłej wody. Wielkościa˛ sterowana˛ y(t) (wyjściem obiektu) jest rzeczywista temperatura w pomieszczeniu w chwili t, sygnałem zaś zadajacym ˛ y0 (t) — położenie nastawnika na termostacie (temperatura żadana). ˛ Podsumowujac ˛ możemy ustalić, że u= ½ 1 (zawór otwarty), gdy y(t) < y0 (t) (jest za zimno); ˛ ciepło). 0 (zawór zamkniety), ˛ gdy y(t) ≥ y0 (t) (jest wystarczajaco Metoda funkcji opisujacej ˛ polega na przybliżeniu elementu nieliniowego jego opisem liniowym, a nastepnie ˛ zastosowaniu znanych narzedzi ˛ analizy systemów liniowych do badania stabilności i wyznaczania charakterystyk. Uzyskane wyniki sa˛ zatem przybliżone. Podejście takie usprawiedliwiaja˛ dwa czynniki: 6.3. Kryteria jako´sci regulacji — dobór nastaw 105 — obiekt może mieć charakter dolnoprzepustowy i tłumić wyższe czestotli˛ wości (harmoniczne) produkowane przez regulator; — charakterystyka statyczna elementu nieliniowego może być bliska linii prostej. Wyjście nieliniowego elementu statycznego pobudzonego sygnałem u(t) = A sin ωt jest okresowa˛ funkcja˛ niesinusoidalna˛ i można ja˛ rozwinać ˛ w szereg Fouriera y(t) = a0 + ∞ X (bk sin kωt + ck cos kωt), k=0 gdzie a0 , bk i ck sa˛ stałymi współczynnikami, zależnym od charakterystyki nieliniowej i amplitudy A sygnału wejściowego. Zakładajac, ˛ że element nieliniowy może być dostatecznie dokładnie reprezentowany przez główna˛ harmoniczna˛ sygnału (o oryginalnej pulsacji ω) y1 (t) = b1 sin ωt + c1 cos ωt ≈ y(t) traktujemy element nieliniowy, tak jak element liniowy o „transmitancji” zwanej funkcja˛ opisujac ˛ a˛ J(s) = b1 + jc1 Y1 (s) = . U (s) A Współczynniki b1 i c1 dla elementu statycznego bez histerezy zależa˛ jedynie od amplitudy A sygnału wejściowego i rodzaju charakterystyki nieliniowej, dlatego dalej funkcje˛ opisujac ˛ a, ˛ dla konkretnej charakterystyki nieliniowej, oznaczać bedziemy ˛ jako J(A) (zestawienia funkcji opisujacych ˛ najbardziej znanych elementów nieliniowych dokonano w monografiach [1], [17] i skrypcie [18], a także w tabeli 6.6). Układ z nieliniowym regulatorem i liniowym obiektem przedstawiono na rysunku 6.21. ε (t ) y0 (t ) + _ J (A) u ( t) KO (s ) y( t ) Rys. 6.21. UAR z regulatorem nieliniowym y( t) 106 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ Tabela 6.6. Funkcje opisujace ˛ popularnych elementów nieliniowych Charakterystyka f (x) Funkcja opisujaca ˛ dla x(t) = A sin ωt µ ¶ ³ ¡ B ¢2 ´ 12 2k B B J(A) = π arcsin Ak + Ak 1 − Ak f (x) = max {kx, B} ½ B, dla x > 0 f (x) = −B, dla x < 0 0, dla |x| < a B, dla x > a f (x) = −B, dla x < −a J(A) = 4B πA J(A) = 4B πA ³ ¡ a ¢2 ´ 12 1− A Równanie charakterystyczne układu zlinearyzowanego ma postać 1 + J(A)KO (jω) = 0, cykl graniczny opisuje zatem równanie KO (jω) = − 1 . J(A) 1 1 Krzywa na płaszczyźnie zespolonej o współrzednych ˛ (Re[− J(A) ], Im[− J(A) ]) określa granice˛ miedzy ˛ stabilnościa˛ i niestabilnościa˛ systemu (odpowiednik punktu (−1, j0) w kryterium Nyquista). Punkty przeciecia ˛ krzywych KO (jω) 1 i − J(A) na płaszyźnie a—f określaja˛ tzw. punkty pracy UAR, w których powstaja˛ drgania harmoniczne (sinusoidalne). Przykład [18] Niech w układzie regulacji z rysunku 6.21 obiekt ma transmitancje˛ KO (s) = 1 s(s+1)(s+1) , regulator zaś jest przekaźnikiem dwupołożeniowym o charakterystyce u = B · sgn(ε). Można pokazać, że funkcja opisujaca ˛ takiego regulatora ma postać (patrz [18]) J(A) = 4B . πA Rozwiazanie ˛ układu równania zespolonego − 1 = KO (jω), J(A) 6.3. Kryteria jako´sci regulacji — dobór nastaw 107 poprzez porównanie cześci ˛ rzeczywistych i urojonych jego obu stron prowadzi do rozwiazania ˛ ω=1iA= 2B . π W układzie powstana˛ wiec ˛ drgania okresowe o amplitudzie A = 2B/π i pulsacji ω = 1. Schemat do badań nieliniowego układu i uzyskany przebieg (dla B = 1) pokazano na rysunkach 6.22 i 6.23. Rys. 6.22. Układ z przekaźnikiem dwupołożeniowym Rys. 6.23. Przebieg wyjścia obiektu y(t) (gdzie A ≈ 2/π, ω ≈ 1) 108 6. Liniowe układy automatycznej regulacji z czasem ciagłym ˛ 6.4. Przykłady praktyczne 6.4.1. Sterowanie reczne ˛ napełnianiem zbiornika Dla ułatwienia zrozumienia formalnego opisu struktury UAR podajemy prosty przykład napełnania zbiornika ciecza. ˛ u(t) e(t) Yo(t) Y(t) p Rys. 6.24. Napełnianie zbiornika — regulacja reczna ˛ Wyróżniamy nastepuj ˛ ace ˛ elementy Układu Automatycznej Regulacji: — obiekt — zbiornik o przekroju p i zawór o regulowanej przepustowości u; — wejście obiektu — położenie zaworu u(t) w chwili t (przepływ, m3 /s); — wyjście obiektu — aktualny poziom cieczy (w chwili t); — regulator — człowiek sterujacy ˛ zaworem (wielkościa˛ u(t)) na podstawie informacji o ilości wolnej przestrzeni w zbiorniku e(t); — cel sterowania — jak najszybsze i najdokładniejsze napełnienie zbiornika do pełna (do poziomu Y0 ). Y0 e(t ) + _ człowiek u (t ) zbiornik Y (t ) Y (t ) Rys. 6.25. Schemat formalny układu regulacji recznej ˛ W niniejszym podreczniku ˛ rozpatruje sie˛ Liniowe Układy Regulacji Automatycznej, tzn. człowieka zastepuje ˛ automat o opisie liniowym. 6.4. Przykłady praktyczne 109 6.4.2. Układ Automatycznej Regulacji Czestotliwości ˛ Na rysunku 6.26 przedstawiono realizacje˛ głowicy TV z układem stabilizujacym ˛ czestotliwość. ˛ Rys. 6.26. Głowica telewizyjna z układem automatycznej regulacji czestotliwości ˛ (ARCz) Głowica ma nastepuj ˛ ace ˛ bloki funkcjonalne: • Przestrajany obwód wejciowy LC sprzegajacy głowice˛ z antena˛ i wstepnie ˛ selekcjonujacy ˛ odbierane sygnały (L1, C2,C6, D1). • Wzmacniacz wysokiej czestotliwościcz ˛ (T1) z filtrem pasmowym LC (L2, C8, C9, D2 oraz L3 C15, C16, D3, C14 szeregowo z C17). • Mieszacz (T2) z filtrem wyjciowym 10,7 MHz (L5, C21). • Heterodyna, której czestotliwość drgań kontrolowana jest przez przestrajany obwód LC (L4, C19, C20, pojemność D9 układu ARCz w szeregu z C24). Za pomoca˛ petli ˛ ujemnego sprze˛ żenia zwrotnego sygnał wyjściowy po odfiltrowaniu jest podawany na wejście UARCz wpływa na wartość pojemności diody D9 i stabilizuje czestotliwość. ˛ 110 111 7. Układy automatyki z czasem dyskretnym 7.1. Wprowadzenie Liniowe układy automatyki z czasem dyskretnym wymagaja˛ wprowadzenia osobnego aparatu matematycznego, opartego na tzw. transformacie Z [6]. Podstawowy opis struktury systemów otwartych i zamknietych ˛ stanowi tutaj transmitancja dyskretna K(z). 7.1.1. Równanie różnicowe Liniowy system dynamiczny z czasem dyskretnym opisuje tzw. równanie różnicowe postaci am yn + am−1 yn−1 + ... + a0 yn−m = bl un−m+l + ... + b0 un−m , (7.1) zakłada sie˛ przy tym a0 6= 0, am 6= 0 i bl 6= 0. Liczbe˛ m nazywamy rzedem ˛ równania różnicowego. Dla systemów przyczynowych (rzeczywistych) zachodzi warunek l 6 m. W przeciwnym razie wyjście y musiałoby zależeć od przyszłych wartości wejścia u. Pobudzenie jest sygnałem rozpoczynajacym ˛ sie˛ w chwili n = 0, tzn. un = 0, dla n < 0. (7.2) 112 7. Układy automatyki z czasem dyskretnym Do rozwiazania ˛ równania (7.1) (czyli znalezienia {yn }) nie wystarcza znajomość procesu {un }, konieczna jest jeszcze znajomość wyjścia w m chwilach poprzedzajacych ˛ chwile˛ n = 0 y−1 , y−2 , ..., y−m . (7.3) Wartości w (7.3) nazywamy warunkiem poczatkowym. ˛ 7.1.2. Transformacja Z Transformacja Z przyporzadkowuje ˛ nieskończonemu ciagowi ˛ {xn } o wartościach rzeczywistych funkcje˛ zespolona˛ zmiennej zespolonej z {xn } 7−→ X(z) zdefiniowana˛ nastepuj ˛ aco ˛ def Z ({xn }) = X(z) = ∞ X xn z −n . n=0 Transformacja Z jest narzedziem, ˛ które ułatwia rozwiazanie ˛ równania różnicowego (7.1), tzn. wyznaczenie ciagu ˛ {yn } przy danym pobudzeniu {un } i da˛ najistotniejsza nym warunku poczatkowym ˛ y−1 , y−2 , ..., y−m . Z tego wzgledu jest właściwość o transformacie ciagu ˛ {xn } opóźnionego o k Z ({xn−k }) = z −k X(z) + z −k+1 x−1 + ... + z −1 x−k+1 + x−k ; np. Z ({xn−2 }) = z −2 X(z) + z −1 x−1 + x−2 . Do innych istotnych właściwości transformacji Z należa: ˛ — różniczkowanie wzgledem ˛ z ∧ nxn = −z d X(z); dz — zmiana skali zmiennej z ∧ λ−n xn = X(λz); — transformata sumy szeregu n X i=0 ∧ xi = z X(z); z−1 7.1. Wprowadzenie 113 — transformata splotu n X ∧ xn−i yi = X(z)Y (z). i=0 ∧ ˛ do odpowiadajacej ˛ mu Symbol = używany jest przy przejściu od ciagu transformaty Z i odwrotnie (podobnie jak przy transformacie Laplace’a). 7.1.3. Transmitancja systemu z czasem dyskretnym Zastosowanie transformaty Z do równania różnicowego (7.1), z wykorzystaniem właściwości (7.2), prowadzi do równania α(z −1 )Y (z) − V (z −1 ) = β(z −1 )U (z), ˛ w swym gdzie α(z −1 ) i β(z −1 ) sa˛ wielomianami zmiennej z −1 , zawierajacymi opisie parametry systemu α(z −1 ) = am + am−1 z −1 + ... + a0 z −m , β(z −1 ) = bl z −m+l + ... + b0 z −m , natomiast V (z −1 ) = wm−1 + wm−2 z −1 + ... + w0 z −m+1 jest pewnym wielomianem o współczynnikach zależnych od warunku poczatko˛ wego. Transmitancja˛ systemu z czasem dyskretnym nazywamy zespolona˛ funkcje˛ wymierna˛ postaci K(z) , bl z l + ... + b0 z β(z −1 ) ozn L(z) = . = α(z −1 ) am z m + am−1 z m−1 + ... + a0 z M (z) Opis systemu w dziedzinie zmiennej zespolonej z jest wiec ˛ nastepuj ˛ acy ˛ Y (z) = K(z)U (z) + V (z −1 ) , α(z −1 ) gdzie dla zerowego warunku poczatkowego ˛ y−1 = y−2 = ... = y−m = 0, zachodzi V (z −1 ) = 0, czyli odpowiedź systemu z czasem dyskretnym określa zależność Y (z) = K(z)U (z). (7.4) 114 7. Układy automatyki z czasem dyskretnym 7.1.4. Transmitancja widmowa Odpowiedź liniowego systemu dynamicznego z czasem dyskretnym na pobudzenie sinusoidalne un = sin ωn w stanie ustalonym (gdy n → ∞) jest postaci yn ≈ A(ω) sin (ωn + ϕ(ω)) , gdzie ¯ ¯ A(ω) = ¯K(ejω )¯ , ϕ(ω) = arg K(ejω ), a funkcja zespolona pulsacji ω def K(ejω ) = K(z)|z=jω jest nazywana transmitancja˛ widmowa˛ systemu dyskretnego. 7.1.5. Standardowe pobudzenia dyskretne Do standardowych pobudzeń systemów z czasem dyskretnym należa: ˛ — delta dyskretna Kroneckera ½ 1, dla n = 0 , Z({δ n }) = 1; δn = 0, dla n 6= 0 — dyskretny skok jednostkowy ½ 1, dla n > 0 1n = , 0, dla n < 0 Z({1n }) = z . z−1 Odpowiedź systemu na pobudzenie δ n i 1n , przy zerowych warunkach poczatkowych, ˛ nazywa sie˛ odpowiednio odpowiedzia˛ impulsowa˛ {kn } i skokowa˛ {λn } systemu. W pełni charakteryzuja˛ one właściwości dyskretnego systemu liniowego. Korzystajac ˛ z właściwości o transformacie splotu, na podstawie (7.4) otrzymujemy yn = ∞ X i=0 ki un−i + Z −1 µ V (z −1 ) α(z −1 ) ¶ , 7.1. Wprowadzenie 115 gdzie {ki } = Z −1 (K(z)). Przy zerowym warunku poczatkowym ˛ zatem yn = ∞ X ki un−i . (7.5) i=0 Każdy dyskretny system liniowy można opisać wzorem postaci (7.5), w którym, w przeciwieństwie do równania różnicowego (7.1), nie wystepuj ˛ a˛ po prawej stronie wartości wyjścia w chwilach poprzednich, wystepuje ˛ natomiast nieskończona liczba składników. Podobnie jak dla systemów z czasem ciagłym, ˛ dyskretny system liniowy splata sygnał wejściowy ze swoja˛ odpowiedzia˛ impulsowa. ˛ Oczywiście, przy pobudzeniu systemu delta˛ dyskretna˛ {un } = {δ n } i zerowym warunku poczatkowym, ˛ na wyjściu obserwujemy jego odpowiedź impulsowa˛ {yn } = {kn }. 7.1.6. Stabilność układów z czasem dyskretnym Pojecie ˛ stabilności układu z czasem dyskretnym odpowiada definicji stabilności układu z czasem ciagłym. ˛ System dyskretny nazywamy stabilnym, jeśli przy dowolnym warunku poczatkowym ˛ i zerowym pobudzeniu {un } = 0 lim yn = 0. (7.6) n→∞ Równoważnym warunkiem koniecznym i wystarczajacym ˛ stabilności jest ∞ X n=0 |kn | < ∞, (7.7) stad ˛ oczywiście musi zachodzić lim kn = 0 n→∞ oraz istnieć granica lim λn = lim n→∞ n→∞ n X i=0 ki . 116 7. Układy automatyki z czasem dyskretnym W systemie stabilnym, przy zerowym warunku poczatkowym, ˛ dla każdego ograniczonego pobudzenia |un | < umax < ∞, jego odpowiedź jest również ograniczona, czyli |yn | < ymax = umax ∞ X n=0 |kn | < ∞. Badanie stabilności opiera sie˛ na określeniu położenia biegunów transmitancji systemu dyskretnego, czyli m zespolonych pierwiastków z1 , ..., zm równania M (z) = 0, gdzie M (z) = am z m + am−1 z m−1 + ... + a0 z = am · (z − z1 ) · ... · (z − zm ). System jest stabilny, jeśli wszystkie pierwiastki jego transmitancji leża˛ we wnetrzu ˛ okregu ˛ jednostkowego, tzn. gdy zachodzi warunek |z1 | < 1, |z2 | < 1, ..., |zm | < 1. (7.8) Jedna˛ z technik weryfikacji warunku (7.8) jest podstawienie ([5]) z= w+1 , w−1 dla którego spełnione sa˛ trzy warunki: • w leży w lewej półpłaszczyźnie zmiennej zespolonej w, co odpowiada Re w < 0 wtedy i tylko wtedy, gdy z leży wewnatrz ˛ okregu ˛ jednostkowego, tj. |z| < 1; • w leży w prawej półpłaszczyźnie zmiennej zespolonej w, co odpowiada Re w < 0 wtedy i tylko wtedy, gdy z leży na zewnatrz ˛ okregu ˛ jednostkowego, tj. |z| > 1; • w leży na osi urojonej płaszczyzny w, co odpowiada Re w = 0 wtedy i tylko wtedy, gdy z leży na okregu ˛ jednostkowym, tj. |z| = 1. Metoda postepowania ˛ podczas sprawdzania stabilności układów dyskretnych jest dwuetapowa: ? 1) Sprawdzić, czy M (1) 6= 0; 2) Sprawdzić czy wszystkie pierwiastki w1 , w2 , ..., wm równania ¶ µ w+1 m =0 (w − 1) M w−1 7.1. Wprowadzenie 117 maja˛ ujemne cześci ˛ rzeczywiste ? ? ? Re w1 < 0, Re w2 < 0, ..., Re wm < 0, stosujac ˛ powszechnie znane kryteria stabilności dla systemów z czasem cia˛ głym. Istnieja˛ także kryteria stabilności przeznaczone specjalnie dla systemów z czasem dyskretnym, np. kryterium Jury’ego [5], [6]. Niech A bedzie ˛ macierza˛ kwadratowa. ˛ Jej kolejne macierze wewnetrzne ˛ otrzymuje sie˛ przez skreślenie pierwszego i ostatniego wiersza oraz pierwszej i ostatniej kolumny, aż do uzyskania macierzy o wymiarach 1 × 1 lub 2 × 2. Definuje sie˛ podmacierze trójkatne ˛ am am−1 ... ... a2 am ... ... ... b ... ... ... A= am am−1 am oraz a0 a0 a1 e A= ... ... ... ... a0 ... ... a0 a1 ... ... am−2 Kryterium Jury’ego. System jest asymptotycznie stabilny wtedy i tylko wtedy, gdy M (1) > 0, (−1)m M (−1) > 0 oraz wyznacznik i wszystkie podwyb+A ei A b−A e sa˛ dodatnie. Zaleta˛ kryterium Jury’ego znaczniki macierzy A w aspekcie metod komputerowych, jest możliwość jego szybkiej implementacji w MATLAB. 7.1.7. Ekstrapolator i impulsator Obiekt ciagły ˛ sterowany przez impulsator ([5]) o okresie T jest systemem dyskretnym, a jego transmitancje˛ wyznaczamy nastepuj ˛ aco ˛ L−1 K(s) =⇒ k(t) =⇒ {k(nT )} = {kn } =⇒ Z({kn }) =⇒ K(z). W przypadku systemu ciagłego ˛ sterowanego impulsatorem z ekstrapolatorem postepujemy ˛ według schematu −1 z−1 1 L K(s) =⇒ λ(t) =⇒ {λ(nT )} = {λn } =⇒ Z({kn }) =⇒ K(z). s z 118 7. Układy automatyki z czasem dyskretnym 7.1.8. System pobudzany procesem losowym Niech {un } bedzie ˛ stacjonarnym dyskretnym białym szumem o zerowej wartości oczekiwanej µu = Eun = 0. Funkcja autokorelacji dyskretnego białego szumu o zerowej wartości oczekiwanej jest definiowana nastepuj ˛ aco ˛ ½ 2 σ u , dla τ = 0 Ru (τ ) = Eun un−τ = , 0, dla τ 6= 0 ˛ Wtedy gdzie σ 2u = Ru (0) jest jego wariancja. (∞ ) ∞ X X µy = Eyn = E ki uk−i = µu ki i=0 i=0 i jeśli µu = 0, to również µy = 0. Gdy µy = 0, autokorelacja wyjścia wyraża sie˛ nastepuj ˛ aco ˛ ∞ ∞ ∞ X X X 2 Ry (τ ) = Eyn yn+τ = E ki uk−i kj uk+τ −j = σ u ki ki+τ , (7.9) i=0 j=0 i=0 w szczególności σ 2y = Ry (0) = σ 2u ∞ X ki2 . i=0 Wprost z zależności (7.7) i (7.9) wynika, że dla systemów asymptotycznie stabilnych, pobudzanych białym szumem, ma ona właściwość lim Ry (τ ) = 0. τ →∞ Jeśli odpowiedź impulsowa jest skończona, tzn. ki = 0, dla i > P, to również Ry (τ ) = 0, dla τ > P. Można także pokazać, że dla systemu asymptotycznie stabilnego, pobudzanego losowym procesem skorelowanym, zachodzi zależność lim Ru (τ ) = 0 =⇒ lim Ry (τ ) = 0. τ →∞ τ →∞ 7.1. Wprowadzenie 119 7.1.9. Identyfikacja liniowych systemów dynamicznych z czasem dyskretnym Podobnie jak w przypadku systemów z czasem ciagłym, ˛ powstaje pytanie, jak na podstawie pomiarów wejścia i wyjścia rzeczywistego obiektu, określić jego parametry w matematycznym opisie. Rozpatrzmy problem estymacji parametrów α1 , ..., αn i β 0 , ..., β m stacjonarnego, asymptotycznie stabilnego, liniowego systemu dynamicznego z czasem dyskretnym [16]. Obiekt taki, o wejściu u i wyjściu x, opisuje równanie różnicowe postaci xk + α1 xk−1 + ... + αn xk−n = β 0 uk + β 1 uk−1 + ... + β m uk−m , (7.10) gdzie wartości rzedów ˛ n i m sa˛ znane. ˛ wstecz (tzn. qxk = Po wprowadzeniu operatora q = z −1 przesuwajacego 2 xk−1 , q xk = xk−2 itd.) oraz wielomianów A(q) = 1 + α1 q + α2 q 2 + ... + αn qn , B(q) = β 0 + β 1 q + ... + β m qm , równanie (7.10) upraszcza sie˛ do postaci A(q)xk = B(q)uk → xk = B(q) uk . A(q) Identyfikacja w warunkach bez zakłóceń pomiarowych Po wprowadzeniu wektora (kolumnowego) poszukiwanych parametrów θ = (α1 , α2 , ..., αn , β 0 , β 1 , ..., β m )T oraz uogólnionych wektorów wejść (tzw. regresorów) rk = (−xk−1 , −xk−2 , ..., −xk−n , uk , uk−1 , ..., uk−m )T , otrzymujemy xk = rkT θ. Nieznane parametry zawarte w wektorze θ identyfikuje sie˛ na podstawie ˛ acej ˛ par pomiarów (uk , xk ). Dla k = 1, ..., N zapiszmy pomiary w nastepuj 120 7. Układy automatyki z czasem dyskretnym macierzy RN i wektorze kolumnowym XN T r1 x1 r2T x2 : , X RN = : = N : : T rN xN Uzyskujemy macierzowe równanie pomiarów . XN = RN θ, (7.11) równoważne układowi N równań postaci (7.10) dla k = 1, ..., N . Mnożymy T i otrzymujemy lewostronnie obie strony równania (7.11) przez RN T T RN XN = RN RN θ, (θ — niewiadome), (7.12) TR gdzie RN ˛ której liczba wierszy i kolumn jest N jest macierza˛ kwadratowa, równa liczbie poszukiwanych parametrów (dim θ). TR Aby układ ten miał jednoznaczne rozwiazanie, ˛ macierz RN N musi być odwracalna, tzn. T det RN RN 6= 0 innymi słowy, aby rankRN = dim θ. TR Warunkiem koniecznym nieosobliwości macierzy RN N jest, aby liczba pomiarów była co najmniej równa liczbie poszukiwanych parametrów m+n+1 N ≥ dim θ. (7.13) Warunek (7.13) nie jest oczywiście wystarczajacy. ˛ Jako kontrprzykład proponujemy czytelnikowi analize˛ sytuacji, w której uk = const. Wynika z tego, że aby wyznaczenie parametrów systemu było możliwe, należy go pobudzić odpowiednio bogatym sygnałem (tzw. sygnałem ustawicznie pobudzajacym, ˛ [16]). Przykładem sygnału ustawicznie pobudzajacego ˛ jest TR proces i.i.d. (biały szum). W przypadku, gdy RN N jest macierza˛ odwraT R )−1 , by uzyskać calna, ˛ możemy pomnożyć lewostronnie (7.12) przez (RN N wzór na poszukiwane parametry T T θ = (RN RN )−1 RN XN . 7.1. Wprowadzenie 121 Identyfikacja w obecności zakłóceń pomiarowych Niech teraz, dodatkowo, do prawdziwego wyjścia obiektu xk dodaja˛ sie˛ przypadowe zakłócenia εk o zerowej wartości oczekiwanej Eεk = 0, skończonej wariancji varεk < ∞, niezależne od procesu wejściowego uk . Wykonujemy pomiary i gromadzimy teraz pary (uk , yk ), gdzie yk = xk + εk . Innymi słowy, pomiar wyjścia jest obarczony przypadkowym błedem, ˛ ˛ Celem identyfikacji jest estymacja wea wartości idealne xk sa˛ niedostepne. ktora parametrów θ = (α1 , α2 , ..., αn , β 0 , β 1 , ..., β m )T na podstawie pomiarów we—wy {(uk , yk )}N k=1 . Zapisujemy xk = yk − εk = B(q) uk A(q) / · A(q) i otrzymujemy równanie różnicowe o zmiennych y i u A(q)yk = B(q)uk + zk . Przypomina to wzór (7.10), z ta˛ jednak różnica, ˛ że wystepuje ˛ tutaj zakłócenie zk = A(q)εk = εk + α1 εk−1 + α2 εk−2 + ... + αn εk−n , które nie jest szumem białym, gdyż jego autokorelacja dla |τ | ≤ n wynosi Ezk zk−τ 6= 0. Po wprowadzeniu rzeczywistego regresora φk = (−yk−1 , −yk−2 , ..., −yk−n , uk , uk−1 , ..., uk−m )T oraz macierzy uogólnionych wejść, wektora T φ1 y1 φT2 y2 YN = ΦN = : , : : : T yN φN równanie pomiarów przyjmuje postać wyjść i zakłóceń , YN = ΦN θ + ZN , ZN = z1 z2 : : zN , 122 7. Układy automatyki z czasem dyskretnym gdzie θ jest niewiadomym wektorem stałych parametrów, a ZN — nieznanym zakłóceniem losowym. Zbyt duża liczba nieznanych wartości uniemożliwia wyliczenie θ. Zauważmy także, że układ równań z pominieciem ˛ zakłóceń YN = ΦN θ, (7.14) jest w ogólności układem sprzecznym. Poszukuje sie˛ zatem takich wartości parametrów, przy których odległość miedzy ˛ wektorami po lewej i prawej stronie równania (7.14) jest najmniejsza. Metodologia taka prowadzi do estymatora metoda˛ najmniejszych kwadratów [16], który przy odwracalności macierzy ΦTN ΦN ma postać a bład ˛ estymacji wynosi b θ = (ΦTN ΦN )−1 ΦTN YN , ∆ = b θ − θ = (ΦTN ΦN )−1 ΦTN YN − θ = = (ΦTN ΦN )−1 ΦTN ΦN θ + (ΦTN ΦN )−1 ΦTN ZN − θ = 1 1 = ( ΦTN ΦN )−1 ΦTN ZN . N N Ponieważ proces wyjściowy jest ergodyczny (jako wyjście obiektu asymptotycznie stabilnego pobudzanego białym szumem [16]), wiec ˛ czynnik 1 T Φ ZN N N → Eφk zk = E −yk−1 : −yk−n uk uk−1 : uk−m zk z prawdopodobieństwem 1, gdy N → ∞. Skorelowanie procesu {zk } powoduje, że Eφk zk 6= 0 i estymator najmniejszych kwadratów, zastosowany do identyfikacji parametrów systemu dynamicznego, może nie być estymatorem zgodnym. Zwiekszanie ˛ liczby pomiarów nie doprowadzi nas do prawdziwych wartości parametrów. W celu pokonania tej trudności, stosuje sie˛ techniki oparte na filtracji zakłóceń lub tzw. metode˛ zmiennych instrumentalnych ([16]). 7.2. Program ćwiczenia 123 Matoda uogólnionych najmniejszych kwadratów — filtracja Kalmana Ponieważ macierz kowariancji zakłóceń T cov(ZN ) = EZN ZN jest dodatnio określona, podlega ona tzw. twierdzeniu o faktoryzacji, które mówi o możliwości znalezienia takiej nieosobliwej macierzy P (tzw. pierwiastka macierzy cov(ZN )), że cov(ZN ) = P · P T . Mnożymy lewostronnie równanie pomiarów przez P −1 P −1 YN = P −1 ΦN θ + P −1 ZN i oznaczamy Y N = P −1 YN , ΦN = P −1 ΦN , Z N = P −1 ZN , otrzymujemy wówczas równanie Y N = ΦN θ + Z N Łatwo można pokazać (np. [16]), że T EZ N Z N = I (I — macierz jednostkowa), a zatem elementy Z N tworza˛ dyskretny biały szum. Uogólniony estymator parametrów metoda˛ najmniejszych kwadratów ma postać T −1 T θ[ GLS = (ΦN ΦN ) ΦN Y N . (7.15) Jest on estymatorem najlepszym spośród wszystkich estymatorów liniowych, gdyż w tej klasie cechuje go minimalna macierz kowariancji. Stosowanie wzoru (7.15) wymaga jednak jednoczesnego (naprzemiennego) modelowania budowy korelacyjnej zakłóceń. Kilka przykładowych metod wykorzystujacych ˛ filtracje˛ zakłóceń prezentuje praca [16]. 7.2. Program ćwiczenia Ćwiczenie laboratoryjne składa sie˛ z nastepuj ˛ acych ˛ etapów: • symulacja prostych systemów dyskretnych, komputerowe wyznaczenie charakterystyk czasowych i porównanie ich z wynikami teoretycznymi; 124 7. Układy automatyki z czasem dyskretnym • badanie stabilności i zastepczej ˛ transmitancji dyskretnej systemów złożonych, w tym Układu Automatycznej Regulacji; • analiza korelacyjna procesu wyjściowego przy pobudzeniu układu białym szumem losowym; • identyfikacja parametrów liniowego systemu dyskretnego metoda˛ najmniejszych kwadratów, na podstawie symulowanych pomiarów wejścia i wyjścia. 7.3. Badania komputerowe 7.3.1. Wyznaczanie odpowiedzi impulsowych, transformacja Z Obliczyć transformate˛ Z najcześciej ˛ spotykanych ciagów, ˛ tj. δ n , 1n , n, 3 n n , a , sin ωn, cos ωn, n sin ωn, itp. Zamodelować w Simulink uzyskane w ten sposób funkcje wymierne zmiennej z i zasymulować dyskretna˛ delte˛ Kroneckera, wydajac ˛ odpowiednie polecenie MATLAB >>u=[0,1,2,3,4,5,6,7,8,9;1,0,0,0,0,0,0,0,0,0]’ W pierwszej kolumnie macierzy u znajduja˛ sie˛ etykiety czasowe, w drugiej — wartości sygnału. Przykładowy schemat układu do badania odpowiedzi impulsowych prostych systemów dyskretnych przedstawiono na rysunku 7.1. n2 , 7.3.2. Identyfikacja Dokonać symulacji systemu typu FIR (o skończonej odpowiedzi impulsowej, ang. Finite Impulse Response), tzn. takiego, w którym A(q) = 1. Zbadać eksperymentalnie asymptotyczne własności estymatora najmniejszych kwadratów. Badania powtórzyć dla systemu typu IIR (o nieskończonej odpowiedzi impulsowej, ang. Infinite Impulse Response). Przykładowy M -skrypt do symulacji, a nastepnie ˛ identyfikacji parametrów elementu FIR w przypadku braku zakłóceń, przedstawiono poniżej: N=20; %liczba pomiarow a=[1 1 1]; %parametry obiektu: y(k)=1*u(k)+1*u(k-1)+1*u(k-2); d=size(a,2); %rzad ruchomej sredniej R=zeros(N,d); %uogolniona macierz wejsc X=zeros(N,1); %wektor pomiarow wyjsc u=rand(N+d-1,1); %proces wejsciowy 7.3. Badania komputerowe Rys. 7.1. Badanie odpowiedzi różnych układów na impuls dyskretny for i=1:N for j=1:d R(i,j)=u(i+d-j,1); X(i,1)=X(i,1)+a(j)*u(i+d-j,1); end; end; oszac=inv(R’*R)*R’*X %oszacowanie wektora parametrow a Wynik działania skryptu jest nastepuj ˛ acy: ˛ >>oszac= >> 1.00000 >> 1.00000 >> 1.00000 Pokazuje on odpowiedź impulsowa˛ symulowanego systemu. 125 126 7. Układy automatyki z czasem dyskretnym 7.3.3. Przykładowe wyniki symulacji komputerowej Na rysunkach 7.2 i 7.3 przedstawiono uzyskane w MATLAB i wykreślone za pomoca˛ funkcji stem(), wyjście systemu o transmitancji K(z) = z , z − 12 pobudzonego sygnałem {δ n−5 } i odpowiednio {1n−5 }. Na rysunku 7.4 pokazano odpowiedź systemu o transmitancji KZ (z) = na pobudzenie {δ n−5 } . z sin 10 = b sin 10 n z 2 − 2z cos 10 + 1 7.3.4. Badanie stabilności Stosujac ˛ znane kryteria, zbadać stabilność nastepuj ˛ acych ˛ systemów: • opisanego równaniem różnicowym yk = ayk−1 + uk ; • o transmitancji K(z) = z2 1 ; + az + 1 • o transmitancji K(z) = az 2 1 ; +z+1 w zależności od parametru a. Dokonać komputerowej symulacji odpowiedzi systemów na skok jednostkowy. 7.3.5. Systemy złożone Wybrane dwa proste systemy dyskretne połaczyć ˛ szeregowo, a nastepnie ˛ równolegle. Wyznaczyć analitycznie charakterystyki czasowe systemów złożonych i Dyskretnego Układu Automatycznej Regulacji — DUAR. Porównać je z wynikami badań komputerowych. Badania powtórzyć dla układu ze sprze˛ żeniem zwrotnym (np. z rys. 7.5). 7.3. Badania komputerowe Rys. 7.2. Odpowiedź impulsowa elementu autoregresyjnego pierwszego rzedu ˛ Rys. 7.3. Odpowiedź na skok dyskretny 127 128 7. Układy automatyki z czasem dyskretnym Rys. 7.4. Odpowiedź systemu typu „dyskretna sinusoida” Rys. 7.5. (a) System ze sprze˛ żeniem zwrotnym; (b) badanie autokorelacji wyjścia systemu pobudzanego procesem losowym 7.4. Przykład praktyczny — filtracja dźwieku ˛ 129 7.3.6. Analiza korelacyjna procesu wyjściowego Dla wybranej transmitancji systemu wyznaczyć odpowiedź impulsowa. ˛ Nastepnie ˛ zasymulować proces wejściowy typu „biały szum” o rozkładzie jednostajnym, znanej postaci u ∼ U [−c, c] (c — znane). Obliczyć analitycznie wartość oczekiwana, ˛ wariancje˛ i funkcje˛ autokorelacji procesu wyjściowego. Zbudować układ z rysunku 7.5b zawierajacy ˛ generator liczb pseudolosowych o rozkładzie jednostajnym. Proces wyjściowy {yk } poddać analizie korelacyjnej za pomoca˛ skryptu: %––––––––––skrypt komputerowy [c_y,lags] = xcorr(y,10,’coeff’); stem(lags,c_y) %–––––––––– Porównać wynik analizy teoretycznej i symulacji komputerowej. 7.4. Przykład praktyczny — filtracja dźwieku ˛ Podstawowe prawo teorii informacji mówi [10], że aby sygnał z czasem ˛ móc jedciagłym ˛ s(t) o ograniczonym (z góry) przez fg paśmie czestotliwości noznacznie (dokładnie) odtworzyć z pomiarów {sn } w dyskretnych chwilach czasu, należy go próbkować z czestotliwości ˛ a˛ fp równa˛ co najmniej fp = 2fg . W zastosowaniach audiowizualnych Windows (pliki typu wav ) przyjmuje sie˛ np. zakres słyszalności fg = 22 kHz. Pobiera sie˛ zatem 44 tys. próbek w ciagu ˛ ˛ sekundy. Sygnał dźwiekowy ˛ jest przechowywany w formie cyfrowej {sn } (ciag liczb), co ma wiele zalet, np.: odporność na zakłócenia, możliwość szybkiego kopiowania, czy efektywna˛ kompresje˛ (pliki typu mp3 ). Nowoczesna˛ dziedzina˛ zastosowań jest przetwarzanie sygnału na poziomie jego reprezentacji cyfrowej. Cyfrowa filtracja dźwieku ˛ polega na transferze sygnału {sn } przez odpowiednio zaprojektowany liniowy obiekt dynamiczny i odtworzeniu na podstawie 0 ˛ tak otrzymanego ciagu ˛ {sn } — sygnału wyfiltrowanego s0 (t) z czasem ciagłym. 7.5. Podsumowanie Celem badań prowadzonych w ćwiczeniu było poznanie komputerowych technik w zagadnieniach: 130 7. Układy automatyki z czasem dyskretnym — wyznaczaniu standardowych odpowiedzi czasowych systemów dyskretnych; — identyfikacji parametrów liniowych systemów dynamicznych z czasem dyskretnym przy wystepowaniu ˛ zakłóceń losowych na wyjściu; — badaniu stabilności systemów dyskretnych; — wyznaczaniu funkcji autokorelacji procesu wyjściowego obiektu pobudzanego białym szumem. Szybki wzrost wydolności obliczeniowej komputerów, spowodował w ostatnich latach burzliwy rozwój teorii cyfrowego przetwarzania sygnałów, a zwłaszcza: projektowania filtrów cyfrowych i analogowych, efektywnych metod obliczania transformat itp. W konsekwencji wyniki analizy systemów dyskretnych znajduja˛ powszechne zastosowanie w wielu dziedzinach, przede wszystkim w telekomunikacji i medycynie. Zainteresowanym czytelnikom szczególnie jest polecana, w celu poszerzenia wiadomości z tego zakresu, monografia [10]. W nowoczesnych rozwiazaniach ˛ zwiazanych ˛ z modelowaniem systemów rzeczywistych, przedstawiony we wprowadzeniu system o ogólnym opisie y(t) ≈ F(u(t − τ )), gdzie τ = 0...∞ aproksymuje sie˛ strukturami połaczeń ˛ liniowych obiektów dynamicznych i nieliniowych obiektów statycznych (tzw. strukturami blokowymi). Do najpopularniejszych modeli blokowo-zorientowanych należa˛ połaczenia ˛ kaskadowe filtrów liniowych i statycznych nieliniowości, tzw. systemy Hammersteina i Wienera. Zastosowanie takich struktur umożliwia jednoczesne modelowanie nieliniowej natury zjawiska i jego dynamiki. 131 Literatura [1] Amborski K., Marusak A., Teoria sterowania w ćwiczeniach, PWN, Warszawa, 1978. [2] Brzózka J., Ćwiczenia z automatyki w Matlabie i Simulinku, Wydawnictwo Mikom, Warszawa, 1997. [3] Brzózka J., Regulatory i układy automatyki, Wydawnictwo Mikom, Warszawa, 2004 [4] Findeisen W., Technika regulacji automatycznej, PWN, Warszawa, 1969. [5] Greblicki W., Teoretyczne podstawy automatyki, Oficyna Wydawnicza Politechniki Wrocławskiej, Wrocław, 2001. [6] Jury E., Przekształcenie Z i jego zastosowania, WNT, Warszawa, 1970. [7] Kaczorek T., Teoria sterowania i systemów, PWN, Warszawa, 1999. [8] Kasprzyk J., Identyfikacja procesów, Wydawnictwo Politechniki Ślaskiej, ˛ Gliwice, 2002. [9] Kiełbasiński A., Schwetlick H., Numeryczna algebra liniowa: wprowadzenie do obliczeń zautomatyzowanych, WNT, Warszawa, 1994. [10] Kwiatkowski W., Wstep ˛ do cyfrowego przetwarzania sygnałów, Wojskowa Akademia Techniczna, Warszawa, 2003. [11] Mazurek J., Vogt H., Żydanowicz W., Podstawy automatyki, Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa, 2002. [12] Mikulski J., Podstawy automatyki — liniowe układy regulacji, Wydawnictwo Politechniki Ślaskiej, ˛ Gliwice, 2001. [13] Mrozek B., Mrozek Z., Matlab i Simulink. Poradnik użytkownika, Wydawnictwo Helion, Gliwice, 2004. [14] Ogata K., Modern control engineering, 4th Edition, Prentice-Hall, New Jersey, 2002. 132 Literatura [15] Pełczewski W., Teoria sterowania. Ciagłe ˛ stacjonarne układy liniowe, WNT, Warszawa, 1980. [16] Söderström T., Stoica P., Identyfikacja systemów, WNT, Warszwa, 1997. [17] Thaler G. J., Pastel M. P., Nieliniowe układy automatycznego sterowania — analiza i projektowanie, WNT, Warszawa, 1965. [18] Wiszniewski A. i in., Podstawy automatyki. Ćwiczenia laboratoryjne, Oficyna Wydawnicza Politechniki Wrocławskiej, Wrocław, 2000. [19] Zalewski A., Cegieła R., Matlab — obliczenia numeryczne i ich zastosowania, Wydawnictwo Nakom, Poznań, 1997. [20] Żuchowski A., Metoda doboru nastaw regulatora PID uwzgledniaj ˛ aca ˛ postulowany zapas stabilno´sci modułu i fazy, Pomiary Automatyka Kontrola, str. 11—13, Nr 1/2004. [21] Materiały pomocnicze na stronie http://diuna.ict.pwr.wroc.pl/grmz. Indeks Astatyzm UAR, 80 Autokorelacja, 118 Charakterystyka amplitudowo-fazowa, 66 Charakterystyka Bodego, 66 Charakterystyka czasowa, 25 Czas regulacji, 95 DUAR — dyskretny UAR, 126 Funkcja opisujaca, ˛ 104 Obserwowalność, 29 Odpowiedź impulsowa, 30 Odpowiedź skokowa, 30 Osiagalność, ˛ 29 Przeregulowanie, 93 Przestrzeń stanów, 27 Równanie różnicowe, 111 Równanie różniczkowe, 26 Simulink, 16 Splot, 9 Stabilność, 48 Stabilność systemu dyskretnego, 115 Statyzm UAR, 80 Sterowalność, 29 Identyfikacja, 31 Identyfikacja systemu dyskretnego, 119 ISE — całkowy bład ˛ kwadratowy, 94 Kryterium Hurwitza, 51 Kryterium Jury’ego, 117 Kryterium Nyquista, 51 Transmitancja operatorowa, 25 Transmitancja widmowa, 65 UAR — układ automatycznej regulacji, 45 Linie pierwiastkowe, 52 Losowe pobudzenie, 118 Zasada superpozycji, 9 Zapas amplitudy, 69 Zapas fazy, 69 M-skrypt, 14 MATLAB, 11 Metoda najmniejszych kwadratów, 122 Metody Zieglera—Nicholsa, 96 Nada˛żność UAR, 83 Nieliniowy UAR, 105 133