By Frank Owen PhD PE polyXengineering Inc San Luis Obispo California Purpose of Derivative control You do not like the dynamics of an existing system You want to place the closedloop poles at a point that is not on the current root locus ID: 701832
Download Presentation The PPT/PDF document "PD design via root locus" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
PD design via root locus
By Frank Owen, PhD, PE
polyXengineering, Inc.
San Luis Obispo, CaliforniaSlide2
Purpose of Derivative control
You do not like the dynamics of an existing system
You want to place the closed-loop poles at a point that is not on the current root locus
Use PD control to accomplish this
Let’s see how to do this…Slide3
Example system: 2
nd
–order system
As an example, let’s use a 2
nd
-order system
Open-loop poles: s = -2, -4System has two asymptotes with sa = -3The system is operating with a P-only controller at 10% overshoot10% overshoot means z = 0.591, q = 53.8° Thus z·wn = 3 , so For completeness, let KOL = 1 without the controller
Slide4
Use Magnitude criteria for
k
P
What KP puts the closed-loop poles at this point? Use the magnitude criterion to find out:
Add vectors for graphic solution
M
p2Mp1SoSo Slide5
Test G
CL
’s step response
The Matlab commands at right give the following unit step response…Slide6
Existing system’s step response
Aim:
Halve the settling time
…without increasing the response overshoot Slide7
Design choices
Since
, we can halve
T
s
by doubling
wn , keeping z (so the %OS) the same. Note that we cannot use a simple gain adjustment to move the closed-loop pole up to this point, where , because this lowers z too, and TS is the product of z and wn . Instead, we need to stay on the 10%OS ray and move the closed-loop pole to here…Slide8
Keep %OS, halve
T
s
q
2=72.8°37.8% OSThe desired closed-loop pole location is at …but this point is not on the existing root locus, so we shall have to modify the root locus to pass through this point.Construct the vectors to this closed-loop pole to formulate the graphical solution…Slide9
Graphical solution, new CL pole
Now draw the vectors to the closed-loop pole that are part of evaluating it graphically.
M
p2
M
p1
qp1qp2It is now obvious why this desired point is not on the root locus: qp1 + qp2 > 180°So the new point substituted into the characteristic equation does not meet the angle criterion:Let’s fix this… Slide10
Add zero to deal with too much negative angle
q
z1
Add this zero to remove excess negative angle
We specify the location of the zero so that
, and thus the angle criterion is met.
Slide11
Calculations
The spreadsheet excerpt at left shows the calculations necessary to design the controller.
First the angles for the poles’ vectors are calculated…
…then the excess negative angle is calculated…
With this result, the location of the zero that is needed to meet the angle criterion is calculated…
So a zero added at s = -7.69 will let G
OL meet the angle criterion, graphically evaluated at the desired CL pole location.Now use the vector magnitudes to determine the controller gain needed to meet the magnitude criterion.The vector magnitudes are calculated from the geometry……the quotient of the products of the zeros and poles is calculated……the inverse of this is then KC·KOL-pz…so the controller gain is calculatedSlide12
Calculate controller gains
We have added a controller with a zero at s = -7.69 and a gain of 9.19 :
If we parse through the transfer functions for the four controllers in the PID family, we see that we have just designed a PD controller:
,
, so
We use the
form for the zero instead of the
form because this is the form used with solution via the graphical methodology.
Slide13
Check the result
The Matlab code at right shows the commands necessary to check this result.
G
PD
created in Matlab
G = G
PD · GOLGCL = G/(1+G) , let Matlab do the work!GCL appears to be a 4th-order transfer function with 3 zeros! Actually it’s not: it’s a 2nd-order with 1 zero, that of the PD controller. Matlab’s symbolic functionality is not smart enough to cancel out two of the zeros/poles. Slide14
Check the result
The graph shown at left is the result of the commands on the previous slide.
The settling time has indeed been reduced
…and the %OS is 10% or less.
The reason
T
s does not match our expectations, indeed is better than we aimed for, is that the relationships developed for Tp , Ts , etc. are for a pure 2nd-order system with no zeros. Here we have a zero as part of the PD controller.Something like this often happens, so it is important always to check the controller design as a last step.…and the steady-state error is less Slide15
What happened to the root locus?
The addition of the zero changed the root locus to the configuration shown at left. This was done by adding the zero, which causes the off-real-axis path of the root locus to pass through the desired closed-loop root.Slide16
You can add I-control to eliminate steady-state error
Note that the response still shows steady-state error…
…as it should. There is no pole at the origin, so this is a type
0
system with a step input. You could now add I control to eliminate
e
ss . See the video on PI design to make this addition. If I-control is added, this would then yield a PID controller.Slide17
That’s all folks!
Fin
©
polyXengineering, Inc.
San Luis Obispo, California
www.polyxengineering.com