Control Systems Lab - SC4070: DR - Ir. Alessandro Abate
Control Systems Lab - SC4070: DR - Ir. Alessandro Abate
Control Systems Lab - SC4070: DR - Ir. Alessandro Abate
e-mail: [email protected]
tel: 015 27 85606
(slides modified from the original, drafted by Robert Babu
ska)
Lecture outline
Overview of control design methods.
Continuous vs. discrete time design.
State-feedback control, observers.
Control architectures, nonlinear control.
PID controllers.
Clock
u(t)
A-D
Algorithm
D-A
y(t)
System
Design a continuous-time controller, then make sure that the (digital) computer implementation approximates the continuous-time
controller as well as possible.
Clock
u(t)
A-D
Algorithm
D-A
y(t)
System
Clock
u(t)
{u(t k )}
D-A
y(t)
System
{y(t k )}
A-D
t0
t1
t2
u(t) = u(tk ),
t3
t4
t 5 Time
tk t < tk+1
eAsdsB,
G = ss(A,B,C,D);
h = 0.1;
H = c2d(G,h);
H = c2d(G,h,method);
G = d2c(H);
(a) Nr = 1
0
1
0
0
(b) 1
1
(b) Nr = 2
0
1
0
0
(c)
1
1
(c) Nr = 4
0
1
0
0
(d) 1
1
(d) Nr = 8
0
1
0
0
5
Time
5
Time
(b)
1
0
0
(c)
(d)
1
0
0
5
Time
Time
...
1)Wc1P()
L = place(Phi,Gamma,Po)
p2 = e2h
J=
k=1
% state weighting
% output weighting
Note: the terms observer, estimator, filter are in this context used synonymously
x(k
+ 1) = x(k)
+ u(k)
x(k
+ 1) = x(k)
+ u(k)
x(k
+ 1) = x(k)
+ u(k) + K[y(k) Cx(k)]
x(k
+ 1) = x(k)
+ u(k)
x(k
+ 1) = x(k)
+ u(k) + K[y(k) Cx(k)]
K
-
u(k)
x^(k+1)
1
z
y^(k)
x(k)
C
x(k)
x(k
+ 1) = x(k)
+ u(k) + K y(k) Cx(k)
u(k) = Lx(k)
x(k + 1) L L x(k)
0
KC
e(k)
e(k + 1)
x(k + 1) L L x(k)
0
KC
e(k)
e(k + 1)
Separation principle:
(Closed-loop) Process poles: Ar (z) = det(zI + L)
Observer poles: Ao(z) = det(zI + KC)
Feed-forward (two-degree-of-freedom)
Goal: respond to a reference signal with desired specs.
Replace u(k) = Lx(k)
uc
x
Lc
-L
Observer
Process
Feed-forward (two-degree-of-freedom)
Closed-loop system:
x(k + 1) = ( L)x(k) + Le(k) + Lcuc(k)
e(k + 1) = ( KC)e(k)
y(k) = Cx(k)
Reference
y0
u0
Feedforward
controller
+
+
+
Nonlinear
system
Feedback
controller
Choose x0, y0 or u0 such that 0 = f (x0, u0) and y0 = g(x0, u0) (equilibrium). Linearize the above model:
f
f
(xnl x0) +
(unl u0)
x =
xnl xnl =x0
unl unl =u0
g
ynl y0 =
xnl
g
(xnl x0) +
(unl u0)
unl unl =u0
xnl =x0
f
(xnl x0) +
(unl u0)
unl unl =u0
xnl =x0
g
(xnl x0) +
(unl u0)
unl unl =u0
x f nl=x0
x = Ax + Bu
y = Cx + Du
Nonlinear
system
u
+
-
Linearized
model
+
+
y0
u0
u = unl u0
ynl = y + y0
Alternatively . . .
y0
u0
+
Nonlinear
system
Linearized
model
unl = u + u0
y = ynl y0
u0
+
+
Nonlinear
system
Linearized
model
Linear
controller
Controller
Design parameters
Process
Linear
model
ym
Adaptation
PID tuning
Pole placement
Root locus
Bode diagram
Tuning rules (Ziegler-Nichols, tuning)
G(s) = e
t0s
Kp
(s + 1)
t0
Kc =
, Ti = , Td =
K p( + t0)
2
Reference
Position
controller
Angle
controller
Inverted
pendulum