How Does Unity Position Feedback Affect System Dynamics in Control Theory?

In summary, you are attempting to solve a system with two poles by using a conjugate pair of poles to approximate the dominant pole. You derive the transfer functions and determine the other parameters from that. The Routh-Hurwitz criterion can be used to find the value of ##K_1## at the intersection of the root locus with the imaginary axis, i.e. where the system becomes marginally stable. If you follow the method, you just plot the root locus.
  • #1
toolpusher123
64
0

Homework Statement


With unity position feedbck, i.e. make K2=0, plot root locus as a function of pitch gain (K1). By imposing 2nd order system approximation, estimate settling time, rise time, peak time of the closed-loop system with 20% overshoot.

Homework Equations


The Attempt at a Solution


I have derived the open & closed loop transfer functions for the system, when K2=0. From this I have determined the poles & zeros:
  • 1 pole at, s=-2
  • 1 pole at, s=-1.25
  • 1 zero at, s= -0.452
  • A complex conjugate pair at, -0.177+/- 0.051j
  • Plotted the root locus: https://app.box.com/s/6o5y65btkp3zbvc31cqg
  • I now have no idea how to impose 2nd order approx & estimate rise time etc. Please help...
 
Physics news on Phys.org
  • #2
toolpusher123 said:
A complex conjugate pair at, -0.177+/- 0.051j
It's probably just a typo, but I think that should be -0.117 instead.

You have a conjugate pair of poles that are approximately dominant. As I understand it, you're asked to only consider that conjugate pair (approximate with a second-order system) and place them in the complex plane along the root locus where it intersects with an isoline of constant damping ratio corresponding to 20% overshoot, i.e. what value of ##K_1## puts the conjugate pair at a spot with the damping factor you want?

From the resulting system you can determine the rest of the parameters. This assumes you're not using a more sophisticated method of reducing the order of your system.
 
  • #3
Does this mean I should take the quadratic out of the transfer function & just adjust K1 until I get a step response= the original tf's step response?
 
  • #4
Is there a specific equation or set of equations that I can use to determine the appropriate value for K1?
 
  • #5
milesyoung said:
It's probably just a typo, but I think that should be -0.117 instead.

You have a conjugate pair of poles that are approximately dominant. As I understand it, you're asked to only consider that conjugate pair (approximate with a second-order system) and place them in the complex plane along the root locus where it intersects with an isoline of constant damping ratio corresponding to 20% overshoot, i.e. what value of ##K_1## puts the conjugate pair at a spot with the damping factor you want?

From the resulting system you can determine the rest of the parameters. This assumes you're not using a more sophisticated method of reducing the order of your system.
Is there a formula to find K1?
 
  • #6
toolpusher123 said:
Does this mean I should take the quadratic out of the transfer function & just adjust K1 until I get a step response= the original tf's step response?
No, I just meant that you should focus solely on the conjugate pair of poles. The root locus shows you that those poles will probably always remain dominant.

toolpusher123 said:
Is there a specific equation or set of equations that I can use to determine the appropriate value for K1?
You don't necessarily have to determine ##K_1##. The dynamics of a second-order system is fully determined by its undamped natural frequency ##\omega_n## and damping ratio ##\zeta##. Have you seen a plot of how these two quantities determine pole locations and vice versa in the complex plane? Hint: Think radius and angle.

The 20% overshoot gives you ##\zeta## and a specific location on the root locus for that conjugate pair of poles. From that location you can eyeball ##\omega_n##, which let's you estimate the parameters you need.
 
  • #7
I'm pretty confused as fom a suggestion from another site, I was pointed to 'Routh-Hurwitz Stability Criteria'. I was then told that its too complex to explain in a post? I'm really unsure what to do next. By the way your help is very much appreciated
 
  • #8
toolpusher123 said:
I'm pretty confused as fom a suggestion from another site, I was pointed to 'Routh-Hurwitz Stability Criteria'.
The Routh-Hurwitz criterion can be used to find the value of ##K_1## at the intersection of the root locus with the imaginary axis, i.e. where the system becomes marginally stable, but I'm not sure what it'll solve in your case.

I think the easiest solution to your problem is the one I've already hinted at.
 
  • #9
I'm still uncertain of the actual procedure.
  • If I follow your method, I just plot the root locus using the closed loop tf.
  • I know how to determine ζ from % overshoot, but how do I find ωnwithout first having ts, tr, tp etc?
  • In what way does ζ give me the location of the 'complex conjugate pair'? Does it just show where they already are, or is it a new position I must move them to?
  • Sorry if I come across as 'slow' but the longer I spend at this, the more confused I get...Thanks for your patience
 
  • #10
toolpusher123 said:
I'm still uncertain of the actual procedure.
  • If I follow your method, I just plot the root locus using the closed loop tf.
  • I know how to determine ζ from % overshoot, but how do I find ωnwithout first having ts, tr, tp etc?
  • In what way does ζ give me the location of the 'complex conjugate pair'? Does it just show where they already are, or is it a new position I must move them to?
  • Sorry if I come across as 'slow' but the longer I spend at this, the more confused I get...Thanks for your patience
You've found that your system has 4 poles and a single zero. Two of the poles are complex conjugates and are somewhat closer to the imaginary axis (slower) than the other poles and zero. This conjugate pair will thus tend to dominate the response, i.e. your system will behave approximately as if only the conjugate pair of poles was present. The poles are dominant.

So, let us pretend that we only see the conjugate pair of poles and their part of the root locus. This is the second-order system approximation (which only has a pair of complex conjugate poles, assuming it's oscillatory).

Recall that the root locus is a curve in the complex plane that shows you all the possible locations for the closed-loop poles as you vary a single parameter, which in your case is chosen to be ##K_1##. Given a value of ##K_1##, the closed-loop poles will be at some specific location on the root locus.

Now, you're asked to find some parameters subject to the condition that the closed-loop system has 20 % overshoot. This is a constraint on the location of the closed-loop poles in the complex plane! You know that the closed-loop poles must lie on the root locus, but they can't just be anywhere on it. They have to be at the location on the root locus that gives the conjugate pair of poles a damping factor corresponding to 20 % overshoot. If you could find this location, you also know what ##\omega_n## is for the system. From ##\omega_n## and ##\zeta##, you can find ##t_s, t_r, t_p## and whatnot.

Have you maybe seen an expression such as:
$$
\zeta = \cos(\alpha)
$$
where ##\alpha## is the angle a line from the origin into the left-half plane makes with the real axis?

Any location on one such line will have the same damping factor. One of these lines corresponds to the damping factor you want, and its intersection with the root locus shows you the location where the second-order system has 20 % overshoot. What is ##\omega_n## at this location? ##\omega_n## also has a simple geometric property in the complex plane.

Edit:
A picture might help:

http://jpkc.zju.edu.cn/k/506/econtext/image/02/032.jpg
 
Last edited:
  • #11
I follow you so far, but if I'm now looking at the 'root locus' with only the dominant pair. Any point on these lines representing a different value for K1 & the 'closed-loop' poles.
  • How do I use the trig relationship above with the 'curved' lines on the root locus?
  • Pic: https://app.box.com/s/31jwzwc3apchfaiayks3
  • What values do I use for the 'opposite' & 'adjacent' in order to find length of the 'hypotenuse=ωn'?
 
  • #13
toolpusher123 said:
Obviousy I need the length of one of the sides. What value would I use for the 'opposite' or 'adjacent' to find 'hypotenuse' i.e. ωn?
Yes, that's where I wanted you to eyeball either the real or imaginary part of the intersection point on your plot. An analytical solution is going to be very tedious work.

If you're familiar with the angle criterion for the root locus, you could let ##s = \omega_n e^{j (\pi - \theta)}## and build a small table of values of ##\omega_n## that shows it converge to something that approximately satisfies the angle criterion. If your instructor really wants an analytical solution, I'd be curious to see what he/she had in mind.
 
  • #14
I managed by plotting root locus in Matlab & using 'sgrid' i.e specifying (ζ) & estimating (ωn) to find a very close value for natural frequency. By using an iterative process I eventually got all lines to intersect at poles on root locus. See below:
  • https://app.box.com/s/qp1gh26st9viazefeya6
  • ts=33.649 sec (±5%)
  • tp=13.539 sec
  • tr=6.904 sec (10-90%)
  • I now have to find K1 at 20% overshoot. It says to generate 'step response' of the closed-loop system & estimate steady state error. Measure actual PO, ts, tp, tr. See if their values are close to the ones found in previous step.
 
  • #15
Could you perhaps include a picture of the assignment?
 
  • #16
Here it is:
  • Questions: https://app.box.com/s/lnh0jr9yl291ie8dhi8x
 
Last edited by a moderator:
  • #17
toolpusher123 said:
By using an iterative process I eventually got all lines to intersect at poles on root locus. See below:
So first thing, it looks like you're plotting the root locus of the closed-loop system, which isn't right. That shows you the pole locations of a system that has an outer feedback loop around the feedback system that's shown in your assignment. You need to plot the root locus of the open-loop system, i.e. 'rlocus(-2/(s+2)*G)' in MATLAB.

Secondly, the plot you've included here does not show the intersection point of the isoline of constant damping ratio and the root locus. It just shows what the natural frequency is (##\omega_n = 0.261##) of the closed-loop poles with ##K_1 = 1##.

After you sort this out, you can find what ##K_1## is at the intersection point, which is some value of ##s##, by inserting this value into the characteristic equation for your system and solve for ##K##. It's not going to be exact, since you don't know the exact intersection point, but you can just discard any imaginary part in the result as an approximation.
 
Last edited:
  • #18
Thanks, I'll get on that now 7 post asap...
 
  • #19
I reworked the problem with the 'open loop' tf. My values are:
For the poles:
  • s = -2
  • s = -1.25
  • s = -0.117 ± 0.0511j
For the zeros:
  • s = -0.452
If I now plot the root locus to include a damping ratio ζ = 0.456 & natural frequency ωn = 0.44:
Everything intersects on the root locus, but the 'step response' has an incorrect overshoot. See below:
I have to make K1=1.67 in order for it to have the specified 20% overshoot. But if I want the pole to sit at the intersection of ζ & ωn isolines, I have to make K1=2.79. Again this changes my 'step response' overshoot to 28.1%.

Should I use the above values for ζ & ωn to derive tp, ts, tr? I'm unsure because at these values the % overshoot wasn't 20%.
 
  • #20
toolpusher123 said:
If I now plot the root locus to include a damping ratio ζ = 0.456 & natural frequency ωn = 0.44:
Yes! :)

toolpusher123 said:
Everything intersects on the root locus, but the 'step response' has an incorrect overshoot. See below:
I think you attached the wrong plot. This one shows the step response with ##K_1 = 1##.

toolpusher123 said:
I have to make K1=1.67 in order for it to have the specified 20% overshoot. But if I want the pole to sit at the intersection of ζ & ωn isolines, I have to make K1=2.79. Again this changes my 'step response' overshoot to 28.1%.

Should I use the above values for ζ & ωn to derive tp, ts, tr? I'm unsure because at these values the % overshoot wasn't 20%.
You should use the values at the intersection point. Remember, the whole point of this exercise is to show the difference between a true second-order system and the approximation you're using. You'd only have 20 % overshoot if that conjugate pair of poles were the only ones present (with no zeros).

Have a read-through again of the problem statement for (3). See how you're now asked to compare the values of those parameters for the approximation and the full-order system?
 
  • #21
At last! I thought I'd spent two days working on this, only to arive at the answers I had when I originally posted:(. I think I'm getting my head around it a bit more now.
  • Does this mean I've already found K1 asked for in question 3?
  • Why does it ask me to estimate steady state error?
  • Is the steady state error just the % difference between steady state value & 1.0?
Sorry to keep asking you for advice/help as you've done so much already. Your help is more than appreciated...
 
  • #22
toolpusher123 said:
Does this mean I've already found K1 asked for in question 3?
Yes, I thought that was the part of the assignment you were doing now:
toolpusher123 said:
I now have to find K1 at 20% overshoot. It says to generate 'step response' of the closed-loop system & estimate steady state error. Measure actual PO, ts, tp, tr. See if their values are close to the ones found in previous step.
toolpusher123 said:
Why does it ask me to estimate steady state error?
I guess your instructor wants to know that you're able to?
toolpusher123 said:
Is the steady state error just the % difference between steady state value & 1.0?
The steady-state error is usually defined as:
$$
e_\mathrm{ss} = \lim_{t\rightarrow \infty}\left[r(t) - c(t)\right]
$$where ##r(t)## and ##c(t)## is the input and output signal, respectively.

So if, for instance, the input step was equal to ##2## for ##t \geq 0## and the output tends to ##4## as ##t \rightarrow \infty##, you'd have ##e_\mathrm{ss} = 2 - 4 = -2##.
toolpusher123 said:
Sorry to keep asking you for advice/help as you've done so much already.
No need to be sorry. I wouldn't be posting if I didn't want to help.
 
  • #23
For question 3 it asks me to design a 'phase-lead compensator'. I have to get the 'step response' to give, PO<16%, ts<4 secs. I've got to then put a zero at (-1) & find the remaining unknown parameter. I also have to select a pair of 'dominant closed loop poles'.

  • Is this asking me to find a region to insert a pole, that will result in the correct PO & ts?
  • If not, how do I go about designing a 'phase-lead compensator' for the specs above?
 
Last edited:
  • #24
toolpusher123 said:
For question 3 it asks me to design a 'phase-lead compensator'.
Isn't that under (4)?
toolpusher123 said:
Is this asking me to find a region to insert a pole, that will reult in the correct PO & ts?
You're asked to select a conjugate pair of poles that satisfies the performance requirements and then force the root locus to pass through their location by adding a lead compensator. Root locus design would be appropriate here, and you should already have experience with it. You'll need to show your attempt before I can help you further.
 
  • #25
Yes you're corect it is question 4. I'll start in the morning as it's 2am in the UK. Thanks for your help & I'll post as soon as I have a result...
 
  • #26
Hi, I've read through a fair amount on 'phase-lead comps', it would seem that it's kind of an exercise in trigonometry? From what I've read it's a 'cascade' method I'll have to use. To start I have to plot the 'root locus' & through trig determine where the new poles have to go.
 
  • #27
toolpusher123 said:
Hi, I've read through a fair amount on 'phase-lead comps', it would seem that it's kind of an exercise in trigonometry? From what I've read it's a 'cascade' method I'll have to use. To start I have to plot the 'root locus' & through trig determine where the new poles have to go.
Yes, there's not much involved besides evaluating a few angles and their contribution to the angle criterion of the root locus. 'Cascade controller' usually just means that it's in series with the plant.

The constraint on ##\omega_n## shouldn't be there. You're only asked to satisfy requirements on settling time and overshoot.
toolpusher123 said:
  • Really not sure if I should even start with the 'open loop' above or if it should be the 'closed-loop'?
There's very little in classical control theory that has to do with the closed-loop transfer function. This is a common point of confusion for many starting out with feedback system analysis. Practically all the classical analysis and design methods are based on the open-loop function, since, before computers, it was mostly a necessity.
toolpusher123 said:
You select the poles. It's probably better if you look through some more material first, since you should have a basic understanding of the method before you try to solve the assignment. Maybe this video will help:

 
  • #28
Yes, I did this before I noticed you'ld posted. This is based on 'closed loop'. The value for (-ve) sigma can't be correct, but maybe this is because it's 'closed loop'?
  • Angles schematic (.docx): https://app.box.com/s/d3a08ly4ja5ecvtjpfa0
 
Last edited by a moderator:
  • #29
toolpusher123 said:
Yes, I did this before I noticed you'ld posted. This is based on 'closed loop'. The value for (-ve) sigma can't be correct, but maybe this is because it's 'closed loop'?
  • Angles schematic (.docx): https://app.box.com/s/d3a08ly4ja5ecvtjpfa0
I can't tell what it is you want to show me with that plot. Are you trying to find a bound on the real value ##\sigma## for the closed-loop poles? In that case, you did fine, but it should be clear from this plot:
toolpusher123 said:
That to satisfy the requirement on settling time, you just need ##\sigma < -1##.

Alternatively, the settling time of a first/second-order system is given by ##t_s = -\frac{k}{\sigma}##, where ##\sigma## is the real part of its pole(s) and ##k## is typically chosen to be 4 or 5 (multiple of time constant) depending on your definition of settling time (4 in your case).

'rlocus', 'sisotool' etc. in MATLAB expects to be passed the open-loop system, which you can also tell from its help page ('doc rlocus').
 
Last edited by a moderator:
  • #30
  • #31
First thing, when I wrote:
milesyoung said:
... and ##k## is typically chosen to be 4 or 5 (multiple of time constant) ...
I didn't mean that you should multiply it by anything. ##k## is just a value you use for the number of multiples of the time constant for the system you want to pass until you consider the system to be in steady state. ##k = 4## is a common choice, which is also what MATLAB uses. I'm sorry if that was confusing.
toolpusher123 said:
I have the angle shown as 'phi/2' but how would you find the 2 angles either side?
I assume A (and its conjugate) is the location of the closed-loop poles you've chosen that satisfy the performance requirements. Since you're the one who chose A, you should certainly be able to bisect ##\angle \mathrm{OAF}.##
toolpusher123 said:
  • Am I even using the correct approach?
Sure, just note that it doesn't allow you to choose the location of the zero, which was suggested in the problem statement to be at -1. If you want the zero placed there, however, it should be straightforward to offset the pole location, since you know ##\phi##.
 
  • #32
Ah, so I can put the zero at (-1) & then just have to determine the position of the pole. By 'bisect' does this mean to divide into 2 even halves? If this is the case then I can find 'P'. I will do this now & post back...
 
  • #33
toolpusher123 said:
By 'bisect' does this mean to divide into 2 even halves?
Yes, to quote the Wikipedia page I linked:
In geometry, bisection is the division of something into two equal or congruent parts, usually by a line, which is then called a bisector.
toolpusher123 said:
If this is the case then I can find 'P'. I will do this now & post back...

 
  • #34
Wow I finally got my calc's to work out! I don't know if this is correct as things wouldn't work out if I used the (-1) for the pole. Using the trig method shown in the previous pics:
  • θ1 = 155.39 deg, θ2 = 150.31 deg
  • 1 - θ2 = -305.7 deg
  • 305.7 - 180 = + 125.7 deg (∴ lead compensator)
  • Φc = 125.7 ∴ Φc/2 = 62.85 deg (used this value to find 'P' & 'Z')
  • Z = -2.69, P = -10.37 (on real axis)
  • Point 'A' is -5.0 on the real axis (derived from σ = -K/Ts) where K = 5*Ts (Ts = 4)
 
Last edited:
  • #35
toolpusher123 said:
Wow I finally got my calc's to work out! I don't know if this is correct as things wouldn't work out if I used the (-1) for the pole. Using the trig method shown in the previous pics:
  • θ1 = 155.39 deg, θ2 = 150.31 deg
  • 1 - θ2 = -305.7 deg
  • 305.7 - 180 = + 125.7 deg (∴ lead compensator)
  • Φc = 125.7 ∴ Φc/2 = 62.85 deg 9use this value to find 'P' & 'Z')
  • Z = -2.69, P = -10.37 (on real axis)
What pole locations did you choose, i.e. what is A in your diagram?
 

Similar threads

  • Engineering and Comp Sci Homework Help
Replies
1
Views
1K
Replies
1
Views
3K
Back
Top