← Spis treści / Index EN

Krok 5: odpowiedź częstotliwościowa, wykres Bodego i marginesy stabilności, od animacji ręki z ciężarkiem do marginesów funkcji pętli.

CDSSC · Krok 5 · ostatni krok powtórki przed blokiem Fundamentos de Realimentación
Frequency response and Bode plots (respuesta en frecuencia, diagrama de Bode)

Do tej pory pytaliśmy: co zrobi układ, gdy na wejściu nagle pojawi się skok? Tutaj zadajemy inne pytanie: co zrobi, gdy będziemy go rytmicznie bujać, raz wolno, raz szybko? Idziemy powoli, po jednym kroku:

1 Bujanie ciężarka · 2 Z pomiarów do wykresu · 3 Dlaczego s = jω · 4 Decybele · 5 Klocki · 6 Bode krok po kroku · 7 Pasmo i garb · 8 Plac zabaw · 9 Marginesy · 10 Pięć zastosowań · 11 Pułapki · 12 MATLAB · 13 Sprawdź się · 14 Podsumowanie

1 · Bujanie ciężarka na gumce

Trzymasz w ręce gumkę, na której wisi ciężarek. Ruszasz ręką w górę i w dół w stałym rytmie. Wejście to ruch ręki u(t), wyjście to ruch ciężarka y(t). Zmień rytm suwakiem (albo kliknij pomarańczowy znacznik pod nim) i patrz, co robi ciężarek. Po każdej zmianie odczekaj kilka sekund: ciężarek potrzebuje chwili, żeby się „dostroić”.

rytm ręki
ręka (wejście u)ciężarek (wyjście y)prawa część: ostatnie 8 sekund, najnowsze z prawej

Co widać przy trzech rytmach:

„Własny rytm”? Przecież ciężarek sam się nie buja. Prawda, ktoś musi zacząć ruch. Chodzi o dwie różne sytuacje: Rezonans (resonancia) = drgania wymuszone trafiają w tempo drgań swobodnych. Każde pchnięcie idzie wtedy z ruchem, więc energia sumuje się cykl po cyklu. Jak dzwon: uderzysz raz i dzwoni swoim tonem, to jest ton, który „lubi”.

Najważniejsze: w każdym przypadku ciężarek, po chwili, drga w tym samym rytmie co ręka. Zmieniają się tylko dwie liczby, każda ma swój symbol matematyczny:

1. Moduł (módulo, ganancia)
|G(j\omega)|=\frac{\text{amplituda }y}{\text{amplituda }u}
Pionowe kreski |\ | znaczą „wielkość”. Ręka ±1 cm, ciężarek ±3 cm → |G|=3. Czym jest samo G(j\omega), wyjaśnia część 3; na razie czytaj to jako „odpowiedź układu przy rytmie ω”.
2. Faza (fase)
\varphi=\angle G(j\omega)=-\frac{\text{spóźnienie}}{\text{okres}}\cdot 360^\circ
Znak kąta \angle (albo litera \varphi, fi) znaczy „kąt”. Cały okres = 360°. Spóźnienie o ćwierć okresu → \varphi=-90^\circ (minus, bo to spóźnienie).
Dlaczego rytm się nie zmienia? Zaraz po zmianie rytmu ciężarek robi dwie rzeczy naraz: drga swoim własnym ruchem (to gaśnie, bo gumka i powietrze hamują) i drga w rytmie ręki (to zostaje, bo ręka cały czas pcha). Po chwili zostaje tylko rytm ręki. Na slajdach to SS-07 p.14, dolny rząd: „entrada sinusoidal” → najpierw „transitorio”, potem „régimen permanente”, czyli stan ustalony. Układ liniowy umie sygnał tylko pomnożyć i opóźnić, nie umie zmienić jego rytmu.
Spróbuj sam. Ręka rusza się ±2 cm, ciężarek ±6 cm i spóźnia się o ćwierć okresu. Ile wynosi moduł, a ile faza?

2 · Z pomiarów do wykresu Bodego

Wyobraź sobie eksperyment: ustawiasz rytm, czekasz, aż ciężarek się ustali, i zapisujesz |G| oraz \varphi. Potem następny rytm. Jeśli narysujesz te pomiary, dostajesz wykres Bodego (diagrama de Bode). Zawsze ma dwa piętra, jedno pod drugim:

Rytm \omega (omega) to „radiany na sekundę”. Jeden pełny ruch w górę i w dół to 2\pi radianów, więc \omega=2\pi f, gdzie f to liczba ruchów na sekundę (Hz).

Stanowisko pomiarowe. Po lewej ten sam ciężarek (mniejszy), z własnym suwakiem rytmu. Po prawej Twoje pomiary. Ustaw rytm, poczekaj, aż wahania ciężarka przestaną się zmieniać, kliknij „zapisz”.

rytm
animacja
moduł |G|: ile razy ciężarek rusza się więcej niż ręka
moduł
faza ∠G: spóźnienie ciężarka w stopniach
faza
Twoje pomiarypełna krzywa|G| = 1 (kreski)
Zapisz kilka punktów (wolno, rezonans, szybko), a potem kliknij „pokaż pełną krzywą”. Krzywa przechodzi przez Twoje pomiary: wykres Bodego to po prostu wszystkie takie pomiary naraz.

3 · Liczenie zamiast mierzenia: dlaczego s = jω

Nie chcemy za każdym razem budować eksperymentu. Mamy model układu: transmitancję G(s) (función de transferencia), czyli ułamek z s. Pytanie tej części: co wstawić za s, żeby dostać |G| i \varphi dla rytmu \omega? Najpierw musimy wiedzieć, co znaczy s.

Krok A: każdy sygnał ma swoje s

Sygnały w tym kursie są zbudowane z jednej cegiełki, wykładnika e^{st}, gdzie s=\sigma+j\omega to liczba zespolona. Rozbij go na dwa czynniki:

e^{st}=e^{(\sigma+j\omega)t}=\underbrace{e^{\sigma t}}_{\text{wielkość: rośnie albo gaśnie}}\cdot\underbrace{e^{j\omega t}}_{\text{obrót: rytm}}
sygnałzbudowany zjego sσco robi
skok 1e^{0t}00stała
e^{-2t}e^{-2t}−2−2gaśnie, bez bujania
\sin 3t\dfrac{e^{3jt}-e^{-3jt}}{2j}±3j0buja się bez końca, ta sama wysokość
e^{-0.5t}\sin 3te^{(-0.5\pm3j)t}−0.5 ± 3j−0.5buja się i gaśnie (dzwon po uderzeniu)
e^{0.3t}\sin 3te^{(0.3\pm3j)t}0.3 ± 3j+0.3buja się i rośnie (niestabilny)

Dlaczego więc sinus ma σ = 0? Bo sinus składa się tylko z części obrotowej e^{\pm j\omega t}, bez czynnika e^{\sigma t} z przodu. Wszystko, co ma rosnącą albo gasnącą kopertę (uderzony dzwon, niestabilne drgania), ma \sigma\ne0. Te wartości s to dokładnie bieguny transformaty Laplace'a każdego sygnału: SS-04 p.12, \mathcal{L}\{\sin\omega t\}=\dfrac{\omega}{s^2+\omega^2} ma bieguny w \pm j\omega.

Pobaw się sigmą dla sygnału e^{\sigma t}\cos 3t:

σ (rośnie / gaśnie)
sygnał e^{σt}·cos(3t) i jego koperta
sygnał
sygnałkoperta ±e^{σt} (kreski)linia zera
Spróbuj sam. Jakie s ma sygnał e^{-3t}\cos 2t? Podaj σ i ω (dodatnie).
Uwaga: dwa różne rodzaje s. Nie mieszaj ich. Czyli „σ = 0” dotyczy wejścia, a nie układu. Układ nie staje się przez to krytycznie tłumiony (to ζ = 1, cecha samego układu). Pobujaj słabo tłumiony ciężarek i dobrze tłumiony tym samym czystym sinusem: wejście jest takie samo, wykresy Bodego są różne. Wyobraź sobie samochód na stole wibracyjnym: stół rusza się czystymi sinusami, a własne amortyzatory samochodu decydują, jak mocno nadwozie podskakuje przy każdym rytmie.
Najważniejszy ruch tego kroku
W odpowiedzi częstotliwościowej wejście to czysty sinus, a czysty sinus ma \sigma=0. Dlatego zawsze podstawiamy:
s=j\omega\qquad\Longrightarrow\qquad G(j\omega)
G(j\omega) to jedna liczba zespolona dla każdego rytmu \omega. Jej długość to moduł |G(j\omega)|, a jej kąt to faza \angle G(j\omega). Wtedy wyjście w stanie ustalonym to:
u=\sin(\omega t)\ \ \Rightarrow\ \ y=|G(j\omega)|\,\sin\big(\omega t+\angle G(j\omega)\big)
Warunek: układ stabilny (jego własne bieguny mają σ < 0, więc ich część gaśnie; inaczej nie ma stanu ustalonego).

Krok B: liczba zespolona jako strzałka

Liczba zespolona z=a+jb to punkt na mapie: a kroków w prawo wzdłuż osi rzeczywistej (Re), b kroków w górę wzdłuż osi urojonej (Im). Rysujemy strzałkę od zera do tego punktu. Ruszaj a i b i patrz na długość i kąt:

a (Re)
b (Im)
mapa liczby z (Re w prawo, Im w górę)
mapa
strzałka zkąt, mierzony od osi +Rea i b (kreski)
\text{długość: }|z|=\sqrt{a^2+b^2}\qquad\text{kąt: }\angle z=\arctan\frac{b}{a}\ \ (\text{dla }a>0)

Długość to Pitagoras na przerywanym trójkącie. Kąt zaczyna się na dodatniej osi Re: strzałka nad nią → kąt dodatni, pod nią → kąt ujemny. Dla a<0 samo \arctan(b/a) trafia do złej połowy; eksplorator pokazuje poprawny kąt (kalkulatory nazywają to atan2).

Spróbuj sam. z=-1+1j. Długość i kąt w stopniach? (Sprawdź suwakami.)

Po co reguła dla ułamków

Prawie każde G(s) to ułamek, np. \dfrac{1}{1+j\omega}. Mianownik 1+j\omega łatwo narysować jako strzałkę. Chcemy więc wiedzieć: jeśli znam strzałkę z, jak wygląda strzałka 1/z? Odpowiedź dają dwa fakty:

  1. Przy mnożeniu dwóch liczb zespolonych długości się mnożą, a kąty dodają: |z_1z_2|=|z_1|\,|z_2|, \angle(z_1z_2)=\angle z_1+\angle z_2.
  2. z\cdot\dfrac1z=1, a liczba 1 to strzałka o długości 1 i kącie 0°.

Więc długości z i 1/z muszą dać razem 1, a ich kąty muszą się zsumować do 0:

\left|\frac{1}{z}\right|=\frac{1}{|z|}\qquad \angle\frac{1}{z}=-\angle z

Sprawdzenie na liczbach: z=1+j ma długość 1.414 i kąt +45°. Odwrotność \dfrac{1}{1+j}=0.5-0.5j ma długość 0.707 = 1/1.414 i kąt −45°. Mnożenie: (1+j)(0.5-0.5j)=0.5-0.5j+0.5j+0.5=1. ✓

Przykład: termometr (układ 1. rzędu, T = 1 s)

Termometr wsadzony do kubka reaguje z opóźnieniem: po skoku temperatury dochodzi do 63 % po czasie T. Jego model i podstawienie:

G(s)=\frac{1}{Ts+1}=\frac{1}{s+1}\quad\xrightarrow{\ s=j\omega\ }\quad G(j\omega)=\frac{1}{1+j\omega}
Po co ten przykład? W części 1 moduł i fazę mierzyłeś (ręka, ciężarek, linijka). Tu te same dwie liczby liczysz ze wzoru, bez eksperymentu.
To nie jest mapa biegunów. Na płaszczyźnie s (mapie biegunów) biegun po prawej znaczy układ niestabilny. Tu rysujemy coś innego: wartość liczby G(j\omega) (i jej mianownika) dla jednego rytmu ω. Te same osie, inne znaczenie: punkt po prawej znaczy tu tylko „dodatnia część rzeczywista tej liczby”. Termometr jest stabilny (jego biegun to −1, po lewej stronie płaszczyzny s).
rytm ω
Szara strzałka: mianownik 1+j\omega (1 w prawo, ω w górę). Niebieska strzałka: G=1/(1+j\omega), odwrotność: krótsza i skierowana w dół o ten sam kąt.
mapa liczb 1 + jω i G(jω)
mapa
mianownik 1 + jωG(jω) = 1/(1 + jω)

Przy \omega=1: mianownik ma długość \sqrt{1^2+1^2}=1.414 i kąt 45°. Więc |G|=1/1.414=0.707 i \angle G=-45^\circ. Ogólnie:

|G(j\omega)|=\frac{1}{\sqrt{1+\omega^2}}\qquad \angle G(j\omega)=-\arctan\omega
ω (rad/s)mianownik|G|fazaco to znaczy
0.11 + 0.1j0.995−5.7°wolne zmiany: termometr nadąża
11 + 1j0.707−45°róg (frecuencia de corte), ω = 1/T
101 + 10j0.0995−84.3°szybkie migotanie: termometr uśrednia
Spróbuj sam. Ten sam termometr, rytm \omega=2 rad/s. Policz |G(j2)| i fazę w stopniach (kalkulator w trybie stopni).

4 · Decybele: wygodniejsza skala modułu

Moduł potrafi się zmieniać od 0.0001 do 1000. Na zwykłej osi małe wartości zlewają się z zerem. Dlatego inżynierowie zapisują moduł w decybelach (decibelios):

|G|_{dB}=20\log_{10}|G(j\omega)|
stosunek |G|dBznaczenie
100+40100 razy większe
10+2010 razy
2+62 razy
10bez zmian
0.707−3„róg”
0.5−6połowa
0.1−2010 razy mniejsze
0.01−40100 razy mniejsze

Dwa powody:

  1. Każde „razy 10” to po prostu „+20 dB”. Wielkie i małe liczby mieszczą się na jednej osi.
  2. Mnożenie zmienia się w dodawanie. Dwa klocki jeden za drugim mnożą się, G=G_1G_2. Logarytm iloczynu to suma logarytmów, a kąty i tak się dodają:
|G_1G_2|_{dB}=|G_1|_{dB}+|G_2|_{dB}
\angle G_1G_2=\angle G_1+\angle G_2

Czyli Bode całego układu = suma krzywych prostych klocków (część 5 i 6).

Przelicznik
stosunek = dB
dB = stosunek

Dekada (década) = ω razy 10, czyli jedna „kratka z liczbą” na osi poziomej. Nachylenie „−20 dB/dek” znaczy: gdy rytm rośnie 10 razy, moduł maleje 10 razy.

Dlaczego 20, a nie 10: decybel dla mocy to 10 log, a moc rośnie jak kwadrat amplitudy, więc dla amplitudy wychodzi 20 log. Definicja z Franklina, rozdz. 6 (bibliografia kursu); slajdy FR-02 używają dB bez wyprowadzenia.

Jak liczyć decybele: przykłady

Z kalkulatorem: przycisk log to \log_{10}. Wpisz stosunek, naciśnij log, pomnóż przez 20.

\begin{aligned}|G|=3:&\quad 20\log_{10}3=20\cdot0.477=9.5\text{ dB}\\ |G|=0.707:&\quad 20\log_{10}0.707=20\cdot(-0.151)=-3.0\text{ dB}\end{aligned}

Bez kalkulatora: rozbij liczbę na iloczyn liczb z tabelki. Mnożenie stosunków = dodawanie dB (to jest cała sztuczka logarytmu).

\begin{aligned}200=2\cdot100\ &\Rightarrow\ +6+40=46\text{ dB}\\ 0.05=0.5\cdot0.1\ &\Rightarrow\ -6-20=-26\text{ dB}\end{aligned}

Z powrotem, z dB na stosunek: rozbij dB na liczby z tabelki i pomnóż ich stosunki. Albo kalkulatorem: 10 do potęgi (dB/20).

26\text{ dB}=20+6\ \Rightarrow\ 10\cdot2=20\qquad\text{(kalkulator: }10^{26/20}=10^{1.3}=19.95\text{)}
Spróbuj sam (bez kalkulatora). Ile dB to stosunek 20? Ile dB to 0.02? Jaki stosunek to 34 dB?
Spróbuj sam. Ile dB to moduł 0.5? Jaki stosunek to +40 dB?

5 · Klocki Bodego

Prawie każde G(s) da się rozłożyć na iloczyn pięciu rodzajów prostych klocków. Każdy klocek ma asymptotę: przybliżenie liniami prostymi, które łatwo narysować ręcznie. Wybierz klocek i pokręć jego parametrem. Niebieska linia = dokładna krzywa, pomarańczowa przerywana = asymptota.

moduł w dB
moduł
faza w stopniach
faza
dokładna krzywaasymptota (kreski)0 dB (kreski)
Reguły asymptot i błędy w rogu pochodzą z Franklina, rozdz. 6. W slajdach nie ma osobnej talii o Bodem (guía docente traktuje go jako wymaganie wstępne).
Spróbuj sam. Biegun \dfrac{1}{0.5s+1}. Gdzie jest róg i ile dB pokazuje asymptota przy \omega=20 rad/s?

6 · Jak narysować Bodego krok po kroku

Przepis na papier, na przykładzie G(s)=\dfrac{100}{s(s+10)} (silnik: napięcie → kąt wału). Klikaj „dalej”: każdy krok dokłada jedną rzecz do wykresu.

moduł w dB
moduł
faza w stopniach
faza
K = 10całka 1/sbiegun, róg 10suma asymptotdokładna krzywa
Spróbuj sam. G(s)=\dfrac{1000}{(s+1)(s+100)}. Doprowadź do postaci Bodego i podaj: poziom na lewo od pierwszego rogu (dB), pierwszy róg, nachylenie między rogami i nachylenie za drugim rogiem.

7 · Pasmo ↔ szybkość, garb ↔ przeregulowanie

Bode mówi też, jak szybko układ odpowie na skok i czy przestrzeli. Dwie definicje:

Pasmo (ancho de banda, ω_BW)
najszybszy rytm, za którym układ jeszcze nadąża: tam, gdzie moduł spada 3 dB poniżej swojego poziomu dla wolnych rytmów (FR-06 p.10, rysunek Franklina 6.5). Słuchawki mają „pasmo przenoszenia” 20 Hz–20 kHz: ciężka membrana ucina wysokie tony.
Garb rezonansowy (cresta de resonancia, Mr)
o ile moduł podskakuje ponad poziom startowy przed opadaniem. To ciężarek z części 1 w rezonansie. Pojawia się, gdy tłumienie ζ (zeta, „siła amortyzatora”) jest małe.

Dlaczego pasmo = szybkość? Ostry skok to mieszanka wszystkich rytmów naraz. Układ z wąskim pasmem ucina szybkie składniki, więc krawędź skoku się zaokrągla i odpowiedź jest wolna.

Porównanie 1: wolny i szybki termometr

Dwa termometry: gruby (T = 1 s) i cienki (T = 0.2 s). Po lewej Bode, po prawej odpowiedź na skok temperatury.

moduł w dB
moduł
faza w stopniach
faza
odpowiedź na skok
skok
Pasmo 5 razy szersze → odpowiedź 5 razy szybsza. Dla układu 1. rzędu \omega_{BW}=1/T i t_s(5\%)=3T, więc t_s=3/\omega_{BW}.

Porównanie 2: trzy amortyzatory

Ta sama sprężyna i masa (\omega_n=5 rad/s, własny rytm), trzy amortyzatory: słaby ζ = 0.1, średni ζ = 0.4, dobry ζ = 0.7.

moduł w dB
moduł
faza w stopniach
faza
odpowiedź na skok
skok
Słaby amortyzator: wysoki garb na Bodem i duże bujanie po skoku (przeregulowanie Mp, sobreoscilación). To ten sam brak hamowania widziany z dwóch stron, więc garb i Mp rosną razem.
Tabela ze wzorów 2. rzędu. Ostatnia kolumna przyda się w części 9 (margines fazy pętli, która po zamknięciu daje ten układ, FR-02 p.13). Dla 2. rzędu czas narastania t_r\approx1.8/\omega_n (Franklin, rozdz. 3, poza slajdami).
Spróbuj sam. Czujnik 1. rzędu ma pasmo 4 rad/s. Ile wynosi jego T i czas ustalania t_s (5 %)?

8 · Plac zabaw: składanie Bodego z klocków

Teraz wszystko naraz. Włączaj klocki, kręć parametrami, porównuj dokładną krzywą z asymptotami i patrz na skok obok. Przyciski na górze ładują gotowe układy.

K
−20 dB/dek, −90°
para ζ
moduł w dB
moduł
faza w stopniach
faza
odpowiedź skokowa tego samego G
skok
dokładnaasymptoty (kreski)pasmo ω_BW0 dB, wartość końcowa (kreski)
Samo zero bez bieguna: Bode da się narysować, skoku nie (licznik wyższego stopnia niż mianownik, taki układ nie istnieje fizycznie).

9 · Marginesy: Bode funkcji pętli L(jω)

Przypomnienie pętli w dwóch zdaniach. W pętli regulacji sygnał robi okrążenie: regulator D → obiekt (plant) G → czujnik H → z powrotem do sumatora, który odejmuje pomiar od celu. Jedno okrążenie to funkcja pętli (función de lazo) L=D\,G\,H, a bieguny pętli zamkniętej leżą tam, gdzie 1+L(s)=0.

Granica stabilności to bieguny na osi urojonej, czyli właśnie s=j\omega. Wtedy 1+L(j\omega)=0, czyli L(j\omega)=-1. Liczba −1 jako strzałka ma długość 1 i kąt −180°:

L(j\omega)=-1\iff |L(j\omega)|=1\ (0\text{ dB})\ \ \text{i}\ \ \angle L(j\omega)=-180^\circ
Mikrofon przy głośniku. Dźwięk robi okrążenie: mikrofon → wzmacniacz → głośnik → powietrze → mikrofon. Jeśli dla jakiegoś tonu okrążenie odwraca go o 180° (a sumator dokłada swój minus, razem pełne 360°, czyli ton wraca „w fazie”) i nie ścisza go (moduł ≥ 1), to po każdym okrążeniu ton jest głośniejszy: pisk. Marginesy mówią, jak daleko jesteś od pisku:
Margines wzmocnienia, MG
(margen de ganancia, FR-02 p.4) Znajdź rytm \omega_f, przy którym faza = −180° (frecuencia de cruce de fase). Odczytaj tam moduł. MG = ile dB brakuje do 0 dB. „O ile możesz jeszcze podkręcić gałkę głośności.”
|L(j\omega_f)|_{dB}+MG=0
Margines fazy, MF
(margen de fase, FR-02 p.5) Znajdź rytm \omega_g, przy którym moduł = 0 dB (frecuencia de cruce de ganancia). Odczytaj tam fazę. MF = ile stopni brakuje do −180°. „Ile dodatkowego opóźnienia zniesie.”
\angle L(j\omega_g)-MF=-180^\circ
Spróbuj sam. Na Bodem pętli: przy \omega_g (moduł 0 dB) faza wynosi −140°. Przy \omega_f (faza −180°) moduł wynosi −8 dB. Podaj MF i MG.

Laboratorium: wzmocnienie regulatora a marginesy

Regulator P to klocek K: przesuwa tylko krzywą modułu w górę, faza stoi. Patrz, jak ωg ucieka w prawo, MF maleje, a bieguny pętli zamkniętej przesuwają się w prawo. Pomarańczowe znaczniki pod suwakiem to wzmocnienia, przy których zmienia się werdykt (MF = 30°, granica stabilności): kliknij jeden i poruszaj suwakiem wokół niego.

wzmocnienie
|L(jω)| w dB
moduł L
∠L(jω) w stopniach
faza L
skok pętli zamkniętej, cel r = 1
skok
bieguny pętli zamkniętej (płaszczyzna s: na prawo od osi Im = niestabilnie)
bieguny
L(jω)MG (odcinek przy ωf)MF (odcinek przy ωg)0 dB i −180° (kreski)|T(jω)|
Do sprawdzenia: piekarnik FR-03 p.7: D = 10 daje MG = 0 dB i MF = 0°, bieguny na osi Im (to samo wychodzi z 1 + L = 0). Ramię robota: Kp = 2.55 → MF ≈ 65°, reguła daje ζ ≈ 0.65, prawdziwe ζ = 0.70. Ramię bez filtra ma MG = ∞ (faza nigdy nie sięga −180°), więc samo P go nie zdestabilizuje. Filtr czujnika 0.05 s ściąga fazę w dół i robi z tego granicę Kp = 15.

Przewodnik: gdzie dokładnie patrzeć, żeby odczytać MF i MG

Silnik z egzaminu praktycznego (L = K·500/(s(s+500))) i piec z FR-03 s. 7. Zielone = zapas fazy MF (margen de fase), czerwone = zapas wzmocnienia MG (margen de ganancia). Pod Bode mała odpowiedź skokowa, żeby widzieć, co liczby znaczą w czasie.

Obiekt
K

Góra: |L| (magnitud). Dół: ∠L (fase). Gruba niebieska = wybrane K, cienkie szare = pozostałe K (faza wspólna dla wszystkich K).

Wcp (|L| = 0 dB)
MF = Pm
Wcg (faza = −180°)
MG = Gm
K max

Powiązanie: odpowiedź skokowa pętli zamkniętej dla tego K

Mały MF = duże przeregulowanie. MG < 0 = krzywa ucieka z wykresu. Przerywana = wartość końcowa.

Przypadki szczególne (kliknij „Pokaż”)

Co widziszCo to znaczy
Wielkość nigdzie nie przecina 0 dBWcp nie istnieje → MF = ∞
Faza nigdzie nie przecina −180°Wcg nie istnieje → MG = ∞, stabilny dla każdego K
Przy −180° wielkość dokładnie na 0 dBMG = 0 dB, MF = 0° → krawędź
Przy −180° wielkość NAD 0 dBMG < 0 dB → niestabilny

MATLAB: margin(L) rysuje to samo, w tytule Gm i Pm. [Gm,Pm,Wcg,Wcp] = margin(L) daje liczby (Gm jako stosunek, mag2db(Gm) w dB). Kilka K naraz: bode(50*G,125*G,1000*G).

10 · Pięć zastosowań obok siebie

Same obiekty (bez pętli), Bode i skok na wspólnych osiach. Przyciski pod tabelą włączają i wyłączają układy. Silnik (całka) po skoku rośnie bez końca, więc jego rampa wychodzi górą poza wykres skoków, zamiast spłaszczać pozostałe krzywe.

moduł w dB
moduł
faza w stopniach
faza
odpowiedź skokowa
skoki

Quiz o pięciu zastosowaniach

11 · Pułapki

dB kontra stosunek. −6 dB to „połowa”, nie „minus sześć razy”. MATLAB margin zwraca Gm jako stosunek: MG_{dB}=20\log_{10}G_m.
rad/s kontra Hz. \omega=2\pi f. Bode w MATLAB domyślnie w rad/s. Zawieszenie „1 Hz” to 6.28 rad/s na wykresie.
Stopnie kontra radiany. Faza na Bodem jest w stopniach, a atan w MATLAB zwraca radiany: używaj atand albo mnóż przez 180/π.
L kontra T. Marginesy czytasz na Bodem pętli otwartej L. Pasmo i garb czytasz na pętli zamkniętej T = L/(1+L). To różne krzywe: |T| ≈ 1 poniżej ωg, |T| ≈ |L| powyżej (FR-02 p.9–16).
Asymptota to nie krzywa. W rogu bieguna prawdziwa krzywa leży 3 dB niżej. Przy ωn pary: -20\log_{10}(2\zeta) względem asymptoty, czyli +14 dB dla ζ = 0.1.
Zawijanie fazy. −270° i +90° to ten sam kąt. MATLAB czasem rysuje skok fazy o 360°. Szukając −180°, patrz na ciągłość krzywej albo ustaw PhaseWrapping na 'off'.
Marginesy na L = D·G·H, nie na G. Regulator i czujnik należą do pętli. Dobre MF samego G nic nie mówi, jeśli D = 50.
Tylko dla L minimalnofazowego (FR-02 p.6). Biegun albo zero po prawej (np. FR-03 p.8, 1/(s-1)): MG/MF dają bzdury, sprawdzaj 1+L=0.
Nazwy w MATLAB odwrotnie niż na slajdach. Wcg = gdzie mierzy się MG (faza −180°, na slajdach \omega_f). Wcp = gdzie mierzy się MF (moduł 0 dB, na slajdach \omega_g). Franklin (FR-06 p.12) pisze \omega_c zamiast \omega_g.

12 · MATLAB

%% Krok 5: Bode i marginesy
s = tf('s');
G = 1/(s+1);                      % termometr, T = 1 s
bode(G), grid on                  % moduł w dB (góra), faza w stopniach (dół), ω w rad/s
[mag,phase,w] = bode(G);          % liczby zamiast obrazka
magdB = 20*log10(squeeze(mag));   % squeeze: bode zwraca tablicę 1x1xN
opts = bodeoptions;
opts.FreqUnits = 'Hz';            % oś w Hz zamiast rad/s
opts.PhaseWrapping = 'off';
bode(G, opts), grid on

%% Marginesy na funkcji pętli L = D*G*H  (FR-03 p.7)
D  = 5;
Gp = 6/((s+1)*(s+2)*(s+3));
L  = D*Gp;
figure, margin(L)                 % Bode + MG, MF i częstotliwości w tytule
[Gm,Pm,Wcg,Wcp] = margin(L)       % Gm to STOSUNEK; Wcg = ωf, Wcp = ωg
GmdB = 20*log10(Gm)

%% Pętla zamknięta: pasmo i skok
T = feedback(L,1);
bandwidth(T)                      % ωab w rad/s (−3 dB poniżej T(0))
figure, bode(L, T), grid on, legend('L','T')
figure, step(T), grid on
linearSystemAnalyzer(L)           % w starszych wersjach: ltiview(L)

13 · Sprawdź się

Z1. Decybele. Ile dB to stosunek amplitud 5? Jaki stosunek to −40 dB?
Z2. Moduł i faza w rogu. G=\dfrac{10}{s+10}. Podaj |G(j10)| w dB i fazę w stopniach.
Z3. Szkic z reguł. G=\dfrac{1000}{s(s+100)}. Podaj wartość asymptoty przy ω = 1 (dB), częstotliwość rogu i nachylenie za rogiem.
Z4. Garb. Para 2. rzędu z \omega_n=5, \zeta=0.1. Jak wysoki garb (dB ponad 0) i przy jakim ω?
Z5. Marginesy piekarnika. L=\dfrac{6D}{(s+1)(s+2)(s+3)}, D = 1. Gdzie faza = −180°, ile wynosi MG i przy jakim D pętla traci stabilność?
Z6. MF → ζ → Mp. Pętla ma MF = 45°. Oszacuj ζ pętli zamkniętej i jej przeregulowanie w %.
Z7. MATLAB. [Gm,Pm,Wcg,Wcp] = margin(L) zwraca Gm = 3.2. Ile to dB i ile razy można podnieść Kp?
Z8. Kp w górę. Pętla ramienia robota, L=K_p\dfrac{20}{s(s+10)}. Podnosisz Kp. Co się dzieje na Bodem?
Z9. Bode → skok. Dwa układy bez garbu: A ma pasmo 2 rad/s, B ma pasmo 20 rad/s. Który skok jest szybszy?
Z10. Gdzie czytać marginesy? Bode obiektu G ma MF = 60°. W pętli jest regulator D = 5 i czujnik H = 1.

14 · Podsumowanie na jednej karcie

Sinus wchodzi, sinus wychodzi (SS-07 p.14, układ stabilny)
\begin{aligned}u&=\sin(\omega t)\\ \Rightarrow\ y_{ss}&=|G(j\omega)|\,\sin\big(\omega t+\angle G(j\omega)\big)\end{aligned}
Decybele
|G|_{dB}=20\log_{10}|G(j\omega)|
Marginesy na funkcji pętli L (FR-02 p.4–5)
|L(j\omega_f)|_{dB}+MG=0
\angle L(j\omega_g)-MF=-180^\circ
Stabilna pętla, gdy MG > 0 i MF > 0 (FR-02 p.6)
\zeta\approx\frac{MF}{100}\qquad \omega_g\le\omega_{ab}<2\,\omega_g
klocekmodułfaza
Kpozioma linia na 20\log K0°
1/s−20 dB/dek, przez 0 dB przy ω = 1−90° zawsze
1/(Ts+1)płasko, od 1/T −20 dB/dek (−3 dB w rogu)0° → −90°, −45° w rogu
Ts+1płasko, od 1/T +20 dB/dek0° → +90°
para 2. rzędupłasko, od \omega_n −40 dB/dek, garb gdy ζ < 0.70° → −180°, −90° przy ωn

15 · Dalej

To był ostatni krok powtórki. Dalej blok Fundamentos de Realimentación: wrażliwość i marginesy odporne (FR-03), błąd ustalony (FR-04), zakłócenia (FR-05), specyfikacje (FR-06).

Źródła: FR-02 p.2–16 (Bode L, MG, MF, ζ ≈ MF/100, ωg ≤ ωab < 2ωg, L kontra T), FR-06 p.10, 12, 16 (specyfikacje na Bodem, rysunki Franklina), FR-03 p.7–10 (piekarnik, obiekt niestabilny, odległość od −1 = 1/|S|), SS-07 p.14 (sinus → stan ustalony), SS-04 p.12 (transformata sinusa), SS-10 (Mp). Spoza slajdów (Franklin, Feedback Control of Dynamic Systems, rozdz. 3 i 6, bibliografia kursu): reguły asymptot, wzory na Mr, ωr, ω_BW, t_r ≈ 1.8/ωn, definicja dB.