Podstawy automatyki Wykład 2: algorytmy sterowania
dr inż. Przemysław Zakrzewski
Instytut Informatyki
Politechnika Poznańska
przemyslaw.zakrzewski@cs.put.poznan.pl
Plan wykładu
• Sterowanie:
✓ sygnał analogowy (ciągły), dyskretny i cyfrowy,
✓ obiekt sterowania,
✓ układ otwarty,
✓ układ zamknięty – układ automatycznej regulacji UAR.
• Opis dynamiki układów:
✓ równania różniczkowe,
✓ równania różnicowe.
• Algorytmy sterowania:
✓ regulatory klasyczne typu: P, I, PI, PD, PID,
✓ wskaźniki jakości.
• Implementacja UAR.
f(t)
t 0
Sterowanie: sygnał analogowy (ciągły)
Oznaczenia:
f(t) – sygnał analogowy (ciągły), t – czas [s].
T
p0 1 t = nT
pf(nT
p) f(t)
Sterowanie: sygnał dyskretny
Oznaczenia:
f(t) – sygnał analogowy (ciągły), f(nTp) – sygnał dyskretny, t – czas [s], n – chwila próbkowania, Tp– okres próbkowania [s].
t = nT
p0 T
p0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
f(nT
p) f(t)
1
Sterowanie: sygnał cyfrowy
Oznaczenia:
f(t) – sygnał analogowy (ciągły), f(nTp) – sygnał cyfrowy, t – czas [s], n – chwila próbkowania, Tp– okres próbkowania [s].
Sterowanie: obiekt sterowania
Zmienne procesowe:
h(t) – poziom substancji w zbiorniku [m], Qd(t) – natężenie dopływu [m3/s], Qo(t) – natężenie odpływu [m3/s].
Parametry:
A – pole powierzchni przekroju porzecznego zbiornika [m2].
Q
o(t) Q
d(t)
A
h(t)
Sterowanie: układ otwarty
Zmienne procesowe:
h(t) – poziom substancji w zbiorniku [m], h*(t) – wartość zadana poziomu substancji w zbiorniku [m], Qd(t) – natężenie dopływu [m3/s], u(t) – wielkość sterująca (np. natężenie prądu, napięcie).
Regulator
h
*(t) Urządzenie h(t)
wykonawcze Zbiornik
u(t) Q
d(t)
Obiekt sterowania
Obiekt sterowania
Regulator
h
*(t) Urządzenie h(t)
wykonawcze Zbiornik
Urządzenie pomiarowe
e(t) u(t) Q
d(t)
h
p(t)
Sterowanie: układ zamknięty – UAR
Zmienne procesowe:
e(t) – uchyb regulacji [m], h(t) – poziom substancji w zbiorniku [m], h*(t) – wartość zadana poziomu substancji w zbiorniku [m], hp(t) – wartość zmierzona poziomu substancji w zbiorniku [m], Qd(t) – natężenie dopływu [m3/s], u(t) – wielkość sterująca (np. natężenie prądu, napięcie).
Opis dynamiki układów: równania różniczkowe
f(t)
t 0
f(t
1) f(t
2)
t
1t
2Δt Δf(t)
Iloraz różnicowy:
∆𝑓 𝑡
∆𝑡 = 𝑓 𝑡 2 − 𝑓 𝑡 1 𝑡 2 − 𝑡 1 Pochodna funkcji:
𝑑𝑓 𝑡
𝑑𝑡 = lim
∆𝑡→0
∆𝑓 𝑡
∆𝑡 𝑑𝑓 𝑡
𝑑𝑡 = lim
∆𝑡→0
𝑓 𝑡 1 + ∆𝑡 − 𝑓 𝑡 1
∆𝑡
Zmienne procesowe:
h(t) – poziom substancji w zbiorniku [m], Qd(t) – natężenie dopływu [m3/s], Qo(t) – natężenie odpływu [m3/s].
Parametry:
A – pole powierzchni przekroju porzecznego zbiornika [m2], β – współczynnik wypływu [m5/2/s].
Q
o(t) Q
d(t)
A
h(t)
Opis dynamiki układów: równania różniczkowe
Bilans masy całkowitej:
𝐴 𝑑ℎ 𝑡
𝑑𝑡 = 𝑄 𝑑 𝑡 − 𝑄 𝑜 𝑡 Odpływ swobodny:
𝑄 𝑜 𝑡 = 𝛽 ℎ 𝑡 𝐴 𝑑ℎ 𝑡
𝑑𝑡 + 𝛽 ℎ 𝑡 = 𝑄 𝑑 𝑡
f(nT
p)
nT
p0
f(n) f(n+1)
n n+1
T
pΔf(n)
Iloraz różnicowy:
∆𝑓 𝑛
𝑇 𝑝 = 𝑓 𝑛 + 1 − 𝑓 𝑛 𝑇 𝑝
Pochodna funkcji:
𝑑𝑓 𝑡
𝑑𝑡 ≡ ∆𝑓 𝑛 𝑇 𝑝
Opis dynamiki układów: równania różnicowe
Parametry:
Tp– okres próbkowania [s].
Zmienne procesowe:
h(n) – poziom substancji w zbiorniku [m], Qd(n) – natężenie dopływu [m3/s], Qo(n) – natężenie odpływu [m3/s].
Parametry:
A – pole powierzchni przekroju porzecznego zbiornika [m2], β – współczynnik wypływu [m5/2/s].
Q
o(n) Q
d(n)
A
h(n)
Opis dynamiki układów: równania różnicowe
Bilans masy całkowitej:
𝐴 ∆ℎ 𝑛
𝑇 𝑝 = 𝑄 𝑑 𝑛 − 𝑄 𝑜 𝑛 Odpływ swobodny:
𝑄 𝑜 𝑛 = 𝛽 ℎ 𝑛 𝐴 ∆ℎ 𝑛
𝑇 𝑝 + 𝛽 ℎ 𝑛 = 𝑄 𝑑 𝑛
• Równanie różnicowe:
𝐴 ∆ℎ 𝑛
𝑇 𝑝 + 𝛽 ℎ 𝑛 = 𝑄 𝑑 𝑛
• Rozwiązanie równania różnicowego – rekurencja:
൞
ℎ 0 = ℎ 0 ℎ 𝑛 + 1 = 1
𝐴 −𝛽 ℎ 𝑛 + 𝑄 𝑑 𝑛 𝑇 𝑝 + ℎ 𝑛
Opis dynamiki układów: równania różnicowe
Algorytm pozycyjny:
𝑢 𝑛 = 𝑘 𝑝 𝑒 𝑛 Algorytm przyrostowy:
∆𝑢 𝑛 = 𝑢 𝑛 − 𝑢 𝑛 − 1
∆𝑢 𝑛 = 𝑘 𝑝 ∆𝑒 𝑛
Algorytmy sterowania: regulator typu P
Nastawy regulatora:
kp– wzmocnienie regulatora [-], Tp– okres próbkowania [s].
u(n)
nT
p0
e(n)
k
p1
Algorytm pozycyjny:
𝑢 𝑛 = 𝑇 𝑝 𝑇 𝑖
𝑘=0 𝑛
𝑒 𝑘 Algorytm przyrostowy:
∆𝑢 𝑛 = 𝑢 𝑛 − 𝑢 𝑛 − 1
∆𝑢 𝑛 = 𝑇 𝑝
𝑇 𝑖 𝑒 𝑛
Algorytmy sterowania: regulator typu I
Nastawy regulatora:
Ti– stała całkowania [s], Tp– okres próbkowania [s].
u(n)
nT
p0
e(n)
T
i1
Algorytm pozycyjny:
𝑢 𝑛 = 𝑘 𝑝 𝑒 𝑛 + 𝑇 𝑝 𝑇 𝑖
𝑘=0 𝑛
𝑒 𝑘 Algorytm przyrostowy:
∆𝑢 𝑛 = 𝑢 𝑛 − 𝑢 𝑛 − 1
∆𝑢 𝑛 = 𝑘 𝑝 ∆𝑒 𝑛 + 𝑇 𝑝
𝑇 𝑖 𝑒 𝑛
Algorytmy sterowania: regulator typu PI
Nastawy regulatora:
kp– wzmocnienie regulatora [-], Ti– czas zdwojenia [s], Tp– okres próbkowania [s].
u(n)
nT
p0
e(n)
1 k
pI
P
Algorytmy sterowania: regulator typu PI
Nastawy regulatora:
kp– wzmocnienie regulatora [-], Ti– czas zdwojenia [s], Tp– okres próbkowania [s].
u(n)
nT
p0
e(n)
T
i1
k
p2k
pI
P
Czas zdwojenia:
𝑇 𝑖 = 𝑛 𝑖 𝑇 𝑝
takie, że:
𝑢 𝐼 𝑛 𝑖 = 𝑢 𝑃 𝑛 𝑖
dla:
𝑒 𝑛 = 𝟏 𝑛
Algorytm pozycyjny:
𝑢 𝑛 = 𝑘 𝑝 𝑒 𝑛 + 𝑇 𝑑
𝑇 𝑝 ∆𝑒(𝑛) Algorytm przyrostowy:
∆𝑢 𝑛 = 𝑢 𝑛 − 𝑢 𝑛 − 1
∆𝑢 𝑛 = 𝑘 𝑝 ∆𝑒 𝑛 + 𝑇 𝑑
𝑇 𝑝 ∆ 2 𝑒 𝑛
Algorytmy sterowania: regulator typu PD
Nastawy regulatora:
kp– wzmocnienie regulatora [-], Td– czas wyprzedzenia [s], Tp– okres próbkowania [s].
u(n)
nT
p0
e(n)
1 k
pD
P
Algorytmy sterowania: regulator typu PD
Nastawy regulatora:
kp– wzmocnienie regulatora [-], Td– czas wyprzedzenia [s], Tp– okres próbkowania [s].
Czas wyprzedzenia:
𝑇 𝑑 = 𝑛 𝑑 𝑇 𝑝
takie, że:
𝑢 𝐷 𝑛 𝑑 = 𝑢 𝑃 𝑛 𝑑
dla:
𝑒 𝑛 = 𝑡 ∙ 𝟏 𝑛
u(n)
nT
p0
e(n)
T
dk
pD
P
Algorytm pozycyjny:
𝑢 𝑛 = 𝑘 𝑝 𝑒 𝑛 + 𝑇 𝑝 𝑇 𝑖
𝑘=0 𝑛
𝑒 𝑘 + 𝑇 𝑑
𝑇 𝑝 ∆𝑒(𝑛) Algorytm przyrostowy:
∆𝑢 𝑛 = 𝑢 𝑛 − 𝑢 𝑛 − 1
∆𝑢 𝑛 = 𝑘 𝑝 ∆𝑒 𝑛 + 𝑇 𝑝
𝑇 𝑖 𝑒 𝑛 + 𝑇 𝑑
𝑇 𝑝 ∆ 2 𝑒 𝑛
Algorytmy sterowania: regulator typu PID
Nastawy regulatora:
kp– wzmocnienie regulatora [-], Td– czas wyprzedzenia [s], Ti– czas zdwojenia [s], Tp– okres próbkowania [s].