0% found this document useful (0 votes)
2 views

AC_INF_2021

Uploaded by

atakanmembership
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)
2 views

AC_INF_2021

Uploaded by

atakanmembership
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/ 285

Automatic Control

Equilibrium solution of nonlinear dynamical


systems
Linearization of nonlinear systems

Automatic Control – M. Canale


Equilibrium solution of dynamical
systems

Automatic Control – M. Canale


Equilibrium solution of dynamical systems

A constant state x is an equilibrium solution (or equilibrium


state) of the nonlinear dynamical system

xɺ(t )  f (x (t ),u (t )), y (t )  g (x (t ),u (t ))


if, in the presence of the constant input u (t ) = u and the initial
condition x (0) = x , it results
x (t ) =x t  0

 the input u is said equilibrium input


 the couple (x , u ) is said equilibrium point
 the output y  g ( x , u ) is said equilibrium output

Automatic Control – M. Canale AC_INF_L01 3


Equilibrium condition
An equilibrium point (x , u ) of the dynamical system

xɺ (t )  f (x (t ),u (t ))

satisfies the equilibrium condition:

f (x ,u )  0
In fact:
x (t )  x , t  0  xɺ(t )  xɺ  f (x ,u )  0, t  0

Automatic Control – M. Canale AC_INF_L01 4


Equilibrium condition
For LTI systems
xɺ(t )  Ax (t )  B u (t )
the equilibrium condition
f (x ,u )  0
becomes
Ax  Bu  0

Bu  Im( Ax )
x   A 1B u

if det( A )  0

Automatic Control – M. Canale AC_INF_L01 5


Example: pendulum
Consider a simple pendulum system

 = angular position (variable of interest)


m = mass
l = link length
 = hinge friction coefficient
u = applied torque at the hinge
g = gravity acceleration

ml 2ɺɺ(t )  mgl sin( (t ))  ɺ(t )  u (t )


g  ɺ 1
 ɺɺ(t )   sin( (t ))  2
 (t )  u (t )
l ml ml 2

Automatic Control – M. Canale AC_INF_L01 - 6


Example: pendulum
g  ɺ 1
ɺɺ(t )   sin( (t ))  2
 (t )  u (t )
l ml ml 2

 x (t )   (t )
State vector* x (t )   1   ɺ(t )
 x 2 (t )   
State and output equations

 xɺ1 (t )  x 2 (t )  f 1 (x (t ), u (t ))

ɺ g  1
 x 2 (t )   l sin(x 1 (t ))  ml 2 x 2 (t )  ml 2 u (t )  f 2 (x (t ), u (t ))
y (t )  x 1 (t )  g (x (t ), u (t ))

* In mechanical systems the state is usually chosen as position and speed of


inertial elements

Automatic Control – M. Canale AC_INF_L01 - 7


Example: pendulum
 xɺ1 (t )  x 2 (t )

ɺ g  1
 x 2 (t )   l sin(x 1 (t ))  ml 2 x 2 (t )  ml 2 u (t )

Find all the equilibrium states corresponding to the equilibrium input u  0


By using the equilibrium condition xɺ (t )  xɺ  0  f (x ,u ), we get

0  x 2 sin x1  0
 
 g x 2 u g
0  sin x 1
 2
 2   sin x1 x 2  0
 l ml ml l

Automatic Control – M. Canale AC_INF_L01 8


Example: pendulum

 Since at the equilibrium the following relations hold


sin x1  0 x1  k  , k  0, 1,…
  
x 2  0 x 2  0
there exist infinite equilibrium points of the form:

 x  k  
x   1     , k  0, 1,…
x 2   0 
 At the equilibrium,
y (t )  y  g (x ,u ), t  0
y  x1  k  , k  0, 1,…

Automatic Control – M. Canale AC_INF_L01 9


Linearization of dynamical
nonlinear systems

Automatic Control – M. Canale


Linearization of a nonlinear system
Real world systems are, in general, nonlinear.
Anyway, in the neighbourhood of a given solution (e.g. an
equilibrium solution) their behavior can be approximated through
suitable linear models known as linearized models.
Objective: compute a linear dynamical model that can accurately
approximate the behavior of a nonlinear system in a neighbourhood
of an equilibrium solution.

Automatic Control – M. Canale AC_INF_L01 11


Linearization of a nonlinear system: motivation
Problem: given the nonlinear dynamical system
xɺ (t )  f  x (t ), u (t ) 
y (t )  g  x (t ), u (t ) 

compute the solution in the presence of an input of the form


u (t )  u   u (t ),  u (t ) ≪ u
and of the initial condition
x (0)  x   x (0),  x (0) ≪ x
where  x , u  is a given equilibrium point of the considered system.

Automatic Control – M. Canale AC_INF_L01 12


Linearization of a nonlinear system: motivation
In order to compute the required solution, the following Cauchy
problem has to be solved

xɺ (t )  f  x (t ), u (t )  , u (t )  u   u (t ), x (0)  x   x (0)

Indeed, the analytical solution of such a nonlinear Cauchy


problem(*) is, in general, difficult to compute (the superposition
principle does not hold).

(*) The considered Cauchy problem admits a unique solution if f (x,u ) is Lipschitz continuous in
both x and u.

Automatic Control – M. Canale AC_INF_L01 13


Linearization of a nonlinear system: preliminaries
A viable approach is to compute an approximation xɶ (t ) of the solution
x (t ) as xɶ (t )  x   x (t )  x (t )
where x (t ) is the solution to a suitable LTI model of the form
 xɺ (t )  A  x (t )  B u (t )
in the presence of the input u (t ) and of the initial condition x (0)
Such a linear model will be derived through a linearization procedure
applied to the nonlinear state representation

xɺ (t )  f  x (t ), u (t ) 
y (t )  g ( x (t ), u (t ))
in a neighbourhood of the equilibrium point  x , u 
 linearized model

Automatic Control – M. Canale AC_INF_L01 14


Definition of system variations
To derive the linearized model, let us define the state variation
x (t ) with respect to the solution x (t ) to the considered Cauchy
problem:

xɺ (t )  f  x (t ), u (t )  , u (t )  u   u (t ), x (0)  x   x (0)

and the equilibrium state x


 x (t )  x (t )  x  ℝn
Similarly, input and output variations are defined as:

 u (t )  u (t )  u  ℝ p
 y (t )  y (t )  y  ℝq

Automatic Control – M. Canale AC_INF_L01 15


Computing the system variation
The dynamic behavior of the state variation x (t ) is governed by
the differential equation

 xɺ (t )  xɺ (t )  xɺ  f  x (t ), u (t )   0  f  x (t ), u (t ) 

Supposing that the vector valued function f (x (t ),u (t )) can be


expanded in Taylor series in a neighbourhood of x ,u  (*), we have:

f  x (t ), u (t )   f  x   x (t ), u   u (t )  
f ( x , u ) f ( x , u )
 f  x ,u   (x (t )  x )  (u (t )  u )  … 
x x x u x x
u u u u
f ( x , u ) f ( x , u )
  x (t )  u (t )  …

f  x ,u   0
x x x u x x
u u u u

(*) This is true if f (x,u ) is Lipschitz continuous in both x and u.

Automatic Control – M. Canale AC_INF_L01 16


Computing the system variation
… f (x (t ),u (t )) can be then approximated by its Taylor expansion
truncated at the linear term

f (x ,u ) f (x ,u )
f x (t ),u (t )   x (t )  u (t )
x x  xɶ u x  xɶ
u uɶ u uɶ

Therefore, the approximate behavior of the state variation x (t ) can


be computed through the solution to the following linear differential
equation
f (x ,u ) f (x ,u )
 xɺ (t )   x (t )  u (t ) 
x x x u x x
u u u u
 A x (t )  B u (t )

Automatic Control – M. Canale AC_INF_L01 17


Computing the system variation
Note that:

f (x ,u ) f1 x 1 … f1 x n  n n Jacobian of f


A  ⋮ ⋱ ⋮  ℝ :
x x x f x 1 ⋯ f n x n  x x wrt x
u u  n
u u

f (x ,u )  1 1
f u … f 1 u p
n  p Jacobian of f
B    ⋮ ⋱ ⋮  ℝ :
u x x wrt u
u u  n
 f  u 1 ⋯  f n  u  x x
p
u u

Automatic Control – M. Canale AC_INF_L01 18


Computing the system variation
A similar procedure can be applied for the computation of y (t ):

 y (t )  y (t )  y  g  x (t ), u (t )   g  x , u  
g (x ,u ) g (x ,u )
  x (t )  u (t ) 
x x  x u x x
u u u u
 C  x (t )  D u (t )

g (x ,u ) g1 x 1 … g1 x n  q n Jacobian of g


C   ⋮ ⋱ ⋮  ℝ : wrt x
x x x
g q x 1 ⋯ g q x n  x x
u u 
u u

g (x ,u )  1 1
g u … g 1 u p
q  p Jacobian of g
D   ⋮ ⋱ ⋮  ℝ :
u x  x wrt u
u u  p
 g  u ⋯  g  u
 q 1 q  x x
u u

Automatic Control – M. Canale AC_INF_L01 19


Linearized system
The linearized system is then given by

xɺ (t )  Ax (t )  B u (t ), x (0)  x (0)  x


y (t )  C x (t )  D u (t ), u (t )  u (t )  x

f (x ,u) f (x ,u) g(x ,u) g(x ,u)


A ,B  ,C  ,D 
x x x u x x x x x u x x
u u u u u u u u

Automatic Control – M. Canale AC_INF_L01 20


Example: pendulum
Linearization
xɺ1  x 2  f1 (x , u )  k   
 x   0  ,u  0
xɺ   g sin x  x 2  u  f 2 (x , u )
   
 2 l 1
Ml
2
Ml
2

y  x1  g (x , u )

 f1 f1 
 0 1 
f (x ,u ) x x 2
A  1    g  
x x x  f 2 f 2
  cos x 1 
M l 
2
u u x
1 x 2  x x  l
u u

 0 1  0 1 
k even  A   g   , k odd  A  g  
 l  Ml 2   l  Ml 2 

Automatic Control – M. Canale AC_INF_L01 21


Example: pendulum
Linearization
 xɺ1  x 2  f (x , u )  k   
 1  x   0  , u  0
 xɺ   g sin x   x 2 u    
  f (x , u )
 2 l 1
Ml
2
Ml
2 2
y  x1  g (x , u )

f (x ,u) f1   0 
B  fu    1 

u
u  ux ux
x x 2
Ml 
u u
2

g (x ,u )
C    g g   1 0  D 
g (x ,u )
 g   0
x x x x 1 x 2  x  x
u u u x x u x x
u u
u u u u

Automatic Control – M. Canale AC_INF_L01 22


Resume via block diagram representation
Nonlinear system
x (0)
xɺ(t )  f  x (t ),u(t )
S : u (t ) y (t )
y (t )  g x (t ),u(t ) S
u (t )  u  u (t )
x (0)  x   x (0) x (t )

Linearized model  x (0)

xɺ(t )  Ax (t )  Bu(t ) u (t )  y (t )



S :  S
y (t ) Cx (t )  Du(t )
 x (t )

Automatic Control – M. Canale AC_INF_L01 23


Resume via block diagram representation
Approximate solution computation through the linearized model

 x (0) y

u (t )

 y (t )  yɶ (t )  y   y (t )
S 
  x (t )

x xɺ(t )  Ax (t )  Bu(t )
S : 
y (t )  C x (t )  Du(t )
xɶ (t )  x   x (t )

Automatic Control – M. Canale AC_INF_L01 24


Automatic Control

Stability of equilibrium solutions of nonlinear


dynamical systems

Automatic Control – M. Canale


Stability of an equilibrium solution

Automatic Control – M. Canale


Equilibrium stability: introduction

Intuitively and roughly speaking, we say an equilibrium point is stable


if all solutions which start near x (meaning that the initial condition lies
in a neighborhood of x ) remain near x for all time.
The equilibrium point x is said to be asymptotically stable if it is
stable and, furthermore, all solutions starting near x tend towards x
as t → ∞.
Nonetheless, it is intuitive that a pendulum has a locally stable
equilibrium point when the pendulum is hanging straight down and an
unstable equilibrium point when it is pointing straight up. If the
pendulum is damped, the stable equilibrium point is locally
asymptotically stable.

Automatic Control – M. Canale AC_L11 3


Equilibrium stability: introduction

To study the equilibrium properties of an equilibrium solution (x , u )


of a nonlinear dynamical system
xɺ (t )  f (x (t ),u (t ))
we need to introduce a perturbation of the equilibrium solution
xp (t ) defined as the solution to xɺ (t )  f (x (t ),u (t )) in the presence of
 the same equilibrium input u
 a perturbed initial condition x0 which lies in some suitable
neighborhood of x

Automatic Control – M. Canale AC_L11 4


Equilibrium stability: introduction
To study equilibrium stability, we must analyze if the time course of
the perturbed solution xp (t )
 evolves inside a bounded neighborhood of x ( stability)
 asymptotically converges to x ( asymptotic stability)
 evolves far away from x (instability)

Automatic Control – M. Canale AC_L11 5


Equilibrium stability: intuitive example

 x 1 (t )   (t ) 
x (t )   ɺ 
 x 2 (t )   (t ) 
 xɺ1 (t )  x 2 (t )

ɺ g  1
 x 2 (t )   l sin( x 1 (t ))  ml 2 x 2 (t )  ml 2 u (t )
y (t )  x 1 (t )
1 2
m  0.1 kg , l  0.5 m ,   0.1 N s rad , g  9.81 ms

 0.1 
0 
u  0, x    , x (0)   180 
0  
 0 

Automatic Control – M. Canale AC_L11 6


Equilibrium stability: intuitive example
-3
x 10
2 0.01

0.008
1.5
0.006
1
0.004

d(t)/dt (rad/s)
0.5 0.002
(t) (rad)

0 0

-0.002
-0.5
-0.004
-1
-0.006

-1.5 -0.008

-0.01
-2 0 1 2 3 4 5
0 1 2 3 4 5 t (s)
t (s)

 0.1 
0 
u  0, x    , x (0)   180 
0  
 0 

Automatic Control – M. Canale AC_L11 7


Equilibrium stability: intuitive example

0.015 0.01

0.01
0.005
0.005
d(t)/dt (rad/s)

d(t)/dt (rad/s)
0 0

-0.005
-0.005
-0.01

-0.015 -0.01
2 5
1 4
0 3
2
-5 -4 -3 -2 -1 0 1 2 3 4 -3 -1 1
x 10 -2 0
(t) (rad) -3
x 10 (t) (rad) time (s)

 0.1 
0 
u  0, x    , x (0)   180 
0  
 0 

Automatic Control – M. Canale AC_L11 8


Equilibrium stability: formal definition
The equilibrium state x is
stable if,   > 0, there is  = () > 0 such that

x 0 : x 0  x    x p (t )  x   , t  0

Roughly speaking, x is stable if we can select a bound  on


initial condition that will result in trajectories that remain within
a given arbitrarily small finite limit  . x2



x1
x0
x

Automatic Control – M. Canale AC_L11 9


Equilibrium asymptotic stability: intuitive example

 x 1 (t )   (t ) 
x (t )   ɺ 
 x 2 (t )   (t ) 
 xɺ1 (t )  x 2 (t )

ɺ g  1
 x 2 (t )   l sin( x 1 (t ))  ml 2 x 2 (t )  ml 2 u (t )
y (t )  x 1 (t )
1 2
m  0.1 kg , l  0.5 m ,   0.1 N s rad , g  9.81 ms

 5 
0
u  0, x    , x (0)  180 
0  
 0 

Automatic Control – M. Canale AC_L11 10


Equilibrium asymptotic stability: intuitive example

0.1

0.05

0.05
-0.05

d(t)/dt (rad/s)
(t) (rad)

-0.1

-0.15
0
-0.2

-0.25

-0.05
0 1 2 3 4 5 0 1 2 3 4 5
t (s) t (s)

 5 
0
u  0, x    , x (0)  180 
0  
 0 

Automatic Control – M. Canale AC_L11 11


Equilibrium asymptotic stability: intuitive example

0.05

0
0.05
-0.05
d(t)/dt (rad/s)

d(t)/dt (rad/s)
-0.05
-0.1
-0.1
-0.15
-0.15
-0.2
-0.2
-0.25 5
4
-0.25 3
0.1 2
0.05 1
0
-0.05 0 0.05 0.1 -0.05 0
time (s)
(t) (rad) (t) (rad)

 5 
0
u  0, x    , x (0)  180 
0  
 0 

Automatic Control – M. Canale AC_L11 12


Equilibrium asymptotic stability: formal definition
The equilibrium state x is
asymptotically stable if it is stable and  can be chosen
such that
lim x p (t )  x  0
t 

Roughly speaking, x is asymptotically table if it is stable


and if the state approaches x as time approaches ∞ x
2


a 
x1
x x0

Automatic Control – M. Canale AC_L11 13


Equilibrium instability: intuitive example

 x 1 (t )   (t ) 
x (t )   ɺ 
 x 2 (t )   (t ) 
 xɺ1 (t )  x 2 (t )

ɺ g  1
 x 2 (t )   l sin( x 1 (t ))  ml 2 x 2 (t )  ml 2 u (t )
y (t )  x 1 (t )
1 2
m  0.1 kg , l  0.5 m ,   0.1 N s rad , g  9.81 ms

181 
 
u  0, x    , x (0)   180 
0   
 0 

Automatic Control – M. Canale AC_L11 14


Equilibrium instability: intuitive example

1
3
0.5

2.5 0

-0.5
2
-1

d(t)/dt (rad/s)
(t) (rad)

1.5 -1.5

-2
1
-2.5

0.5 -3

-3.5
0
-4

-0.5 -4.5
0 1 2 3 4 5 0 1 2 3 4 5
t (s) t (s)

181 
 
u  0, x    , x (0)   180 
0   
 0 

Automatic Control – M. Canale AC_L11 15


Equilibrium instability: intuitive example

0.5

0 1

-0.5
0
-1
d(t)/dt (rad/s)

d(t)/dt (rad/s)
-1
-1.5

-2 -2

-2.5 -3
-3
-4
-3.5 5
3 4
-4 2 3
1 2
-4.5 0 1
-0.5 0 0.5 1 1.5 2 2.5 3 0
(t) (rad) time (s)
(t) (rad)

181 
 
u  0, x    , x (0)   180 
0   
 0 

Automatic Control – M. Canale AC_L11 16


Equilibrium instability: formal definition
The equilibrium state x is
unstable if the perturbed solution xp (t ) does not satisfy the
stability condition

Automatic Control – M. Canale AC_L11 17


Equilibrium stability: resume

x1
asymptotic stability equilibrium solution
xe , ue
instability



x0 , ue
stability

x2

Automatic Control – M. Canale AC_L11 18


Equilibrium stability: conditions
The rigorous and deep study of equilibrium stability, introduced at
the end of the XIX century by the Russian mathematician A. M.
Lyapunov, is out of the scopes of a basic Automatic Control course.
Anyway, simply to check, though not exhaustive, sufficient
conditions for the study of stability of the equilibrium of nonlinear
system will be provided.

Automatic Control – M. Canale AC_L11 19


Equilibrium stability: LTI systems
For the special case of LTI systems of the form xɺ (t )  Ax (t )  Bu (t )
we have the following
Result (stability of the equilibrium of LTI systems)
 internal stability  stability of every equilibrium solution x
of the LTI system
 asymptotic stability  asymptotic stability of every
equilibrium solution x of the LTI system
 unstability  unstability of every equilibrium solution x of
the LTI system

Automatic Control – M. Canale AC_L11 20


Equilibrium stability: LTI systems
Remark
 for LTI systems, internal stability is a global property which
applies to every solution (not only equilibria) and thus to the
whole system;
 for nonlinear systems, stability is a local property of a particular
solution (e.g. an equilibrium).

Automatic Control – M. Canale AC_L11 21


Stability of an equilibrium solution
through the linearized model

Automatic Control – M. Canale


Linearized system and equilibrium stability: Result
Let (x , u ) be an equilibrium point of the dynamical system
xɺ (t )  f ( x (t ), u (t ))
where f (·) : D  Rn is a C 1 function and D is a neighborhood of x
Let f ( x )
A
x x  x
u u
Then:
 the equilibrium x is asymptotically stable if
Re(li (A )) < 0, i = 1, …, n
 the equilibrium x is unstable if Re(li (A )) > 0, for some i

Remark: If Re(li (A ))  0, i = 1, …, n no conclusion can be drawn


about stability properties of the equilibrium x

Automatic Control – M. Canale AC_L11 23


Linearized system and equilibrium stability: Resume
Eigenvalues li (A ) of the linearized Stability properties of the
system equilibrium
i : ℝe (li ( A ))  0 Asymptotic stability

i : ℝe (li ( A ))  0 Unstability

i : ℝe (li ( A ))  0 No conclusion can be drawn

Automatic Control – M. Canale AC_L11 24


Example: pendulum

 0 1 
 k   
A g   x   0  ,u  0
 l cosx 1  Ml 2     

0 1  0 1 

k even  A  g  , k odd  A  g
  

 l  
Ml   l Ml 
2 2

Two cases are considered:  > 0 and  = 0

Automatic Control – M. Canale AC_L11 25


Example: pendulum
Case:  > 0
0  0 1 
k even (e.g. x   )  A   g  
0  l  Ml 2 
 g
pA (l)  l 2  2 l
Ml l

 all the coefficients of the characteristic polynomial are positive


 both the eigenvalues of the linearized system have strictly
negative real part (Descartes’ rule of signs)

k 
 all the equilibrium states of the form x    , k even are
asymptotically stable 0

Automatic Control – M. Canale AC_L11 26


Example: pendulum
Case:  > 0
 0 1 
k odd (e.g. x   )  A  g  
0  l  Ml 2 
 g
pA (l)  l 2  2 l 
Ml l
 there is a variation in the sign of the coefficients of the
characteristic polynomial
 there is an eigenvalues of the linearized system with strictly
positive real part (Descartes’ rule of signs)

k 
 all the equilibrium states of the form x    , k odd are
unstable 0

Automatic Control – M. Canale AC_L11 27


Example: pendulum
Case:  = 0
0  0 1
k even (e.g. x   )  A   g 
0  l 0
g g
pA (l)  l 2   l  j
l 1,2 l

 both the eigenvalues of the linearized system have null real part
 no conclusion can be drawn on the stability properties of the
k 
equilibrium states of the form: x 
 0  , k even
 

(using other analysis methods, stability can be proved)

Automatic Control – M. Canale AC_L11 28


Example: pendulum
Case:  = 0
 0 1
k odd (e.g. x   )  A  g 
0  l 0
g g
pA (l)  l 2  l  
l 1,2 l

 there is an eigenvalue of the linearized system with strictly


positive real part
k 
 all the equilibrium states of the form x    , k odd are
unstable 0

Automatic Control – M. Canale AC_L11 29


Automatic Control

Discrete time LTI dynamical systems


• Mathematical representation
• Solution

Automatic Control – M. Canale


Discrete time signals
In a digital feedback control system
e(t) e(kT) u(kT)
u(t)
r(t) Digital D/A & Actuator & y(t)
A/D
+ controller hold Plant
-
T
T T
clock
digital controller
Sensor
1
the digital controller, at each sampling time kT, computes the control
input u (kT ) using the sampled value of the tracking error e (kT )
Since both u (kT ) and e (kT ) are discrete-time signals
 the digital controller is a discrete-time dynamic system
In the following, the simplified notation f (k ) will be used instead of f (kT )

Automatic Control – M. Canale AC_INF_L03 2


Discrete-time signals: sequences
A discrete-time signal is made up by a sequence of real numbers
Therefore, the signal is not defined between two sampling instants.

10

-10
0 20 40 60 80 100 t (s)
10

-10
0 10 20 30 40 50 k (samples)

Automatic Control – M. Canale AC_INF_L03 3


Discrete-time signals: examples
1.5
 Unit impulse sequence
1
0 k  0
(k)   0.5
1 k  0 0
-10 -5 0 5 10
1.5
 Unit step sequence
1
0 k  0
(k)   0.5
1 k  0 0
-10 -5 0 5 10
1
 “Geometric” sequence
e aTk   k ,|  | 1 0.5

e aT  
0
-10 -5 0 5 10
k (samples)

Automatic Control – M. Canale AC_INF_L03 4


Introduction
Discrete time dynamical systems are used to describe
 Phenomena whose events are defined (observed) in discrete time
instants only (e.g. once a year, once a day, once a second, …) like,
e.g., social end economic studies.
 The sampling of continuous time signals.
A simple example: bank account
Let x (k ) be the capital stored in the account at the generic year k

Lat u (k ) be the net paid up at the generic year k

Let  > 0 be the simple year interest

The capital increment at year k + 1 is given by: x (k +1) = (1+ )x (k ) +u (k )

Automatic Control – M. Canale AC_INF_L03 5


Discrete time dynamical systems
A finite dimensional, discrete time (k  Z+), linear time invariant
(LTI) dynamical system can be described through a state space
representation made up by
 a system of finite difference equations
 a static output equation
x (k )  Rn ,u (k )  R p , y (k )  Rq

x (k  1)  Ax (k )  B u (k )  state equation

 y (k )  C x (k )  Du (k )  output equation

A  R n ,n B  R n , p C  Rq ,n D  Rq , p

Automatic Control – M. Canale AC_INF_L03 6


Solution of discrete time dynamical
systems through Z-transform

Automatic Control – M. Canale


Solution of discrete time LTI dynamic systems
Consider the state space description

 x (k  1)  A x (k )  B u (k )
 given u (k ), x (0)
y (k )  C x (k )  D u (k ) 
compute x (k ), y (k ), k  0

The solution can be computed using the time domain iterative relations
k 1

  A
k  i 1
x (k )  A

k
 x (0) Bu (i )  x zi (k )  x zs (k )
i 0
x
zi
(k ) 

x (k )
zs
k 1

 C A
k  i 1
y (k )  CA

k
 x (0) Bu (i )  Du (k )  y zi (k )  y zs (k )
i 0
y
zi
(k )  
y (k )
zs

Automatic Control – M. Canale AC_INF_L03 8


The Z-transform
Analysis and solution of discrete time dynamical systems can be
effectively performed using the Z-transform operator.
The Z-transform is the discrete-time signals counterpart of the
Laplace transform for continuous-time signals.

An exhaustive development of the Z-transform theory (e.g.


existence, convergence, uniqueness,… properties) is outside the
scopes of this course.
Thus, basic properties of the Z-transform only will be introduced.

Automatic Control – M. Canale AC_INF_L03 9


Z-transform definition

• Let f (k ) be a discrete time sequence such that


f (k ) : Z   R
• The Z-transform of f (k ) is the complex valued function
F (z ) : C  C
of the complex variable z = ne jq defined as

F (z )  Z  f (k )   f (k )z k

k0

• The inverse Z-transform of F (z ) is the sequence f (k ) defined


as
1
f (k )  Z 1 F (z )  
2 j  
F (z )z k 1dz

Automatic Control – M. Canale AC_INF_L03 10


Z-transform main properties
Linearity
Given f1 (k ), f2 (k ) two discrete time sequences with Z-transform
F1 (z ) and F2 (z ) respectively and c1 , c2 real constants, then
Z c 1 f 1 (k )  c 2 f 2 (k )  c 1 F1 (z )  c 2 F 2 (z )

Backward time shift


Given f (k ) a discrete time sequence with Z-transform F (z ) a
positive integer h, then
Z f (k  h )  z  h F (z )

Automatic Control – M. Canale AC_INF_L03 11


Z-transform main properties
Forward time shift
Given a discrete time sequence f (k ) with Z-transform F (z ) and a
positive integer h, then
 h 1 
Z f (k  h )  z h  F ( z )   z k f (k ) 
 k 0 

In particular, for h = 1
Z f (k  1)  zF ( z )  zf (0)

Automatic Control – M. Canale AC_INF_L03 12


Z-transform main properties

Convolution
The convolution product of the discrete time sequences f1 (k ), f2 (k )
with Z-transform F1 (z ) and F2 (z ) respectively
k k
f 1 (k )  f 2 (k )   f1 (k  j )  f2( j )   f1 ( j ) f 2 (k  j)
j 0 j 0

has Z-transform given by


Z f 1 (k )  f 2 (k )  F1 (z )  F 2 (z )

Automatic Control – M. Canale AC_INF_L03 13


Z-transform main properties
Final value theorem
Given a discrete time sequence f (k ) with Z-transform F (z )
If the product (z  1)F (z )
has no poles with magnitude greater or equal than 1, then

lim f (k )  lim(z  1)F (z )


k  z 1

Initial value theorem


Given a discrete time sequence f (k ) with Z-transform F (z ), then
lim f (k )  lim F (z )
k 0 z 

Automatic Control – M. Canale AC_INF_L03 14


Some Z-transform pairs

f (k ) F (z )
z
ak
z a
 k  k ℓ z
 ℓ a ,ℓ  0 z  a 
ℓ 1
 
z sin( )
sin k  ,  R
z  2 cos( )z  1
2

cos k  ,  R z (z  cos( ))


z  2 cos( )z  1
2

z  zI  A 
1
A k , A  Rn ,n

Automatic Control – M. Canale AC_INF_L03 15


Z-domain solution of discrete time LTI systems
Considering the Z-transform of the state space description
Z
 x (k  1)  A x (k )  B u (k )
  zX (z ) zx (0)  AX (z )  B U (z )
y (k )  C x (k )  D u (k ) Y (z )  C X (z )  D U (z )
we obtain:
X (z )  z  zI  A  x (0)   zI  A  BU (z )  X zi (z )  X zs (z )
1 1



 


X zi ( z ) X zs ( z )

H (z )

Y (z )  C z  zI  A  x (0)  [C  zI  A  B  D ]U (z )  Y zi (z )  Y zs (z )
1 1

   


Y zi ( z ) Y zs ( z )

H (z )  C  zI  A  B  D  transfer function
1

Automatic Control – M. Canale AC_INF_L03 16


Z-domain solution of discrete time LTI systems
All the Z-transform expressions of the solution of discrete time
LTI system are made up by real rational functions.
The inverse Z-transform can thus be performed by suitably using
the PFE procedure

z 5 4
F (z )   
(z  0.5)(z  0.4) z  0.5 z  0.4


-1 5 
Z    ??
z  0.5 
 4 
Z -1    ??
z  0.4 

Automatic Control – M. Canale AC_INF_L03 17


Z-domain solution of discrete time LTI systems
To apply the PFE procedure to compute the inverse Z-transform,
a preliminary step is needed.
F (z )
Fɶ (z ) 
z z
F (z ) 
(z  0.5)(z  0.4)
F (z ) 1 10 10
Fɶ (z )    
z (z  0.5)(z  0.4) z  0.5 z  0.4

10z 10z
F (z )  z  Fɶ (z )  
z  0.5 z  0.4

F (z )  Z 1  z
10z 10z 
f (k )  Z 1

  0.5

z  0.4 
 k

  10  0.5  10  0.4  (k )
k

Automatic Control – M. Canale AC_INF_L03 18


Z-domain solution of discrete time LTI systems
Example
 3 0  1 
x (k  1)    x (k )    u (k ) Compute xzi(k) and
3.5 0.5 2 x(k) when:
y (k )  1 1 x (k ) T
u (k )  2 (k ), x (0)  1 2

X (z )  z  zI  A  x (0)   zI  A  BU (z )
1 1

 1 
1
 0 
 z 0   3 0   z  3
(zI  A)1       
0 z  3.5 0.5   3.5 1 
 (z  3)(z  0.5) z  0.5 

Automatic Control – M. Canale AC_INF_L03 19


Z-domain solution of discrete time LTI systems
X (z )  z  zI  A  x (0)   zI  A  BU (z )
1 1

 1   1 
 0   
z  3  1  z  3
X zi (z )  (zI  A)1 x (0)  z     z  
 3.5 1  2  2z  2.5 
 (z  3)(z  0.5) z  0.5   (z  3)(z  0.5) 
 1 
 z 3 
z 
 1  1 
 z  3 z  0.5 

 3k 
x zi (k )     (k )
3  (0.5) 
k k

Automatic Control – M. Canale AC_INF_L03 20


Z-domain solution of discrete time LTI systems
 1 
 0 
z 3 1 2z
X zs (z )  (zI  A)1BU (z )     
 3.5 1  2 z  1
 (z  3)(z  0.5) z  0.5 
 2   3 1 
    
(z  3)(z  1) z  3 z 1
z z 
 4z  19   3  5  4 
 (z  3)(z  0.5)(z  1)   z  3 z  1 z  0.5 
 

 3k  1 
x zs (k )     (k )
3  4  (0.5)  5
k k

 2  3k  1 
x (k )  x zi (k )  x zs (k )     (k )
2  3  5  (0.5)  5
k k

Automatic Control – M. Canale AC_INF_L03 21


Z-domain solution of discrete time LTI systems

% define system matrices


A=[3 0;-3.5 -0.5];
B=[1;2];
C=[1 -1];

%define initial condition


x0=[1;-2];

%define z-transform variable


z=tf('z',1);

%define z-transform of u(k)


U=2*z/(z-1);

Automatic Control – M. Canale AC_INF_L03 22


Z-domain solution of discrete time LTI systems
%compute zero-input state response
X_i = minreal(zpk((z*inv(z*eye(2)-A)*x0)),1e-3)

X_i =
From input to output...
z
1: -----
(z-3)
-2 z (z-1.25)
2: -------------
(z-3) (z+0.5)

Sample time: 1 seconds


Discrete-time zero/pole/gain model.

Automatic Control – M. Canale AC_INF_L03 23


Z-domain solution of discrete time LTI systems
The modified PFE procedure to compute the inverse Z-transform,
can be simplified in MatLab through the statement residuez.

% compute residues of PFE


% for z-domain use residuez instead of residue

[num_X_i_1,den_X_i_1] = tfdata(X_i(1),'v'); %1st state


[r1,p1,k1]=residuez(num_X_i_1,den_X_i_1)

r1 =
1.0000
p1 =
3
k1 =
0

Automatic Control – M. Canale AC_INF_L03 24


Z-domain solution of discrete time LTI systems
[num_X_i_2,den_X_i_2] = tfdata(X_i(2),'v'); %2nd state
[r2,p2,k2]=residuez(num_X_i_2,den_X_i_2)

r2 =
-1.0000
-1.0000
p2 =
3.0000
-0.5000
k2 =
0

Automatic Control – M. Canale AC_INF_L03 25


Z-domain solution of discrete time LTI systems
%compute zero-state state response
X_f = minreal(zpk((inv(z*eye(2)-A)*B)*U),1e-3)

X_f =

From input to output...


2 z
1: -----------
(z-3) (z-1)

4 z (z-4.75)
2: -------------------
(z-3) (z-1) (z+0.5)

Sample time: 1 seconds


Discrete-time zero/pole/gain model.

Automatic Control – M. Canale AC_INF_L03 26


Z-domain solution of discrete time LTI systems
% compute residues of PFE
[num_X_f_1,den_X_f_1] = tfdata(X_f(1),'v'); %1st state
[r1,p1,k1]=residuez(num_X_f_1,den_X_f_1)
r1 =
1.0000
-1.0000
p1 =
3
1
k1 =
0

Automatic Control – M. Canale AC_INF_L03 27


Z-domain solution of discrete time LTI systems

[num_X_f_2,den_X_f_2] = tfdata(X_f(2),'v'); %2nd state


[r2,p2,k2]=residuez(num_X_f_2,den_X_f_2)
r2 =
-1.0000
5.0000
-4.0000
p2 =
3.0000
1.0000
-0.5000
k2 =
0

Automatic Control – M. Canale AC_INF_L03 28


Transfer function of discrete time
dynamical systems

Automatic Control – M. Canale


Discrete-time LTI systems transfer function
The transfer function of a discrete time LTI system is expressed as a
real rational function of the form

N H (z ) bm z m  bm 1z m 1  …  b1z  b0
H (z )   ,m  n
DH (z ) z n  a n 1z n 1  a n 2 z n 2  …  a 0

• m < n  strictly proper


• m ═ n  proper
• Roots of NH (z )  system zeros
• Roots of DH (z )  system poles

Automatic Control – M. Canale AC_INF_L03 30


Discrete time transfer functions
• Definition of discrete time transfer functions with MatLab
N (z ) 1
H (z )   2
D (z ) z  1.7 z  0.72
• Define the variable z using tf statement and the sampling time T
>> T = 1;
>> z = tf(′z′,T);

• Define the transfer function as


>> H = 1/(z^2-1.7*z+0.72)
H = 1
------------------
z^2 - 1.7 z + 0.72
Sample time: 1 seconds
Discrete-time transfer function.

Automatic Control – M. Canale AC_INF_L03 31


The system transfer function: zero-pole-gain form

H (z )  K
 z  z1  z  z2 ⋯ z  zm 
 z  p1  z  p2 ⋯ z  pn 

• z1, … , zm  Zeros of H(z)


• p1, … , pn  Poles of H(z)
• K  gain

2z  2.1 z  1.05
Example: H (z )   2
z  0.7z  0.1
2
(z  0.5)(z  0.2)

Automatic Control – M. Canale AC_INF_L03 32


Zero-pole-gain form

• Computation of the zero-poles-gain form of a transfer function


using MatLab
2z  2.1
H (z ) 
z  0.7z  0.1
2

Use the statement zpk


>> z=tf('z',1);
>> H=(2*z-2.1)/(z^2-0.7*z+0.1);
>> zpk(H)
ans =
2 (z-1.05)
---------------
(z-0.5) (z-0.2)
Sample time: 1 seconds
Discrete-time zero/pole/gain model.

Automatic Control – M. Canale AC_INF_L03 33


Zero-pole-gain form

• Use the statement zpkdata to compute zeros, poles and gain of


zero-pole-gain form a given transfer fuction
>> z=tf('z',1);
>> H=(2*z-2.1)/(z^2-0.7*z+0.1);
>> [zH,pH,kH]=zpkdata(H,'v')
zH =
1.0500
pH =
0.5000
0.2000
kH =
2

Automatic Control – M. Canale AC_INF_L03 34


Discrete-time LTI systems transfer function

Y (z ) bm z m  bm 1z m 1  …  b1z  b0
H (z )   ,m  n
U (z ) z n  a n 1z n 1  a n 2 z n 2  …  a 0
Let’s divide both numerator and denominator by z n :
bm z m n  bm 1z m n 1  …  b0 z n
H (z ) 
1  a n 1z 1  a n 2 z 2  …  a 0 z n
The Z-transform of Y (z ) is given by

Y (z )  a n 1z 1Y (z )  a n 2 z 2Y (z )  …  a 0 z nY (z ) 


 bm z m nU (z )  bm 1z m 1nU (z )  …  b0 z nU (z )

Automatic Control – M. Canale AC_INF_L03 35


Discrete-time LTI systems transfer function
Y (z )  a n 1z 1Y (z )  a n 2 z 2Y (z )  …  a 0 z nY (z ) 
 bm z m nU (z )  bm 1z m 1nU (z )  …  b0 z nU (z )

Recalling that:
Z 1 {z  ℓF (z )}  f (k  ℓ)
we can express the current output y (k ) by means of the finite
difference equation
y (k )  a n 1y (k  1)  a n 2 y (k  2)  …  a 0 y (k  n ) 
 bmu (k  n  m )  bm 1u (k  n  m  1)  …  b0u (k  n )

The current output y (k ) of a discrete time LTI system can be


recursively computed through the values of the input and output
signals at the previous sampling instants.

Automatic Control – M. Canale AC_INF_L03 36


Example
Consider a discrete-time LTI system described by a difference
equation
y (k )  a1y (k  1)  a 0y (k  2)  b1u (k )  b0u (k  1)

Applying the Z-transform we obtain

Y (z )   a1z 1  a 0 z 2 Y (z )  b1  b0 z 1 U (z )

the corresponding transfer function is


Y (z ) b1  b0 z 1
H (z )  
U ( z ) 1  a 1 z 1  a 0 z 2

Automatic Control – M. Canale AC_INF_L03 37


Computation example
Given the following transfer function of an LTI dynamical system:

z
H (z ) 
z  0.5z  0.25
2

compute the output response y (k ) when u (k ) =  (k ) (unit impulse)


The solution in z-domain can be computed as

Y (z )  H (z )U (z )
with
U (z )  1

Automatic Control – M. Canale AC_INF_L03 38


Computation example
z 1
Y (z )  H (z )U (z )   1 z 2
2
z 0.5 z
  0.25
 U (s ) z  0.5z  0.25
H (s )

Y (z ) 1
Yɶ(z )   2 
z z  0.5z  0.25
R R*
  , R   1.1547 j
z  0.25  0.433 j z  0.25  0.433 j

Rz R *z
Y (z )  zYɶ(z )  
z  0.25  0.433 j z  0.25  0.433 j

Automatic Control – M. Canale AC_INF_L03 39


Z-domain solution of discrete time LTI systems
Inverse Z-transform, in the presence of a couple of complex
conjugate roots.
Compute the PFE as
Rz R *z
F (z )   ,    j   n e jq
z  z  *

then:
 Rz R *z 
f (k )  Z 
1
 *
 2M n k cos q k   
 z   z   
M | R |,   R

Automatic Control – M. Canale AC_INF_L03 40


Computation example

 1.1547 j z 1.1547 j z
Y (z )  zYɶ(z )  
z  0.25  0.433 j z  0.25  0.433 j

Rz R *z
Y (z )   ,    j   n e jq
z  z  *

  0.25  0.433 j  n    0.5, q    2.0944


R   1.1547 j  M  R  1.1547,   R  1.5708

y (k )  2M n k cos q k     2.3094  0.5k cos  2.0944 k  1.5708 

Automatic Control – M. Canale AC_INF_L03 41


Computation example: MatLab procedure

%define z-transform variable


z=tf('z',1);
% define tf
H = z/(z^2 + 0.5*z + 0.25);
%define z-transform of u(k)
U=1;

Automatic Control – M. Canale AC_INF_L03 42


Computation example: MatLab procedure
%compute zero-input state response
Y = minreal(zpk(H*U),1e-3)

Y =
z
-------------------
(z^2 + 0.5z + 0.25)
Sample time: 1 seconds
Discrete-time zero/pole/gain model.

Automatic Control – M. Canale AC_INF_L03 43


Computation example: MatLab procedure
% compute residues of PFE
% for z-domain use residuez instead of residue
[num_Y,den_Y] = tfdata(Y,'v');
[r,p,k]=residuez(num_Y,den_Y)
r =
0.0000 - 1.1547i
0.0000 + 1.1547i
p =
-0.2500 + 0.4330i
-0.2500 - 0.4330i
k =
0

Automatic Control – M. Canale AC_INF_L03 44


Computation example: MatLab procedure
% compute "ingredients" of the response
nu = abs(p(1))
theta = angle(p(1))
M = abs(r(1)), M2=2*M
phi = angle(r(1))

nu = 0.5000
theta = 2.0944
M = 1.1547
M2 = 2.3094
phi = -1.5708

Automatic Control – M. Canale AC_INF_L03 45


Automatic Control

Stability of discrete time dynamical systems

Automatic Control – M. Canale


Stability of LTI systems

Stability is the most important property of a dynamical system. It


deals with the following problems

• is the zero input (i.e. u (k ) = 0) state response xzi (k ) bounded


for any initial state x0  Rn ?  internal stability
• is the zero state (i.e. x0 = 0) system output response y (k )
bounded for any bounded input u (k ) ?  BIBO stability

Stability prevents the relevant variables of a physical system to assume


arbitrarily large values in the presence of arbitrary initial condition and
bounded inputs  system damages.

The study of stability involves the introduction of formal definitions and


the development of (easy to check) necessary and sufficient conditions.

Automatic Control – M. Canale AC_INF_L04 2


Internal stability of LTI systems

Definition (Internal stability of LTI system)


An LTI system is internally stable if the zero input state response
xzi (k ) is bounded for any initial state x0.

Definition (Asymptotic stability of LTI system)


An LTI system is asymptotically stable if the zero input response
xzi (k ) converges to 0, as k  ∞, for any initial state x0.

Definition (Instability of LTI system)


An LTI system is unstable if it is not stable (i.e. if the zero input
state response xzi (k ) is unbounded).

Automatic Control – M. Canale AC_INF_L04 3


Zero input solution: example 1
Zero input response computation
 3 0  1  T
x (k  1)    x (k )    u (k ) x (0)  1 2
3.5 
0.5 2
  

A B

 3k 
 x zi (k )   k k
 (k )
3  (0.5) 

xzi (k )  linear combination of the time sequences 3k , (0.5)k


The geometric sequences 3k , (0.5)k are referred to as the system
natural modes. They are associated with the eigenvalues of A as

 3 0   1  3
 (A)       1k , 2k  3k ,(0.5)k
 3.5 0.5  2  0.5
  

Automatic Control – M. Canale AC_INF_L04 4


Zero input solution: example 2
Zero input response computation
 0 1  1 T
x (k  1)    x (k )    u (k ) x (0)  1 0
0.25 0.5
 1

A B

1.1547  0.5k cos(2.0944k  0.5236)


 x zi (k )     (k )
 0.577  0.5 cos(2.0944k  1.5708) 
k

xzi (k )  linear combination of the time sequence 0.5k cos(2.0944k  ⋯)


The sequence 0.5k cos(2.0944k  ⋯) is the natural mode. It is
associated with the eigenvalues of A as
 0 1 
 (A)      1,2  0.25  0.433 j  0.5e  j 2.0944
 0.25 0.5 
 

Automatic Control – M. Canale AC_INF_L04 5


Zero input solution: example 3
Zero input response computation
1 1 1  T
x (k  1)    x (k )    u (k ) x (0)  1 1
0 1
 0
 
A B

2  1k  k 
 x zi (k )     (k )
 1 
k

xzi (k )  linear combination of the time sequences 1k , k


The time sequences 1k , k are the system natural modes.
 1 1 
 (A)        1,2  1, 1,2  2

 0 1 
p A ( )   2  caharacteristic polynomial
i  algebraic multiplicity

Automatic Control – M. Canale AC_INF_L04 6


Zero input solution: example 3

X zi (z )  z  zI  A  x (0) 
1

 z z   z (z  2) 
 z  1 (z  1)2   1   (z  1)2 
     
 0 z  1  z 
 
z  1   z  1 
 2z z 
 z  1  (z  1)2 
 
 z 
  
z 1
2  1  k 
k

 x zi (k )     (k )
 1 
k

Automatic Control – M. Canale AC_INF_L04 7


Zero input solution: example 3

In this case the eigenvalue 1,2  1, 1,2  2

gives rise to the natural modes 1k  1, k

Automatic Control – M. Canale AC_INF_L04 8


Zero input solution: example 4
Zero input response computation
1 0 1  T
x (k  1)    x (k )    u (k ) x (0)  1 1
0 1
 0

A B

 1k 
 x zi (k )   k   (k )
1 
xzi (k )  linear combination of the time sequence 1k

The time sequence 1k is the unique natural mode of the system.


 1 0  
 (A)        1,2  1, 1,2  2

 0 1  
p A ( )   2  caharacteristic polynomial
i  algebraic multiplicity

Automatic Control – M. Canale AC_INF_L04 9


Zero input solution: example 4

X zi (z )  z  zI  A  x (0) 
1

 z   z 
z  1 0 
 1   z 1 
     
 0 z  1  z 
 z  1  z  1

1 
k

 x zi (k )   k   (k )
1 

Automatic Control – M. Canale AC_INF_L04 10


Zero input solution: example 4

In this case the eigenvalue 1,2  1, 1,2  2

gives rise to a single natural mode 1k  1

Automatic Control – M. Canale AC_INF_L04 11


Comments on examples 3 and 4

 1 1 
z 1 ( z  1) 2 
1
exam ple 3  ( zI  A )     q A ( z )  ( z  1) 2 ,  1,2  2
 1 
 0 z  1 

 1 
 0 
example 4  ( zI  A ) 1
 z 1  1
  q A ( z )  ( z  1), 1,2
 0 1 
 z  1 

qA(z ) is the minimal polynomial of A is computed as the least common multiple of


all the denominators in (zI  A)-1 ;  ’i   i is the minimal polynomial multiplicity
 The number of natural modes associated with a given eigenvalue depends on its
minimal multiplicity.

Automatic Control – M. Canale AC_L04 12


Natural modes of LTI systems
The zero input state response is a linear combination of the natural
modes of the system.

Internal stability properties of an LTI system can be studied through


the boundedness characteristics and asymptotic behavior
(i.e. for k  ∞ ) of the natural modes.

It is important to classify natural modes according to


 bounded time course.
 asymptotic behavior.

Automatic Control – M. Canale AC_INF_L04 13


Natural modes classification

• A natural mode m (k ) is said convergent if:


limk  m (k )  0

• A natural mode m (k ) is said bounded if  M  R : k ≥ 0,


0  m (k )  M  

• A natural mode m (k ) is said divergent if


limk  m (k )  

Automatic Control – M. Canale AC_INF_L04 14


Modal analysis for LTI DT systems: synthetic resume
Denote with i (A ),i = 1, …, n the i th eigenvalue of matrix A then

 The natural mode associated with eigenvalue i is bounded if


|i (A )| = 1 and ’(i (A )) = 1 (*)
 The natural mode associated with eigenvalue i is convergent if
|i (A )| < 1
 The natural mode associated with eigenvalue i is divergent if
|i (A )| > 1 OR |i (A )| = 1 and ’(j (A )) > 1

(*) ’(i (A ))  minimal polynomial multiplicity

Automatic Control – M. Canale AC_INF_L04 15


Internal stability of LTI systems
Definition (Internal stability of LTI system)
An LTI system is internally stable if the zero input response xzi(k)
is bounded for any initial state x0.

Since the zero input response is a linear combination of the natural


modes of the system 

Result (Internal stability of LTI system and natural modes)


An LTI system is internally stable if and only if all the natural
modes are bounded.

Automatic Control – M. Canale AC_INF_L04 16


Internal stability of LTI systems
Since the boundedness of the natural modes depends on the system
eigenvalue characteristics 

Result (Internal stability of LTI system and eigenvalues)


An LTI system is internally stable if and only if all system
eigenvalues have magnitude  1 and those with magnitude = 1 have
unitary minimal polynomial multiplicity.

Automatic Control – M. Canale AC_INF_L04 17


Asymptotic stability of LTI systems
Definition (Asymptotic stability of LTI system)
An LTI system is asymptotically stable if the zero input response
xzi(k) converges to 0, as k  ∞, for any initial state x0

Since the zero input response is a linear combination of the natural


modes of the system 

Result (Asymptotic stability of LTI system system and natural modes)


An LTI system is asymptotically stable if and only if all the
natural modes are convergent.

Automatic Control – M. Canale AC_INF_L04 18


Asymptotic stability of LTI systems
Since the convergence of the natural modes depends on the system
eigenvalue characteristics 

Result (Asymptotic stability of LTI system and eigenvalues)


An LTI system is asymptotically stable if and only if all system
eigenvalues have magnitude < 1.

Automatic Control – M. Canale AC_INF_L04 19


instability of LTI systems
Definition (instability of LTI system)
An LTI system is unstable if it is not stable (i.e. the zero input state
response xzi(k) is unbounded)

Since the zero input response is a linear combination of the natural


modes of the system 

Result (instability of LTI system system and natural modes)


An LTI system is unstable if and only if there exists at least one
divergent mode.

Automatic Control – M. Canale AC_INF_L04 20


instability of LTI systems
Since the unboundedness of the natural modes depends on the
system eigenvalue characteristics 

Result (instability of LTI system and eigenvalues)


An LTI system is unstable if and only if
- either there is at least one eigenvalue having magnitude > 1.
- or all system eigenvalues have magnitude  1 and those with
magnitude = 1 have minimal polynomial multiplicity greater than 1.

Automatic Control – M. Canale AC_INF_L04 21


Internal stability of discrete time LTI systems
Denote with i (A ),i = 1, …, n the i th eigenvalue of matrix A of the
LTI discrete time system x (k  1)  Ax (k )  B u (k )

Result (Internal stability of discrete time LTI systems)


 A discrete time LTI system is internally stable if and only if:
|i (A )|  1, i = 1, …, n and ’(j (A )) = 1 for all the eigenvalues such that
|i (A )| = 1 (’(·) is the minimal polynomial multiplicity)
 A discrete time LTI system is asymptotically stable if and only if:
|i (A )| < 1, i = 1, …, n
 A discrete time LTI system is unstable if and only if:
i : |i (A )| > 1 OR |i (A )|  1, i = 1, …, n and ’(j (A )) > 1 for some j
such that |j (A )| = 1 (’(·) is the minimal polynomial multiplicity)

Automatic Control – M. Canale AC_INF_L04 22


BIBO stability of discrete time LTI systems
Definition (BIBO stability of LTI system)
A Single Input Single Output (SISO)* LTI system is bounded-input
bounded-output (BIBO) stable if the zero state output response is
bounded for all bounded inputs
uM (0, ), y M  (0, ):
u (k )  uM , k  0  y (k )  y M , k  0
Result (BIBO stability of LTI system)
A discrete-time LTI system is BIBO stable if and only if all the poles
of its transfer function H (z ) lie strictly inside the unit circle
|pi | < 1, i =1,…,n , where pi are the poles of H (z )

* for simplicity of notation and development, the Single Input Single Output case is considered here. The results can be
extended to MIMO systems. Details can be found in C.T. Chen, “Linear systems analysis and design”
Automatic Control – M. Canale AC_INF_L04 23
Appendix: natural modes and modal
analysis of discrete time LTI
systems

Automatic Control – M. Canale


Analysis of the zero input state response

Let us analyze the structure of the zero-input state response xzi (k )


starting from its expression in the Z-transform domain
Z
x zi (k )  A k x (0)  X zi (z )  z (zI  A )1 x (0)
where
1 a ij (z ) 
(zI  A ) 1  Adj (zI  A )  
det(zI  A ) p A (z )

Automatic Control – M. Canale AC_INF_L04 25


Analysis of the zero input state response
1 a ij (z ) 
(zI  A ) 1  Adj (zI  A )  
det(zI  A ) p A (z )

pA (z ) is the characteristic polynomial of the matrix A  Rn n

p A (z )  (z  1 )  (z  2 )  ⋯ (z  r ) 
1 2 r

deg(pA (z )) = n

pA (z ) has, in general, r  n distinct roots

spec(pA ) = {1, 2,  ,r}  spectrum of the polynomial

i is the algebraic multiplicity of the eigenvalue i

Automatic Control – M. Canale AC_INF_L04 26


Analysis of the zero input state response
1 0 0 
A  0 1 1  , pA (z )  det(zI  A)  (z  1)2 (z  0.5),
0 0 0.5
1  1, 1  2, 2  0.5, 2  1
1
z  1 0 0 
 
z (zI  A)  z  0 z  1
1
1  

 0 0 z  0.5

a11 (z ) a12 (z ) a13 (z ) 


z a (z ) a (z ) a (z )

(z  1)2 (z  0.5)  21 22 23

a31 (z ) a32 (z ) a33 (z )

Automatic Control – M. Canale AC_INF_L04 27


Analysis of the zero input state response
z a ij (z ) 
z (zI  A )1  Adj (zI  A )  z 
det(zI  A ) p A (z )

a ij (z )  (1) i  j a ji (z )

aji (z ) is the minor of (zI  A), obtained as the determinant of the


(n 1)×(n 1) submatrix that results from deleting row j and column i
of (zI  A)

Note that: deg(aji (z ) )  n 1

Automatic Control – M. Canale AC_INF_L04 28


Analysis of the zero input state response

1 0 0 
A  0 1 1  , pA (z )  det(zI  A)  (z  1)2 (z  0.5),
0 0 0.5
1  1, 1  2, 2  0.5, 2  1

1
z  1 0 0 
 z (zI  A)  z 0
1  z 1 1  
 
 0 0 z  0.5
(z  1)(z  0.5) 0 0 
z 
 0 (z  1)(z  0.5) z  1 
(z  1) (z  0.5)
2  
 0 0 (z  1)2 

Automatic Control – M. Canale AC_INF_L04 29


Analysis of the zero input state response

Thus, the generic entry fi,j (z ) of the matrix (zI  A)-1 is given by:

a ij (z )
f ij (z ) 
p A (z )

 z 
z  1 0 0 
1 0 0   
   z z 
 A  0 1 1   z (zI  A)  0
1

 z  1 (z  1)(z  0.5) 
0 0 0.5  
 0 z 
0
 z  0.5 

Automatic Control – M. Canale AC_INF_L04 30


Analysis of the zero input state response
a ij (z )
f ij (z ) 
p A (z )
In general, some roots of pA (z ) can be the same as the ones of aij (z )
The common factors to pA (z ) and aij (z ) can be deleted, obtaining:
a ij' (z )
f ij (z ) 
q ij (z )
The minimal polynomial of A is defined as the least common multiple
q A (z )  l .c .m . q ij (z )  , i , j  1,… , n
qA (s ) can be written as
q A (z )  (z  1 )  ' (z  2 )  ' ⋯ (z  r )  '
1 2 r

 ’i   i is the minimal polynomial multiplicity of the eigenvalue i


 deg(qA (z ) )  deg(pA (z ) ) = n

Automatic Control – M. Canale AC_INF_L04 31


Analysis of the zero input state response

 z 
z  1 0 0 
 
 z z 
 z (zI  A)  0 1

 z  1 (z  1)(z  0.5) 
 
 0 z 
0
 z  0.5 
 q A (z )  (z  1)(z  0.5)

Automatic Control – M. Canale AC_INF_L04 32


Analysis of the zero input state response
Computing the PFE to the generic entry fi,j (z ) of z(zI  A)-1 :
a ij' (z )
f ij (z ) 
(z  1 )  ' (z  2 )  ' ⋯ (z  r )  'r
1 2

we obtain:
r1,1z r1,2z r1, ' z
f ij (z )   …  1

z  1 (z  1 ) 2
(z  1 )  ' 1

r z r2,2z r2,  ' z


 2,1  … 2
…
z  2 (z  2 ) 2
(z  2 )  ' 2

rr ,1z rr ,2 z rr ,  ' z
…   … r

z  r (z  r )2 (z  r )  ' r

The inverse Z-transform of the generic term fij (z ) is … 

Automatic Control – M. Canale AC_INF_L04 33


Analysis of the zero input state response
 k  k   ' 1
f ij (k )  r1,11k  r1,2k 1k 1 …  r1, '   1
1

  '1  1 
1

 k  k   ' 1
r2,12k  r2,2k 2k 1 …  r2, '   2
2
…
  '2  1 
1

 k  k   ' 1
rr ,1r k  rr ,2k r k 1 …  rr , '   r
r

r

 r '  1 

 k  k   ' 1 k (k  1) ⋯ (k   ' 2) k   ' 1


  i  i
i i

  'i  1  ( i ' 1)!

Automatic Control – M. Canale AC_INF_L04 34


Analysis of the zero input state response
Summing up, we have:
 f 11 (z ) f 12 (z ) ⋯ f 1n (z ) 
 
1  f 21 (z ) ⋱ f ij (z ) ⋮ 
X zi (z )  z (zI  A ) x (0)  x (0)
 ⋮ ⋯ ⋱ ⋮ 
 
f n 1 (z ) … … f nn (z ) 

f 11 (k ) f 12 (k ) ⋯ f 1n (k ) 
 
 f 21 (k ) ⋱ f ij (k ) ⋮ 
 x zi (k )  A x (0) 
k
x (0)
 ⋮ ⋯ ⋱ ⋮ 
 
f n 1 (k ) … … f nn (k ) 

Automatic Control – M. Canale AC_INF_L04 35


Natural modes of LTI systems
Thus, each component of the zero-input state response is a linear
combination of the following functions.
 k  k   ' 1
1  m1,1 (k )  1k , m1,2 (k )  k 1k 1 ,… , m1, ' (k )    1
1

  '1  1 
1

 k  k   ' 1
2  m 2,1 (k )  2k , m 2,2 (k )  k 2k 1 ,… , m 2, ' (k )    2
2

  '2  1 
2


 k  k   ' 1
r  m r ,1 (k )  r k , m r ,2 (k )  k r k 1 ,… , mr , ' (k )    r
r

  'r  1 
r

All the functions mlk (t ), l = 1,…, r, k = 1, …, ’r are referred to as


the system natural modes

Automatic Control – M. Canale AC_INF_L04 36


Natural modes of discrete time LTI systems

The natural modes of the LTI system


x (k  1)  Ax (k )  B u (k )
associated with the i th distinct eigenvalue i (i = 1,,r ) with
minimal polynomial multiplicity  ’i , are then the following
functions
mij (k ) (i = 1,,r , j = 1,,  ’i )

 k  k   ' 1
mi ,0 (k )  i k , mi ,1 (k )  k i k 1 ,… , mi , ' (k )    i
i

  'i  1 
i

 k  k   ' 1 k (k  1) ⋯ (k  (  ' 2)) k   ' 1


  i  i
i i

  'i  1  ( i ' 1)!

Automatic Control – M. Canale AC_INF_L04 37


Natural modes of discrete time LTI systems
The natural modes of the LTI system
x (k  1)  Ax (k )  B u (k )
associated with a couple of complex conjugate eigenvalues of
the form  = 0  j0 = ne  jq having minimal polynomial
multiplicity  ’, are given by the following functions
mj (k ) (j = 1,,  ’)

m 0 (k )  n k cos(q k   ), m1 (k )  k n k 1 cos(q (k  1)   ),…


 k  k   ' 1
… , m  ' (k )   n cos(q (k   ' 1)   )
  ' 1 

Automatic Control – M. Canale AC_INF_L04 38


Modal analysis of discrete time LTI systems
The natural mode k, associated with the eigenvalue   R
having unitary multiplicity is
• Geometrically convergent if || < 1 (Example: 0.5 k, (-0.5) k )
• Bounded if || = 1 (Example: 1k =1, (-1) k )
• Geometrically divergent if || > 1 (Example 2 k, (-2) k )

Note that, if Re() < 0 , the corresponding mode gives rise to a


sequence of samples (alternate mode) whose sign changes at
every sample time.

Automatic Control – M. Canale AC_INF_L04 39


Modal analysis of discrete time LTI systems

The natural modes of the form n k cos(qk ), n k sin(qk ), associated


 = ne  jq  C having unitary
with the eigenvalue  =   j
multiplicity are:
• Geometrically convergent if || < n < 1 (Example 0.5 k cos(k ))
• Bounded (oscillating) if || = n  1, Arg() = q  0
(Example sin(5k ))
• Geometrically divergent if || = n > 1 (Example 1.5 k cos(k ))

Automatic Control – M. Canale AC_INF_L04 40


Modal analysis of discrete time LTI systems

Automatic Control – M. Canale AC_INF_L04 41


Modal analysis of discrete time LTI systems

Automatic Control – M. Canale AC_INF_L04 42


Modal analysis of discrete time LTI systems

Automatic Control – M. Canale AC_INF_L04 43


Modal analysis of discrete time LTI systems

The ’ natural modes of the form k(k-1)..(k- ’ -2)k- ’+1, …, k k-1 ,


associated with the eigenvalue   R having unitary minimal
polynomial multiplicity ’ are
• Geometrically convergent if || < 1
(Example: k 0.5 k-1, k (-0.5) k-1)
• Polynomially divergent if || = 1 (Example: k 1 k-1 = k )
• Geometrically divergent if || > 1
(Examples: k 1.5 k-1, k (-1.5) k-1)

Note that, if Re() < 0 , the corresponding mode gives rise to a


samples sequence (alternate mode) whose sign changes at
every sample time.

Automatic Control – M. Canale AC_INF_L04 44


Modal analysis of discrete time LTI systems

The natural modes of the form


 k  k   ' 1  k  k   ' 1
 n cos(q (k   ' 1)),  n sin(q (k   ' 1))
  ' 1    ' 1 

 = ne  jq  C having
associated with the eigenvalue  =   j
minimal polynomial multiplicity ’ are:
• Geometrically convergent if || < n < 1
(Example k 0.5 k-1 cos(k-1 ))
• Polynomially divergent if || = n  1, Arg() = q  0
(Example: k cos(5(k-1)) )
• Geometrically divergent if || = n > 1
(Example: k 1.5 k-1 cos(k-1))

Automatic Control – M. Canale AC_INF_L04 45


Modal analysis of discrete time LTI systems

Automatic Control – M. Canale AC_INF_L04 46


Modal analysis: synthetic resume
Denote with i (A ),i = 1, …, n the i th eigenvalue of matrix A then

• The natural mode associated with eigenvalue i is bounded if


|i (A )| = 1 and ’(i (A )) = 1
• The natural mode associated with eigenvalue i is convergent if
|i (A )| < 1
• The natural mode associated with eigenvalue i is divergent if
|i (A )| > 1 OR |i (A )| = 1 and ’(j (A )) > 1

Automatic Control – M. Canale AC_INF_L04 47


Automatic Control

Sampled data systems

Automatic Control – M. Canale


The structure of a sampled data
control system

Automatic Control – M. Canale


The structure of a sampled data control system
e(kT) u(kT)
e(t) u(t)
r(t) control Actuator & y(t)
A/D D/A Plant
+ algorithm
-
T
T T
clock
digital controller
Sensor

 A sampled data control system operates partly in discrete time and


partly in continuous time.

 For simplicity, discrete time signals (i.e. discrete in time but


continuous in amplitude) will be considered.

Automatic Control – M. Canale AC_INF_L05 3


The structure of a sampled data control system

 In order to study sampled data system, we need to describe


 Signal sampling (A/D conversion).
 Data reconstruction (D/A conversion).
 Digital control algorithm.

Automatic Control – M. Canale AC_INF_L05 4


Signal sampling (A/D conversion)

Automatic Control – M. Canale


A/D conversion
 Basically, A/D conversion of a real continuous time signal f (t )
can be described through an ideal sampler, made up by a
switch that closes at every sampling time T and generates
the sampled signal f (kT ).

f (t )
f (t ) f (kT ) f (kT )
A/D
0 1 2 3 4 5 6 7 k
T
f (t ) f (kT )

Automatic Control – M. Canale AC_INF_L05 6


A/D conversion
 Ideal sampling is mathematically described by multiplying the
signal to be sampled f (t ) by a train of impulses dT (t ).

f (t ) dT (t )   d (t  kT )
k0 dT (t )

f (t ) f * (t )

0 t 0 T 2T 3T 4T 5T 6T 7T t
f (t ) Since
f (t ) d (t  kT )  f ( kT )d (t  kT )
f * (t )
f *(t ) is a sequence of impulses with
0 T 2T 3T 4T 5T 6T 7T t amplitudes equal to the samples of
f (t ) at every T.

Automatic Control – M. Canale AC_INF_L05 7


A/D conversion
f (t )

f * (t )

0 T 2T 3T 4T 5T 6T 7T t

 Thus, f *(t ) is an equivalent continuous time representation of the


sampled signal f (kT ).


f * (t )  f (t )  dT (t )  f (t )   d (t  kT ) 
k 0



 f (kT )d (t
k 0
 kT )
f (t )d (t  kT ) f ( kT )d (t  kT )

Automatic Control – M. Canale AC_INF_L05 8


A/D conversion
 The procedure described above is referred to as impulse sampling,
and is represented with the symbol.

T
f (t ) f * (t )
d T (t )

Automatic Control – M. Canale AC_INF_L05 9


Signal sampling
 The sampled signal f *(t ) can also been represented through the
Fourier series expansion of the train of impulses
 
f * (t )  f (t )  d (t  kT )  f (t )  d (t  kT )
k 0 k 

Since  d (t
k 
 kT ) is periodic, it can be expressed through the
Fourier series
  
1 T /2 1
k
 d (t

 kT ) 
k
 C k e jk  ,

s
Ck 
T  T k d (t
 /2

 kT )e jk  dt 
s

T
2
s   sampling angular frequency
T

Automatic Control – M. Canale AC_INF_L05 10


Signal sampling
The Laplace transform of the sampled signal f *(t ) is

 
1 1
f * (t )   f (t )e jk  t  L f * (t )
s
  F (s  jk s )
T k 
 T k 
L f (t )e s 0t
 F ( s  s 0
)

Automatic Control – M. Canale AC_INF_L05 11


Aliasing and Shannon’s sampling
theorem

Automatic Control – M. Canale


Signal sampling
The output of the sampler is a function of f (t ) defined only at
t =kT, k =0,1,2…  many different input signals can result in the
same output f *(t ).

f(kT)
f(t)
t (s)

This effect is called aliasing (i.e. an alias of the sampled signal is


reconstructed) and may occur for any type of signal if the
sampling rate is not properly chosen.

Automatic Control – M. Canale AC_INF_L05 13


Signal sampling
 To understand the aliasing effect, we refer to the spectrum (i.e.
the Fourier transform) F (j) of the signal to be sampled f (t ).

 j t
F ( j  )  F {f (t )} ≜  f (t )e dt
0

 For a real valued signal f (t ), we have F ( j  )  F ( j  )

 Amplitude and phase spectrum are defined as


F ( j  )  amplitude spectrum arg(F ( j  ))  phase spectrum

 Let’s define   min  : F ( j  )  0, 0  max  : F ( j  )  0


 The signal bandwidth is defined as
b  0  
if 0    band limited signal

Automatic Control – M. Canale AC_INF_L05 14


Signal sampling
A signal is said to be bandlimited if its amplitude spectrum goes to
zero for all frequencies beyond some threshold called the cutoff
frequency 0 .
In this situation, the amplitude spectrum can be represented as*

F ( j )

- ω0 ω0 ω

* The pictures of this part are taken from C. Greco, M. Indri, Controlli Automatici, Politecnico di Torino - CELM
(2007)
Automatic Control – M. Canale AC_INF_L05 15
Signal sampling
The inverse Fourier transform is given by
1 
F 1 {F ( j  )}  f (t )   F ( j  )e j t d  
2 0
1 

  F ( j  ) cos(t
0
 arg(F ( j  )))d 
Thus
 f (t ) can be expressed as an infinite sum of harmonic (sinusoidal)
components with angular frequency  .
 Each harmonic component of f (t ) is weighted by |F(j)|/.

Automatic Control – M. Canale AC_INF_L05 16


Signal sampling *
Now, let’s study the characteristics of the spectrum of the sampled
signal f *(t ) on the basis of the spectrum of f (t ).
The sampled signal f *(t ) is given by
 
f * (t )  f (t )  d (t  kT )  f (t )  d (t  kT )
k 0 k 

Since  d (t
k 
 kT ) is periodic, it can be expressed through the
 
Fourier series
k
 d (t

 kT ) 
k
 C k e jk  ,

s

2 1 T /2 
1
s 
T
 sampling "frequency" ,C k 
T T
 /2
k
 d (t

 kT )e jk  dt 
s

T
Then
 
1 1
f * (t )   f (t )e jk  t
s
 F f * (t )   F ( j (  k s ))
T k T k

Automatic Control – M. Canale AC_INF_L05 17


Signal sampling

1
F * ( j ) 
T
 F ( j (  k s ))
k 

Hence, the effect of ideal sampling is to replicate the original


central band spectrum centered at 0 with sideband spectra
centered at ±s, at ±2ωs, …

F * ( j )
1
T

..... .....

- ωs - ω0 ω0 ωs ω

Automatic Control – M. Canale AC_INF_L05 18


Signal sampling
Signal reconstruction through ideal low pass filtering (Shannon’s
theorem). 
s  20  0  s  N  Nyquist frequency
2
The central band spectrum and the sideband spectra are well
separated.
F * ( j )
ideal LP filter
1
T
..... .....

- ωs - ω0 ω0 ωs ω
 
  s
 s

2
N
2
N

The sampled signal f *(t ) can be reconstructed through ideal low


pass filtering.
*see AC_INF_L05 21-22 and, for more details, e.g. G.F. Franklin, J.D. Powell, M. Workman, Digital
control of dynamic systems, Addison Wesley, 1997
Automatic Control – M. Canale AC_INF_L05 19
Sampled signal reconstruction
 Using ideal low pass filtering, signal f (t ) can be reconstructed
through
 sin(s (t  kT ) / 2)
f (t )   k  f (kT )
s (t  T ) / 2
 Thus, to compute f (t ) past and future samples are needed 
ideal low pass filtering is not a causal procedure  it can not be
realized in practice.

Automatic Control – M. Canale AC_INF_L05 20


Sampled signal reconstruction *
Ideal low pass filtering can be described as
F * ( j ) ideal LP filter GI ( j)
T

1
T

 -ω 0 ω0  ω
 s
s

2 2
 s  1 sin(s t / 2)
T ,    s 
G I ( j  )e j t d  
G I ( j )   2 2 g I (t ) 
2 

s t / 2
0, elsewhere

Automatic Control – M. Canale AC_INF_L05 21


Sampled signal reconstruction *
Signal f (t ) can be reconstructed through the following procedure

f (t )  f * (t )  g I (t )   f * ( )g I (t   )d  
  sin(s (t   ) / 2)
  k
 
f (kT )d (  kT )
s (t   ) / 2
d 

  sin(s (t   ) / 2)
  k  f (kT )  d (  kT ) d 
s (t   ) / 2 
 d (t  kT ) h (t )dt h ( kT )

 sin(s (t  kT ) / 2)
  k  f (kT )
s (t  T ) / 2
To compute f (t ) past and future samples are needed  ideal low
pass filtering is not a causal procedure  it can not be realized in
practice.

Automatic Control – M. Canale AC_INF_L05 22


Signal sampling
If the hypotheses of the Shannon’s sampling theorem are not
satisfied, spectrum replications of f * overlap.

F * ( j )
1
T
..... .....

-2ω s - ω -s ω0 ω0 ω s 2ω s ω
 s
 s
2 2

Automatic Control – M. Canale AC_INF_L05 23


Signal sampling
The resulting spectrum is the sum of the central band and the
sideband spectra.

F * ( j )
1
T

..... .....

-2ω s - ω s- ω0 ω0 ω s 2ω s ω
 s
 s
2 2

Automatic Control – M. Canale AC_INF_L05 24


Signal sampling
F * ( j )

1
T
F * ( j (  s ))

F * ( j )
ω0 ω s ω
1
It happens that, at frequency ω1, both the central band |F*(jω1)|,
and the side band |F *(j(ωs-ω1))| contributions affect the
computation of the spectrum of f * .
In this case, the frequency ωa= |ωs-ω1| of the side band spectrum
is referred to as an alias of 1

Automatic Control – M. Canale AC_INF_L05 25


Signal sampling
Real signals are not band limited.
F ( j)

- ωs s s ωs ω

2 2
In such cases, spectra overlapping and aliasing effects can not be
avoided.

Aliasing effect can be prevented by low pass filtering the signal to


be sampled in order to remove its high frequency components.

Automatic Control – M. Canale AC_INF_L05 26


Signal sampling
Low pass filters, such as Butterworth, Bessel, Chebychev, with cut-
off frequency ωf such that ωf < ωs /2 can be suitably employed
to limit the bandwidth of the signal to be sampled.

In this case the employed filter is referred to as the


anti-aliasing filter.

F ( j )

- ω s s - f f s ωs ω
2 2

Automatic Control – M. Canale AC_INF_L05 27


The structure of a digital feedback control system
Sampled data feedback control system with anti-aliasing filter

e(kT) u(kT)
e(t) u(t)
r(t) Digital D/A and Actuator & y(t)
Filter A/D Plant
+ controller hold
-
T
T T
clock

Sensor
1

Automatic Control – M. Canale AC_INF_L05 28


Data reconstruction
(D/A conversion)

Automatic Control – M. Canale


D/A conversion
In principle, an ideal low-pass filter can reconstruct exactly the
original signal f (t ) from the sampled signal f *(t ) if the
bandwidth of the filter is ωs/2 and the highest frequency
component of f (t ), ω0 , is smaller than ωs/2.

However, since ideal filters can not be obtained through physically


realizable systems*, they can be approximated using data hold
devices.

Data holds are data reconstruction devices that approximate, in


some sense, an ideal low-pass filter.

*see AC_INF_L05 20-21 and, for more details, e.g. G.F. Franklin, J.D. Powell, M. Workman, Digital
control of dynamic systems, Addison Wesley, 1997
Automatic Control – M. Canale AC_INF_L05 30
D/A conversion
The simplest and most widely employed data reconstruction
device is the zero-order hold (ZOH) filter.

The ZOH clamps the output to a value equal to the input at the
current sampling instant and keeps it until the next sampling.

Automatic Control – M. Canale AC_INF_L05 31


D/A conversion
It is possible to derive the relationship between the sampled signal
f *(t ) and the ZOH output fh (t ) in terms of Laplace transform.

Consider as input of the ZOH is a unit impulse d (t ), the


corresponding output is a rectangular impulse given by
f h (t )   (t )   (t  T )
Thus
1  e Ts
F h (s )  L  (t )   (t  T ) 
s
The ZOH transfer function is then given by
1  e Ts
G ZOH (s )  ZOH filter approximates an ideal low pass filter
s

Automatic Control – M. Canale AC_INF_L05 32


D/A conversion *
Let us analyze the frequency response of the ZOH filter.
1  e Ts
G ZOH (s ) 
s
We have

1  e  j T e j T /2  e  j T /2 2T
G ZOH ( j  )   e  j T /2 
j  2j T
collect e  j T /2
multiply num and den by 2T

sin(T / 2)  j T /2
T e
T / 2

Automatic Control – M. Canale AC_INF_L05 33


D/A conversion *
1  e  j T sin(T / 2)  j T / 2
G ZOH ( j  )  T e
j T / 2

sin(T / 2) T
G ZOH ( j  )  T , G ZOH ( j  )    (sin(T / 2))
T / 2 2
Note that
T sin(T / 2)
0  1  G ZOH ( j  ) ≃ Te  j T /2 ,   [0, N ]
2 T / 2
T 2 
sin  
G ZOH ( j N ) G ZOH ( j s / 2) 1  2 2T   2 ≃ 3 dB
 
T T  T 2 
2
s 
T 2T

Automatic Control – M. Canale AC_INF_L05 34


D/A conversion *
1  e s 2
Example: G ZOH (s )   T  1 s , s   6.28 rad / s
s T
20
N = 3.14 rad/s

|GZOH(j)|/T (dB)
0
-20
The ZOH filter frequency -40
behavior is low pass -60

-80 -1 0 1 2
10 10 10 10

200

Arg(GZOH (j)) (°)


150

100

Note the phase lag of –180° 50

at s 0 -1
s = 6.28 rad/s
0 1 2
10 10 10 10
T

Automatic Control – M. Canale AC_INF_L05 35


D/A conversion

0.5
f(t)

0  continuous-time signal
-0.5

-1
0 20 40 60 80 100
t (s)
60

40
|F(j)|

20  spectrum
0

0 5 10 15 20 25
 (rad/s)
ω0 = 17 rad/s, ωs ≥ 2 ω0  T ≤ 2π/ωs = π/ ω0 = 0.185 s

Automatic Control – M. Canale AC_INF_L05 36


D/A conversion
ω0 =17 rad/s, ωs ≥ 2 ω0  T ≤ π/ ω0 = 0.185 s

T=0.18 s T=0.36 s T=0.72 s


1 1 1

0.5 0.5 0.5

f(t)

f(t)
f(t)

0 0 0

-0.5 -0.5 -0.5

-1 -1 -1
0 5 10 15 20 0 5 10 15 20 0 5 10 15 20
t (s) t (s) t (s)

full information little loss of relevant loss of


maintained information information

Automatic Control – M. Canale AC_INF_L05 37


Digital controller

Automatic Control – M. Canale


The digital controller
e(kT) u(kT)
E(z) U(z) The digital controller is realized through a
Digital
controller
proper discrete time transfer function in
the Z-transform domain.
bn  bn 1z 1  …  b0 z n 
C (z )  1 2 n

1  a n 1z  a n 2 z  …  a 0 z

n 1
bn z  bn 1z  …  b1z  b0
n 
 
z n  a n 1z n 1  a n 2 z n 2  …  a 0  e(kT) u(kT)
 E(z) U(z)
 C(z)
U (z )  C (z )E (z )  

bn  bn 1z 1  …  b0 z n 
 E (z ) 
1  a n 1z 1  a n 2 z 2  …  a 0 z n 


Automatic Control – M. Canale AC_INF_L05 39


The digital controller
Given the controller transfer function:

e(kT) u(kT)
U(z) bn  bn 1z 1  …  b0 z  n
E (z) C (z ) 
C(z) 1  an 1z 1  an 2z 2  …  a 0 z  n

The control input u (t ) at time kT is computed through the


difference equation:

u (k )  an 1u (k  1)  an 2u (k  2)  …  a 0u (k  n ) 


 bne (k )  bn 1e (k  1)  …  b0e (k  n )

Automatic Control – M. Canale AC_INF_L05 40


The digital controller
u (k )  an 1u (k  1)  an 2u (k  2)  …  a 0u (k  n ) 
 bne (k )  bn 1e (k  1)  …  b0e (k  n )

The difference equation above can be easily implemented through a


simple computer program (e.g. using C-code*):
ui=0;
•n  n for (j=1;j<n+1;j++) {
•va  [an-1 … a0] ui=ui-va[j]*vu[j]+vb[j]*ve[j];
}
•vb  [bn-1 … b0]
ui=ui+bn*ei;
•bn  bn
for (j=1;j<n-2;j++) {
•vu  [u(k-1) … u(k-n)] vu[j+1]=vu[j];
•ve  [e(k-1) … e(k-n)] ve[j+1]=ve[j];
•ei  e(k) }
•ui  u(k) vu[1]=ui;
ve[1]=ei;
* see C. Greco, M. Indri, Controlli Automatici, Politecnico di Torino - CELM (2007)

Automatic Control – M. Canale AC_INF_L05 41


Resume

Automatic Control – M. Canale


Analysis of a digital control system
e(t) e(kT) u(kT)
u(t)
r(t) Digital D/A & Actuator & y(t)
A/D
+ controller hold Plant
-
T
T T
clock
digital controller
Sensor
1

Sampled data control systems have been introduced using the


following assumptions:

 A/D conversion  ideal impulsive sampler


 Digital controller  z-domain transfer function
 D/A conversion  ZOH filter

Automatic Control – M. Canale AC_INF_L05 43


Analysis of a digital control system

Thus, the digital controller structure below

e(kT) u(kT)
e(t) u(t)
Digital D/A &
A/D
controller hold

can be represented as:

e(kT) u(kT)
e(t) u(t)
C(z) ZOH
T

Automatic Control – M. Canale AC_INF_L05 44


Analysis of a digital control system

Then, the following sampled data control system structure can be


considered:

e(t) e(kT) u(kT)


e(t) u(t)
r(t) y(t)
C(z) ZOH G(s)
+ T
-
T
T T
clock
digital controller
Sensor
1

Note the presence of both continuous time and discrete time signals
and dynamic systems (hybrid system)

Automatic Control – M. Canale AC_INF_L05 45


Analysis of a digital control system
To analyze the performance of the considered digital control system,
there are different approaches:

1. Convert the system G (s ) to its discrete-time equivalent G (z )


ignoring its inter-sampling behavior  discrete-time analysis

2. Model the digital controller in continuous time  continuous-time


analysis
e(kT) u(kT)
e(t) u(t)
C(z) ZOH
T
C(s)
3. Use numerical simulation (e.g., Simulink) (only provides an answer
for the specific case considered in the simulation)

Automatic Control – M. Canale AC_INF_L05 46


Analysis of a digital control system
In order to obtain a continuous time representation of the digital
controller,
e(kT) u(kT)
e(t) u(t)
C(z) ZOH
T

we recall the already introduced properties of each block:

 A/D conversion  ideal impulsive sampler


 Digital controller  z-domain transfer function
 D/A conversion  ZOH filter

Automatic Control – M. Canale AC_INF_L05 47


Analysis of a digital control system
 A/D conversion
e(kT)
E * (s )  E (z ) z e  E * (e Ts )  E * (e j T )
Ts

e(t) 
1 1
T E * (e j T ) 
T
E s ( j ) 
T h
 E ( j (  h s ))


 Digital controller
e(kT) u(kT)
C(z) C (z )  C (e j T )  U * (e j T )  C (e j T )E * (e j T )

 D/A conversion
u(kT)
u(t)
ZOH U ( j  )  G ZOH ( j  )U * (e j T )

Automatic Control – M. Canale AC_INF_L05 48


Analysis of a digital control system
We get e(kT) u(kT)
u(t)
e(t)
C(z) ZOH
T

1
U ( j  )  G ZOH ( j  )C (e j T ) E s ( j  )
T
Supposing e(t) band limited and recalling that ZOH behaves like a low
pass filter
1 1
U ( j  )  G ZOH ( j  )C (e j T ) E ( j  )  U (s )  G ZOH (s )C (e sT ) E (s )
 T   T

 
Cɶ ( s )
N

Thus, the digital controller is equivalent to an analog controller of the


form: 1 1
Cɶ (s )  G ZOH (s ) C (e sT )  G A /D (s ) 
  T T
D /A
A /D

Automatic Control – M. Canale AC_INF_L05 49


Automatic Control

Introduction to digital control


• Digital control design by emulation

Automatic Control – M. Canale


Digital control design by emulation: preliminary steps

Now, the problem of designing the controller C(z) for the sampled data
control system structure below is considered.

e(t) e(kT) u(kT)


e(t) u(t)
r(t) y(t)
C(z) ZOH G(s)
+ T
-
T
T T
clock
digital controller
Sensor
1

A possible procedure is suggested by the structure of the digital


controller  …

Automatic Control – M. Canale AC_INF_L06 2


Digital control design by emulation: preliminary steps
The structure of the digital controller is
e(t) u(t)
E(s) e(kT) u(kT) U(s)
C(z) ZOH
T
Cɶ (s )
and it is equivalent to an analog controller with transfer function
1
Cɶ (s )  G (s )C (e sT )
ZOH
T
Control performance depends on the frequency response (e.g. the
Nichols plot) of the (analog) loop function
1
Lɶ(s )  Cɶ (s )G (s ), Cɶ (s )  G ZOH (s ) C (e sT )
  T

D /A
A /D

1
 Lɶ( j  )  Cɶ ( j  )G ( j  )  G ZOH ( j  )C (e j T ) G ( j  )
T

Automatic Control – M. Canale AC_INF_L06 3


Digital control design by emulation: preliminary steps
Thus, C (z ) should be designed so that the frequency response of
the analog controller
1
Cɶ (s )  G ZOH (s )C (e sT )
T
 j T
1 1e 1
 Cɶ ( j  )  G ZOH ( j  )C (e j T )  C (e j T ) 
T j T
1
≃ Te  j T / 2C (e j T )  e  j T / 2C (e j T ),   [0, N ]
T
satisfies frequency domain constraints imposed, e.g., on the Nichols
plane.

Automatic Control – M. Canale AC_INF_L06 4


Digital control design by emulation: definition
Cɶ ( j  ) ≃ e  j T / 2C (e j T ),   [0, N ]
… on the other hand, the loop-shaping continuous-time approach is a
well established control design procedure.
In this regard, a suitable procedure for the design of the digital tf C (z )
consists in
1. looking for an analog controller C 0(s ) such that the loop
function frequency response
Lɶ0 ( j  )  Cɶ ( j  )G ( j  ) ≃ e  j T / 2C 0 ( j  )G ( j  ),   [0, N ]
satisfies the control requirements
2. computing a discrete equivalent C (z ) of C 0(s ) so that
C (e j T ) ≃ C 0 ( j  ),   [0, N ]
This design procedure is referred to as emulation.

Automatic Control – M. Canale AC_INF_L06 5


Digital control design by emulation: overview
The main steps of the emulation design method are
1. Choose a suitable sampling period T
2. Design an analog controller C 0(s ) using any method (e.g.
frequency response loop-shaping)
3. Obtain through a suitable discretization procedure the digital
controller C (z )
4. Verify through simulation time domain performance
5. If needed, design anti-aliasing filter
6. If needed, perform modifications of C 0(s ) in order to meet the
requirements

Automatic Control – M. Canale AC_INF_L06 6


Sampling time selection

Automatic Control – M. Canale


Digital controllers design by emulation: details
Choice of a suitable sampling period T

Several aspects have to be taken into account.


• Sampling Theorem
the sampling frequency must at least equal twice the value of
the highest significant frequency in the signal.
 in a feedback system the highest significant frequency of all
the signals in the loop is the system bandwidth B , therefore
a lower bound for the sampling frequency s is
s > 2 B  s > 3 c
(for a well damped system: B ≥ 1.5 c )

Automatic Control – M. Canale AC_INF_L06 8


Digital controllers design by emulation: details
Choice of a suitable sampling period T

• ZOH filter:
the D/A converter introduces a phase lag of
T
G ZOH ( j  )  
2
In order to limit the phase lag at the cross-over frequency to
small values (e.g. – 10° to – 5°), the following bound should be
considered
T 
G ZOH ( j  )   
2 s
 
10    5  0.087 rad   0.17 rad
s s
 18c  s  36c
 c

Automatic Control – M. Canale AC_INF_L06 9


Digital controllers design by emulation: details
Choice of a suitable sampling period T
• Suitable sampling of the transient
a suitable number of samples must considered for describing the
behavior of the transient phase
typically 10 to 50 samples can be employed for a suitable
description of the transient behavior
for a well damped system (e.g. z = 0.6) we have
t s ,1% t s ,1%
t s ,1%c  5.5  T 
5010
0.11 0.55 0.11 2 0.55
T    
c c c s c
 11.42c  s  57.2c
 c

Automatic Control – M. Canale AC_INF_L06 10


Digital controllers design by emulation: details
Choice of a suitable sampling period T
• Limitations  “small” T
• improve conversion accuracy and destabilizing effects
• increase the cost of A/D and D/A devices (more than linearly)
• emphasizes quantization effects
a trade-off among such criteria is made for choosing T

A final practical rule of thumb is to choose T within the interval


20 c < s < 50 c  0.12/c < T < 0.3/c
provided that the chosen values satisfies HW and cost limitations

Automatic Control – M. Canale AC_INF_L06 11


Analog controller design

Automatic Control – M. Canale


Digital controllers design by emulation: details
Design an analog controller C 0(s ) using any method

If it is known in advance that the controller has to be realized through


a digital computer, the design of C 0(s ) is performed taking into
account the dynamics introduced by the A/D and the ZOH D/A transfer
function
1 1  e Ts
G A /D (s )  G ZOH (s ) 
T s
Thus, the analog controller design should be performed considering as
plant transfer function:
1 1  e Ts
G '(s )  G (s )
T s
Remark : in MatLab environment, use the 1st order Padé
approximation:
1  e Ts T 1
G ZOH (s )    G '(s )  G (s )
s 1  sT / 2 1  sT / 2

Automatic Control – M. Canale AC_INF_L06 13


Discretization of continuous-time
LTI systems

Automatic Control – M. Canale


Introduction to discretization methods

In order to derive a discrete equivalent of the analog controller


C 0(s ), the sampling transformation defined by z  e sT, can be
employed

In particular, the discrete time controller tf C (z ), can be found


using the inverse of the sampling transformation:

C (z )  C  log  z  
1 1
s  log  z  
T T 
0

However, the obtained C (z ) is not provided by a real rational


function, and thus it does not represent a finite dimensional
discrete time system.

Automatic Control – M. Canale AC_INF_L06 15


Introduction to discretization methods

A real rational form for C (z ) can be obtained through a procedure


which aims at computing a linear discrete time system whose
input-output relationship is made up by a finite difference
equation of the form
u (k )  an 1u (k  1)  an 2u (k  2)  …  a 0u (k  n ) 
 bne (k )  bn 1e (k  1)  …  b0e (k  n )

which approximates the behavior of the continuous time


dynamical system represented by the tf C 0(s ).

Such procedure is referred to as discretization of continuous


time dynamical systems.

Automatic Control – M. Canale AC_INF_L06 16


Discretization through the bilinear transformation

The simplest and most effective way to discretize a continuous


time controller C 0(s ) is to consider its state space representation

 xɺ (t )  Ax (t )  Be (t ) U (s )
  C (s )   C (sI  A ) B  D 1

u (t )  Cx (t )  De (t ) E (s ) 0

and suppose to integrate it through a numeric method, such that:


( k 1 ) T ( k 1 ) T ( k 1 ) T

 kT
xɺ (t )dt   kT
Ax (t )dt   kT
Be (t )dt
( k 1 ) T ( k 1 ) T



x (k  1)  x (k )  A 
* *

kT
x (t )dt B 
kT
e (t )dt
x ( kT )  x * ( k )
x (( k 1)T )  x * ( k 1)

Automatic Control – M. Canale AC_INF_L06 17


Discretization through the bilinear transformation
( k 1 ) T

The integral  f (t )dt represents the area under the function f (t )


kT

between t =kT and t = (k +1)T . Such an area can be approximated as


( k  1 )T

 kT
f (t )dt ≃ [(1   )f (kT )  f ((k  1)T )]T , 0    1
 = 1  Bacward Euler  = 0  Forward Euler  = 0.5  Tustin

f (kT ) f (kT ) f (kT )


f ((k+1)T ) f ((k+1)T ) f ((k+1)T )

kT (k+1)T kT (k+1)T kT (k+1)T

Area = T f ((k+1)T ) Area = T f (kT ) Area =


0.5 T (f ((k+1)T )+f (kT))

Automatic Control – M. Canale AC_INF_L06 18


Discretization through the bilinear transformation
Thus we have
x (k  1)  x (k ) ≃ A [(1   )x (k )   x (k  1)]T 
* * * *

 B [(1   )e (k )  e (k  1)]T
* *

1 z 1
 I  A  X (z )  BE (z )
* *

T  z  1   
1

1 z 1
 X (z )  
*
I  A  BE (z ) *

T  z  1   
u (k )  Cx (k )  De (k )  U (z )  CX (z )  DE (z )
* * * * * *

1

 1 z 1 
 U (z )  C 
*
I  A  B  D  E (z ) *

T  z  1
 
  
C (z )

Automatic Control – M. Canale AC_INF_L06 19


Discretization through the bilinear transformation
Then:
C (s )  C (sI  A ) B  D
1 
0
 1 z 1
s 
1

 1 z  1  
C (z )  C  I  A B  D   T z  1  
T  z  1     bilinear transformation
 C (z )  C (s ) s  1 z 1 
0
T  z 1 
 2 z 1 2 1  z 1

  0.5  Tustin : s  
T z 1 T 1 z 1



 1 z 1 1z 1

In particular    1  Backward Euler : s  


 T z T

 z 1 1 1  z 1

  0  Forward Euler : s  
 T T z 1

Automatic Control – M. Canale AC_INF_L06 20


Discretization through the bilinear transformation

Mapping properties of the Tustin approximation

2 z -1
s 
T z 1

Automatic Control – M. Canale AC_INF_L06 21


Discretization through the bilinear transformation

Mapping properties of the backward Euler approximation

1 z -1
s 
T z

Automatic Control – M. Canale AC_INF_L06 22


Discretization through the bilinear transformation
Mapping properties of the forward Euler approximation
stability is not preserved
z -1
s 
T

Automatic Control – M. Canale AC_INF_L06 23


Discretization through the bilinear transformation
Example: discretize the following analog controller with T = 1 s
s
1
C (s )  2 0.1 , K  limC (s )  2
0
s c s 0 0

1
10
35z  31.67
 Tustin : C (z )  , K  limC (z )  2
z  0.6 c z 1

20z  18.18
 Backward Euler : C (z )  , K  limC (z )  2
z  0.09 c z 1

200z  180
 Forward Euler : C (z )   unstable
z 9

Automatic Control – M. Canale AC_INF_L06 24


Discretization through the bilinear transformation
Frequency response comparison
60
Bode D iagram

50

40
Magnitude (dB)

30

20

10

0
90
C0
C
tus tin
C
Ba ckEule r

60
Pha se (deg)

30

0
-3 -2 -1 0 1 2 3
10 10 10 10 10 10 10
Frequency (rad/sec )

The Tustin approximation provides the best frequency response


matching of the analog controller

Automatic Control – M. Canale AC_INF_L06 25


Discretization through zero-pole-gain matching
An alternative approach for analog controller discretization can be
obtained through the application of the sampling transformation z  e sT

to zeros and poles of the analog controller C0(s )


Given the zpk form
C (s )  K
 s  q  s  q …  s  q 
1 2 n

0
s  s  p  s  p …  s  p 
r

1 2 n r

The matched pole-zero (MPZ) method: the discretized digital


controller C (z ) is obtained as:

C (z )  K
 z  e  z  e …  z  e  , K
q1T q 2T q nT

K
 q  (1  e )
n

i 1 i
n r

i 1
pi T

 z  1  z  e  z  e …  z  e   p  (1  e )
d r d
p1T p 2T pn  r T n r n q iT

i 1 i i 1

Remark: Kd is computed in order to guarantee that C0(s ) and C (z ) have


the same (generalized) DC gain

Automatic Control – M. Canale AC_INF_L06 26


Discretization through zero-pole-gain matching
Example: (T = 1 s)
s
1
C (s )  2 0.1  200 s  0.1 , K  limC (s )  2
0

1
s s  10 c s 0 0

10
z e  0.1
z  0.9048
MPZ : C (z )  21.0157  21.0157 ,lim C (z )  2
z e 10
z  4.54  10 -5 z 1

Automatic Control – M. Canale AC_INF_L06 27


Discretization through the bilinear transformation
Frequency response comparison
60
B ode Diagram

50

40
Mag nitud e (dB)

30

20

10

0
90
C0
C Tustin
C BackE uler

60 C MPZ
Phas e (d eg)

30

0
-3 -2 -1 0 1 2 3
10 10 10 10 10 10 10
Frequenc y (rad/sec )
The Tustin approximation still provides the best frequency response
matching of the analog controller

Automatic Control – M. Canale AC_INF_L06 28


Discretization methods

Discretization of a transfer function with MatLab

>> C = c2d(C_0, T, METHOD)

METHOD:
'zoh' Zero-order hold
'foh' First-order hold
'imp' Impulse-invariant
'tustin' Tustin
'prewarp' Tustin approximation with frequency
prewarping
'matched' Matched pole-zero

The default is 'zoh' when METHOD is omitted

Automatic Control – M. Canale AC_INF_L06 29


Performance evaluation through
simulation

Automatic Control – M. Canale


Digital controllers design by emulation: details
Verify through simulation time domain performance
• Simulink simulation is needed to verify time domain performance

e(kT) u(kT)
e(t) u(t)
r(t) y(t)
F(s) C(z) ZOH G(s)
+ T
-

Remark: in the Simulink scheme, blocks corresponding to A/D and


D/A may be omitted

Automatic Control – M. Canale AC_INF_L06 31


Appendix
Anti-aliasing filter design

Automatic Control – M. Canale


Digital controllers design by emulation: details
Antialising filter design
• A Butterworth filter of the form
1 s
F (s )  s'
B n (s ) f
order n B n (s )
1 (s ' 1)
2 (s '  1.414s ' 1)
2

3 (s '2  s ' 1)(s ' 1)


4 (s '2  0.765s ' 1)(s '2  1.848s ' 1)

can be employed as antialising filter

Automatic Control – M. Canale AC_INF_L06 33


Digital controllers design by emulation: details
Antialising filter design
It is required that the cut-off fequency f satisfies:
s
B  f 
2
The filter can be designed by imposing a given attenuation g
(e.g. g = 0.1) for all the frequencies greater than a given h
(e.g. h = s /2 ):
F ( j  )  g ,   h
We have
1
 g 2  2n 1
f  h  2 
≃  g n

 1  g  g ≪ 1
h

Automatic Control – M. Canale AC_INF_L06 34


Digital controllers design by emulation: details
Antialiasing filter design
The order n of the filter is chosen in order to limit the phase lag
introduced at c using the normalized filter phase diagram
0

-5
arg(F(j)) (°)

-10

-15 n=1
n=2
n=3
-20 n=4

-25 -2 -1
10 10
 / f

Automatic Control – M. Canale AC_INF_L06 35


Digital controllers design by emulation: details
Example: Design a Butterworth filter to introduce an attenuation
g = 0.1 at h = 10 rad/s for a control system with c = 0.2 rad/s
0

n 2
f  h g 1 / n  10  0.11 / 2  3.16 -5

c / f  0.2 / 3.16  0.063

arg(F(j)) (°)
-10
 lag ≃ 5
-15 n=1

n 3 n=2
n=3
f  h g 1 / n  10  0.11 / 3  4.64 -20 n=4

c / f  0.2 / 4.64  0.043


-25 -2
 lag ≃ 4.9
-1
10 10
 / f

Automatic Control – M. Canale AC_INF_L06 36


Butterworth filters
Butterworth filter computation with MatLab
BUTTER Butterworth digital and analog filter design.

[B,A] = BUTTER(N,Wf) designs an Nth order lowpass digital


Butterworth filter and returns the filter coefficients in
length N+1 vectors B (numerator) and A (denominator).
The coefficients are listed in descending powers of z.
The cutoff frequency Wf must be 0.0 < Wf < 1.0, with 1.0
corresponding to half the sample rate.

[B,A] = BUTTER(N,Wf,'s'), design analog Butterworth


filters. In this case, Wf is in [rad/s] and it can be
greater than 1.0.

Automatic Control – M. Canale AC_INF_L06 37


Automatic Control

Control systems design via static state


feedback

Automatic Control – M. Canale


Control of LTI systems
 How can we modify the dynamics of an LTI system ?
 In particular, can we
 make stable an unstable system ?
 improve the system damping characteristics as well as its
response speed in order to reach faster the steady state
condition (e.g. an equilibrium state) ?
 Let us consider the problem for an LTI continuous time system
described by the state space representation

xɺ (t )  Ax (t )  Bu (t )
 , x  Rn , u  Rp
, y
y (t )  Cx (t ) same number of
inputs and outputs

Automatic Control – M. Canale AC_INF_L07 2


Control of LTI systems
 The dynamics of an LTI system depend on the eigenvalues of
matrix A, thus we need to look for an input that can affect the
structure of A.
 In this regard, the following input can be considered
u (t )  Kx (t )  Nr (t ), K  R p ,n , r (t )  R p , N  R p , p
 In the presence of such an input, the state equation becomes

xɺ (t )  Ax (t )  Bu (t )  ( A  BK )x (t )  BNr (t )

u Kx  Nr

and the dynamical properties of the (controlled) system depend


on the eigenvalues of matrix A  BK .
 The matrix K is referred to as the state gain.

Automatic Control – M. Canale AC_INF_L07 3


Control of LTI systems

xɺ (t )  ( A  BK )x (t )  BNr (t )
 A suitable choice of K allows us to modify the system
eigenvalues and improve the dynamic properties of the system
(e.g. stabilize it).
 The input r (t ) is a reference signal for the output.
 The reference gain matrix N can be chosen to modify the dc-
gain of the controlled system.

Automatic Control – M. Canale AC_INF_L07 4


Control of LTI systems

xɺ (t )  ( A  BK )x (t )  BNr (t )
 However, is it always possible to find a matrix K able to
arbitrarily assign the eigenvalues of A  BK ?
Result: Given the state space equation
xɺ (t )  Ax (t )  Bu (t ), A  Rn ,n , B  Rn , p
a matrix K ∈ Rp,n exists such that the n eigenvalues of A  BK can
be assigned to arbitrary, real or complex-conjugate, locations if
and only if

 (M R )   B AB ⋯ A n 1B   n 

Automatic Control – M. Canale AC_INF_L07 5


Control of LTI systems
 The matrix
M R  B AB ⋯ A n 1B 

is referred to as the reachability matrix

 If  (M R )  n the dynamic system xɺ (t )  Ax (t )  Bu (t )


is said reachable, or the couple (A,B ) is reachable for short.

>> Mr = ctrb(A,B);
>> rho_Mr = rank(Mr);

Automatic Control – M. Canale AC_INF_L07 6


Control of LTI systems
 The reachability property describes the potentials of the input
to affect the system dynamics.

 In the (unstable) not reachable system below, the input does


not affect the 2nd state equation; thus, it can not be
asymptoticaly stabilized through the control law u  Kx  Nr

1 1 2 
xɺ (t )    x (t )    u (t ), y (t )   0  1  x (t )
 0 1 0 

2 2 
M R  B AB    ,   (M R )  1  n
0 0 

Automatic Control – M. Canale AC_INF_L07 7


Control of LTI systems
 The “input” u  Kx  Nr represents a static state feedback
control law
r + u x (txɺ)=
(t )Ax t ) (+t )Bu
 (Ax (t )(t )
 Bu x y
N C
- y '(t )  x
y’ (k ) = x (k ) ( t )

 Typically, K is computed by placing the eigenvalues (poles) of the


controlled system to obtain, besides asymptotic stability, good
damping and rapidity properties of the transient.

>> lambda_des = [-1 -2]; >> lambda_des = [-1 -1];


>> K = place(A,B,lambda_des); >> K = acker(A,B,lambda_des);

Automatic Control – M. Canale AC_INF_L07 8


Control of LTI systems
 The “input” u  Kx  Nr represents a static state feedback
control law.
r + u x (txɺ)=
(t )Ax t ) (+t )Bu
 (Ax (t )(t )
 Bu x y
N C
- y '(t )  x
y’ (k ) = x (k ) ( t )

 N can be chosen to make unitary the dc-gain of the controlled


system guaranteeing zero steady state tracking error in the
presence of a constant reference signal r (t )  r  (t ) .

Automatic Control – M. Canale AC_INF_L07 9


Control of LTI systems
Plant state equation and transfer function (SISO systems):

xɺ (t )  Ax (t )  Bu (t )
  G (s )  C (sI  A ) 1 B
 y (t )  Cx (t )

Controlled system state equation and transfer function


xɺ (t )  ( A  BK )x (t )  BNr (t ) 1
  W (s )  C sI  ( A  BK )  BN
y (t )  Cx (t )

Properties of transfer functions G (s ) and W (s )


 The poles of W (s ) are the roots of the characteristic
polynomial det(sI  (A BK ))1  0
 The zeros of W (s ) coincide with the zeros of G (s ).

Automatic Control – M. Canale AC_INF_L07 10


Control of LTI systems
Suppose r (t )  r  (t )

The steady state value yss of y is

y ss  limt  y (t )  lims 0 sY (s )  lims 0 sW (s )r (s ) 


1 r 1
 lim sC sI  ( A  BK )  BN  C ( A  BK )  BN r
s 0 s 
dcgain of W (s )

To achieve zero steady state tracking error, we need to impose


y ss  r
1
N   C ( A  BK )  B 
1 1
 C ( A  BK )  BN  1
 

Automatic Control – M. Canale AC_INF_L07 11


Control of LTI systems
if y ss  r , the steady state tracking error indicated as e r is given by
e r ≜ lim e (t )  lim r (t )  y (t )  r  y ss  0
t  t 

 N can be computed as the inverse of the dc-gain of the system.

xɺ (t )  ( A  BK )x (t )  Br (t )

y (t )  Cx (t )

>> sys_cont_c = ss(A-B*K,B,C,0);


>> N = 1/dcgain(sys_cont_c);

Automatic Control – M. Canale AC_INF_L07 12


A simple example

 For the LTI system below


1 3 1
xɺ (t )    x (t )    u (t )
4 2 2

 find if possible the gain K of a static state feedback control law


of the form u  Kx to place the eigenvalues of the controlled
system at l1,des =  2 and l2,des =  3.

Automatic Control – M. Canale AC_INF_L07 13


A simple example

 Reachability test
1 5
MR     (MR )  2
 2 0

 Desired characteristic polynomial

pdes (l )  (l  l1,des )(l  l2,des ) 


 (l  (2))(l  (3))  l 2  5l  6

 Computation settings for K


K  k 1 k 2 

1 3  1  1  k1 3  k2 
A  BK       k 1 k 2    
4 2  2   4  2k 1 2  2k 2 

Automatic Control – M. Canale AC_INF_L07 14


A simple example

 Characteristic polynomial for A -BK

p A BK (l )  det  l I   A  BK   l 2
 (3  k 1  2k 2 )l  8k 1  6k 2  10

 Apply the principle of identity for polynomials

pdes (l )  p A BK (l )
 l 2  5l  6  l 2  (3  k 1  2k 2 )l  8k 1  6k 2  10

 3  k 1  2k 2  5 k 1  8
   K  k 1 k 2   8 8 
8k 1  6k 2  10  6 k 2  8

Automatic Control – M. Canale AC_INF_L07 15


Requirements analysis
The state feedback controller can be designed by imposing to the
controlled system transient requirements of the form
sˆ  10%  0.1 t r  0.5 s t s ,2%  1.2 s

Such requirements are converted into requirements on the damping


coefficient z and natural frequency wn of a prototype 2nd order model
(see AC_L07 pp. 16-27).
 z
ln(sˆ) ln(0.1)
sˆ  e 1z  z    0.59
2

 2  ln2 (sˆ)  2  ln2 (0.1)


1 1
tr    arccos z    w n
'
   arccos z    5.46 rad/s
wn 1  z 2
tr 1  z 2
ln(0.02) 1 3.9
t s ,2%   wn'' ≃  5.52 rad/s
wn z t s ,2%z  wn  max(wn' , wn'' )  5.52 rad/s

Automatic Control – M. Canale AC_INF_L07 16


Requirements analysis
• To obtain the eigenvalues to be assigned by the state feedback
controller, the computed values of z and wn are converted to the
corresponding couple of complex conjugate values.

l1,2   0  j w0  zwn  j wn 1  z 2

Automatic Control – M. Canale AC_INF_L07 17


Requirements analysis
Another possibility is to design the control law avoiding oscillations of
the output step response.
In this case, a prototype 2nd order model with coincident real poles
can be used to fix the eigenvalues to assign (see AC_L07 pp. 30-32).
Example
'
t  0.5 s t s ,5%  1.8 s
r
tr 0.5 1
t 'r  3.36   '    0.5s  wn'   2 rad/s
3.36 3.36 '

t s ,5% 1.8 1
t s ,5%  4.74   ''    0.37s  wn''   2.63 rad/s
4.74 4.74  ''

 wn  max(wn' , wn'' )  2.63 rad/s

Automatic Control – M. Canale AC_INF_L07 18


Requirements analysis
u  Kx  Nr

• The state feedback matrix K is designed to assign n = dim(x )


eigenvalues.
• If n > 2, the additional eigenvalues are chosen with a faster time
constant add with respect to the ones corresponding to the
prototype second order system eigenvalues, i.e.
1
 add ≪
zwn
1
rule of thumb   add  (0.1  0.2)
zwn

Automatic Control – M. Canale AC_INF_L07 19


Set point tracking
u  Kx  Nr
• The value of N depends on the system matrices A, B, C.
• In the presence of uncertainty in matrices A, B, C, steady state
zero tracking error for a step reference is not achieved.
• The same holds when a (step) actuator and/or output
disturbance is added.
• To circumvent such problems, it is possible to include in the
system equations, the time integral of the tracking error, i.e.
t t
q (t )  
0
(r ( )  y ( ))d   
0
e ( )d 
 qɺ (t )  r (t )  y (t )  e (t )

Automatic Control – M. Canale AC_INF_L07 20


State feedback with integral action

Automatic Control – M. Canale


Set point tracking
• Without loss of generality, we consider the SISO case.
• By adding to the system state the time integral of the tracking
error, an augmented state is obtained
q (t )  n 1
x aug (t )     R , q (t )  R
 x (t ) 

• The corresponding state representation is


qɺ (t )   011 C  q (t )  011   1 
xɺaug (t )          u (t )    r (t )
 xɺ (t )  
0n 1 A  
 x (t )  B 
  0n 1 

Aaug x aug B aug Br
q (t ) 
y (t )  011 C  
  x (t ) 
C 
aug
x aug

Automatic Control – M. Canale AC_INF_L07 22


Set point tracking
• The state feedback control law is modified as

q (t ) 
u (t )  K aug x aug (t )   K q K x   
 x (t ) 
dim(K aug )  1  (n  1), dim(K q )  1, dim(K x )  1  n

• The state equation of the controlled system is


qɺ (t )   011 C  q (t )   1 
xɺaug (t )      BK  r (t )
ɺ
 x (t )   q A  BK x   x (t )  0n 1 
   
Aɶ aug
x aug Br
q (t ) 
y (t )  011 C  
  x (t ) 

Cɶaug
x aug

Automatic Control – M. Canale AC_INF_L07 23


Set point tracking
• A schematic representation of the closed loop system is
r + e q - u x (xkɺ (+  Ax
t )1)= Ax(t(k) )+Bu
Bu(t()k ) x y
 Kq C
- - y’y(k'()t )=xx(k(t))

Kx

• The system guarantees zero steady state tracking error when r (t )


is constant.
• In fact, since the feedback law guarantees asymptotic stability, at
steady state, xaug (t ) (in particular, q (t )) and y (t ) will reach a
constant value. Since q (t ) is the integral of the tracking error, at
steady state e (t ) = 0  r (t ) = y (t ).

Automatic Control – M. Canale AC_INF_L07 24


Set point tracking
• The design of a state feedback control law with the integral state
is performed using as system matrices Aaug and Baug .
• It can be shown that the reachability of the couple (A,B ) implies
the reachability of the couple (Aaug , Baug ).
• Since the augmented state dimension is n +1, then n +1
eigenvalues must be placed. The additional eigenvalue is chosen
so that the corresponding time constant is faster than the others
(5-10 times faster).

Automatic Control – M. Canale AC_INF_L07 25


Automatic Control

Asymptotic state observers


Static feedback of the estimated state

Automatic Control – M. Canale


State observers

Automatic Control – M. Canale


State observers: introduction

 For an LTI continuous time system described by the state space


representation
xɺ (t )  Ax (t )  Bu (t )
 , x  R n , u  R p , y  Rq
y (t )  Cx (t )
 A state feedback control law of the form u  Kx  Nr can be
evaluated only when the system state can be measured.
 However, in general, only the measurement of the system output
is available.
 The system input is always known.
 Under suitable assumptions, an estimate of the system state can
be obtained based on the knowledge of the provided input and
the measurement of the output signal.

Automatic Control – M. Canale AC_INF_L08 3


State observers: introduction
 A state observer is a “device” that provides an estimate xˆ of the
system state x exploiting the knowledge of the system input u and
the measurement of the output y .
u (·) y (·)
System
xˆ ()
Observer

 For a continuous time dynamic system, the state stimation error


e is defined as
e (t )  xˆ(t )  x (t )
 An observer such that
lim e (t )  lim xˆ(t )  x (t )  0
t  t 
is referred to as an asymptotic state observer

Automatic Control – M. Canale AC_INF_L08 4


Asymptotic state observers
 The use of the state equation as observer does not lead, in
general, to an asymptotic observer.

xɺ (t )  Ax (t )  Bu (t ) xˆɺ (t )  Axˆ(t )  Bu (t )

ɺ
eɺ (t )  xˆ(t )  xɺ (t )  Axˆ(t )  Bu (t )  Ax (t )  Bu (t ) 
 A (xˆ(t )  x (t ))  Ae (t )

if A is asymptotically stable: lim e (t )  0


t 

 e (A stable)
if A is not asymptotically stable: tlim e (t )  0  
 
 (A instable)

Automatic Control – M. Canale AC_INF_L08 5


Asymptotic state observers
 To obtain an asymptotic observer, a (feedback) term depending on
the output estimation error yˆ  y is included:
xˆɺ (t )  Axˆ(t )  Bu (t )  L (yˆ(t )  y (t ))
 Axˆ(t )  Bu (t )  L (Cxˆ(t )  Cx (t ))

eɺ (t )  xˆɺ (t )  xɺ (t ) 
 Axˆ (t )  Bu (t )  L ( yˆ (t )  y (t ))  Ax (t )  Bu (t ) 
 Axˆ (t )  Bu (t )  LCx (t )  LCxˆ (t )  Ax (t )  Bu (t ) 
  A  LC  xˆ (t )  x (t )    A  LC  e (t )

Automatic Control – M. Canale AC_INF_L08 6


Asymptotic state observers
eɺ (t )   A  LC  e (t )

 A suitable choice of L allows us to modify the observer


eigenvalues and improve its dynamic properties (e.g. make it
asymptotically stable).
 However, is it always possible to find a matrix L able to
arbitrarily assign the eigenvalues of A  LC ?

Automatic Control – M. Canale AC_INF_L08 7


Asymptotic state observers
Result: Given the state space equation

xɺ (t )  Ax (t )  Bu (t )
 , x  R n , u  R p , y  Rq
y (t )  Cx (t )

there exists L ∈ Rn,q such that the n eigenvalues of A  LC can be


assigned to arbitrary, real or complex-conjugate, locations if and
only if
 C 
 
 CA   n
 (M O )   
 ⋮ 
  n 1  
 CA  

Automatic Control – M. Canale AC_INF_L08 8


Asymptotic state observers
 The matrix
 C 
 CA 
MO    is referred to as the observability matrix
 ⋮ 
 n 1 
CA 

xɺ (t )  Ax (t )  Bu (t )
 If  (M O )  n the dynamic system 
y (t )  Cx (t )
is said observable, or the couple (A,C ) is observable for short.

>> Mo = obsv(A,C);
>> rho_Mo = rank(Mo);

Automatic Control – M. Canale AC_INF_L08 9


Asymptotic state observers
 The observability property describes the potentials of the
output to estimate the state dynamics.

 In the (unstable) not observable system below, the output is


not affected by the 2nd state variable; thus, the state dynamics
can not be estimated through an asymptotic observer

1 1 2 
xɺ (t )    x (t )    u (t ), y (t )  1 0  x (t )
 0 1 1

 C  0 1
MO      ,   (M O )  1  n  2
CA   0 1 

Automatic Control – M. Canale AC_INF_L08 10


Observer dynamics
 The state equation of the state observer is
xˆɺ (t )   A  LC  xˆ (t )  Bu (t )  Ly (t ) 
 u (t ) 
  A  LC  xˆ (t )  B L 
 y (t ) 
y stim (t )  xˆ (t )
 Matrix L is referred to as the observer gain dim (L )= n xq
 The observer is thus a dynamical sytem with inputs u (t ) and y (t )
and output xˆ (t )
u  u (t ) 
xˆɺ (t )   A  LC  xˆ (t )  B L  xˆ
y  y (t ) 
y stim (t )  xˆ (t )

Automatic Control – M. Canale AC_INF_L08 11


A simple example

 For the LTI system below


 0 1 0
xɺ (t )    x (t )    u (t )
1 2 1
y (t )  0 1 x (t )
find if possible the gain L of an asymptotic state observer of the
form
xˆɺ (t )  Axˆ(t )  Bu (t )  L  yˆ(t )  y (t ) 
y stim (t )  xˆ(t )
by placing the eigenvalues that govern the state estimation error
at l1,des =  10 and l2,des =  20.

Automatic Control – M. Canale AC_INF_L08 12


A simple example

 Observability test  C 
 CA 
MO      C    0 1  ,  M O   2  n
 ⋮  CA   1 2 
 n 1 
CA 
 Desired characteristic polynomial of the observer

pdes (l )  (l  l1,des )(l  l2,des ) 


 (l  (10))(l  (20))  l 2  30l  200

 Computation settings for L

ℓ  0 1 ℓ  0 1ℓ 
L   1 A  LC      1  0 1   1


 2  1 2   ℓ 2   1 2  ℓ 2 

Automatic Control – M. Canale AC_INF_L08 13


A simple example

 Characteristic polynomial for A -LC

p A LC (l )  det  l I   A  LC    l 2  (ℓ 2  2)l  1  ℓ 1

 Apply the principle of identity for polynomials

pdes (l )  p A LC (l )
 l 2  30l  200  l 2  (ℓ 2  2)l  1  ℓ 1

ℓ 2  2  30 ℓ1  199  ℓ   199 


   L   1   
1  ℓ1  200 ℓ 2  32 ℓ 2   32 

Automatic Control – M. Canale AC_INF_L08 14


Observer dynamics
 u (t ) 
xˆɺ (t )   A  LC  xˆ (t )  B L 
 y (t ) 
y stim (t )  xˆ (t )

 The observer gain L can be computed through the MatLab


place and acker statements.
Place A-BK A-LC M M’ (A-LC)’ = A’ –(LC)’ = A’ – C’L’

>> lambda_obsv_des = [-1 -2];


>> L = place(A’,C’,lambda_obsv_des)’;

>> lambda_obsv_des = [-1 -1];


>> L = acker(A’,C’,lambda_obsv_des)’;

Automatic Control – M. Canale AC_INF_L08 15


Control of LTI systems using estimated states
 If the system state can not be measured, the state feedback
control law can be realized through the state estimated by an
asymptotic observer.
 The control law becomes:

u (t )  Kxˆ(t )  Nr (t )

that represents a static feedback of the estimated state.

Automatic Control – M. Canale AC_INF_L08 16


Control of LTI systems using estimated states
 The architecture of the feedback control system is modified as

r + u x (xtɺ ()=  Ax
t )Ax (t )(+
t )Bu Bu
(t )(t ) y
N
- y’y(k(t))= CCx (t ))
x (k

 u (t ) 
xˆ xˆɺ (t )   A  LC  xˆ (t )  B L 
K  y (t ) 
y stim (t )  xˆ (t )

Automatic Control – M. Canale AC_INF_L08 17


Control of LTI systems using estimated states
 To describe the overall system dynamics, we need to compute the
complete state space representation of the controlled system.
 The “ingredients” are
xɺ (t )  Ax (t )  Bu (t )  System state equation
y (t )  C x (t )  System output equation
xˆɺ (t )  ( A  LC )xˆ(t )  Bu (t )  Ly (t )  Observer state equation

u (t )  Kxˆ(t )  Nr (t )  Control law

Automatic Control – M. Canale AC_INF_L08 18


Control of LTI systems using estimated states
 Let’s consider the state
 x (t ) 
x I (t )    , dim(x I (t ))  2n
 xˆ(t ) 
 It can be shown that the controlled system state space representation
is given by:
xɺ I t   A I x I (t ) B I r t 


y t  C x t 
I I

where:
 A BK  B 
AI    B I   N C I  C 0n 1 

LC A BK LC  B 

Automatic Control – M. Canale AC_INF_L08 19


Control of LTI systems using estimated states
 The form of the system matrix
 A BK 
A I   

LC A BK LC 

prevents us to understand how the gain matrix K and L affect the


eigenvalues of the controlled system.

 Thus, we need a different state definition to better highlight how K


and L affect the controlled system dynamics and get useful hints for
their design.

Automatic Control – M. Canale AC_INF_L08 20


Control of LTI systems using estimated states
 Let’s now consider the state
 x (t )   x (t ) 
x II (t )     ˆ 
e (t )   x (t )  x (t ) 
 In this case, it can be shown that an equivalent state space
representation is given by
xɺ II t   A II x II (t ) B II r t 


y t  C x t 
II II

where:
 A BK BK   B 
AII   B II   N C II  C 0n 1 


0n n A LC  0n 1 

Automatic Control – M. Canale AC_INF_L08 21


Control of LTI systems using estimated states
 Notice that the matrix
 A BK BK 
AII  


0n n A LC 

is block triangular and its 2n eigenvalues are such that:


l ( A )  l ( A  BK ) ∪ l ( A  LC )
II

 This property is referred to as the separation principle.

Automatic Control – M. Canale AC_INF_L08 22


Control of LTI systems using estimated states
 The separation principle shows that the control law obtained
through the feedback of the estimated state can be designed via
the independent design of
 a static state feedback (i.e. matrix gains K and N )
 an asymptotic state observer (i.e. matrix gain L)
by means of standard design procedures.
 It is worth noting that for the considered control system the
transfer function is given by
y (s ) 1
W (s )   C sI  ( A  BK )  BN
r (s )
 This means that the input/output dynamics are not affected by
the observer eigenvalues.

Automatic Control – M. Canale AC_INF_L08 23


Control of LTI systems using estimated state
 The design procedure can be resumed with the steps below.
 Check reachability and observability properties.
 Compute the state feedback gain K to assign the eigenvalues
of A – BK at the desired locations.
 Compute the dc-gain correction matrix N.
 Compute the observer gain L to assign the eigenvalues of
A – LC at the desired locations. Typically, the observer
eigenvalues are chosen such that the corresponding time
constants are faster wrt the ones imposed by the control law,
i.e.
 A LC   A BK

Automatic Control – M. Canale AC_INF_L08 24


Feedback of estimated states with
integral action

Automatic Control – M. Canale


Control of LTI systems using estimated state
 State estimation through an asymptotic observer can be
employed in the pole placement design with integral action.
Separation principle still holds.
 In this case, the control structure is
r + e q - u xxɺ(k(t + AxAx
) 1)= (t )(k)Bu
+ Bu
(t )(k ) y
 Kq
- - y (tk)) =CxCx(t(k) )

 u (t ) 
xˆ xˆɺ (t )   A  LC  xˆ (t )  B L 
Kx  y (t ) 
y stim (t )  xˆ (t )

Automatic Control – M. Canale AC_INF_L08 26


Control of LTI systems using estimated state
r + e q - u ) 1)=
xxɺ((kt + (t )(k)Bu
AxAx (t )(k )
+ Bu y
 Kq
yy’((tk)) =Cx
- - Cx(t(k) )

u (t ) 
xˆ xˆɺ (t )   A  LC  xˆ (t )  B L 
Kx  y (t ) 
y stim (t )  xˆ (t )

 Notice that the integral state q can be directly computed based on


the known reference signal r and the measured output y ; thus it
does not need to be estimated. The control law is
u (t )  K q q (t )  K x xˆ(t )

Automatic Control – M. Canale AC_INF_L08 27


Control of LTI systems using estimated state
 The design procedure can be resumed as
 Given the state space description of the
xɺ (t )  Ax (t )  Bu (t )

y (t )  Cx (t )
check reachability and observability properties.
 Compute the state feedback gain Kaug to assign the
eigenvalues of Aaug – BaugKaug at the desired locations.

0 C  0 
Aaug   11  , B aug    K aug  K q K x 
0n 1 A B 

Automatic Control – M. Canale AC_INF_L08 28


Control of LTI systems using estimated state
 Compute the observer gain L to assign the eigenvalues of
A – LC at the desired locations. Yet, the observer eigenvalues
are usually chosen such that the corresponding time
constants are faster wrt the ones imposed by the control law,
i.e.
 A LC   Aaug Baug K aug

Automatic Control – M. Canale AC_INF_L08 29

You might also like