You are on page 1of 4

American University of Beirut

MECH436L – Control System Laboratory

Lab V
DC Motor Closed Loop Control

Objectives
After developing the DC motor model, the purpose of this lab is to get students
familiar with closed loop speed and position control for DC motors.

 Simulink modeling of DC motor


 R-locus analysis and understanding
 Closed loop proportional control for the speed and position of the
motor
MECH436L –Control Systems Laboratory Lab 5 – Closed Loop Control of a DC Motor

1. Theoretical Background
1.1. Derivation of a simplified DC motor model:
Refer to Lab III to get the DC motor model equations (electrical and mechanical).

The DC motor model gives the following transfer function:

𝜔 𝐾
=
𝑉 (𝑅 + 𝐿𝑠)(𝐽𝑠 + 𝑏) + 𝐾 2

1.2. Related Matlab Commands

 rlocus(SYS) :computes and plots the root locus of the single-input, single-output
LTI model SYS. It shows the trajectories of the closed-loop poles when the feedback
gain K varies from 0 to Inf.

 sgrid Generate s-plane grid lines for a root locus or pole-zero map. sgrid generates a
grid over an existing continuous s-plane root locus or pole-zero map. Lines of
constant damping ratio (zeta) and natural frequency (Wn) are drawn.
o sgrid(Z,Wn) plots constant damping and frequency lines for the damping
ratios in the vector Z and the natural frequencies in the vector Wn.

 [K,POLES] = rlocfind(SYS) : rlocfind puts up a crosshair cursor in the graphics


window which is used to select a pole location on an existing root locus. The root
locus gain associated with this point is returned in K and all the system poles for this
gain are returned in POLES.

2. In Lab Exercise
Note:

 We will resume the work of Lab III, so please download the Lab report you submitted as we
will be using the Simulink and M-files.
 The questions that are bolded are post-lab exercises.

2.1. Root Locus Analysis


2.1.1. Plot the root locus of the system with angular speed as output and voltage as input.

Page 2 of 4
MECH436L –Control Systems Laboratory Lab 5 – Closed Loop Control of a DC Motor
2.1.2. Will we be able to change the settling time of the motor using a simple proportional
closed loop control? Explain

2.1.3. Choose a value of Kp such that the maximum overshoot of the system is 4%.

2.2. Closed Loop Speed Control


2.2.1. Design the following closed loop system. Kp is the proportional gain you got in ex
(2.1.3)

2.3. Closed Loop Position Control


2.3.1. Consider a unity feedback closed loop position controller with proportional gain
Kp. Find for which value of Kp the system becomes unstable.

2.3.2. Observe the response on simulink.

2.3.3. Assuming the system is second order, find for which value of Kp the system has a
damping ratio zeta=0.7. What is value of the natural frequency (wn) at this Kp? Do you
think that the closed loop system can be approximated by a second order one?

2.3.4. Simulate the response of the system in 2.3.1 for Kp found in 2.3.3 on simulink.
What can you notice about the steady state error in this case? Compare this
finding with that of the closed loop speed control and discuss.

2.3.5. If the initial position is at 45 degrees and the desired angle is at 90 degrees,
simulate the response of the system in 2.3.4 for these conditions.

2.3.6. This motor is connected to a pulley of radius r=2 cm and is to lift a weight of w=20g.
What happens to the response in this case? Simulate this system and get the steady
state error.

2.3.7. Can an integral controller (PI) in the feed forward path fix the steady state
error? Simulate the response with PI controller and Experiment by varying the
value of the integrator gain.
Page 3 of 4
MECH436L –Control Systems Laboratory Lab 5 – Closed Loop Control of a DC Motor

2.4. Non linearities:


All this analysis could have been done on Matlab without the use of simulink.
However, for a DC motor we have nonlinearities such as voltage saturation (the voltage
input is limited between -15 and 15V for a 15 volts motor like this one) and deadzone (the
motor might not operate for voltages between -/+0.5 volts). These nonlinearities and many
others can be easily implemented on simulink.

2.4.1. Add a saturation block and a dead-zone block to the simulation. Check by
simulation if the motor will be able to lift the 20g? 100g? 110g?
Hint: Observe the voltages in all these cases.

Page 4 of 4

You might also like