Recent Results on Structure and Design of PID Controllers

Download Report

Transcript Recent Results on Structure and Design of PID Controllers

New Approaches to the Design
of Fixed Order Controllers
S. P. Bhattacharyya
Department of Electrical Engineering
Texas A & M University
College Station, TX 77843-3128
Main highlights
•New algorithms that can be used to generate the entire set of stabilizing PID and first order
controllers for single-input single-output 1) continuous-time rational plants of arbitrary
order, 2) discrete-time rational plants of arbitrary order, and 3) continuous-time plants with
time delay. A new linear programming algorithm for higher order controllers.
•These algorithms follow from substantial fundamental theoretical advances on PID, first
order and arbitrary fixed order stabilization that have been reported by us in recent years.
They display the rich mathematical structure underlying the topology of stabilizing sets.
•Examples are presented to clarify the steps involved in implementing the different
algorithms.
•The results significantly complement the current techniques for industrial PID design, many
of which are adhoc in nature, and open the door to design with fixed order controllers.
•Our solution results in graphical displays of feasible design regions using 2-D and 3-D
graphics-should appeal to control designers and are very suitable for computer aided design
where several performance objectives have to be overlaid and intersected.
Motivation
•Fixed order and in particular PID Controllers are widely used in aerospace, motion control,
process industries, manufacturing, robotics, disc drives, pneumatic, hydraulic, electrical and
mechanical systems
•Current designs are carried out using adhoc tuning rules. These rules have been developed
over the years based primarily on empirical observations and industrial experience.
l1
•Modern and Postmodern control theory, that is, state
observer
based theory of
H 2 feedback
H  
modern and post-modern control theory including optimal control cannot be applied to fixed
order controllers. Indeed, until the results to be described here appeared, it was not known
how to even determine whether stabilization of a nominal system was possible using PID
controllers.
•Our results are first steps toward computer aided designs of fixed order and PID controllers
with guaranteed stability, performance and robustness.
Characteristics of PID Controllers
•Provides set point regulation (error zeroing) against arbitrary
disturbances (as long as they are low frequency)
•Is robust against modelling errors
•Is nonfragile in general
•Three term controllers are easier to adjust at the design stage as
well as online
Theoretical developments
•Extension of the classical Hermite Bieler Theorem to root
counting
•A new Stabilization Algorithm based on this, that generates
the entire set of controllers attaining stability
•Calculations based on Linear Programming
•A new Performance Algorithm for Robustness, Gain-Phase
H
Margin and other performance measures generating
the entire
set attaining specs.
PID Controllers for Linear Time-invariant
Continuous-time Systems
Figure 1. Feedback control system.
C ( s)  k p 
ki
 kd s
s
where k p , k i and kd are the proportional, integral and
derivative gains respectively. Plant transfer function
G( s) 
N (s)
D( s )
where N ( s,) D( s)are polynomials in the Laplace variable s .
The closed-loop characteristic polynomial is
 (s k p  ki  kd )  sD(s)  (ki  kd s2 ) N (s)  k p sN (s)
Stabilization Problem: Determine the values of k p , k i and kd
for which the closed-loop characteristic polynomial  (s k p  ki  kd )
is Hurwitz, that is, has all its roots in the open left half plane.
Some notation:
The standard signum function sgn  R  {1 01} is defined by
1

sgn[ x]   0
1

if x  0
if x  0
if x  0
a(s)  a0  a1s 
 an s n
Then l (a( s)) and r (a( s)) denote the numbers of roots of a(s)
in the open LHP and RHP respectively
The even-odd decomposition of a(s) is defined as
a(s)  ae (s2 )  sao (s2 )
where ae (s2 ) and sao (s2 ) are the components of a(s) made up
of even and odd powers of s respectively.
a( j )  ae ( 2 )  jao ( 2 )
Basic Idea: Can determine the root distribution of a(s) from
knowledge of the the zeros of the odd part and the signs of the
even part evaluated at these zeros.
Using the even-odd decomposition of N  s  , define
N   s   N   s   N e  s 2   sN o  s 2 
Let n , m be the degrees of   s, k p , ki , kd  and N  s  respectively.
To achieve parameter separation multiply   s, k p , ki , kd  by N   s 
to obtain

v  s  :   s, k p , ki , kd  N   s    s 2 Ne  s 2  Do  s 2   De  s 2  No  s 2 




  ki  kd s 2  Ne  s 2  Ne  s 2   s 2 No  s 2  N o  s 2  

 s  De  s 2  Ne  s 2   s 2 Do  s 2  No  s 2 


 k p Ne  s 2  Ne  s 2   s 2 No  s 2  N o  s 2  

•  (s k p  ki  kd ) is Hurwitz if and only if  (s) has exactly the
same number of closed RHP zeros as N  (s)
•  (s k p  ki  kd ) has all three parameters appearing in both the
even and odd parts, but the test polynomial  (s) exhibits
parameter separation, that is, k p appears in the odd part only
while k i and kd appear in the even part only. This facilitates
the application of root counting formulas to  (s).
 ( j k p  ki  kd ) N  ( j)  p( ki  kd )  jq( k p )
where
p(  ki  kd )  p1 ( )  (ki  kd  2 ) p2 ( )
q(  k p )  q1 ( )  k p q2 ( )
p1 ( )   2 ( N e ( 2 ) Do ( 2 )  De ( 2 ) N o ( 2 ))
p2 ( )  N e ( 2 ) N e ( 2 )   2 N o ( 2 ) N o ( 2 ))
q1 ( )   ( De ( 2 ) N e ( 2 )   2 Do ( 2 ) N o ( 2 ))
q2 ( )   ( N e ( 2 ) N e ( 2 )   2 N o ( 2 ) N o ( 2 ))
For stability  (s) must have exactly the same number of
RHP roots as N (s). For this a necessary condition is that
q( k p ) has at least
 n  (l ( N ( s))  r ( N ( s)))
for m  n even

2



 n  (l ( N ( s))  r ( N ( s)))  1

for m  n odd

2

real, nonnegative, distinct roots of odd multiplicity. The
ranges of k p satisfying this condition are called allowable.
Let
0  0  1    l 1
denote the real, nonnegative distinct roots of q( k p ) of odd
multiplicity, and with l   write
sgn[ p( j )]  i j  j  01l
It can be shown using the root counting results mentioned
earlier, that the stability condition reduces to:
 {i0  2i1  2i2   (1)l 1 2il 1

l
 1)l 1sgn[q(k p )]
 (1) il }(

for m  n even

n  (l ( N ( s ))  r ( N ( s )))  
{i  2i  2i   (1)l 1 2i }
1
2
l 1
 0
l 1

(1) sgn[q( k p )]

for m  n odd

and therefore the string of integers {i0  i1 il } will be called
admissible if it satisfies the above condition
PID Stabilization Algorithm For
LTI Plants:
Step 1: For the given N ( s ) and D( s), compute the
corresponding p1 ( ) , p2 ( ) , q1 ( ) , and q2 ( )
Step 2: Determine the allowable ranges Pi  i  1 2… d of k p .
The resulting ranges of k p are the only ranges of k p for which
stabilizing (ki  kd ) values may exist;
Step 3: If there is no k p satisfying Step 2 then output NO
SOLUTION and EXIT;
Step 4: Initialize j  1 and P  Pj ;
Step 5: Pick a range [klow  kupp ] in P and initialize k p  klow ;
Step 6: Pick the number of grid points N and set step  N11 [kupp  klow ] ;
Step 7: Increase k p as follows: k p  k p  step . If k p  kupp
then GOTO Step 14;
Step 8: For fixed k p in Step 7, solve for the real, nonnegative, distinct finite zeros of q( k p ) with odd
multiplicities and denote them by 0  0  1  2   l 1 .
Also define l   ;
Step 9: Construct sequences of numbers i0  i1 i2   il as follows:
(i) If N  ( jt )  0 for some t  1 2  l  1 , then define
it  0
(ii) For all other t  01 2  l ,
it {11}
With i0  i1
defined in this way, define the set A(k ) as
p
 {{i  i   il }} if m  n is even
A( k p )   0 1
{{i0  i1  il 1}} if m  n is odd
Step 10: Determine the admissible strings I  {i0  i1 } in A(k
from (??). If there is no admissible string then GOTO Step
7;
Step 11: For an admissible string I  i0  i1 , determine the
set of (ki  kd ) values that simultaneously satisfy the following
string of linear inequalities:
[ p1 (t )  (ki  kdt2 ) p2 (t )]it  0 t  01 2
Step 12: Repeat Step 11 for all admissible strings I1 I 2   I v
to obtain the corresponding admissible (ki  kd ) sets S1 S2   Sv .
The set of all stabilizing (ki  kd ) values corresponding to the
fixed k p is then given by
S(k p )  x1 2
v
Sx 
Step 13: GOTO Step 7
Step 14: Set j  j  1 and P  Pj . If j  d GOTO STEP 5;
else, terminate the algorithm.
p)
Example
Consider the problem of determining stabilizing PID gains for the
plant G(s)  ND((ss)) where
N ( s )  s 3  2s 2  s  1
D( s)  s 6  2s 5  32s 4  26s 3  65s 2  8s  1
The closed-loop characteristic polynomial is
 (s k p  ki  kd )  sD(s)  (ki  kd s2 ) N (s)  k p sN (s)
Thus n  7 and m  3 . Also
Ne (s2 )  2s2 1 No (s2 )  s2 1 De (s2 )  s6  32s4  65s2 1 Do (s2 )  2s4  26s2  8
and
N  (s)  (2s2 1)  s(s2 1)
Therefore we obtain
 (s k p  ki  kd ) N  (s)  [s2 (s8  35s6  87s4  54s2  9)  (ki  kd s2 )
(s6  6s 4  3s 2  1)]  s[(4s8  89s6 128s 4
75s2 1)  k p (s6  6s4  3s2 1)]
so that
 ( j k p  ki  kd ) N  ( j)  [ p1 ()  (ki  kd 2 ) p2 ()]  j[q1()  k pq2 ()]
where
p1 ( )   10  35 8  87 6  54 4  9 2
p2 ( ) 6 6 4 3 2 1
q1 ( )  4 9  89 7  128 5  75 3  
q2 ( )   7  6 5  3 3   
In Step 2, the range of k p such that q f ( k p ) has at least 3 real,
non-negative, distinct, finite zeros with odd multiplicities was
determined to be (247513 1) which is the allowable range.
Now for a fixed k p  (247513 1) , for instance k p  18 , we
have
q(  18)  q1 ( )  18q2 ( )
 4 9  71 7  236 5  129 3  19
Then the real, non-negative, distinct finite zeros of q f ( 18)
with odd multiplicities are
0  0 1  05195 2  06055 3  18804 4  36848
Also define 5   . Since m  n  10 which is even, and l ( N (s))  2
and r ( N (s))  1 ,
l ( N (s))  r ( N (s))  1
and
(1)l 1 sgn[q( 18)]  1
it follows from Step 10 that every admissible string
I  {i0  i1 i2  i3  i4  i5}
must satisfy
{i0  2i1  2i2  2i3  2i4  i5} (1)  6
Hence the admissible strings are
I1  {1  1  1 1  1 1}
I 2  {1 1 1 1  1 1}
I 3  {1 1  1  1  1 1}
I 4  {1 1  1 1 1 1}
I 5  {1 1  1 1  1  1}
From Step 11, for I1 it follows that the stabilizing (ki  kd ) values
corresponding to k p  18 must satisfy the string of inequalities:
 p1 ( 0 )  (ki  kd  02 ) p2 ( 0 )  0

2
 p1 (1 )  (ki  kd 1 ) p2 (1 )  0
 p1 ( 2 )  (ki  kd  22 ) p2 ( 2 )  0

2
 p1 (3 )  (ki  kd 3 ) p2 (3 )  0
 p1 ( 4 )  (ki  kd  42 ) p2 ( 4 )  0

2
 p1 (5 )  (ki  kd 5 ) p2 (5 )  0
Substituting for 0 , 1 , 2 , 3 , 4 and 5 in the above
expressions, we obtain
ki  0

 k  02699k  46836
d
 i
k

0

3666
k
 i
d  100797
 k  35358k  3912
d
 i
ki  135777kd  1402055
The set of values of (ki  kd ) for which above holds can be
solved by linear programming and is denoted by S1 . For I 2 ,
we have
ki  0

 k  02699k  46836
d
 i
k

0

3666
k
 i
d  100797
 k  35358k  3912
d
 i
k

13

5777
k
 i
d  1402055
The set of values of (ki  kd )for which the above holds can also be
solved by linear programming and is denoted by S2 .
Similarly, we obtain








S3   for I 3
S4  for I4
S5  for I5
Then, the stabilizing set of (ki  kd ) values when k p  18 is
given by
S( 18)   x 1 2
5
Sx
 S1S2
The set S( 18) and the corresponding S1 and S2 are shown in
Fig. 2.
Figure 2. The stabilizing set of
(ki  kd ) values when k p  18 .
By sweeping over different k p values within the interval (24and
7513 1)
repeating the above procedure at each stage, we can generate
the set of stabilizing
set is shown in Fig.
(values.
k p  ki  kdThis
)
3.
Figure 3. The stabilizing set of
(k p  ki  kd ) values.
PID Controllers for Discrete-time Systems
Plant
Gz ( z ) 
N z ( z)
Dz ( z )
where N z ( z) and Dz ( z) are polynomials in the forward shift
operator z .
The discrete-time PID controller is given by:
1
1  2 z 1  z 2

k
d
1  z 1
1  z 1
(k p  ki  kd ) z 2  (k p  2kd ) z  kd
Cz ( z )  k p  ki

z2  z
z
w 1
w 1
N ( w)
 Gz ( z ) z  w1
w1
D( w)
w -domain PID controller
2
B(w) ki w  2(k p  ki )w  2k p  ki  4kd


A(w)
2w  2
w -domain closed loop characteristic polynomial:
 (w k p  ki  kd )  (2w  2)D(w)  (ki w2  2(k p  ki )w  2k p  ki  4kd ) N (w)
and Hurwitz stability of this polynomial is equivalent to
stability of the original discrete time system. It is clear that we
can now proceed as in the previous section
Example Plant
Nz ( z)
Dz ( z )
where
N z ( z)  z  1
Dz ( z )  z 2  15 z  05
Using the bilinear transformation, we obtain the w -domain plant
where
2
N ( w)
D( w)
N ( w)  2w  2w
D( w)  w  3
Fig. 4 shows the stabilizing regions in the space of ( k p , kd , k i )
determined using the procedure outlined above.
Figure 4. The stabilizing region in the space of (
k p , k i , kd ).
PID Controllers for Continuous-time First
Order Systems with Time Delay
We consider the feedback system of Figure 1 where the plant G ( s)
is described by
G (s) 
k
e  Ls 
1  Ts
k represents the steady-state gain of the plant, L the time delay,
and T the time constant of the plant. The controller is of the PID
type,
C (s)  k p 
ki
 kd s 
s
The objective is to determine the set of controller parameters
( k p , k i , kd ). for which the closed-loop system is stable. A
complete solution to this problem has been obtained last year.
We provide a brief summary of these results.
[A] Open-loop Stable Plant
In this case T  0 . Furthermore, we make the standing
assumption that k  0 and L  0 .
Theorem
The range of k p values for which a given open-loop stable plant,
with transfer function G ( s) as in (??), continues to have closed
loop stability with a PID controller in the loop is given by

1
1 T

 k p   1sin(1 )  cos(1 ) 
k
k L

where 1 is the solution of the equation
tan( )  
T

T L
in the interval (0 ). For k p values outside this range, there are no
stabilizing PID controllers. The complete stabilizing region is
given by: (see Fig. 5)
1.
2.
3.
For each k p       ,
the cross-section of the
 k k  (k  k )
stabilizing region in the
space is the trapezoid T.
i
d
1
For k p  , the cross-section of the stabilizing region in the
k
 ki , kd  space is the triangle  .
1
1
For each k p   1k , ku  1k  TL 1 sin(1 )  cos(1 ) , the crosssection of the stabilizing region in the (ki  kd ) space is
the quadrilateral Q.
The parameters m j  bj , w j , j  1 2 necessary for determining the
boundaries of T, and Q can be determined using
the following equations:
mj 
L2
z 2j
L 
T

sin  z j   z j cos  z j 

kz j 
L

z 
T

w j  j sin  z j   z j cos  z j   1 
kL 
L

bj  


where z j , j  1, 2,... are the real, positive solutions of
kk p  cos  z  
T
z sin  z   0
L
arranged in ascending order of magnitude.
kdi
Figure 5. The stabilizing region of
1
1
1
1
 ki , kd  for:  a   k  k p  k ;  b  k p  k ;  c  k  k p  ku .
[B] Open-Loop Unstable Plant In
this case T  0 Theorem
A necessary and sufficient condition for the existence of a
stabilizing PID controller for the open-loop unstable plant (??)
is  TL  05 . If this condition is satisfied, then the range of k p
values for which a given open-loop unstable plant, with transfer
function G ( s) can be stabilized using a PID controller is given
by
1 T
1

1sin(1 )  cos(1 )   k p  

k L
k

where 1 is the solution of the equation
tan( )  
T

T L
in the interval (0 ) . In the special case of  TL  1 , we have 1  2 .
For k p values outside this range, there are no stabilizing PID
controllers. Moreover, the complete stabilizing region is
characterized by: (see Fig. 6)
For each k p   kl  1k  TL 1 sin(1 )  cos(1 )   1k  , the crosssection of the stabilizing region in the (ki  kd ) space is the
quadrilateral Q.
The parameters mj  bj and wj , j  1 2 necessary for
determining the boundary of Q are as defined in the statement
of previous Theorem
Figure 6. The stabilizing region of ( k i , kd ) for kl  k p   1k .
PID Stabilization Algorithm for Time-Delay Plants:
1)
Initialize k p   1k and step  N11  ku  k1 , where N is the desired
number of grid points.
2)
Increase k p as follows: k p  k p  step.
3)
If
k p  ku then go to Step 4. Else, terminate the algorithm.
4)
Find the roots z1 and z2
5) Compute the parameters m j and bj , j  1 2 associated with
the previously found z j by using (1) and (1).
6)
Determine the stabilizing region in the k i - kd space using
Fig. 5.
7)
Go to Step 2.
Example
Consider the PID stabilization problem for a plant described by the differential
equation
dy (t )
 05 y (t )  05u (t  4) 
dt

This process can also be described by the transfer function G ( s) with the
following parameters: k  1 , T  2 sec, and L  4 sec. We use the Theorem above
to find the range of k p values for which a solution to the PID stabilization problem
exists.

We first compute the parameter 1  (0  ) satisfying the following equation
tan( )  03333 

Solving this equation we obtain1  24557
values is given by
. Thus, from (??) the range of k p
1  k p  15515 

We now sweep over the above range of k p values and determine the stabilizing
set (ki  kd ) of values at each stage using the previous algorithm. These regions are
sketched in Fig. 7.

Any PID gains selected from these regions will result in closed-loop stability and
any gains outside will result in instability.
Now, consider the following performance specifications:
1.
Settling time  60 secs;
Figure 7. The stabilizing region of ( k p ,
Example ??.
k i , kd ) values for the PID controller in
2. Overshoot  20% .
We can obtain the transient responses of the closed-loop system for the
( k p , k i , kd ) values inside the regions depicted in the Fig. In general we
also need some tolerance around the controller parameters, that is we want
the controller to be controller-robust or non-fragile. Thus we only consider
PID gains lying inside the following box defined in the parameter space:
01  k p  1  01  ki  03 and 05  kd  15 
By searching over this box, several ( k p, k i, kd ) values are found to meet the desired
performance specifications. We arbitrarily set the controller parameters to: k p  03444 ,
ki  01667 , kd  08333 . Fig. below shows the step response of the resulting closed-loop
system. It is clear from the figure that the closed-loop system is stable, the output y(t )
tracks the step input signal and the performance specifications are met.
Figure 8. Time response of the closed-loop system for Example
The figure also shows the responses of the closed-loop systems for the case of a
PID controller designed using the Cohen-Coon method (k p  09180 ki  01456 kd  09845)
and the Ziegler-Nichols method (k p  06 ki  0075 kd  12) Notice that in these
cases also the system is stable and achieves setpoint following. However, the
responses are much more oscillatory.
PID Controller Design for Performance Specs

In many situations control system performance can be specified
by a frequency domain inequality or equivalently an H  norm constraint
on a closed loop transfer function G(s)  ND((ss)) :
G(s)    

It has been shown by us that the above condition is equivalent to Hurwitz
stability of the complex polynomial family:
 D(s)  e j N (s) [0 2 ]

In our PID design problem the polynomials D(s) N (s) will have the PID
gains embedded in them and the set of parameters achieving specifications is
given by those achieving simultaneously the stabilization of the complex
polynomial family as well as the real closed loop characteristic polynomial. It
turns out that the set of PID gains achieving stabilization of a complex polynomial
family and therefore attaining the specifications can be found by an extension of
the algorithm given for the real case.

c(s k p  ki  kd )  L(s)  (kd s2  k p s  ki )M (s)
where L(s) and M (s) are given complex polynomials. The results on PID
stabilization presented earlier have been extended to this complex stabilization
problem (details omitted)
H
Synthesis of

PID Controllers
Consider the following closed-loop transfer functions: considered:

The sensitivity function:

The complementary sensitivity function:
S (s) 
T ( s) 

1
,
1  C ( s)G ( s)
C ( s)G ( s)
,
1  C ( s)G ( s)
T (s,
cl
The input sensitivity function:
T ( s) 
C ( s)G ( s)
,
1  C ( s)G ( s)
H
 norm of weighted

Various performance and robustness specifications can be captured by using the
(s ) controller, the transfer functions (?)-(?) can all be
versions of the transfer functions. When
is aCPID
represented in the following general form:
T ( s, K p , k i , k d ) 
A( s)  (k d s 2  k p s  k i ) B( s)
sD ( s)  (k d s 2  k p s  k i ) N ( s)
For the transfer functionT (s, K p , ki , k d )
and a given number  0
performance specification usually takes the form:
, the standard
H
|| W (s)Tcl (s, k p , ki , k d ) ||   
where W ( s ) is a stable frequency-dependent weighting function that is selected to capture the desired design
objectives at hand.
 (s k p  ki  kd )
Define the polynomials
and
 (s k p  ki  kd    )

 (s k p  ki  kd ) sD(s)  (ki  k p s  kd s 2 ) N (s)
and

1
 ( s k p  ki  kd     ) [ sWd ( s) D( s)  e jWn ( s) A( s)]

1
(kd s 2  k p s  ki )[Wd ( s) N ( s)  e jWn ( s) B( s)]

as follows:
The
1.
H
performance problem reduces to the simultaneous satisfaction of the following conditions:
 (s k p  ki  kd )
2.
 (s k p  ki  kd     )
3.
 W ()Tcl ( k p  ki  kd )  
is Hurwitz;
is Hurwitz for

all in [0
2 )
;
The above equivalence can be used to determine stabilizing (k  k  k ) values such that
p
i
d
the H
-norm of a certain closed-loop transfer function is less than a prescribed level. This

is illustrated using the following example.
Example
G(s)  ND((ss))
Consider the plant
where
N ( s)  s  1
D(s)  s 2  08s  02
We consider the problem of determining all stabilizing PID gain values for which
|| W (s)T (s, k p , ki , k d ) ||   1
where
T (s k p  ki  kd )
is the complementary
sensitivity function:
T ( s k p  ki  kd ) 
and
W (s) 
(kd s 2  k p s  ki )( s  1)
s( s 2  08s  02)  (kd s 2  k p s  ki )( s  1)
s  01

s 1
We have to satisfy:
1.  (s k p  ki  kd )  s(s2  08s  02)  (kd s2  k p s  ki )(s 1)
is Hurwitz;
2.  (s k p  ki  kd  1  )  s(s 1)(s2  08s  02)  (kd s2  k p s  ki )[(s 1)(s 1)  e j (s  01)(s 1)]
in [0 2 ) ;
is
3.  W ()T ( k p  ki  kd )  kkd1  1
d
These sets are shown in the following:
Figure 9: The set
S(1 035)
Hurwitz
for  all
Figure 10: The set
S(2 035)  [0 2 ) S(2 035  )
Figure 11: The set of stabilizing (k p  ki  kd ) values for
which || W (s)T (s, k p , ki , k d ) ||   1
Example: Robust Performance
Consider the plant
G(s)  ND((ss))
where
N (s)  s  15
D(s)  s 2  s  1
Then the sensitivity function and complementary sensitivity function are:
s ( s 2  s  1)
S ( s k p  k i  k d ) 

s ( s 2  s  1)  (kd s 2  k p s  ki )( s  15)
T ( s k p  k i  k d ) 
(kd s 2  k p s  ki )( s  15)
s ( s 2  s  1)  (kd s 2  k p s  ki )( s  15)

The weighting functions are chosen as: W1 ( s)  s 0022 and W2 (s)  ss011 . We know
(k p  ki  values
kd ) meeting the robust performance specification
that stabilizing
exist if and only if the following conditions hold:
Example: Robust Performance – Cont.
1.
2.
 (s k p  ki  kd )  s(s2  s 1)  (kd s2  k p s  ki )(s 15)
is Hurwitz;
 (s, k p , ki , kd , , )  s(s  0.2)(s  1)(s 2  s  1)  e j s(0.2)(s  1)(s 2  s  1) 
(kd s 2  k p s  ki )[s  0.2)(s  1)(s  15)  e j (s  0.2)(s  0.1)(s  15)] is Hurwitz for all
and for all ;
kd
3.  W1 () S ( k p  ki  kd )    W2 ()T ( k p  ki  kd )  kd 1  1
The procedure for determining the set of (k p  ki  kd ) values satisfying conditions (1), (2) and
(3) is similar to that presented in the previous example.
Figure 12: The set of
(k p  ki  kd ) values for which
 W1 (s)S (s k p  ki  kd )    W2 (s)T (s k p  ki  kd ) 

1
PID Controller Design with Guaranteed Gain and Phase Margins
We consider the problem of designing PID controllers that achieve pre-specified gain and phase margins for a
given plant. Let Am and  m
denote the desired upper gain and phase margins respectively. From the
definitions of the upper gain and phase margins, it follows that the PID gain values (k  k  k ) achieving
p
i
d
gain margin Am and phase margin  m must satisfy the following conditions:
1.
2.
sD(s)  A(kd s2  k p s  ki ) N (s)
sD(s)  e j (kd s2  k p s  ki ) N (s)
is Hurwitz for all
A [1 Am ]
is Hurwitz for all
 [0  m ]
and
Thus the problem to be solved is reduced to the problem of simultaneous stabilization of two
families of polynomials.
Example
Consider the plant
G(s)  ND((ss))
where
N ( s )  2s  1
D(s)  s 4  3s3  4s 2  7s  9
In this example, we consider the problem of determining all (k p  ki  kd ) gain values that
provide a gain margin Am  30 and a phase margin   40 . A given set of (k p  ki  kd )
m
values will meet these specifications if and only if the following conditions hold:
1.
s(s4  3s3  4s2  7s  9)  A(kd s2  k p s  ki )(2s 1)
A [1 30] ;
is Hurwitz for all
2. s(s4  3s3  4s2  7s  9)  e j (kd s 2  k p s  ki )(2s 1) is Hurwitz for all
 [0  40 ] .
Again, the procedure for determining the set of (k p  ki  kd ) values is similar to that presented
before. The resulting set is sketched in Fig. 13.
Figure 13: The set of (k p  ki  kd ) values for which the resulting closed loop system
achieves a gain margin Am  30 and a phase margin m  40 .
Concluding Remarks

Similar results have been obtained for first order (lead/lag) controllers

Extensions to arbitrary fixed order controllers under study

Software development planned

Time domain specs. to be incorporated

Extension to MIMO systems

Applications
References
 Astrom K. J. Åström and T. Hägglund, PID Controllers: Theory, Design, and Tuning,
Instrument Society of America, North Carolina, 1995.
 A. Datta, M. T. Ho and S. P. Bhattacharyya, Structure and Synthesis of PID Controllers,
Springer-Verlag, 2000.
 H. Xu, A. Datta and S. P. Bhattacharyya, “Computation of All Stabilizing PID Gains for
Digital Control Systems,” IEEE Transactions on Automatic Control, Vol. AC-46, No. 4, 647652, April 2001.
 G. J. Silva, A. Datta and S. P. Bhattacharyya, “New Results on the Synthesis of PID
Controllers,” IEEE Transactions on Automatic Control, Vol. 47, No. 2, 241-252, February 2002.
 L.H.Keel, J.I.Rego and S.P.Bhattacharyya, “A New Approach to Digital PID Controller
Design" IEEE Trans. Aut. Contr. Vol. AC-48(4), pp.687-692, April 2003.
Motivation
• Design of low order controllers
– Whether there exists a stabilizing controller of a given
order
– If so, what is the complete set of stabilizing controllers
of a given order
– In terms of a given performance metric, is there a
stabilizing controller that achieves a desired
performance?
– If there are several performance metrics, what is the set
of stabilizing controllers that meet performance
objectives in terms of these metrics.
Motivation
• Design of decentralized controllers for a collection of
vehicles with a given information structure:
– What are the set of stabilizing controllers that achieve a
certain performance (e.g. spacing error attenuation)?
– Such requirements are important for ``scalability of
stability’’ for arbitrarily large collections
Problem Statement
Given Data (polynomials):
P0 (s), P1 (s),
, Pl (s)
Questions:
– Do there exist controller gains K  (k1 , k2 , , kl )
such that the following polynomial is Hurwitz?
P(s, K ) : P0 (s)  k1P1 (s)  k2 P2 (s) 
–
 kl Pl (s)
If so, what is the set of all such controller gains that
make the above polynomial Hurwitz?
Example
First Order controller for a MISO system
Plant:
r
Ni ( s )
Y ( s)  
U i ( s)
i 1 Dp ( s)
Controller:
ai s  bi
U i (s)  
Y (s)
sc
Characteristic polynomial:
P ( s, K )  sD p ( s )  c D p ( s )  a1 sN1 ( s )  b1 N1 ( s ) 
Po ( s )
P1 ( s )
P2 ( s )
P3 ( s )
 ar sN r ( s )  br N r ( s )
P2 r ( s )
P2 r 1 ( s )
Construction of the set of stabilizing controllers
Hermite-Biehler (HB) Theorem: Let
Pe ( w2 , K )  Re( P( jw, K ))
1
Po ( w , K ) 
Im( P( jw, K ))
w
2
P(s,K) is Hurwitz iff
– The constant coefficients of even and odd polynomials are of the
same sign
– Roots of the even and odd polynomial are real and interlace
Idea of the proof of Hermite-Biehler Theorem
P( jw, K )  ( jw  s1 )( jw  s2 )
 ( jw  s1 )  ( jw  s2 ) 
 ( Pe  jwPo )
( jw  sn )
 ( jw  sn )
Construction of stabilizing sets
There exists a stabilizing K (meaning P(s,K) is Hurwitz) iff
– All coefficients of P(s,K) are of the same sign
– there exist (n-1) frequencies 0  w0  w1   wn1
such that
(1)l Pe ( wl2 , K ) Pe ( wl21 , K )  0,
l 1
(1) Po ( w , K ) Po ( w , K )  0,
2
l
2
l 1
l  0,1,
,n 2
How many LPs for a set of frequencies?
Given a set of (n-1) frequencies 0  w0  w1 
Only the following two LPs must be checked:
 wn1
Pe (0, K )  0, Po (0, K )  0
Pe (0, K )  0, Po (0, K )  0
Pe ( w12 , K )  0, Po ( w12 , K )  0
Pe ( w12 , K )  0, Po ( w12 , K )  0
Pe ( w22 , K )  0, Po ( w22 , K )  0
Pe ( w22 , K )  0, Po ( w22 , K )  0
Pe ( w32 , K )  0, Po ( w32 , K )  0
Pe ( w32 , K )  0, Po ( w32 , K )  0
Pe ( w42 , K )  0, Po ( w42 , K )  0
Pe ( w42 , K )  0, Po ( w42 , K )  0
What do the feasible sets of LPs mean?
Given a set of (n-1) frequencies, 0  w0  w1   wn1
The two LPs associated with these frequencies indicate all
controllers, K, which stabilize the plant and
– which place roots of Pe and Po alternatively in the
disjoint intervals
(0, w1 ), (w1, w2 ), (w2 , w3 ),
–
, ( wn2 , wn1 )
Which ensure that all coefficients of P(s,K) are of the
same sign
Construction of the set of all stabilizing controllers
One can identify, in a unique way, any feasible LP with
– A set of (n-1) increasing frequencies
– a binary number which indicates the sign of the
coefficients
•
•
Problem of determining the set of controllers can therefore
be reduced to the search for all these n real numbers
Store all such sets of n numbers for purposes of design
•
Compactify (0, ) (0, 1) using
w2 
u
, u  (0,1)
1 u
Example (Anderson, IEEE TAC 1975)
Plant:
0
x
0

0
 0
y
 1
Controller:
1
0
13
0
1
x
0

0 
0  u
 

1 

5 1 
x

1 0 
u  k1 k2  y
Example
Characteristic polynomial:
P(s, k1, k2 )  s  k1s  (k2  5k1 13)s  k2
3
2
Necessary conditions:
k1  0
(k2  5k1  13)  0
k2  0
Example
Even and odd polynomials:
P( jw, k1 , k2 )   jw  k1w  (k2  5k1  13) jw  k2
3
2
Pe (w , k1 , k2 )  k1w  k2
2
2
Po (w , k1 , k2 )  w  (k2  5k1  13)
2
2
Example
There must exist two frequencies: 0  w1  w2 so
that Pe (0, k1 , k2 )  k2  0;
Po (0, k1 , k2 )  k2  5k1  13  0;
Pe ( w12 , k1 , k2 )   k1w12  k2  0;
Po ( w12 , k1 , k2 )   w12  k 2  5k1  13  0;
Pe ( w22 , k1 , k2 )   k1w22  k2  0;
Po ( w22 , k1 , k2 )   w22  k2  5k1  13  0;
Example
There should exist 0  u1  u2  1 such that
R e (0, k1 , k2 )  k2  0;
R o (0, k1 , k2 )  k2  5k1  13  0;
R e (u1 , k1 , k2 )  k1u1  k2 (1  u1 )  0;
R o (u1 , k1 , k2 )  u1  (k2  5k1  13)(1  u1 )  0;
R e (u2 , k1 , k2 )  k1u2  k2 (1  u2 )  0;
R o (u2 , k1 , k2 )  u2  (k2  5k1  13)(1  u2 )  0;
Example - Results
Partition (0,1) and search over the partition
Example - Results
Partition (0,1) and search over the partition
Example - Results
Partition
Relevant results from recent literature
Hermite-Biehler theorem is used to
– Synthesize PID controllers (by Bhattacharyya, Keel,
Datta, Ho etc)
– obtain a parametrization of all Hurwitz polynomials of a
given degree by Djaferis et.al (May 2003, IEEE TAC).
•
It maps the interior of a non-negative monotone cone of n
frequencies into the set of all monic Hurwitz polynomials of
degree n in a bijective manner
Purpose of Outer Approximation
Theorem: If the set of strictly proper controllers of order r
is bounded (but not empty), then r is the minimal order
of stabilization
Boundedness of an outer approximation of the set of
stabilizing controllers of a given order ensures that one
is working with minimal order of stabilization
Outer Approximation
Descartes’ Rule of signs:
– The number of sign changes in the coefficients of a
polynomial are greater than or equal to the number of its
real, positive roots and the difference is always even.
– If all roots of a polynomial are real, then the number of
sign changes in the coefficients is exactly equal to the
number of real, positive roots of the polynomial
•
Application of Descartes’ rule to P(s,K) is equivalent to
requiring all its coefficients be of the same sign (leads to
two LPs)
Outer Approximation
A Generalization of Descartes’ rule (due to Poincare):
(See Polya and Szego) Let R(s) be a polynomial.
1. The number of sign changes in the coefficients of
(s  1)k R(s) monotonically decrease with k
2. As k approaches infinity, the number of sign changes in
the coefficients of (s  1)k R(s) is exactly equal to the
number of real positive roots of R(s)
Sketch of the methodology
Applying the Generalization of Descartes’ rule (due to
Poincare): It is necessary for P(s,K) to be Hurwitz that
1. For every + integer k, the number of sign changes of
(w2 1)k Pe (w2 , K ) is the same as the degree of the even
polynomial Pe (w2 , K )
2. Similar statement for the odd polynomial
For every k, these two conditions generate a number of LPs;
the union of the feasible sets of LPs contains the set of
stabilizing controllers (outer approximation)
Idea of the proof of Poincare’s result
For k sufficiently large, the number of sign changes in the
coefficients of
(s  1)k R(s)
is the same as the number of sign changes of the sequence
1
2
k 1
{R ( ), R ( ), , R (
)}
k
k
k
where
u
R (u )  (1  u ) R(
)
1 u
n
Outer Approximation - Interlacing
For two polynomials to have all real positive roots that
interlace, given any real positive number, the difference
in the number of roots of the two polynomials to the
left of the given number is either 0 or 1 or -1.
Using this fact, one can construct an outer approximation
which has the following feature:
If K is destabilizing, there is an iteration (akin to the
exponent k in the Poincare’s result) such that the kth
and subsequent outer approximants will not include K.
Problems that can be tackled
– Simultaneous stabilization of a discrete number of
plants
–
Synthesis of controllers with a specified gain margin
•
Can be posed as a problem of stabilizing a one-parameter
family of plants, where the parameter belongs to a compact set,
which can be discretized and converted to the problem above
Relevant results from recent literature
Henrion, Sebek and Kucera: Idea of their scheme:
– They use the result that a polynomial P(s) is Hurwitz iff
there exists a Hurwitz polynomial Q(s) of the same
degree such that P(s)/Q(s) is SPR.
– Q(s) – central polynomial – guessed.
– Requiring SPR of P(s)/Q(s) is equivalent to requiring
another polynomial, with coefficients affine in
controller parameters, to be non-negative (Siljak’s result
from 1973)
– They use Sum-of-Squares method and solve using LMIs
Relevant results from recent literature
Descartes’ Rule of signs – Underutilized tool
Using the Poincare’s generalization, one can show the
following result:
If a plant P(s) does not have real, non-minimum phase
zeros, there is a two parameter stabilizing compensator
that achieves a non-negative closed loop impulse
response (only the order can be quite large)
Conclusions
1. Presented a method to construct the set of all
stabilizing controllers of fixed order
2. Presented a method to get a bound for the set of all
stabilizing controllers of fixed order
3. Both approximations exploit interlacing property of
Hurwitz polynomials as described by the HermiteBiehler Theorem
4. The proposed methodology has limitations –
it does not address the question of existence of
stabilizing controllers in a crisp manner
Work In Progress
– Synthesis of the set of controllers that acheive a
specified performance
– Synthesis of fixed structure controllers for MIMO
systems
– Synthesis of controllers which are based on the
empirical response data of the plant
– Experiments