You are on page 1of 9

Lecture 4: State-space design – output feedback

Input/output pole-placement uc
H ff

• Simple design procedure


xˆ u y
• "Remove" factors in A and B −L ∑ Process

• Shape command signal response


• Example Observer
K
• "Add" factors in R and S
Ac = det( qI − Φ + Γ L) Ao = det( qI − Φ + K C )
• Practical aspects B Ao Bm
y = Hf f uc = H m uc = uc
• More examples Ac Ao Am
• Sensitivity • Choose H f f =
Bm / Am
B / Ac

• Special case Am = Ac
• Watch out for B !

Problem formulation A formal solution


* Process v e
B ( z)
H ( z) = uc
A( z) Ru = Tuc − Sy
u

B x

y
A
* Observer polynomial Ao ( z) stable
* Desired characteristic equation
Acl ( z) = Ac ( z) Ao ( z) Ac controller polynomial, stable A( q) y( k) = B ( q)u( k)
R( q)u( k) = T ( q)uc ( k) − S( q) y( k)
* Controller
Closed loop system Desired input-output relation
R( q)u( k) = T ( q)uc ( k) − S( q) y( k)
BT BT BT t0 B
Causality implies y= uc = =
AR + B S AR + B S Ac Ao Ac
deg R ≥ deg T deg R ≥ deg S
Problem: How to determine R, S, and T ?
Simple pole-placement design Diophantine equation
Data: Model: B ( z)/ A( z), A( z) and B ( z) do not have any com- A( z) X ( z) + B ( z) Y ( z) = C( z)
mon factors. Specifications: Desired closed-loop characteristic
polynomial Acl ( z). Diophantine (Diophantus ( A.D. 300), Aryabhatta, Bezout

Step 1. Find R( z) and S( z) with deg S( z) ≤ deg R( z) such that


A( z) R( z) + B ( z) S( z) = Acl ( z) • Two unknowns, one
equation?!
Step 2. Factor the closed-loop characteristic polynomial as • When has the Diophan-
Acl ( z) = Ac ( z) Ao ( z), where deg Ao ( z) ≤ deg R( z), and choose tine equation a (unique)
solution?
T ( z) = t0 Ao ( z)
• An algebraic digression
where t0 = Ac (1)/ B (1). The control law is
R( q)u( k) = T ( q)uc ( k)− S( q) y( k) [ Ac ( q) y( k) = t0 B ( q)uc ( k)

An algebraic digression Main result


Assume x and y integers Diophantine equation
3x + 2y = 5 A( z) X ( z) + B ( z) Y ( z) = C( z)
Some solutions Theorem
x: −5 −3 −1 1 3 5 7
y: 10 7 4 1 −2 −5 −8
- Solution exists if and only if greatest common factor of A
and B also a factor in C
General solution
x = x0 + 2n n integer - Many solutions. If X 0 and Y0 is a solutions then for arbi-
y = y0 − 3n trary Q
Unique solution if X = X0 + Q B
Y = Y0 − Q A
0 ≤ x < 2 or 0 ≤ y < 3
is also a solution
No solution to - Uniqueness if
4x + 6y = 1
Integers and polynomials are rings deg X < deg B or deg Y < deg A
Compatibility conditions Solution of Diophantine equation
A( z) X ( z) + B ( z) Y ( z) = C ( z)
AR + BS = Ao Ac (a0 zn + ⋅ ⋅ ⋅ + an )( x0 zn−1 + ⋅ ⋅ ⋅ + xn−1 )
Ru = − Sy + Tuc +(b0 zn + ⋅ ⋅ ⋅ + bn )( y0 zn−1 + ⋅ ⋅ ⋅ + yn−1 )
* Causality = c0 z2n−1 + ⋅ ⋅ ⋅ + c2n−1 )
 
deg R ≥ deg S  a0 0 ⋅⋅⋅ 0 b0 0 ⋅⋅⋅ 0 

 
   
deg R ≥ deg T 

 a1 a0 ⋅⋅⋅ 0 b1 b0 ⋅⋅⋅ 0  
  x0   c0 
     
Equality implies no delay in the controller


 .. .. .. .. .. .. .. .. 



 .. 



 .. 




 . . . . . . . .  
 . 
 



 . 


     
* Uniqueness (Minimum degree solution) 
 an−1
 an−2 ⋅⋅⋅ a0 bn−1 bn−2 ⋅ ⋅ ⋅ b0 

 

 xn−1 

 

 cn−1 









 
 = 
 

 an an−1 ⋅⋅⋅ a1 bn bn−1 ⋅ ⋅ ⋅ b1   y0     c


deg S < deg A 

 










n 




 0 an ⋅⋅⋅ a2 0 bn ⋅ ⋅ ⋅ b2 

 

 ..   . 

 
 . 


 
 
 . 
 
 . 



 .. .. .. .. .. .. .. .. 



 
 
 

W


 . . . . . . . .  
 yn−1 c2n−1
 
deg S = deg R = deg T = deg Ao = n − 1 0 0 ⋅⋅⋅ an 0 0 ⋅ ⋅ ⋅ bn
| {z }
deg Ac = n S
Sylvester matrix, Common factors

Cancellation of poles and zeros Design procedure


Why? Why not? Factorize Desired closed-loop characteristic equation
A = A+ A− B = B+ B− A− R̄ + B − S̄ = Ācl = Āc Āo
A+ and B + are “nice” polynomials Minimum degree solution if deg S̄ < deg A− [
Cancellation of A+ and B + implies B + R̄u = A+ T̄uc − A+ S̄y
R = B + R̄ S = A+ S̄ T = A+ T̄ Interpretation  
+ + − −
Acl = AR + B S = A B ( A R̄ + B S̄) = A B Ācl + + A+ T̄ S̄
u= + uc − y
Introduce (quite arbitrarily) B R̄ R̄
Cancel some poles and zeros, and then make the design.
Ac = B + Āc Ao = A+ Āo
The simple case T = t0 Ao
Design equation
BT t0 B + B − Ao t0 B −
= =
A− R̄ + B − S̄ = Ācl = Āc Āo Acl Ac Ao Āc
Practical limitations on B + Separation of disturbance and command resp.
• Don’t cancel all zeros within the unit circle! Compare state-feedback design and feedforward from refer-
ence signal. Desired command signal response
• Avoid zeros on the negative real axis
• Avoid poorly damped zeros Bm
ym = H m uc = uc
Am
• Cancel only in shaded area D
Limitation: Bm = B̄m B − Try the controller
Im
R = Am B + R̄ S = Am A+ S̄ T = B̄m Āo Āc A+
If common factors between Am and Āc , cancel before imple-
D 1
mentation of the controller
Re BT B + B − B̄m Āo Āc A+ B − B̄m Āo Āc
= + − =
AR + B S A A Am B + R̄ + B + B − Am A+ S̄ Am (|A− R̄ {z
+ B − S̄})
Āo Āc

Alternativ formulation Example – Motor


A u ff
B
K ( z − b) z(1 + p1 + p2 )
H ( z) = b < 0! H m ( z) = 2
uc Bm ym

S u fb

u B y ( z − 1)( z − a) z + p1 z + p2
Am R A
Cancels the zero
−1
B + = z − b, B − = K , B̄m = Bm / K , A+ = 1, Ao = 1, and
Āc = Am .
T S A+ B̄m Āo Āc S Control law using A R̄ + B − S̄ = Am , deg S = 1, deg R̄ = 0
u= uc − y= ⋅ uc − y
R R Am B + R̄ R (a) (b)

A+ B̄m A− R̄ + B − S̄

Output

Output
1 1
S B̄m A S
= ⋅ uc − y= uc + ( ym − y)
Am B + R̄ R Am B + R
0 0
Feedforward and feedback Gives the closed loop system 0 5 10 0 5 10
a) h = 0.25, b) h = 1
2 2
Bm

Input

Input
y= uc 1 1

Am 0 0

0 5 10 0 5 10
Time Time
The combined generation of ym and u f f requires great care.
Motor example – No cancellation "Add" factors in R ans S
1 + p1 + p2 z− b v e
H m ( z) = 2
1−b z + p1 z + p2 uc
B + = 1, B − +
= K ( z − b), A = 1, Ac = Am , Ao = z, and Ru = Tuc − Sy
u

B x

y
B̄m = 1K+(p11−+bp)2 A
Control law using AR + B − S = Am Ao , deg S = 1, deg R = 1
u( k) = t0 uc ( k) − s0 y( k) − s1 y( k − 1) − r1 u( k − 1) BT BR BS
x= uc + v− e
(a) (b)
AR + BS AR + BS AR + BS
AT AS AS
u= uc − v− e
Output

Output
1 1
AR + BS AR + BS AR + BS
Note: The same struc- 0
0 5 10
0
0 5 10 • Integrators R = B + R d R̄, R d = ( z − 1)l
ture as for cancellation
• Notch filter S = A+ Sd S̄ where e.g.
2 2
a) h = 0.25, b) h = 1
Input

Input
1 1

0 0
Sd ( z) = z2 − 2z cos ω h + 1
0 5 10 0 5 10
Time Time

Full design algorithm Practical aspects


Data: B / A, Bm / Am , R d , Sd , and Acl * Solution of the Diophantine equation
Step 1: Factor A = A− A+ , B = B − B + , Bm = B − B̄m , * Zero cancellations
Acl = A+ B + Am Ācl * How to choose Ac and Ao ?
Step 2: Solve * Magnitude of u
− − −
A R d R̄ + B Sd S̄ = Ācl deg S̄ = deg A R d − 1 y = Hu Hm
[ u= uc
y = H m uc H
Step 3: Control law
Ru = Tuc − SyR = Am B + R d R̄, S = Am A+ Sd S̄ T = B̄m A+ Ācl * Selection of h ( Ao Ac B + )
ω h = 0.2–0.6
Degree conditions:
deg Am − deg Bm ≥ deg A − deg B = d
* Response to load and noise
deg Acl = (deg AR = deg A + deg S) * Influence of observer polynomial
= 2 deg A + deg Am + deg Rd + deg Sd − 1
Observer polynomial Harmonic oscillator
Consider Process model
0.1 0.2
H ( z) = H m ( z) = ω 02
z−1 z − 0.8 G (s) = ω0 = 1
s2 + ω 02
(a) (b)
1 1
Sampled pulse-transfer operator
(1 − β )( q + 1) B ( q)
Gain

Gain
H ( q) = = β = cos(ω 0 h)
0.1 0.1 q − 2β q + 1
2 A( q)
Specifications (nominal design)
0.01 0.1 1 10 0.01 0.1 1 10
Frequency, rad/s Frequency, rad/s
- No zero cancellation
Ao ( z) = z − α Transmission to x from a) Load v and b) - Ac : s2 + 2ζ ω s + ω 2 = 0 ω = 1.5 ζ = 0.7
Measurement error e - Ao : s2 + 2ζ obsω obs s + ω 2obs ω obs = 3 ζ obs = 0.7
α = 1 (full), α = 0.9 (dashed), α = 0.5 (dash-dotted), α = 0
(dotted) - Sampling interval h = 0.2

Harmonic oscillator cont’d Harmonic oscillator cont’d


Nominal design a) Without, b) With integrator Changing observer dynamics
(a) (b) a) ω obs = 4 b) ω obs = 8
1 1 (a) (b)
Output

Output

1 1

Output

Output
0 0
0 20 40 0 20 40
0 0
0 20 40 0 20 40
Input

Input

2 2
Input

Input
2 2
0 0
0 20 40 0 20 40 0 0
Time Time 0 20 40 0 20 40
Time Time
Harmonic oscillator cont’d Harmonic oscillator cont’d
Changing sampling interval Antialiasing filter 6th order Bessel
Nominal ω obs h = 0.6 a) h = 0.1 b) h = 1 Nominal design gives unstable system
(a) (b) Approximate the filter with a delay and redo the design
1 1
Output

Output
1

Output

Input
2
0 0
0 20 40 0 20 40
0
0
0 20 40 0 20 40
Input

Input
2 2 Time Time

0 0
0 20 40 0 20 40
Time Time

Robot mechanism example Robot mechanism example


ϕ1 ϕ2
Poles and zeros
I
Motor
ω1 ω2 1

J1 J2

Imaginary axis
Antialiasing filter, second order with ω f = 2
0
A( q) = (q2 − 0.7505q + 0.2466) (q2 − 1.7124q + 0.9512)(q − 1)
| {z }| {z }
filter process

B ( q) = 0.1420⋅10−3 ( q+12.1314)( q+1.3422)( q+0.2234)( q−0.0023)


−1

−2 −1 0 1
Real axis
Notch filter design Active damping
- Sample, h = 0.5, Ac (s) = (s2 + 2ζ mω m s + ω 2m )(s + α 1ω m ) Damp the oscillatory modes,
and keep the antialiasing dynamics
ζ p = 0.05 → 0.7
- deg Ao = 2 Same poles as A f
- Include the oscillatory part

Output
1
A+ ( z) = z2 − 1.712z + 0.9512

0
AR + B S = A+ Ac Ao
Output

1 0 40 80
2

4th order controller [ 0


1

Input
0 40 80
9th order closed loop 2
0
system 1
Input

−1
An factor in A but not in 0
0 40 80
B [ factor in S −1
0 40 80
Time
Time

Comparison Sensitivity
State feedback design and full observer The design is done for H = B / A but the true system is
(No antialiasing filter) H 0 = B 0 / A0
Problem: How sensitive is the closed loop system?
Theorem
Output

1
The closed loop system is stable if

0
p H ( z) − H 0 ( z)p 1 H f f ( z) 1 T
0 20 40 60 80
≤ =
p H ( z)p p H m ( z)p H f b ( z)
p H m ( z)p S
2

1 for p zp = 1
Input

0 Right hand side depends on known quantities!


−1
0 20 40 60 80
Time
Robot mechanism Smith-predictor
Sensitivity function for notch design and active damping design One way of reducing the effect of delays
AR • Design a regulator
S= Gr as if there is no
Acl
delay.
Gr G p Controller
Process
uc y
1 1 + Gr G p ∑ ∑ Gr
u
e −sT Gp
Gain

Process model

• Find Gr′ such that −1 + e −sT Gp


0.1
esT Gr′ G p esT Gr G p
= −1
0.01 0.1 1 10 1 + Gr′ G p 1 + Gr G p
Frequency, rad/s

Notch (full), active (dashed) • Good for discrete-


time systems

Smith-predictor – Example Summary


First order system with time-delay • Convenient method for design
y( k + 1) = 0.37y( k) + 0.63u( k − 2) • Design parameters Ac , Ao , and h

No delay: PI with K = 0.4 and Ti = 0.4 • Relate Ac and Ao to physical process


• Be careful with zero cancellations
Smith pred. (full) and PI-contr, K = 0.1, Ti = 0.5 (dashed)
• Many other methods can be interpreted as pole-placement
Output

0
0 20 40

1
Input

0
0 20 40
Time

You might also like