A Chopper-fed DC motor Drive
EN0718: Computer aided methods for Engineers
Dr. Sean Danaher Dr. Milutin Jovanovic
MSc Electrical Power Engineering
13th November 2008
One way to control a machine is to use a PI controller. This assignment shows a generic PI
controller being used to drive DC machine rated at 5HP. The project discusses the functionality
of the controller and its tuning method, also analyses the motors transients under various
operating conditions such as sudden torque increase, decrease and speed increase, decrease.
The pre-tuned values in the PI controller should be optimal for the best performance. So under
these conditions it can be measured whether the performance is acceptable or not.
The PI controller uses a simple technique, which to derive the error in the system and use a
corrective action to eliminate the error. PI stands for proportional-Integral, which means the
input error signal is proportionally multiplied and integrally summed to create the corrective
action. The motor gives as outputs, the speed and the armature current, these are monitored
and using reference signals the controller manipulate armature current to reach set point.
The results shown in the report mainly discuss the speed changes but where relevant the
armature current is shown also for clarifying purposes.
The discussion ends with improvements that can be carried out to make the model more
realistic. Also explains the adverse behaviour of a PI control system and how to avoid such.
Using computers to analyse current problems and find solutions has become a day to
day task for Engineers. The highly developed software capable of modelling real life
scenarios can give accurate results without having to spend a lot of capital for
experiments. Being an Engineer it is crucial that he can manage many software
packages and also keen in quickly grasping new software packages while working. This
project uses MATLAB for the simulation and analysis, it is a highly developed
mathematical modelling system that enables anyone to analyse any situations ranging
from a simple bouncing ball to a complex electrical circuit.
The topic “A Chopper-fed DC motor drive” looks into the theory behind a simple but a
versatile DC motor drive which benefits from a PI controller unit, DC motors are widely
accepted in the industry due to their speed controlling capabilities (Alerich & Herman,
1998). The requirements in the control circuit are constant speed high response to load
change with minimal time and control of armature current to inhibit high inrush currents
to avoid damage. The PI controller in the created model has to be tuned, once tuned the
model is simulated under different speed conditions and load conditions to compare its
performance. The results obtained will conclude which parameters can be employed in
PI controller under the specific conditions and will give results on what to expect under
the specified circumstances.
3. Aims, objectives & deliverables
Aim of the assignment is for the student to familiarise engineering oriented commercially
available software packages and apply thought knowledge and solve problems using
The objective is to demonstrate a PID controller based DC chopper unit in MATLAB.
Find correct tuning parameters and simulate the system under different transient
conditions until satisfactory results are obtained.
At the end of the report a basic DC motor control method is elaborated and its operating
characteristics are demonstrated. Also a PID controllers suitability for this application
type, which includes constant load and load dependent on speed of the motor.
For the demonstrated plots, the effects of acceleration, steady state drive and
deceleration are discussed.
1. Summary 2
2. Introduction 3
3. Aims, objectives & deliverables 4
4. Content 5
5. A Chopper-fed DC motor Drive 6
5.1. Control theory and Simulink Modelling 6
5.2. Tuning the PI controller 9
5.3. Performance analysis 10
5.4. Real load considerations 20
5.5. Further improvement ideas 21
6. Discussions and conclusions 22
7. Bibliography 23
8. Appendices 24
5. A chopper-fed DC motor drive
5.1. Control theory and Simulink modelling.
The PID controllers are widely used in the industry. They are robust in design, simple
yet powerful. The name stands for Proportional-Integral-Differential controller. According
to the requirement the controller may be PI or PID. The proportional piece in the
controller determines the amount of reaction for the resulted error. Integral piece gives
the sum of errors to eliminate a steady state error and the differential piece gives the
reaction based on the rate of change of input. Together they will output a control signal
which acts to eliminate if not minimise the error (Buxbaum, A., 1990). DC controller
used for this simulation uses a PI controller since the noisy inputs such as speed will
cause stabilization errors.
The model relies on the armature speed to generate an error based on the reference
speed. This resulted error signal is compared with armature current to decide to switch
off the supply or not using an IGBT. A buck converter based topology is used to drive
the motor circuit; this will ensure a smooth current flow through the armature circuit
regardless of the chopping of input power.
For Simulink modelling the circuit has been divided in to three sections, Control unit,
Drive unit and motor unit. The motor model used is a preset model available in
MATLAB, which has 5HP at 1750RPM, with a field of 300V and 240V armature voltage.
Based on the steady state equivalent circuits a DC machine can be represented this
The Simulink block representing the DC machine is a separately excited machine with
inputs for field circuit, armature circuit and torque/speed. The block has output for the
rotation speed, armature current and electromagnetic torque. The equations for the
machine are as follows (Krause, 1995, pp 89-92),
The Counter ElectroMotive Force (CEMF) is proportional to speed, the constant is
named as voltage constant.
𝐶𝐸𝑀𝐹 = 𝐾𝑣 𝜔 
Being a separately excited machine the voltage constant is a product of armature-field
mutual inductance and field current.
𝐾𝑣 = 𝐿𝑎𝑓 𝐼𝑓 
The electromagnetic torque developed by the machine is proportional to armature
current, the constant is voltage constant.
𝑇𝑒 = 𝐾𝑣 𝐼𝑎 
Using the above equations and 𝑃 = 𝜔 𝑇, two separate equations can be found
𝑇𝑒 𝜔 = 𝐶𝐸𝑀𝐹 × 𝐼𝑎 and 𝑃𝑒 = 𝐶𝐸𝑀𝐹 × 𝐼𝑎
The first equation shows torque and speed is proportional to current and the second can
be used to find the rated current for the given motor.
Out of the mentioned equations only 𝑃𝑒 = 𝐶𝐸𝑀𝐹 × 𝐼𝑎 can be used for calculations since
the technique employed to control the DC motor is not linear (Chopping).
(ℎ𝑝 × 745.7)𝑤 = 𝐿𝑎𝑓 × 𝐼𝑓 × 𝐼𝑎 × 𝜔 
Number of horsepower = 5hp
Armature-field mutual inductance = 0.9483 H
Field current = 𝐹𝑖𝑒𝑙𝑑 𝑣𝑜𝑙𝑡𝑎𝑔𝑒𝑓𝑖𝑒𝑙𝑑 𝑟𝑒𝑠𝑖𝑠𝑡𝑎𝑛𝑐𝑒
= 1.0664 A
Rated speed = 1750RPM = 183.2595 rad/s
By using the values for the above expression the rated armature current can be found
as 20.118A. The torque at the rated speed will be 20.35 Nm, ignoring the losses.
For this application these values will be considered as the maximum ratings and the
controller will not crossover them.
The model developed in Simulink is as follows,
The separately excited machine is given a field voltage on 300V, the field voltage of
240V is connected through a IGBT (for high speed switching). A diode is attached to
enable freewheeling of current and the inductor lowers the rise rate and fall rate of
Motor speed is given into the PI controller which produces a reference signal for
armature current, the relay compares these signals and switches on/off the circuit so
that armature current will follow the reference signal. The relay employs hysteresis to
allow a certain tolerance between reference current and armature current.
The model will be started under steady state to avoid reverse rotation due to initially
applied constant torque.
Once the model has been setup the PI controller needs to tuned properly for optimum
5.2. Tuning the PI controller
There are few methods to tune a PI controller, the foremost being trial and error. Other
methods such as software tools are used since it eliminates the need of experienced
personnel. In the model extremely high values for Kp and Ki can be used since there is
no means of physical limitations. The Kp value is responsible for the gain in the reaction
for the resulting error, higher values produce overshoot but greater response. The Ki
value multiplies the sum of errors for the duration of its operation. Since the error signal
produced can go way beyond ratings of a machine saturation limits has been imposed.
To clarify the limits in amplification an industrial PID controller, Stanford Research
Systems SIM960, data book was checked and it was found that it allowed proportional
amplification up to x103 and integral amplification up to x105
For the assignment trial and error method was used. Keeping the Kp value at zero the Ki
was increased until a acceptable high oscillation was encountered. Then Kp value was
increased until a acceptable overshoot with a minimal stabilization time was reached. It
was noted more the values are increased the higher stabilisation time reached but it is
obvious in practical situations these values may yield instability. Also higher gain values
produce a significant amount of noise, this is not favourable. So the target values were
to minimise over shoot, minimum settling time and low noise.
The resulting Kp and Ki values were 80 and 950 respectively. During a change in the
load or speed the machine settled in to new set point within 500ms. The overshoot did
not eliminate even though the switch cut-off current completely. This can be assumed
the effect of inertia the motor is inheriting with.
It is accepted that the values mentioned above are acceptable as optimal since it is
impossible to accurately pin point the specific values for the gains. Also it was observed
that the optimum performance given by these values only correspond to the operating
conditions encountered during its tuning process.
5.3. Performance analysis
For performance monitoring, three basic analyses will be carried out
• Start up of the machine for different speed conditions under different fixed load
• Change of speed for different loads, step up and step down
• Change of load torque for a given speed
Additionally the machine will be subjected to a load configuration which is proportional
to the square of speed; applications will be fans or pumps. It must be mentioned the
system is simulated under steady state, not at zero for initial conditions.
Start up of the machine for different speed conditions under different fixed load torques.
The machine will be analysed using the PI gain values found earlier. The graphs
provided are for speed (rad/s) with respect to time (s). There are two sets or graphs,
one, the machine is started to different speeds for a fixed torque and for the second set
the machine is started to a fixed speed for different fix load torques.
For the first graph, reference speeds selected (<183 rad/s) are as follows
0 rad/s, 30 rad/s, 70 rad/s, 110 rad/s, and 150 rad/s
The machine is attached with 10Nm fixed torque.
The machine response is quick and acceptable; it shows a marginal overshoot with a
small settling time for higher speeds, this shows the PI settings are acceptable for this
condition. The interesting case observed is for the speed setting of 0 rad/s, the machine
is in a complete stop. The torque applied is equally proportional to the torque generated
thus the machine is in a braked situation. The next graph shows the armature current
for this speed setting (0 rad/s).
This shows that the machine is absorbing ~9.8A to hold its shaft from spinning. The
zoomed region shows for the reference current of 9.8A and the armature current
oscillating ±0.5A from that value. This oscillation region is the hysteresis setup in the
In the next graph the machine is started to a set speed under different loading
The loading conditions are as follows;
0Nm, 5Nm, 10Nm, 15Nm and 20Nm
The set speed is 120 rad/s.
The highest acceleration time is shown for 0Nm as expected. The acceleration
decreases with increasing torque and at 20Nm the machine does not accelerate there
for the speed was 0 rad/s. The PI controller is at its upper limit of 20A (machine rating),
meaning the system cannot operate for torque loads ≥20Nm. Except for the unloaded
condition, no overshoot was observed for other load conditions.
Change of speed for different loads, step up and step down.
Two graphs will be produced for this analysis, for them the torque load applied is fixed
at 10Nm and the starting speed 75 rad/s, it will be stepped by 10 rad/s, 25 rad/s, 55
rad/s and 75 rad/s at 1.3s from the initiation of the simulation.
Step up of speed is shown in the Fig. 7
The results are similar to the earlier graphs; the limitation imposed to acceleration is the
limitation on current, but the response is very quick and desirable.
A noticeable feature in the armature current is that for a given torque the amount of
current consumed is almost constant regardless of its steady state speed, below its
maximum limit, and this can be more accurate if the losses are neglected. Fig. 8 shows
the armature current for 4th series in Fig. 7 (10Nm torque at 75 rad/s, step up of speed
to 150 rad/s at 1.3s).
The Fig. 9 shows stepping down of speed. The used values are same as before, only
decreasing instead of increasing.
The deceleration is similar to the acceleration in response they both are linear. The
inertia of the motor determines the magnitude of deceleration, because at deceleration
the current is completely cut-off. Fig. 10 will clarify this
This graph is for the 4th series in the Fig. 9 (10Nm torque at 75 rad/s, step down to 0
rad/s at 1.3s). Also this situation is a special case where the machine demonstrates its
braking ability. In about 300ms the machine comes to a standstill with the torque still
being applied. It will be worthwhile to appreciate machines braking for different loading
Fig. 11 illustrates the machines deceleration under various operating loads, including
unloaded machine. The respective values are 0Nm, 5Nm, 10Nm and 15Nm. The speed
step is at 1.3s from 120 rad/s to 0 rad/s. It is already established the controller cut-off
current supply completely, because there is no means to short circuit the armature
circuit to brake, so the motor comes to rest with the applied torque. The graph shows,
the higher the torque the lesser the deceleration time, but once it hits 0 rad/s PI
controller also manages to hold the response from undershooting and deviating.
Change of load torque for a given speed
The next two graphs show the system being subjected to load variations, stepping at
1.3s when the machine is at 120 rad/s and already pulling 10Nm torque load. the loads
are changed by 2Nm, 4Nm, 6Nm and 9Nm. This particular graph shows increasing of
The response from the controller is so immediate the motor was not subjected to a
noticeable speed drop. Except for the 9Nm torque increase, where the motors
maximum current limit needs to be violated if needed continue at same speed. Fig. 13
shows the change of current in the armature even though the speed response in
negligible for a torque increase of 6Nm.
Further extending the analysis, consider a situation for a negative speed. The crude
system employed cannot run the motor in both directions. So the only possibility is a
load driven condition. Where the reference speed is negative, the applied torque
accelerates motor until they reach equilibrium. So the reference speed must be smaller
than this equilibrium.
The equilibrium speed for these conditions depends on the applied torque. This is
shown in Fig. 14. The applied torque is 5Nm, 10Nm, 15Nm and 19Nm
From this consider 2nd series, the minimum negative speed attained by the motor is -25
rad/s. Keeping the reference speed as -20 rad/s and a torque of 10Nm, at 1.3s the
torque is increased. It will not be decreased because the resulting equilibrium speeds
are lesser than reference speed. The respective values are 5Nm and 10Nm increase.
Fig. 15 shows the results and Fig. 16 shows a zoomed graph at 1.3s. There is a small
overshoot before motor stabilise, initially. This overshoot is large compared to the
positive speeds. And during the increase in torque the speed change is noticeable, Fig.
16 shows this clearly.
5.4. Real load considerations
This section looks at a load that is dependent on speed; typical applications are fan or
pumps. For these applications torque is proportional to the square of speed.
𝑇 ∝ 𝜔2
𝑇 = 𝑘 𝜔2
The maximum value that can be used for k must be determined for a specific condition
(speed). Fig. 17 shows the modified circuit for this simulation.
Fig. 18 shows the maximum speeds the machine achieved for different k values.
The reason for the motor to reach equilibrium point (200 rad/s) before the reference
point is because the current saturates at 20A and in order to achieve the set speed
greater current must be applied, from previous simulations it is known roughly at about
20Nm the machine is unable to even continue at constant speed. So the resulting
torque from the above equation must be less than saturation limit.
For values for k, around 0.0005, if the reference speed is set to 120 rad/s, the response
curve is given in Fig. 19
5.5. Further improvement ideas
The model used for the simulation is in its crude form can be greatly improved.
Improvements include bi-directional speed control, which requires a H-bridge drive and
it also raises the possibility of forced braking of the motor (sudden stop).
On the load side the load can be made more similar to a real life load, with inertia,
friction etc. This will yield the true potential of the system operation capabilities.
The topology of the control signal can be changed to Pulse-Width-modulation, this will
allow for a digital controller to be employed and greater control. Also this could be
investigated to eliminate the need of external inductor.
6. Discussions and conclusions
DC motors are very versatile; the speed controllability is a key factor in them. PID
controllers are a generic closed loop control system, and they are widely used in the
industry. With a properly tuned PI controller attached to a specific process such as the
DC motor, the speed can be kept constant independent of other parameters (without
violating maximum ratings).
The system, demonstrated here, was tuned using trial & error method. The argument
was, if the tuning is optimal for the starting then it will be smooth for any change in its
operating conditions. The gain values are different for any given condition, so a
particular set of tuned parameters are only optimal for that specific values.
High gain values ensure quick response and low settling time but this is not practical
since these lead to oscillations in the system, also limiting factors can be mechanical
strain being implied on the machine.
Important feature of a PI controller is its saturation limits on Integral portion. Without the
saturation the integral value (in a large error) becomes dominant and controller error
signal deviates from its intended purpose, a hard saturation occurs. This is termed in
the industry as integral wind up, in the system the integral is limited with saturation
(Vandoren, 2007). Though new control methods emerge PID controllers will still thrive in
the control industry because they are simple, rigid but powerful and flexible.
The tuned system coped extremely well for tested load and speed conditions, providing
good rapid response, especially showing no speed drops for additional torque loading.
The system managed both positive and negative speeds. The only lacking feature was
the inability to brake.
With further improvements, the model can be used for accurate assessment of
performance that’s found in real life scenarios.
Alerich, W. N. & Herman, S. L. (1998) Electric motor control. 6th edn. New York: Delmar
Boylestad, R. (1989) DC/AC : The basics. London: Merrill.
Buxbaum, A. (1990) Design of control systems for DC drives. New York: Springer-
Dubey, G. K. (1994) Fundamentals of electrical drives. 2nd edn. Delhi: Narosa
Krause & Paul, C. (1995) Analysis of electric machinery. New York: IEEE press.
Mycheal, A. (1977) D.C. machines. London: McGraw-Hill.
Vandoren, V. (2007) Three faces of PID. Control Engineer. Available at:
http://www.conrtoleng.com/ (Accessed; 12/11/2008).
SAS, SIM960 analogue PID controller data sheet