View
244
Download
1
Tags:
Embed Size (px)
Citation preview
Dynamical Systems Analysis IV:Root Locus Plots & Routh Stability
By Peter Woolf ([email protected])University of Michigan
Michigan Chemical Process Dynamics and Controls Open Textbook
version 1.0
Creative commons
• Qualitatively model your system: verbal modeling, incidence diagrams, control objectives
• Design your control layout and connectivity on a P&ID
• Make a model, evaluate stability of that model. • Simulate and visualize dynamics of your model• Add logical (IF.. THEN..) controllers and PID
controllers• Tune controller parameters
Recap
Question of the Day
• Given a controller, how far can you push the system before it oscillates or goes out of control?– What is your safety margin?– Does it really matter what I set some
values to?
1) Model system
€
A1
dh1
dt= Fo − c1h1
A2
dh2
dt= c1h1 − c2h2
A3
dh3
dt= c2h2 − c3h3
Here, h1, h2, and h3 are the levels of R001, R002, and R003.The parameters c1, c2, c3 are valve and pipe constants, and Fo is the feed2) Model
controller
€
Fo = Fos +KC (h3set − h3)
3) Solve for Steady state
€
A1
dh1
dt= 0 = Fos +KC (h3set − h3)( ) − c1h1
A2
dh2
dt= 0 = c1h1 − c2h2
A3
dh3
dt= 0 = c2h2 − c3h3
4) Calculate Jacobian
€
A1
dh1
dt= Fos +KC (h3set − h3)( ) − c1h1
A2
dh2
dt= c1h1 − c2h2
A3
dh3
dt= c2h2 − c3h3
€
h1′
h2′
h3′
⎡
⎣
⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥
=
−c1
A1
0 −Kc
A1
c1
A2
−c2
A2
0
0c2
A3
−c3
A3
⎡
⎣
⎢ ⎢ ⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥ ⎥ ⎥
h1
h3
h3
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥+
Fos + h3setKc
A1
0
0
⎡
⎣
⎢ ⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥ ⎥
5) Evaluate Stability
€
h1′
h2′
h3′
⎡
⎣
⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥
=
−c1
A1
0 −Kc
A1
c1
A2
−c2
A2
0
0c2
A3
−c3
A3
⎡
⎣
⎢ ⎢ ⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥ ⎥ ⎥
h1
h3
h3
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥+
Fos + h3setKc
A1
0
0
⎡
⎣
⎢ ⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥ ⎥
Aside: Mathematica is helping us, as the full solution is not really helpful.
In general, 1st and 2nd order polynomials are interpretable, 3rd and 4th are analytically solvable but not easily interpretable, and 5+ order polynomials have no analytical solution.
6) Add in known constants and try again..
€
h1′
h2′
h3′
⎡
⎣
⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥
=
−c1
A1
0 −Kc
A1
c1
A2
−c2
A2
0
0c2
A3
−c3
A3
⎡
⎣
⎢ ⎢ ⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥ ⎥ ⎥
h1
h3
h3
⎡
⎣
⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥+
Fos + h3setKc
A1
0
0
⎡
⎣
⎢ ⎢ ⎢ ⎢ ⎢
⎤
⎦
⎥ ⎥ ⎥ ⎥ ⎥A1=2, A2=4, A3=6,
c1= c2= c3=1, Fos=1,h3set=2
Eigenvalues defined by the polynomial expression:
€
48λ3 + 44λ2 +12λ +1+Kc = 0
Eigenvalues defined by the polynomial expression:
€
48λ3 + 44λ2 +12λ +1+Kc = 0
Observation: Solution is still not awfully useful. What values of Kc are good? How does the answer change with Kc?
Solution:Root Locus Plot
STABLE UNSTABLE
Root Locus PlotMethod to visualize the effect of changes
to control parameters.
Real axis
Imaginaryaxis
positivenegativezero
Increasing oscillatory behavior
Increasing stability
Root Locus PlotMethod to visualize the effect of changes
to control parameters.
Real axis
Imaginaryaxis
positivenegativezero
= Eigenvalues for a given value of Kc
Example Eigenvalue set:=-2, -3+2i, -3-2i
Imaginary values always come in pairs
Stable, oscillatory solution
Root Locus PlotMethod to visualize the effect of changes
to control parameters.
Real axis
Imaginaryaxis
positivenegativezero
Increasing Kc
Kc value at which system becomes unstable
Root locus plot in Mathematica:1. Sample a Kc value2. Solve for roots3. For each root separate the imaginary and real components4. Plot
Root locus plot in Mathematica:1. Sample a Kc value2. Solve for roots3. For each root separate the imaginary and real components4. Plot
Increasing Kc
Increasing Kc
Kc value at which system becomes unstable
See file lec.17.example.nb
Another example..Imagine for another control system you find the following polynomial describing your eigenvalues:
€
3 + λ2(−4 + k + 2ti) + λ (14 − 2k − 6ti + 2k * ti + ti2) − 20 +10k + 4ti − 2k * ti − 2 * ti2 + k * ti2 = 0Here k and ti parameterize the P and I part of a PI controller.
Conveniently this function can be factored to:
€
(λ + k− 2)(λ −1+ ti+ 3i)(λ −1+ ti− 3i) = 0
For this system,What are the limits of k that result in a stable system?What are the limits of ti that result in a stable system?
Solution:The limits on k force the first root to be negative, thus
€
(λ + k− 2) = 0
λ = −k+ 2Thus k must be 2 or greater. Similarly for ti, ti must be 1 or greater
Another example..
€
(λ + k− 2)(λ −1+ ti+ 3i)(λ −1+ ti− 3i) = 0
Solution:The limits that ki result are ones that make the first root negative, thus
€
(λ + k− 2) = 0
λ = −k+ 2Thus k must be 2 or greater. Similarly for ti, ti must be 1 or greater
positivenegativezero
Increasing k
Increasing ti
Increasing ti
Root Locus Plot
€
(λ + k− 2)(λ −1+ ti+ 3i)(λ −1+ ti− 3i) = 0
Alternative visualization: Plot k vs ti and show regions that are stable vs unstable
UNSTABLE
STABLE
ti
k
Complications & Solutions
1) Sometimes you only care if the solution has real positive parts (i.e. is unstable)
2) Sometimes you have too many unknowns to easily construct and interpret a root locus plot (e.g. with two PID controllers you have Kc1, Kc2, i1, i2, d1, d2)
Solution: Routh stability analysis
Routh StabilityRouth stability allows us to evaluate the
signs of the real parts of the roots of a polynomial without solving for the roots themselves.
Example:In analyzing the stability of your system, you find the following expression for your eigenvalues
€
3 +10λ2 + 23λ +14 = 0You don’t care what the actual eigenvalues are, but only care if all of the real parts are negative. --> Use Routh Stability
Routh Stability
Picture from controls.engin.umich.edu Routh Stability section
Key requirement: sign on highest order term must be positive! If not multiply system by -1 to make it this way.
Count number of sign changes in first column to determine the number of positive real roots.
€
3 +10λ2 + 23λ +14 = 0
Routh table:Row Entry1 1 232 10 143 (10*23-14*1)/10=21.6 (10*0-1*0)/10=04 (21.6*14-10*0)/21.6=14 0
Because all entries in the first column are positive, we can assume that the real components of the eigenvalues are all negative and the system is stable. This result does not tell us if the system spirals and is only as accurate as the model and possible linear approximation we made of the model, but it does provide us with a method.
Note: if we did evaluate the roots, we would find this system has roots of -2, -1, and -7, thus is stable.
Back to a previous example:Eigenvalues defined by the polynomial expression:
€
48λ3 + 44λ2 +12λ +1+Kc = 0Routh table:Row Entry1 48 122 44 1+Kc
3 (12*44-48*(1+Kc))/44= (44*0-48*0)/44=0(12/11)(10-Kc)
4 ((12/11)(10-Kc)(1+Kc)-14*0) 0/ ((12/11)(10-Kc))= 1+Kc
Thus for the first column to be all positive, we need the following conditions:Row 3: Kc<10Row 4: Kc>-1 Therefore, for all positive we need -1<Kc<10
Check and see..Eigenvalues defined by the polynomial expression:
€
48λ3 + 44λ2 +12λ +1+Kc = 0
Borderline stable
stable
stable
Borderline stable
unstable
unstable
Routh Stability: Special cases
– One of the coefficients is zero--replace with epsilon
Example from controls.engin.umich.edu
Therefore row 3 is negative, so expect the system to have positive real roots -> unstable
Roots:s=-4 and s=2
Take Home Messages
• Adding a controller to a system does not always make it stable!
• Root locus plots help you see the effects of changing control parameters on system stability.
• Routh stability can help to identify regions of parameter space that will be stable.
• Routh stability is particularly useful when there are multiple unknown parameters and the system is too large handle analytically.