The root locus technique 1 Obtain closedloop TF
The root locus technique 1. Obtain closed-loop TF and char eq d(s) = 0 2. Rearrange d(s) by grouping terms proportional to parameter of interest, and those not; then divide by group not proportional to para. to get this is called the root locus equation 3. Roots of n 1(s) are called open-loop zeros, mark them with “o” in s-plane; Roots of d 1(s) are called open-loop poles, mark them with “x” in s-plane
4. The “o” and “x” marks divide the real axis into several segments. If a segment has an odd total number of marks to its right, it is part of the root locus. High light it. If a segment has an even total number of marks, then it’s not part of root locus. For the high lighted segments, mark out going arrows near a pole (“x”), and incoming arrows near a zero (“o”).
5. Asymptotes: #asymptotes = system order - # finite zeros = # poles - # finite zeros =n-m Meeting place on the real axis at:
6. Imaginary axis crossing point: – – – – From d(s) = 0 Form Routh Table Set one row = 0 Solve for K Use the row above to form aux eq A(s)=0 Solution gives imag. axis crossing point +-jw System oscillates at frequency w when K is equal to the value obtained above
7. When two branches meet and split, you have breakaway points. They are double roots. d(s)=0 and d’(s) =0 also. Use this to solve for s and k.
8. Departure angles at complex pole p: fp Arrival angles at complex zero z: fz m is multiplicity of pole or zero • Matlab can construct root locus for you • • Let num = n 1(s)’s coeff vector Let den = d 1(s)’s coeff vector rlocus(num, den) draws locus for the root locus equation But you need to first get to K*n 1(s)/d 1(s) +1 =0 form
Char. poly. num: s+3 , zeros: -3 den: s(s+5)(s 2+2 s+2)(s+6) , poles: 0, -5, -6, -1±j 1 Asymptotes: #: n – m = 4 angles: ± 45º, ± 135º
Two branches coming out of -5 and -6 are heading to each other, and will and break away. Without actually calculating, we know the breakaway point is somewhere between -5 and -6. Since there are more dominant poles (poles that are closer to the jw axis), we don’t need to be bothered with computing the actual numbers for the break away point. Departure angle at p = -1+j is angle(-1+j+3)-angle(-1+j+0)-angle(-1+j+5)-angle(-1+j+4)+pi/2 ans = -0. 8885 rad = -50. 9061 deg
rlocus([1 3], conv([1 2 2 0], [1 11 30])) Hand sketch is close but departure angle is wrong! Also notice how I used “conv”.
Example: motor control The closed-loop T. F. from θr to θ is:
What is the open-loop T. F. ? The o. l. T. F. of the system is: But for root locus, it depends on which parameter we are varying. 1. If KP varies, KD fixed, from char. poly.
The o. l. T. F. for KP-root-locus is the system o. l. T. F. In general, this is the case whenever the parameter is multiplicative in the forward loop. 2. If KD is parameter, KP is fixed From
The root locus technique 1. 2. Obtain closed-loop TF and char eq d(s) = 0 Re-arrange to get 3. 4. 5. Mark zeros with “o” and poles with “x” High light segments of x-axis and put arrows Decide #asymptotes, their angles, and x-axis meeting place: 6. 7. 8. Determine jw-axis crossing using Routh table Compute breakaway: Departure/arrival angle:
More examples 1. No finite zeros, o. l. poles: 0, -1, -2 Real axis: are on R. L. Asymp: #: 3
-axis crossing: char. poly:
>> rlocus(1, [1 3 2 0]) >> grid >> axis equal
Example: Real axis: (-2, 0) seg. is on R. L.
For
Break away point:
-axis crossing: char. poly:
>> rlocus(1, conv([1 2 0], [1 2 2])) >> axis equal >> sgrid
Example: in prev. ex. , change s+2 to s+3
-axis crossing: char. poly:
>> rlocus(1, conv([1 3 0], [1 2 2])) >> axis equal >> sgrid
- Slides: 26