You are on page 1of 22

Sana’a University Analog Control Systems MT311

Faculty of Engineering 3rd Level


Mechatronics Engineering Department

Practical Lab of Analog Control Systems

DC Motor Position: Root Locus


Controller Design
Lab 6

Eng. Moayad A.Hakim


winter, 2023 1
Agenda 2

 Drawing the Open-loop Root Locus.


 Model Reduction.
 Integral Control.
 PI Control.
 PID Control.
 Determining Gain Using rlocfind Command.
 Response to a Step Input with PID control.
 Response to a Step Disturbance with PID control.
Drawing the open-loop root locus 3

 From the main problem, the open-loop transfer function of the


DC Motor Position is given as follows
Drawing the open-loop root locus 4

With a 1-radian step reference, the design criteria are the


following:
 Settling time less than 0.040 seconds.
 Overshoot less than 16%.
 No steady-state error, even in the presence of a step
disturbance input.
Drawing the open-loop root locus 5

The main idea of root locus design is to predict the closed-loop


response from the root locus plot which depicts possible closed-
loop pole locations and is drawn from the open-loop transfer
function. Then by adding zeros and/or poles via the controller,
the root locus can be modified in order to achieve a desired
closed-loop response.
Drawing the open-loop root locus 6
Drawing the open-loop root locus 7

From the above figure, the two open-loop poles near the origin
cannot be distinguished because the scale of the axes is set to
show the third pole which is much farther to the left than the other
two poles. The MATLAB command pole can be employed to
determine the exact values of the open-loop poles.
Model Reduction 8

In general, the real part of a pole indicates how quickly


the transient portion of the corresponding mode decays
to zero (assuming negative real part). Therefore, if you
have a transfer function which has one (or more) poles
much farther to the left in the complex plane (more
negative) than the other poles, their effect on the
dynamic response will be hidden by the slower, more
dominant poles. In the case of our motor position
example, the transient closed-loop response for small
gains will not be affected much by the open-loop pole at
-1.45e6.
Model Reduction 9

The two poles that dominate are difficult to identify from above
because of the scientific notation, but they can be seen more
clearly by recognizing that they are the first and third elements of
the resulting vector which we have named poles.
Model Reduction 10

We would then like to construct the reduced transfer function to


neglect the pole at -1.45e6 without affecting the steady-state
behavior of the system. This can be accomplished with the MATLAB
command minreal.
Model Reduction 11

You can then check that the other poles have not been affected
by again using the pole command as shown below.
Model Reduction 12

Now we can draw the root locus of the reduced system.


Integral control 13

Now, let's try using integral control to remove the steady-state error
due to a constant disturbance. Modify your m-file such that it
appears like the following. Note that this adds a 1 / s term to the
forward path of the system.
PI control 14

Now, let's modify the integral controller to a PI controller. Using PI


instead of I control adds a zero to the open-loop system. We'll
place this zero at s = -20. The zero must lie between the open-loop
poles of the system in this case so that the closed-loop system will
be stable.
PI control 15

In PI control, we have managed to stabilize the system and


achieve zero steady-state error to a constant disturbance, but the
system is still not fast enough.
PID control 16

In order to pull the root locus further to the left, to make it faster, we
need to place a second open-loop zero, resulting in a PID controller.
After some experimentation, we place the two PID zeros at s = -60
and s = -70. Change the lines defining the controller in your m-file to
the following.
PID control 17

Now, we can see that two of the closed-loop poles can be placed
well within both the settling time and percent overshoot requirements.
The third closed-loop pole moves from the open-loop pole at s = -59.2
to the open-loop zero at s = -60. This closed-loop pole nearly cancels
with the zero. Therefore, we can neglect its effect. Let's reduce our
new model again by performing the zero-pole cancelation using
the minreal command. We pass 0.1 as a tolerance parameter as
follows.
PID control 18

Even though the one open-loop zero was canceled, the other open-
loop zero remains in the closed-loop transfer function and cannot be
neglected. The effect of an additional zero (if there is no
cancellation) is in general to speed up the response and add
overshoot.
Determining Gain Using rlocfind Command 19
Response to a Step Input with PID control 20
Response to a Step Disturbance with PID Control 21
22

You might also like