Jacek Kabziński
Automatyka i sterowanie
————————————————————————————————————————
2
Automatyka i sterowanie 6 Regulatory
C(s)
P(s)
D(s)
R(s)
Y (s)
E(s)
U(s)
regulator
obiekt
V(s)
3
Automatyka i sterowanie 6 Regulatory
Regulator proporcjonalny
Zapewnia natychmiastową reakcję na zmianę uchybu
Przesuwa w górę lub w dół charakterystykę modułową
układu otwartego, nie zmienia charakterystyki fazowej.
Powoduje zmniejszenie uchybu ustalonego w układach
statycznych.
C(s)=k
c
4
Automatyka i sterowanie 6 Regulatory
Regulator całkujący:
Sygnał sterujący zależy od historii uchybu.
Wprowadza ujemne przesunięcie fazowe!
Może zapewnić astatyzm pierwszego rzędu.
i
sT
)
s
(
C
1
=
i
i
T
j
T
j
)
j
(
C
ω
ω
ω
1
1
−
=
=
i
T
)
j
(
C
ω
ω
1
=
2
π
ω
−
=
))
j
(
C
arg(
∫
=
t
i
d
)
(
e
T
)
t
(
u
0
1
τ
τ
5
Automatyka i sterowanie 6 Regulatory
Regulator PI
0
1
( )
( )
( )
t
c
i
u t
k e t
e
d
T
τ τ
⎡
⎤
=
+
⎢
⎥
⎣
⎦
∫
1
( )
1
c
i
C s
k
sT
⎛
⎞
=
+
⎜
⎟
⎝
⎠
1
( )
1
1( )
c
i
h t
k
t
t
T
⎛
⎞
=
+
⎜
⎟
⎝
⎠
1
( )
1
c
i
k
H s
s
sT
⎛
⎞
=
+
⎜
⎟
⎝
⎠
Cz. całkująca
t
e(t)
u(t)
e(t)
T
i
Cz.
2
1 (
)
( ) 20 log
i
c
i
T
k
L
T
ω
ω
ω
+
=
1
1
i
T
ω
=
ω
( )
( )
2
π
ω
ω
ϕ
−
=
i
T
arctg
−
π
4
−
π
2
ω
2
1 (
)
( ) 20 log
i
c
i
T
k
L
T
ω
ω
ω
+
=
1
1
i
T
ω
=
ω
( )
( )
2
π
ω
ω
ϕ
−
=
i
T
arctg
−
π
4
−
π
2
ω
1
(
)
1
( )
( )
c
c
c
i
i
k
C j
k
k
j
P
jQ
j T
T
ω
ω
ω
ω
ω
⎛
⎞
=
+
=
−
=
+
⎜
⎟
⎝
⎠
Q(
ω
)
P(
ω
)
0
ω
=
∝
ω
=0
k
c
6
Automatyka i sterowanie 6 Regulatory
Regulator różniczkujący:
Regulator PD:
( )
( )
d
d
u t
T
e t
dt
=
d
sT
)
s
(
C
=
d
T
j
)
j
(
C
ω
ω
=
d
T
)
j
(
C
ω
ω
=
[ ]
arg( (
))
2
C j
rad
π
ω
=
(
)
( )
1
c
d
C s
k
sT
=
+
( )
( )
( )
d
c
d dt
u t
k e t
T
e t
=
+
⎡
⎤
⎣
⎦
( )
1( )
( )
c
c d
h t
k t
k T
t
δ
=
+
D
P
PD
t
u(t)
d
T
e(t)
unit ramp
t
0
7
Automatyka i sterowanie 6 Regulatory
Dodatnie przesunięcie fazowe
(
)
( )
1
c
d
C s
k
sT
=
+
(
)
(
)
1
c
d
C j
k
j T
ω
ω
=
+
( )
(
)
d
arctg
T
φ ω
ω
=
D
T
1
π
2
π
4
ω
2
() 20 log
1 (
)
c
d
L
k
T
ω
ω
=
+
1
D
T
ω
=
ω
( )
(
)
d
arctg
T
φ ω
ω
=
D
T
1
π
2
π
4
ω
2
() 20 log
1 (
)
c
d
L
k
T
ω
ω
=
+
1
D
T
ω
=
ω
8
Automatyka i sterowanie 6 Regulatory
Regulator PID:
s
k
s
k
k
)
s
(
C
d
i
p
+
+
=
1
⎥
⎦
⎤
⎢
⎣
⎡
+
+
=
∫
)
t
(
e
dt
d
T
d
)
(
e
T
)
t
(
e
k
)
t
(
u
d
t
i
p
0
1
τ
τ
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
+
+
=
d
i
p
sT
sT
k
)
s
(
C
1
1
)
t
(
e
dt
d
k
d
)
(
e
k
)
t
(
e
k
)
t
(
u
d
t
i
p
+
+
=
∫
0
τ
τ
π
2
−
π
2
1
T T
I
D
ω
1
T
D
1
T
I
ω
T
I
> T
D
π
2
−
π
2
1
T T
I
D
ω
1
T
D
1
T
I
ω
T
I
> T
D
20log k
p
2
1
( ) 20log
20log
1
p
D
I
L
k
T
T
ω
ω
ω
⎛
⎞
=
+
−
+
⎜
⎟
⎝
⎠
( )
(
)
1
arg
D
I
C j
arctg
T
T
ω
ω
ω
⎛
⎞
=
−
⎜
⎟
⎝
⎠
1
(
)
1
p
d
i
C j
k
j T
j T
ω
ω
ω
⎛
⎞
=
+
+
⎜
⎟
⎝
⎠
Q(
ω)
P(
ω)
0
ω=∝
ω=0
k
p
9
Automatyka i sterowanie 6 Regulatory
kp=1, ti=100, td=10,
pid=kp*(1+tf([td 0],[1])+tf([1],[ti 0]))
Transfer function:
1000 s^2 + 100 s + 1
-----------------------------
100 s
bode(pid)
10
Automatyka i sterowanie 6 Regulatory
Kompensator przyśpieszający fazę:
1
1
1
Ts
C( s )
,
Ts
α
α
+
=
<
+
arctg( T ) arctg( T )
ϕ
ω
α ω
=
−
1
max
T
ω
α
=
1
1
1
1
max
max
max
sin
sin
sin
α
ϕ
ϕ
α
α
ϕ
−
−
=
⇒ =
+
+
mniejsze α – większe φ
max
- większe wzmocnienie dla
dużych częstotliwości
kompromis:
60
o
max
ϕ
<
max
ϕ
11
Automatyka i sterowanie 6 Regulatory
>>
alfa=0.4,lead=tf([10 1],[alfa*10 1])
Transfer function:
10 s + 1
--------
4 s + 1
>> alfa=0.1,lead=tf([10 1],[alfa*10 1])
Transfer function:
10 s + 1
--------
s + 1
>> alfa=0.01,lead=tf([10 1],[alfa*10 1])
Transfer function:
10 s + 1
---------
0.1 s + 1
12
Automatyka i sterowanie 6 Regulatory
Kompensator opóźniający fazę:
1
1
1
Ts
C( s )
,
Ts
α
α
α
+
=
>
+
wzmocnienie dla małych częstotliwości, ale niekorzystne
opóźnienie fazy
13
Automatyka i sterowanie 6 Regulatory
beta=5;lag=tf(beta*[10 1],[10*beta 1])
Transfer function:
50 s + 5
--------
50 s + 1
>> beta=10;lag=tf(beta*[10 1],[10*beta 1])
Transfer function:
100 s + 10
----------
100 s + 1
>> beta=100;lag=tf(beta*[10 1],[10*beta 1])
Transfer function:
1000 s + 100
------------
1000 s + 1
14
Automatyka i sterowanie 6 Regulatory
alfa=0.1;beta=10; lead=tf([10 1],[alfa*10 1]);lag=tf(beta*[10 1],[10*beta 1]);ll=lead*lag
Transfer function:
1000 s^2 + 200 s + 10
---------------------
100 s^2 + 101 s + 1
>> alfa=0.05;beta=10; lead=tf([10 1],[alfa*10 1]);lag=tf(beta*[10 1],[10*beta 1]);ll=lead*lag
Transfer function:
1000 s^2 + 200 s + 10
---------------------
50 s^2 + 100.5 s + 1
>> alfa=0.1;beta=100; lead=tf([10 1],[alfa*10 1]);lag=tf(beta*[10 1],[10*beta 1]);ll=lead*lag
Transfer function:
10000 s^2 + 2000 s + 100
------------------------
1000 s^2 + 1001 s + 1
15
Automatyka i sterowanie 6 Regulatory