0% found this document useful (0 votes)
5 views77 pages

SPL 06 Design of Linear State Feedback Control

Uploaded by

miftah ahsan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views77 pages

SPL 06 Design of Linear State Feedback Control

Uploaded by

miftah ahsan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 77

Linear System Control

Design of Linear State Feedback Control

Unggul Wasiwitono

Mechanical Engineering Department


Faculty of Industrial Technology and Systems Engineering
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Outline

1 State Feedback Control Law

2 Shaping the Dynamic Response

3 Closed-Loop Eigenvalue Placement via State Feedback

4 Stabilizability

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


2 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Control System Design

A control system is a dynamic system which is designed to operate in a prescribed


manner

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


3 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Control System Design

A control system is a dynamic system which is designed to operate in a prescribed


manner

The main components of a control system are


1 The plant or control object.
1 The actuators or drivers for the plant.
2 The sensors which measure the current operating point of the plant.
3 The controller which drives the plant in accordance with the overall control objective given the
sensor measurements.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


3 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Control System Design

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


4 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Controller Operating Modes


Control systems in general they operate in two basic control modes:
Regulator
As regulators, intended to operate around a single set or operating point in state space.
1 When operating in the regulator mode a control system has the goal of keeping the control
object at a certain location (or set point) in state space.
2 This location is specified by defining a constant value of a single state or output variable,
multiple states or outputs or some linear combination of them.

Trackers
As trackers, intended to follow a certain trajectory in state space.
1 When a control system operates in the tracking mode, it is the intention that the state vector
describe a certain path (trajectory) in state space.
2 Usually this is accomplished by changing the reference input to the control system according
to some predetermined pattern in order to cause it to move as desired.
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
5 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

State Feedback Control Law

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


6 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

State Feedback Control Law


For the linear time-invariant state equation

ẋ (t) = Ax (t) + Bu (t)


(1)
y (t) = Cx (t)

which represents the open-loop system or plant to be controlled.


Our focus is on the application of state feedback control laws of the form

u (t) = −Kx (t) + r (t) (2)

with the goal of achieving desired performance characteristics for the closed-loop state
equation
ẋ (t) = (A − BK) x (t) + Br (t)
(3)
y (t) = Cx (t)

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


7 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

State Feedback Control Law

D
x0
+
r (t) + u (t) + ẋ (t) Z x (t) + y (t)
+ B + C +
− +
A

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


8 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

State Feedback Control Law

The state feedback control law can be written in terms of scalar components as
      
u1 (t) k11 k12 · · · k1n x1 (t) r1 (t)
 u2 (t)   k21 k22 · · · k2n   x2 (t)   r2 (t) 
      
 ..  =  .. .. .. ..   .. + .. 
 .   . . . .  .   . 
um (t) km1 km2 ··· kmn xm (t) rm (t)

If the external reference input is absent, the state feedback control law is called a regu-
lator that is designed to deliver desirable transient response for nonzero initial conditions
and/or attenuate disturbances to maintain the equilibrium state x̃ = 0.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


9 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Shaping the Dynamic Response

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


10 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Shaping the Dynamic Response


In addition to closed-loop asymptotic stability, we are often interested in other
characteristics of the closed-loop transient response,
1 rise time,
2 peak time,
3 percent overshoot, and
4 settling time of the step response.
In our state-space context, we seek to translate desired transient response
characteristics into specifications on system eigenvalues, which are closely related to
transfer function poles.

Specifying desired closed-loop system behavior via eigenvalue selection is called


shaping the dynamic response.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


11 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for First-Order Systems

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


12 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for Second-Order Systems


Consider mass-spring-damper system

Redefining the input via


f (t)
u (t) =
k
This new input u(t) can be interpreted as a commanded displacement.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


13 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for Second-Order Systems


With this change, the state equation becomes
      
ẋ1 (t) 0 1 x1 (t) 0
= k c + k u (t)
ẋ2 (t) −m −m x2 (t) m
 
  x1 (t)
y (t) = 1 0
x2 (t)

with associated transfer function


k
m
H (s) = c k
s2 + ms + m

compare this with the standard second-order transfer function, namely,


r
ωn2 c k
ξ= √ and ωn =
s2 + 2ξωn + ωn2 2 km m
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
14 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for Second-Order Systems


The characteristic polynomial is
c k
λ2 + λ+ = λ2 + 2ξωn λ + ωn2
m m
from which the eigenvalues are
p
λ1, 2 = −ξωn ± ωn ξ2 − 1
Case Damping ratio Eigenvalues Unit step response
Overdamped ξ>1 Real and distinct Slowest transient response
Fastest transient response
Critically damped ξ=1 Real and equal
without overshoot
Complex conjugate Faster transient response but with
Underdamped 0<ξ<1
pair overshoot and oscillation
Undamped ξ=0 Imaginary pair Undamped oscillation
At least one with
Unstable ξ<0 Unbounded response
positive real part
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
15 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for Second-Order Systems


For underdamped case characterized by 0 < ξ < 1, the complex conjugate eigenvalues
are given by
λ1, 2 = −ξωn ± jωd
p
in which ωd = ωn 1 − ξ 2 is the damped natural frequency.

The unit step response for a standard second-order system in the underdamped case is

e−ξωn t
y (t) = 1 − p sin (ωd t + θ)
1 − ξ2

in which the phase angle is given by θ = cos−1 (ξ) and therefore is referred to as the
damping angle.
This response features a sinusoidal component governed by the damped natural
frequency and damping angle that is damped by a decaying exponential envelope
related to the negative real part of the eigenvalues.
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
16 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for Second-Order Systems

For the underdamped case, there are 4 performance characteristics


Rise time tr is defined as the elapsed time between when the response first reaches 10
percent to 90 percent of the steady-state value.

2.16ξ + 0.60
tr ∼
=
ωn

Peak time tp is the time at which the peak response value is reached

π π
tp = p =
ωn 1 − ξ2 ωd

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


17 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Eigenvalue Selection for Second-Order Systems

For the underdamped case, there are 4 performance characteristics


Percent overshoot P O characterizes the relationship between the peak value and
steady-state value

−√ ξπ
peak value − steady-state value 1−ξ2
PO = × 100% = 100e
steady-state value

Settling time ts is defined to be the time at which the response enters and remains within a ±2
percent band about the steady-state value

4
ts ∼
=
ξωn

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


18 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Inequality Constraints

first-order systems
an upper bound on the time required for the step response to reach steady state

an upper bound for the desired time constant.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


19 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Inequality Constraints

second-order systems
any combination of upper bounds the on rise time, peak time, percent overshoot, and
settling time of the step response

bounds on the desired damping ratio and undamped natural frequency

translated into regions in the complex plane that specify desired eigenvalue locations.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


20 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
characterize acceptable eigenvalue locations in the complex plane so that the
following second-order performance specifications are satisfied:

P O ≤ 4% ts ≤ 2 s tp ≤ 0.5 s

1 percent overshoot decreases as damping ratio increases.

P O ≤ P Omax ⇔ ξ ≥ ξmin

ξmin = 0.716 ⇔ P Omax = 4 %


θ ≤ θmax = cos−1 (ξmin )
To relate this to allowable eigenvalue locations, we see from basic trigonometry that
p p
1 − ξ2 ωn 1 − ξ 2 ωd
tan (θ) = = =
ξ ξωn ξωn

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


21 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example

settling time is inversely proportional to the product ξωn that is directly related to the real
part of the complex-conjugate eigenvalues.
1 an upper bound on settling time ts ≤ ts,max corresponds to eigenvalues that lie to the left of a
vertical line passing through the point −4/ts,max on the negative real axis
2 upper bound on settling time of 2 s, eigenvalues must lie to the left of the vertical line passing
through the point −4/2 = −2 on the negative real axis.
peak time is inversely proportional to the damped natural frequency ωd that
characterizes the imaginary part of the complex-conjugate eigenvalues.
1 upper bound on peak time tp ≤ tp,max yields a lower bound on ωd
2 This corresponds to an eigenvalue that lies above and below the horizontal line passing
through ±j (π/tpmax ) = ±j2π

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


22 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


23 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Higher-Order Systems

The general rule of thumb to approximate higher-order systems by a dominant first or


second-order model is to augment the dominant eigenvalues with the requisite
number of additional eigenvalues that are 10 times further to the left than the
dominant eigenvalues in the complex plane.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


24 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

ITAE Method for Shaping the Dynamic Response

The ITAE (Integral of Time multiplying the Absolute value of Error), method attempts to
accomplish dynamic shaping by penalizing the error.

The ITAE objective function is Z ∞


ITAE = t |e (t)| dt
0

Minimizing the ITAE objective function yields a step response with relatively small
overshoot and relatively little oscillation.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


25 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

ITAE Method for Shaping the Dynamic Response

For first- through sixth-order systems, the characteristic polynomials given by

System Order Characteristic Polynomial


First s + ωn
Second s2 + 1.4ωn s + ωn2
Third s3 + 1.75ωn s2 + 2.15ωn2 s + ωn3
Fourth s4 + 2.1ωn s3 + 3.4ωn2 s2 + 2.7ωn3 s + ωn4
Fifth s5 + 2.8ωn s4 + 5.0ωn2 s3 + 5.5ωn3 s2 + 3.4ωn4 s + ωn5
Sixth s6 + 3.25ωn s5 + 6.6ωn2 s4 + 8.6ωn3 s3 + 7.45ωn4 s2 + 3.95ωn5 s + ωn6

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


26 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Closed-Loop Eigenvalue Placement via State Feedback

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


27 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Closed-Loop Eigenvalue Placement via State Feedback

Theorem 1
For any symmetric set of n complex numbers {µ1 , µ2 , · · · , µn }, there exist a state
feedback gain matrix K such that

σ (A − BK) = {µ1 , µ2 , · · · , µn }

if and only if the pair (A, B) is controllable.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


28 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Feedback Gain Formula for Controller Canonical Form


Recall the controller cannonical form
   
0 1 0 ··· 0 0
 0 0 1 ··· 0   0 
   
 .. .
.. .. .. ..   .. 
ACCF =  . . . .  BCCF = . 
   
 0 0 0 ··· 1   0 
−a0 −a1 −a2 · · · −an−1 1

its characteristic polynomial is written down by inspection:

|sI − ACCF | = sn + an−1 sn−1 + · · · + a2 s2 + a1 s + a0

denote a feedback gain vector by


 
KCCF = δ0 δ1 δ2 ··· δn−1

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


29 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Feedback Gain Formula for Controller Canonical Form


Yields the closed-loop system dynamics matrix

ACCF − BCCF KCCF


 
0 1 0 ··· 0
 0 0 1 ··· 0 
 
 .
.. .. .. .. .. 
= . . . . 
 
 0 0 0 ··· 1 
−a0 − δ0 −a1 − δ1 −a2 − δ2 · · · −an−1 − δn−1

its characteristic polynomial can be written down by inspection

|sI − ACCF − BCCF KCCF | = sn + (an−1 + δn−1 ) sn−1 + · · · + (a2 + δ2 ) s2


+ (a1 + δ1 ) s + (a0 + δ0 )

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


30 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Feedback Gain Formula for Controller Canonical Form


Beginning with an arbitrary symmetric set of complex numbers {µ1 , µ2 , · · · , µn }that
represents the desired closed-loop eigenvalues, we define the associated closed-loop
characteristic polynomial

α (s) = (s − µ1 ) (s − µ2 ) · · · (s − µn )
= sn + αn−1 sn−1 + · · · + α2 s2 + α1 s + α0

the roots of a polynomial uniquely determine and are uniquely determined by the poly-
nomial coefficients, specifying n desired closed-loop eigenvalues is equivalent to speci-
fying the n coefficients α0 , α1 , α2 , · · · , αn−1

the problem is to determine KCCF so that the characteristic polynomial of


ACCF − BCCF KCCF matches the desired closed-loop characteristic polynomial α(s).

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


31 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Feedback Gain Formula for Controller Canonical Form


|sI − ACCF − BCCF KCCF | = sn + (an−1 + δn−1 ) sn−1 + · · · + (a2 + δ2 ) s2
+ (a1 + δ1 ) s + (a0 + δ0 )
= sn + αn−1 sn−1 + · · · + α2 s2 + α1 s + α0

on comparing coefficients of like powers of s, the relationships

a0 + δ0 = α0 δ0 = α0 − a0
a1 + δ1 = α1 δ1 = α1 − a1
a2 + δ2 = α2 δ2 = α2 − a2
.. ..
. .
an−1 + δn−1 = αn−1 δn−1 = αn−1 − an−1

 
KCCF = α0 − a0 α1 − a1 α2 − a2 ··· αn−1 − an−1

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


32 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
Consider the following three-dimensional state equation given in controller canonical
form specified by the coefficient matrices
   
0 1 0 0  
ACCF =  0 0 1  , BCCF =  0  , CCCF = 1 0 0
−18 −15 −2 1

The open-loop characteristic polynomial

a (s) = s3 + a2 s2 + a1 s + a0 = s3 + 2s2 + 15s + 18

which yields the open-loop eigenvalues

λ1 = −1.28, λ2, 3 = −0.36 ± j3.73

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


33 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
0.07

0.06

0.05

0.04

0.03

0.02

0.01

0
0 1 2 3 4 5 6 7 8 9 10
time (s)
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
34 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
We want to design a state feedback control law to improve the transient response
performance with a percent overshoot of 6 percent and a settling time of 3 s.
The associated damping ratio and undamped natural frequency are
ξ = 0.67 and ωn = 2.00 rad/sec
The resulting dominant second-order eigenvalues and third desired eigenvalue are
λ1, 2 = −1.33 ± j1.49 λ3 = −13.33
Thus the desired characteristic polynomial is
α (s) = s3 + α2 s2 + α1 s + α0 = s3 + 16s2 + 39.55s + 53.66
This leads immediately to the state feedback gain vector
 
KCCF = 53.26 − 18 39.55 − 15 16 − 2
 
= 35.26 24.55 14.00

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


35 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
0.07

0.06

0.05

0.04

0.03

0.02

0.01

0
0 1 2 3 4 5 6 7 8 9 10
time (s)
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
36 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Bass-Gura Formula

Let {µ1 , µ2 , · · · , µn } be a symmetric set of n complex numbers representing the desired


closed-loop eigenvalues, which uniquely determines the desire closed-loop
characteristic polynomial

α (s) = (s − µ1 ) (s − µ2 ) · · · (s − µn )
= sn + αn−1 sn−1 + · · · + α2 s2 + α1 s + α0

For the controllable pair (A, B) the state coordinate transformation x (t) = TCCF xCCF (t)
with
−1
TCCF = P PCCF
transforms the original state equation to its controller canonical form.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


37 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Bass-Gura Formula
Since the system dynamics matrices A and ACCF are related by a similarity
transformation, their characteristic polynomials are the same, that is,

|sI − A| = |sI − ACCF | = sn + an−1 sn−1 + · · · + a2 s2 + a1 s + a0

with  
KCCF = α0 − a0 α1 − a1 α2 − a2 ··· αn−1 − an−1
achieving the desired eigenvalue placement for ACCF − BCCF KCCF
Setting KCCF = KTCCF
−1 −1
ACCF − BCCF KCCF = TCCF ATCCF − TCCF B (KTCCF )
−1
= TCCF (A − BK) TCCF

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


38 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Bass-Gura Formula

Thus

|sI − A + BK| = |sI − ACCF + BCCF KCCF |


= sn + αn−1 sn−1 + · · · + α2 s2 + α1 s + α0
−1
so that K = KCCF TCCF achieves the desired eigenvalue placement for the closed-loop
state equation in the original coordinates.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


39 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Bass-Gura Formula

Bass-Gaura Formula

−1
K = KCCF TCCF
  −1
−1
= α0 − a0 α1 − a1 α2 − a2 · · · αn−1 − an−1 P PCCF
 
= α0 − a0 α1 − a1 α2 − a2 · · · αn−1 − an−1
  −1
a1 a2 · · · an−1 1
  a2 a3 · · · 1 0  
  
  .. .
.. . . . .
.. .. 
. 
× P  . 
  
  an−1 1 · · · 0 0 
1 0 ··· 0 0

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


40 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
Consider the three-dimensional single-input state equation with coefficient matrices
   
0 0 0 1
A =  0 1 0 ; B =  1 
0 0 2 1

the desired closed-loop eigenvalues to be

{µ1 , µ2 , µ3 } = {−1, −1, −1}

1. First check the controllability of the pair (A, B)


2. Form the open-loop and desired closed-loop characteristic polynomials.
3. Compute KCCF
−1
4. Calculate TCCF and TCCF
5. Finally, we calculate the state feedback gain vector K
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
41 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
1. First check the controllability of the pair (A, B)
 
1 0 0
2
 
P = B AB A B = 1 1 1 
1 2 4
which has |P | = 2 6= 0, so this state equation is controllable.
2. Form the open-loop and desired closed-loop characteristic polynomials.
A is a diagonal matrix with its eigenvalues
λ1, 2, 3 = 0, 1, 2
The open-loop characteristic polynomial and associated coefficients are
a (s) = (s − 0) (s − 1) (s − 2) = s3 − 3s2 + 2s + 0 = s3 + a2 s2 + a1 s + a0
The closed-loop desired characteristic polynomial and associated coefficients are
α (s) = (s + 1)3 = s3 + 3s2 + 3s + 1 = s3 + α2 s2 + α1 s + α0

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


42 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
3. Compute KCCF
 
KCCF = (α0 − a0 ) (α1 − a1 ) (α2 − a2 )
   
= (1 − 0) (3 − 2) (3 − (−3)) = 1 1 6
−1
4. Calculate TCCF and TCCF
  
1 0 0 a1 a2 1
−1
TCCF = P PCCF = 1 1 1   a2 1 0 
1 2 4 1 0 0
    
1 0 0 2 −3 1 2 −3 1
=  1 1 1  −3 1 0 = 0 −2 1 
1 2 4 1 0 0 0 −1 1
 1 1

2
−1 2
−1
TCCF =  0 −1 1 
0 −1 2

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


43 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example

5. Finally, we calculate the state feedback gain vector K


1 1
 
2
−1 2
−1  
K= KCCF TCCF = 1 1 6  0 −1 1 
0 −1 2
1 27
 
= 2
−8 2

As a final check  
1 27
2 −8 2
A − BK =  1
2 −9 27
2

1 23
2 −8 2

has eigenvalues {−1, −1, −1} as desired.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


44 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Ackermann’s Formula

In terms of the desired closed-loop characteristic polynomial α (s), the state feedback
gain vector is given by  
K = 0 0 · · · 0 1 P −1 α (A)
 
Here P = B AB A2 B · · · An−1 B is the controllability matrix for the controllable
pair (A, B) with inverse P −1 and α (A) represents

α (A) = An + αn−1 An−1 + · · · + α2 A2 + α1 A + α0 I

which yields an n × n matrix.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


45 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
To demonstrate the use of Ackermann’s formula, we considered the state equation in
controller canonical form specified by
   
0 1 0 0
ACCF =  0 0 1  , BCCF =  0 
−18 −15 −2 1
for which, by inspection,  
15 2 1
−1
PCCF = 2 1 0 
1 0 0
The desired characteristic polynomial is

α (s) = s3 + α2 s2 + α1 s + α0 = s3 + 16s2 + 39.55s + 53.66

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


46 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Example
with the aid of MATLAB, we compute,

α (A) = An + αn−1 An−1 + · · · + α2 A2 + α1 A + α0 I

α (ACCF ) = A3CCF + 16A2CCF + 39.55ACCF + 53.26I


 
35.26 24.55 14.00
=  −252.00 −174.74 −3.45 
62.10 −200.25 −167.84

Ackermann’s formula then gives


 
    15 2 1
K= 1 0 0 −1
PCCF α (ACCF ) = 1 0 0  2 1 0  α (ACCF )
1 0 0
 
= 35.26 24.55 14.00

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


47 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Stabilizability

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


48 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Stabilizability

1 For a controllable state equation, arbitrary closed-loop eigenvalue placement can be


achieved using state feedback.
2 Controllability is a sufficient condition for asymptotic stabilization via state feedback.

Is it possible to achieve asymptotic stabilization via state feedback when the plant is
not controllable?

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


49 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Stabilizability
  

1 0 0 1
ẋ (t) =  1 −1 1  x (t) +  1  u (t)
0 0 −2 0
 
y (t) = 1 0 0
   
  1 0
0   1
A11 A12 B 1
=  1 −1
1 ; = 1 
0 A22 0
−20 0 0
 
In terms of a state feedback gain vector K = k1 k2 k3
   
1 0 0 1  
A − BK =  1 −1 1  −  1  k1 k2 k3
0 0 −2 0
         
1 0 1   0 1
− k 1 k 2 − k3
= 1 −1 1 1 1 
U. Wasiwitono 0 0 [Linear System Control]−2
- Design of Linear State Feedback Control
50 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Stabilizability

Even though the state equation is not controllable, it is still possible to construct a state
feedback gain vector such that A − BK specifies an asymptotically stable closed-loop
state equation.

Definition 2
The pair (A, B) is stabilizable if there exists a state feedback gain matrix K for which all
eigenvalues of A − BK have strictly negative real part.

controllability ⇒ stabilizability

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


51 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Stabilizability

If the pair (A, B) is not controllable and if there exists a coordinate transformation
x (t) = T z (t) such that the transformed state equation has
   
A11 A12 B1
 = ; B̂ =
0 A22 0
 
With K̂ = K1 K2 a conformably partitioned state feedback gain matrix, we have
 
A11 − B1 K1 A12 − B1 K2
 − B̂ K̂ =
0 A22

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


52 / 76
State Feedback Control Law Shaping the Dynamic Response Closed-Loop Eigenvalue Placement via State Feedback Stabilizability

Stabilizability

Theorem 3
The following statement are equivalent:
1 The pair (A, B) is stabilizable.
2 There exists no left eigenvector of A associated with an eigenvalue having nonnegative real
part that is orthogonal to the columns of B;
 
3 The matrix λI − A B has full row-rank for all complex λwith nonnegative real part.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


53 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Outline

5 Steady-State Tracking

6 MATLAB for Control Law Design and Evaluation

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


54 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Steady-State Tracking

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


55 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Input Gain
We now consider state feedback control laws of the form

u (t) = −Kx (t) + Gr (t)

in which the reference input is now multiplied by a gain G to be chosen so that for a
step reference input r (t) = R, the output of the closedloop state equation

ẋ (t) = (A − BK) x (t) + BGr (t)


y (t) = Cx (t)

satisfies
yss , lim y (t) = R
t→∞

The gain matrix G has dimension m × p

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


56 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Input Gain
From a frequency-domain viewpoint, the steady-state tracking objective requires that
the closed-loop transfer function
−1
HCL (s) = C (sI − A + BK) BG
have what we refer to as identity dc gain; HCL (0) = I (p × p)

With R (s) = R 1s we may apply the final-value theorem (because the closed-loop state
equation is asymptotically stable) to obtain
1
yss = lim y (t) = lim sY (s) = lim sHCL (s) R = HCL (0) R
t→∞ s→0 s→0 s
and so yss = R for any constant vector R ∈ Rp

The closed-loop dc gain is given by


−1
HCL (0) = −C (A − BK) BG

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


57 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Input Gain

The question now is whether the gain matrix G can be chosen to yield HCL (0) = I .

Case 1 m = p, the open-loop state equation has as many inputs as outputs.


we can achieve identity dc gain by setting
−1
G = − C (A − BK)−1 B


Case 2 m ≥ p, the factor −C (A − BK)−1 B has dimension p × m and therefore has more
columns than rows. If this matrix has full-row rank p then we can take the m × p input
gain matrix G to be the Moore-Penrose pseudoinverse given by

T h T i−1
G = − C (A − BK)−1 B C (A − BK)−1 B C (A − BK)−1 B
 

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


58 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example
Consider the open-loop state equation in previous example
   
0 1 0 0  
A= 0 0 1 ; B =  0 ; C = 1 0 0
−18 −15 −2 1

The open-loop transfer function is, by inspection,


1
H (s) =
s3 + 2s2 + 15s + 18
1
from which the open-loop DC gain is H (0) = 8 = 0.056

The state feedback gain was computed to be


 
K = 35.26 24.55 14.00

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


59 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example
0.07

0.06

0.05

0.04

0.03

0.02

0.01

0
0 1 2 3 4 5 6 7 8 9 10
time (s)
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
60 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example

Without an input gain correction, the closed-loop transfer function is

−1 1
C (sI − A + BK) B=
s3 + 16s2 + 39.55s + 53.26
1
from which the closed-loop DC gain is H (0) = 53.26 = 0.0188

Clearly, unity closedloop dc gain is achieved for G = 53.26, and the closed-loop dc gain
will match the open-loop dc gain for
1
G = 53.23 × = 2.96
18

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


61 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


62 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Servomechanism Design

In practice, model uncertainty, parameter variations, or intentional approximations can


result in deviations between the nominal coefficient matrices used for the input gain
computation and the actual system description.

This has the potential to significantly alter the actual steady-state behavior.

Another approach of adding an integral-error term to obtain a type I system that yields
zero steady-state tracking error for step reference inputs

This approach is robust with respect to uncertainty in the open-loop state equation in
that the steady-state tracking performance is preserved as long as closed-loop
stability is maintained.

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


63 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Servomechanism Design
we focus on the single-input, single-output case and impose the following additional
assumptions:

Assumptions
1 The open-loop state equation, i.e., the pair (A, B), is controllable.
2 The open-loop state equation has no pole/eigenvalue at s = 0.
3 The open-loop state equation has no zero at s = 0.

Our control law will be of the form

ξ˙ (t) = r (t) − y (t)


u (t) = −Kx (t) + kI ξ (t)

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


64 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Servomechanism Design

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


65 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Servomechanism Design
Laplace transforms for zero initial condition ξ (0− ) = 0 gives
sξ (s) = R (s) − Y (s) = E (s)
E (s)
ξ (s) =
s
which indicates that the integral error term introduces an open-loop pole at
s=0
Assumption 2 is in place so that the transfer function associated with the open-loop
state equation does not itself contribute a pole at s = 0, in which case the new state
variable ξ(t) is not required.
Assumption 3 prevents the pole at s = 0 introduced by the control law from being
canceled by a zero at s = 0.

We thus are guaranteed that the integral error term in the control law yields a type I
system.
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
66 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Servomechanism Design
The control law can be written as
 
  x (t)
u (t) = − K −kI
ξ (t)

The augmented closed-loop system can be written as


      
ẋ (t) A − BK BkI x (t) 0
= + r (t)
ξ˙ (t) −C 0 ξ (t) 1
 
  x (t)
y (t) = C 0
ξ (t)

Closed-loop stability and transient response performance are governed by


     
A − BK BkI A 0 B  
= − K −kI
−C 0 −C 0 0

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


67 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Servomechanism Design

In order to arbitrarily place these closed-loop eigenvalues we require


   
A 0 B
,
−C 0 0

to be a controllable pair
we can apply either the Bass-Gura formula or Ackermann’s formula, as well as the
MATLAB place function to design feedback gain
 
K −kI

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


68 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example
We design a type I servomechanism for the state equation in previous example
   
0 1 0 0  
A= 0 0 1 ; B =  0 ; C = 1 0 0
−18 −15 −2 1

so that closed-loop unit step response reaches a steady state value of 1 corresponding
to zero steady-state error between the reference input r(t) and the system output y(t).

We may then proceed with the construction of a state feedback gain vector for the
controllable pair
   
  0 1 0 0   0
A 0  0 0 1 0  B  0 
=

;
 = 
 1 
−C 0 −18 −15 −2 0 0
1 0 0 0 0

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


69 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example
We select eigenvalues based on the ITAE criterion using an undamped natural
frequency of ωn = 2 rad/s

This yields the desired fourth-order characteristic polynomial


s4 + 2.1ωn s3 + 3.4ωn2 s2 + 2.7ωn3 s + ωn4
= s4 + 4.2s3 + 13.6s2 + 21.6s + 16

and associated eigenvalues

λ1, 2 = −0.848 ± j2.53 λ3, 4 = −1.25 ± j0.828

Using either the Bass-Gura formula or Ackermann’s formula yields


   
K −kI = 3.6 −1.4 2.2 −16

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


70 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example

ξ˙ (t) = r (t) − y (t)


 
   x1 (t) 
u (t) = − 3.6 −1.4 2.2 x2 (t) + 16ξ (t)
 
x3 (t)
U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control
71 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

Example

The resulting closed-loop state equation is


      

 ẋ1 (t)  0 1 0 0  x1 (t)  0
 ẋ (t)    
 

2 0 0 1 0  x2 (t)  0 
=
 −21.6 −13.6 −4.2
 + 
 0  r (t)

 ẋ3 (t)  16  
 x3 (t) 

 ˙   
ξ (t) −1 0 0 0 ξ (t) 1
 
 x1 (t)
 

   x2 (t) 
y (t) = 1 0 0 0

 x3 (t) 

 
ξ (t)

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


72 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

MATLAB for Control Law Design and Evaluation

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


73 / 76
Steady-State Tracking MATLAB for Control Law Design and Evaluation

MATLAB for Control Law Design and Evaluation

K=place(A,B,DesEig) Solve for state feedback gain matrix K to place the


desired eigenvalues DesEig of the closedloop system
dynamics matrix A − BK.

K=acker(A,B,DesEig) Solve for state feedback gain matrix K to place the


desired eigenvalues DesEig of the closedloop system
dynamics matrix A − BK using Ackermann’s formula
(for single-input, singleoutput systems only).

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


74 / 76
Question ?
Steady-State Tracking MATLAB for Control Law Design and Evaluation

U. Wasiwitono [Linear System Control] - Design of Linear State Feedback Control


76 / 76

You might also like