0% found this document useful (0 votes)
4 views11 pages

Controle Corrente e Rpm

This document discusses the practical implementation of a cascade control approach using PI controllers to regulate the speed of a permanent magnet DC motor. The investigation includes performance studies under various loop conditions, utilizing MATLAB Simulink for simulations and real-time implementations, and highlights the effects of tuning PI controller gains. The results demonstrate successful speed control, with comparisons made between simulation models and real-time measurements.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views11 pages

Controle Corrente e Rpm

This document discusses the practical implementation of a cascade control approach using PI controllers to regulate the speed of a permanent magnet DC motor. The investigation includes performance studies under various loop conditions, utilizing MATLAB Simulink for simulations and real-time implementations, and highlights the effects of tuning PI controller gains. The results demonstrate successful speed control, with comparisons made between simulation models and real-time measurements.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

VOL. 15, NO.

14, JULY 2020 ISSN 1819-6608


ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

PRACTICAL IMPLEMENTATION OF CASCADE CONTROL APPROACH


WITH PI CONTROLLERS TO CONTROL THE SPEED OF A
PERMANENT MAGNET DC MOTOR
Ismaeil R. Alnaab
Department of Polymers and Petrochemicals Engineering, Oil and Gas Engineering College, Basra University for Oil and Gas, Basrah,
Iraq
E-Mail: [Link]@[Link]

ABSTRACT
An experimental investigation was conducted to control the speed of a permanent magnet brushed direct current
motor under cascade control approach. The investigation dealt with studying the performance of the motor under open
loop, current loop and speed loop conditions. The results then compared to similar investigations done by researchers. The
investigation was implemented on software and hardware models with the help of MATLAB Simulink, MPLAB software
and LabVIEW. PMDC motor mechanical and electrical characteristics were studied first, then they were implemented in
MATLAB Simulink. A cascade control model was designed in Simulink environment and linked with the motor via H-
Bridge simulation model. The cascade control has the following features, two Proportional Integral (PI) controllers, one for
speed loop and the other for current loop, Integrator windup feature and some limiters. The performance of the speed
control was studied successfully and motor speed was under control. The effect of tuning PI controller gains was observed.
Six important tasks were focused on in this project which are Unipolar PWM generation, speed and current measurements,
Integrator windup, speed transit and speed profile. The real time implementation was a success and some of the
measurements were compared with a simulation model. MPLAB software was used to write the codes in C language for
the cascade control loops.

Keywords: PMDC Motor, cascade control, LabVIEW, MATLAB simulink, encoder, tacho generator, Kp and Ki gains.

1. INTRODUCTION specific work process [2]. In other words, the purpose of


Rotating electrical machinery is used in the speed control is to allow the speed to maintain its level
majority of modern industrial equipment, whether it is a when extra load torque is being added on the motor shaft.
simple toy or a complicated electronic device in a missile, Speed control can be done either manually by the operator
they all depend on a proper functioning of rotating or by some sort of electronic device (controller). For this
electrical equipment. Direct current (DC) motor is a project, the controller is a proportional integral (PI)
rotating electrical equipment commonly used in wide controller. PI-controllers are the most common form of
range of industrial applications and portable home feedback [3]. They are used in a wide range of industrial
appliances [1]. It is a device which converts electrical applications especially in control loops as they are similar
energy into mechanical energy. Therefore, controlling to processors yet they are used for small applications. PI-
these types of motors is a crucial aspect that needs to be controllers are generally used to eliminate the steady state
considered. There are many different approaches of error which is induced by the proportional controller.
controlling DC motors, such as the on-off method, pulse However, they have a negative impact on the overall
width modulation, back-electromotive-force (EMF) stability of the system and the speed of response [4]. As
sensing and Cascade control. Through these control the name (Proportional Integral Controller) suggests, the
methods, it is possible to determine whether is it beneficial PI algorithm consists of two basic modes, Proportional
to use a particular motor for a specific application. mode and Integral mode. Therefore, it has two gains
The aim of this project is to control the speed of a 𝑘𝑝 𝑎𝑛𝑑 𝑘𝑖. These two gains have impact on system
permanent magnet brushed DC motor using a cascade response characteristics as shown in Table-1 below.
control approach. Speed control means intentional change
of the drive speed to a value required for performing the

Table-1. 𝑘𝑝 and 𝑘𝑖 impact on system response characteristics[5][6].

Parameter Rise time Overshoot Settling time Steady-state error


Increase 𝐾𝑝 Decrease Increase Small Change Decrease
Increase𝐾𝑖 Decrease Increase Increase Increase

𝐾𝑝 𝑎𝑛𝑑 𝑘𝑖 values can be obtained and tuned particle swarm optimization, bode plot and trial and error
using different techniques such as Ziegler-Nichols, the [7][8].

1504
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

By reviewing paper [9], H. Tun and W. Aung Mode A: Leg A switch reads 0 and Leg B switch
present a similar study on a 24 volt PM brushed DC reads 0, the subtract block will produce zero volt.
motor. In their study, they focused on a few features that a Mode B: Leg A switch reads 24 and Leg B
flexible inverter can provide in order to control the switch reads 0, the subtract block will produce 24 volt.
previous mentioned motor. In addition to that, they used Mode C: Leg A switch reads 24 and Leg B
the developed inverter to control brushless DC motor with switch reads 24, the subtract block will produce 0 volt.
PWM technique and three phase sine wave generator. Mode D: Leg A switch reads 24 and Leg B
They also mentioned controlling the motor with a PI switch reads 0, the subtract block will produce 24 volt.
controller to obtain suitable and steady responses of The RL-Load is a simple block contains a resistor
current and speed. However they did not focused on how and an inductor.
to present speed and current responses and the effect of
tuning the PI gains on them, as well as they never made 𝑑𝑖
𝑉 =𝑅∗𝑖+𝐿 (1)
𝑑𝑡
any actual speed profile, so that they demonstrate the
reliability of their work. Therefore, this paper take more
𝑑𝑖/𝑑𝑡 = (𝑉 − 𝑅 ∗ 𝑖)/𝐿 (2)
steps forward and demonstrates the actual effect of PI
gains on both PI controllers used in the outer and inner
Where:
loops of the cascade system.
V is the RL − Load input voltage
Section II shows the MATLAB simulation of
open loop. Whereas section III explains the cascaded R = 47 Ω, L = 3.3 mH,
control of dc motor. Then in section IV, MATLAB I = current passes through the resistor,
simulation of inner current loop and outer speed loop is di/dt = instantinous rate of current change (A/sec).
presented. After that in section V the real time
implementation of inner current loop and outer speed loop The voltage and current waveforms were
is [Link] finally in section VI. Speed measured at duty cycle equals to 50%, and they are shown
measurement, response and profile is illustrated. in Figure-2 below. For the same duty cycle, the open loop
was tested in real time with RL-Load. The RL-load is
2. MATLAB SIMULATION OF OPEN LOOP shown in Figure-3. The modulation index was adjusted
The H-bridge Leg A and Leg B can be using the potentiometer R22 to set the duty cycle at 50%.
represented in MATLAB Simulink as shown in Figure-1
below. The modulation index can be a constant number,
0.5 for example will give 50 % duty cycle. Each leg
contains carrier frequency of 10 KHz with a magnitude
Voltage

varies between -1 and 1. The saturation block is to limit


the modulation index within arrange of -1 to 1. The two
constant blocks in each leg represent the output voltage
that will supply the RL-load. The comparator is used to
compare between the carrier signal and modulation index
for each leg alone and the switch will do the output
Current

voltage arrangement which can be either 0 or 24 volt.

𝑇𝑖𝑚𝑒 (𝑚𝑠𝑒𝑐)
Figure-2. Voltage and current waveforms measured at 50%
duty cycle.

Figure-1. H-bridge Leg A and Leg B representation in


MATLAB Simulink.

The four operational modes were explained in


section (3.3), and can be summarized as follow:
Figure-3. RL-Load.

1505
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

Figure-4 shows the output voltage waveform of


each leg Vα and Vβ so as Va and current waveform for the
real time implementation.

The motor has an encoder (speed sensor) attached


to it and is used to measure the actual speed. The actual
speed will be subtracted from a given demand speed to
give an error which will be inserted into the outer-speed-PI
controller. The output of the speed-PI controller represents
the demand current. This demand current has to be limited
within a specific range (motor rated current). After that it
will be inserted into a summation block where the actual
(measured) current will be subtracted from the demand
current to give an error which will be inserted into the
Figure-4. The output voltage waveform of each leg inner-current-PI controller. The actual current can be
𝑉𝛼 and 𝑉𝛽 so as 𝑉𝑎 and current waveform for the measured using a current sensor connected to one of the
real time implementation. motor phases (Phase A). The output of the current-PI
controller represents the modulation index which will be
It is clear that MATLAB results are slightly inserted into the PWM circuit and H-bridge converter to
different to real time measurements due to the percent of produce the armature voltage that will supply the motor.
tolerance that the electric components have. Within the cascade control approach, speed can be
controlled so that any change happening in load torque
2. CASCADE CONTROL OF DC MOTOR will not affect the amount of speed produced. Cascade
Cascade control is the most effective speed control will be implemented in MATLAB Simulink as
control of DC motors [7][10]. It is used to obtain fast well as in real time on a DC motor test rig. The
output responses and high current control, as well as being programing language that was used to program the
suitable for low and high capacity motors [11]. Moreover, controller is C language.
“it has a better set point tracking, better disturbance
rejection and less delay time and phase lag” 3. MATLAB SIMULATION OF INNER CURRENT
[12][13].Cascade control approach consists of two loops, LOOP AND OUTER SPEED LOOP
inner current loop and outer speed loop. The inner current
loop consists of a dc motor, H-Bridge converter and A. Inner Current Loop
proportional integral controller. The outer speed loop The simulation model of inner current loop
contains the inner current loop and another proportional contains a DC motor, H-Bridge and a PI microcontroller.
integral controller. Cascade control block diagram is shown The H-Bridge model is a part from what was shown in
in Figure-5 below. Figure-1. It contains two legs leg A and B, and each leg
has one carrier signal generator block, one comparator
block, one saturation block, two constant blocks and one
switch block. The purpose of each block is described in
Table-2 below:

1506
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

Table-2. Blocks and their purpose.


Block
Purpose
name
Carrier Produces triangle carrier signals with output values varies between 1 and -1 and a
signal frequency of 10 KHz.
Saturation To limit the modulation index within the range (1 upper limit and -1 lower limit)
Comparator To compare the two signals which are (carrier signal and modulation index)
To switch between the two constant blocks which are 24 volts or zero volt depending on
the comparator signal. Each time the comparator read modulation index signal is larger
Switch
than carrier signal the switch closes on 24 volt, and if the modulation index is less than
carrier signal the switch closes on zero volt.
Constant Provides a constant value for example 0 volt DC or 24 volt DC.

The output of each switch is PWM pulse with a


magnitude which varies between 0 and 24 volts. The
voltage that will supply the motor is the subtraction of the
two PWM pulses as shown in the Figure-6 below.

𝑉𝛼 Figure-8. Continuous time representation of PI controller.

It contains two summation blocks, two gains (Kp


𝑇𝑖𝑚𝑒 (𝑚𝑠𝑒𝑐) and Ki) and one delay block. This PI model is a digital
model and can be represented by the following discrete
equations:
𝑉𝛽
𝑂𝑢𝑡(𝑛) = 𝑘𝑝 ∗ 𝜀(𝑛) + 𝑘𝑖 ∗ 𝑥(𝑛) (3)
𝑇𝑖𝑚𝑒 (𝑚𝑠𝑒𝑐)
𝑥(𝑛 + 1) = 𝑥(𝑛) + 𝜀(𝑛) (4)

𝑉𝑎 Where ε is the error input to the controller.


kp is the proportional gain = 0.75
ki is the integral gain = 0.154
𝑇𝑖𝑚𝑒 (𝑚𝑠𝑒𝑐)
The kp and ki were obtained using trial and error
Figure-6. The output voltage waveform of each leg method.
𝑉𝛼 and 𝑉𝛽 so as 𝑉𝑎 which is the armature voltage The following equation represents the action of
that supplies the motor. the controller:

The PI microcontroller model is shown in Figures 𝑂𝑢𝑡 = 𝑘𝑝 ∗ 𝜀 + 𝑘𝑖 ∫ 𝜀 𝑑𝑡 (5)


(7) and (8) below.
The full simulation of inner current loop is shown
in Figure-9 below:

Figure-7. PI microcontroller model.

1507
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

To check the effect of adding load torque TL on


speed response, the following procedure was conducted:
The current demand was set to be 3 and the TL
switched to zero. After the simulation was run, a load
torque TL has been added using the manual switch at time
equaled to 0.12 second, the effect of load torque on current
and speed is shown in Figures (11) and (12) respectively.
Since there was no speed control, the speed has been
reduced and the current increased according to the
following equation:

𝑑𝜔
𝐽 = 𝑇𝑒 − 𝑇𝐿 − 𝐵𝜔 (7)
𝑑𝑡
Figure-9. The full simulation of inner current loop.

The zero holders contain sampling time which is


equal to 100e-6, 1/10 KHz, the purposes of these zero
holders are:
 Hold its input (ω,ia) for a specified sample period.

 Convert its input signal (ω,ia) to a discreet time


signal.


Current

Synchronizes the actual current and the demand


current with the PWM carrier signal.
𝑇𝑖𝑚𝑒 (Sec)
The Unit delay is used to hold and delay its input
for a specified sample period and represents the PWM Figure-11. The effect of load torque on current.
cycle. Load torque can be inserted in to the motor in two
ways, either by a constant block or by a loop subjected to
the following formula:

𝑇𝐿 = 𝑘𝑚 ∗ 𝜔^2 (6)

Where𝑘𝑚 = 9.12 ∗ 10−6 𝑁𝑚𝑠 2


This torque represents a load coupled to the
motor shaft, for example a fan. The error that was inserted
to the PI microcontroller is equal to: Demand current -
Speed

Actual current (𝑖𝑎). By suppling a demand current equal to


1, the following current response was achieved, Figure-10
𝑇𝑖𝑚𝑒 (Sec)
below. The actual armature current (Green response) has
an overshoot less than 18% with a settling time equals to
0.001, fast transient response. Figure-12. The effect of load torque on speed.

The main objective of the inner current loop is


that the current is being controlled so as not to exceed a
specific limit and burn the armature winding and thus
damage the motor. As mentioned before, the PI gains 𝑘𝑝
and 𝑘𝑖 were obtained using a trial and error method. There
are other approaches for obtaining controller gains for
Current (Amp)

instance: Zigler-Nichols, the particle swarm optimization,


bode plot [7][8].

B. Outer Speed Loop


The outer speed loop consists of the inner current
loop and another PI speed controller as shown in Figure-
Figure-10. Output current response at demand current 13. The PI speed controller model is the same for the
equals to 1 Ampere. current loop but it has an anti-integrator windup
(Saturation Block). The purpose of integrator windup is to
prevent integrator accumulating excessive output values.

1508
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

𝑘𝑝 𝑎𝑛𝑑 𝑘𝑖 were obtained using trial and error and they amount of current given. The aim of inner loop is to
were: control the amount of current that supplies the load. One
of the benefits that cascade control has is that the inner
𝑘𝑝 = 0.5 𝑎𝑛𝑑 𝑘𝑖 = 0.1. loop can be set up and tested first before the outer loop
being engaged.
With the current loop control, a demand current
was inserted in the code as a fixed value and the actual
current was measured using a current sensor. An error was
calculated by subtracting the actual current from the
demand and then inserted into the PI controller. The inner
current loop code has to be inserted within the void _ISR
_ADCInterrupt(void) which is the analog digital
conversion interrupt within this code, the 𝑘𝑝 𝑎𝑛𝑑 𝑘𝑖 were
defined as well as the demand current. The error was
calculated and inserted to the calculation of modulation
index which is the output of the current loop. The current
integrator was limited to prevent the integrator windup,
Figure-13. The outer speed loop simulation in MATLAB and the modulation index was also limited and then it was
Simulink used to produce Leg A and Leg B PWM pulses.
The current can be changed by inserting different
After setting the demand speed equal to 50, the values each time and running the program again. And with
output response of speed and current was obtained, shown DC motor load the direction of rotation can be changed by
in Figure-14 below, also shown is the effect of adding load adding a negative sign to the demand current value.
torque on speed and current response. Red responses are LabVIEW software was used to monitor the
the demand speed & current, while the yellow and green current in two ways, by digital display and indicator
are the actual. display. Figure-15 below shows the two types of display.
A further step was conducted to control the demand
current using LabVIEW instead of inserting it as a fixed
Current𝑇𝑖𝑚𝑒 (𝑠𝑒𝑐)𝑇𝑖𝑚𝑒 (𝑠𝑒𝑐)

value. The control board on LabVIEW is shown in Figure-


16.

Figure-15. Digital display on left and indicator display


Speed

on right.
Time (Sec)
Figure-14. Current and speed responses at demand speed
equal to 50.

It is clear from Figure-14 above that the speed


has been slightly affected when the load torque was added
to the motor, while the effect on current is observable.

4. REAL TIME IMPLEMENTATION OF INNER


CURRENT LOOP AND OUTER SPEED LOOP Figure-16. Demand current control board.

A. Inner Current Loop


With the inner current loop, current can be By moving the white arrow to the right or left, the
controlled using a feedback loop and a PI controller. In value of duty cycle will be changed. Therefore, sscanf
this step, the PWM pulses were no longer controlled using function was used to transfer any change occurring in
a potentiometer, they were fixed depending on a specific LabVIEW (duty cycle channel) to decimal values so that c

1509
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

program can understand, and the rest of the code does the Due to the parallel connection between the power
function of producing PWM pulses. With DC motor load, resistor and load machine, the equivalent resistor will be
the direction of rotation can be changed by the same low and hence the current becomes high when the
arrow, if it moves in the positive direction it produces magnitude of power resistor is reduced as shown in
positive current and if it moves in the negative it produces Figures (17) and (18) above. When the load torque (TL)
negative current and therefore it changes the direction. increased, the current increased and due to the fact that the
Drive On/ is a button used to enable LabVIEW control of mechanical equation of the motor contains (𝐵𝑤) which is
demand current. the friction multiplied by the speed, the speed goes down
A test was conducted to investigate the open loop to equalize the equation, taken into consideration that TE
behavior in real time implementation “from speed loop and J were constants, in equation (7).
point of view” with constant current demand. At this test
the machine was running open loop as there was no speed 𝑅1∗𝑅2
𝑅 𝑒𝑞𝑢𝑖𝑣𝑎𝑙𝑒𝑛𝑡 = (8)
𝑅1+𝑅2
control. A power resistor was connected with the load
machine after setting the test motor on a fixed demand
𝑉 =𝑖∗𝑅 (9)
current. This test was to see the effect of adding load
torque on the speed of the motor.
𝑇 = 𝑘𝑡𝜓 ∗ 𝑖 (10)
After applying different amounts of power
resistor to the motor the following curves of speed versus
B. Outer Speed Loop
resistor and current were gained in Figures (17) and (18)
The second feedback of the cascade control
below.
system is the speed feedback. It is called outer loop
because this loop contains the current loop (inner loop)
inside. The loop aim is to control the speed with PI
controller and thus to avoid speed drop when extra load
torque is being applied on the motor. The actual speed was
measured using an Encoder sensor attached to the motor
shaft. A demand speed was inserted in the C code, and an
error was calculated by subtracting the actual speed from
the demand speed. This error is inserted to PI controller
with 𝑘𝑝 𝑎𝑛𝑑 𝑘𝑖 gains and the output of the controller is the
demand current. Therefore, the demand current does not
need to be identified as a constant anymore nor inserted
via LabVIEW panel.
Speed integrator and demand current were both
limited to prevent windup. Note: the outer speed loop code
has to be inserted within thevoid _ISR
_ADCInterrupt(void) which is the analog digital
conversion interrupt.
Figure-17. Motor speed versus Current.
SPEED MEASUREMENT, RESPONSE AND
PROFILE

A. Speed Measurement
An encoder was used to measure the position and
speed of a motor shaft. This instrument has a glass disk
with 500 black marks etched on its surface. It also has a
light emitting diode (LED) and photosensitive transistor,
the LED produces light directed through the glass disk to a
transistor. As the black marks pass through the light beam,
pulses are produced by the transistor. Figure-19 shows one
encoder pulse and how the pulses are used to measure the
speed.

Figure-18. Motor speed versus Power Resistor.

1510
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

shows a similar type of tachogenerator to the one that was


used in this project.

Figure-19. Speed measurement process.

The PIC controller has an oscillator inside it, this


oscillator produces pulses with 67.8 Nano second per
pulse. With the function “void _ISR _IC1Interrupt” the Figure-20. Tachogenerator.
number of oscillator pulses that pass through one encoder
pulse can be calculated. B. Speed Response Transient
The variable rpm that is shown in the code The tacho generator that is attached to the load
represents the number of oscillator pulses that pass motor of the test rig produce voltages that have a direct
through one encoder pulse and can be calculated by relationship with the speed. Figure-21 below shows the
measuring t1 and t2. In the case of t1 is bigger than t2 a relationship between tacho voltage and speed.
constant PR3 can be added, which is equal to 0xffff “load
period register”. For example if t2 equals 0x0006 and t1
equals 0xfffa, t1 is bigger than t2 and to prevent this,
0xffff is added to give a positive result. To measure the
speed in revolution per minute (RPM) which represents
the actual speed for the speed loop, the following
calculation has to be made:
Each oscillator pulse has 67.8 Nano second time period.
rpm gives the number of oscillator pulses.
Therefore one encoder pulse time period can be
calculated as follow:

encoder pulse time period = rpm ∗ 67.8 ∗ 10−9 sec (11)


Figure-21. Tacho voltage and speed relationship
The glass disk has 500 black marks which means
500 pulses.
From this relationship, speed response can be
Therefore one revolution time period can be
easily determined and recorded using an oscilloscope. The
calculated as follow:
speed response was first recorded to modify 𝑘𝑝 𝑎𝑛𝑑 𝑘𝑖 “PI
gains” of the speed loop.
𝑡𝑖𝑚𝑒 𝑖𝑛 𝑠𝑒𝑐𝑜𝑛𝑑𝑠 𝑓𝑜𝑟 𝑜𝑛𝑒 𝑟𝑒𝑣𝑜𝑙𝑢𝑡𝑖𝑜𝑛 𝑜𝑓 𝑒𝑛𝑐𝑜𝑑𝑒𝑟 𝑑𝑖𝑠𝑘 The speed response at the instant of switching on
= 𝑟𝑝𝑚 ∗ 67.8 ∗ 10−9 ∗ 500 𝑠𝑒𝑐 (12) the power supply is shown in Figure-22.
𝑡𝑜 𝑔𝑒𝑡 𝑡ℎ𝑒 𝑠𝑝𝑒𝑒𝑑 𝑖𝑛 𝑟𝑒𝑣𝑜𝑙𝑢𝑡𝑖𝑜𝑛 𝑝𝑒𝑟 𝑠𝑒𝑐𝑜𝑛𝑑 =
1
(13)
𝑟𝑝𝑚∗ 67.8∗10−9 ∗500

60
𝑆𝑝𝑒𝑒𝑑 𝑖𝑛 𝑅𝑃𝑀 = (14)
𝑟𝑝𝑚∗ 67.8∗10−9 ∗500

Another device called Tachogenerator was used


for measuring the actual speed values of a motor shaft that
is coupled to it. A tachogenerator with a precise design
produces precise voltages proportional to shaft speed. By
measuring the generated voltages, it is easy to determine
the amount of rotational speed. Tachogenerator can also
detect the direction of rotation, as the polarity of the
Figure-22. Speed response at the instant of switching on
voltage changes with the change in direction. Figure-20
the power.

1511
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

A power resistor was attached to the load 0.001and the tacho voltage reading was 4.77 volts before
machine to help modifying speed response characteristics connecting the power resistor and became 5.63 at the
such as overshoot and settling time. The power resistor instant of connecting, then settling at 4.77 volts after a
was connected in parallel with the load so as to reduce the small period of time. The overshoot percentage was
equivalent resistor and thus increase the current according calculated as follow:
to ohms low. Figure-23 shows how the power resistor was
connected with the test rig. 𝑀𝑃𝑡 −𝑓𝑣
𝑃𝑂 = ∗ 100% (15)
𝑓𝑣

MPt is the peak value of the time response.


fv is the final value of the response.
5.63 − 4.77
OverShoot percentage = 100%
4.77
Overshoot percentage = 18%

Thirdly, further tuning was applied on 𝑘𝑝 and 𝑘𝑖


to minimize the overshoot percentage, the new PI gains
are: 𝑘𝑝 = 2.214 𝑎𝑛𝑑 𝑘𝑖 = 0.02. Figure-25 shows the
transient response of speed after tuning.

Figure-23. Power resistor and motor test rig connection.

The following procedure was conducted to


observe the effect of modifying 𝑘𝑝 𝑎𝑛𝑑 𝑘𝑖:
Firstly, the c code was compiled to run at a
constant speed of 1500 RPM by applying a demand speed
equals to 1500, then the power resistor was set at its
minimum value which gave the highest current that the
motor can draw which was limited to 1 amp. The power
resistor reading by digital voltmeter (DVM) was 10.4
ohm, and the current reading was 0.94 amp.
Secondly, the power resistor was connected and
disconnected from the load more than once during a 5
second period. Figure-24 shows the speed transient Figure-25. Speed transient response during the 5
response during the 5 second period. second period with 𝑘𝑝 = 2.214 𝑎𝑛𝑑 𝑘𝑖 = 0.02

The overshoot percentage was calculated as


follow:

5.1 − 4.77
OverShoot = ∗ 100%
4.77
Overshoot = 7%

C. Speed Profile
For more advanced applications speed needs to
be changed repeatedly within a specific time period. With
such speed control a specific speed profile can be done
easily and via the tachogenerator the speed profile can be
monitored. C code was used to produce two different
speeds 500 and 2000 RPM within two directions of
Figure-24. Speed transient response during the 5 second rotation for a 6 second time period, after the 6 seconds
period with 𝑘𝑝 = 2.114 𝑎𝑛𝑑 ki = 0.001 ends the counter resets and starts again.
When the power was switched on the motor was
It is clear from the figure that the speed response spinning in clockwise direction with 500 RPM, after one
was effected during the plugging in and out of the resistor. second the speed increased to 2000 RPM and after another
The PI gains at this test were 𝑘𝑝 = 2.114 𝑎𝑛𝑑 𝑘𝑖 = second the speed reduced to 500 RPM, then it changed the

1512
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

direction and so on. Figure-26 below shows the speed [2] A. S. A. Elhamid. 2012. Cascade Control System of
profile which was recorded by an oscilloscope via Direct Current Motor. World Applied Sciences
measuring tachogenerator voltage. Journal. 18(12): 1680-1688.

[3] N. Bacac, V. Slukic, M. Puškarić, B. Stih, E. Kamenar


and S. Zelenika. Comparison of different DC motor
positioning control algorithms. 2014. In 37th Int.
Convention on Information and Communication
Technology., Electronics and Microelectronics.,
MIPRO. pp. 1654-1659.

[4] M. Kushwah and A. Patra. 2014. Tuning PID


Controller for Speed Control of DC Motor Using Soft
Computing Techniques-A Review. Advances in
Electronic and Electric Engineering, AEEE. 4: 141-
148.
Figure-26. Speed profile
(1.52 → 6.2 → 1.52 → −1.52 → −6.2 → −1.52) volt [5] M. Namazov. 2010. DC motor position control using
(500 → 2000 → 500 → −500 → −2000 → −500) 𝑅𝑃𝑀 fuzzy proportional-derivative controllers with
different defuzzification methods. Turkish J. Fuzzy
CONCLUSIONS Syst., TJFS. 1(1): 36-54.
This project was undertaken to investigate the
performance of a permanent magnet brushed DC motor [6] A. P. Singh, U. Narayan and A. Verma. 2003. Speed
under cascade control conditions. The procedure was Control of DC Motor using Pid Controller Based on
conducted in two phases, MATLAB Simulation phase and Matlab. Innovative Systems Design and Engineering.
Real Time implementation phase. Each phase studied 3(9): 1209-1220.
some of the cascade systems circuit characteristics, such
as, open loop, current loop and speed loop. Six main [7] M. N. Kamarudin and S. M. Rozali. 2008. Simulink
targets were focused on which are Unipolar PWM implementation of digital cascade control DC motor
generation, speed measurement using an encoder, current model - a didactic approach. In 2nd IEEE Int. Conf. on
sensor calibration, speed transient, speed profile and
Power and Energy., PECon 08., Johor Baharu.,
integrator windup. A lot of measurements were taken
during the procedure, most of them were focused on the Malaysia. pp. 1043-1048.
output responses of speed and current as well as the PWM
pulses produced by the H-bridge converter. Cascade [8] R. G. Kanojiya and P. M. Meshram. 2012. Optimal
control has proved its ability to drive direct current motors tuning of PI controller for speed control of DC motor
efficiently, the motor was tested under load and no load drive using particle swarm optimization. 2012 Int.
conditions as well as at blocking mode condition. It was Conf. on Advances in Power Conversion and Energy
realised that the real time implementation is important to Technologies (APCET), Mylavaram, Andhra Pradesh.
understand the motor behavior under different
pp. 1-6.
circumstances. MATLAB Simulink is crucial to
understand how the system behaves in state space
[9] H. M. Tun and W. Aung. 2014. Analysis of Control
representation, however it might not give similar results to
real time work. The most obvious finding to emerge from System for A 24V PM Brushed DC Motor Fitted with
this study is that controlling a DC motor is essential due to an Encoder by Supplying H-Bridge [Link]
its necessity in modern technology for instance robots. University Journal of Information & Communication
Technologies. 7: 54-67.
REFERENCES
[10] J. Scott, J. McLeish and W. H. Round. 2009. Speed
[1] H. Taha and I. Alnaab. 2019. Designs of PMSMs with control with low armature loss for very small
Inner and Outer Rotors for Electric Bicycle sensorless brushed DC motors. IEEE Trans. Ind.
Applications. Kurdistan Journal of Applied Research. Electron.56(4): 1223-1229.
4(1): 20-25.
[11] L. S. Patel and K. C. Dave. 2011. Cascade control
Technique for D. C. Motor Speed Control. In Proc. of

1513
VOL. 15, NO. 14, JULY 2020 ISSN 1819-6608
ARPN Journal of Engineering and Applied Sciences
©2006-2020 Asian Research Publishing Network (ARPN). All rights reserved.

[Link]

the Int. Conf. on Science and Engineering., ICSE. pp.


599-603.

[12] K. Anagha, C. Ranjith, P. Anand, D. Rahul and A. S.


Anusha. 2014. CASCADE SPEED CONTROL OF
DC MOTOR. International Journal of Electrical,
Electronics and Data Communication. 2: 78-81.

[13] R. Bhavina, N. Jamliya and K. Vashishtha. 2013.


Cascade Control of Dc Motor With Advance
Controller. International Journal of Electrical,
Electronics and Data Communication. 2: 18-20.

1514

You might also like