You are on page 1of 5

FPGA Based Digital Control Technique for BLDC

Motor Drive
R. M. Pindoriya, Student Member, IEEE, A. K. Mishra, B. S. Rajpurohit, Senior Member, IEEE and R. Kumar
Indian Institute of Technology Mandi, Himachal Pradesh, India
pindoriya_rajesh@students.iitmandi.ac.in

Abstract—This paper presents the design and implementation of applications the mechanical load parameters change continues
digital speed controller for brushless direct current (BLDC) motor with respect to time, such as inertia and friction [1]. The BLDC
drive using Spartan 3AN field programmable gate arrays (FPGA). motors do not use brushes for commutation progression put in
The FPGA drives a six pulse three-phase inverter using the digital place of them are using the electronic commutator. BLDC
pulse width modulation (PWM) control technique. Currently,
BLDC motor is more suitable in various industrial applications
motors have many advantages over conventional electrical
because of easy electronic control mechanism and compact motors which includes better speed versus torque
construction. In this paper the speed control arrangement of a characteristics, high efficiency, long life, noiseless operation
BLDC motor drive is discussed using the implementation of a and high dynamic response [2]. The most common
digital PWM technique. This control strategy is simple and strong, disadvantages as reported in [2-4] are high cost, high
requires no current sensors. Owing to these abilities, this complexity, high production of harmonics in the form of EMI
technique can be implemented on a low-cost FPGA. Simulation and noise produced by the power electronic converters (PECs)
and experimental results have been presented to describe and [2-4].
verify the digital PWM technique for speed control of BLDC In BLDC motor, the speed is directly proportional to the
motor. Simulation of the proposed technique is carried out by
using MATLAB/Simulink and the corresponding results are
applied voltage across the stator winding. The speed can be
verified with experimental results of Spartan 3AN FPGA board. changed by varying the ON-OFF period of the pulse width
modulation (PWM) signal [5]. The electromagnetic torque of
Index Terms— Brushless direct current (BLDC) motor drives, the BLDC motor relates to the three major functions, like
converters, field-programmable gate arrays (FPGA) and pulse product of phase, back electromotive force (EMF) and current.
width modulation (PWM). The back EMF of each phase is trapezoidal in shape and
displaced with 120 electrical degrees with respect to each other
NOMENCLATURE in three phase machine [6]-[7]. Newton’s second law and the
Input phase voltage (V) characteristic equations of a BLDC motor drives were used to
𝑉𝑎 , 𝑉𝑏 , 𝑉𝑐
derive a design procedure for the digital PWM controller. It will
𝐼𝑎 , 𝐼𝑏 , 𝐼𝑐 Stator phase current (A)
be shown that the design procedure contains a simple first-order
𝑅𝑎, 𝑅𝑏, 𝑅𝑐 Stator resistance (Ohm)
nonhomogeneous differential equation. During steady-state
𝐿𝑎, 𝐿𝑏, 𝐿𝑐 Stator inductance (H)
operation, the design procedure is simplified to a few simple
J Moment of inertia (kg-m2) algebraic equations. Computer simulations were used for proof-
𝜔 Actual rotor speed (RPM) of-concept and implementation of the digital PWM controller
ω* Reference speed (RPM) was carried out with the rapid prototyping and real-time
𝑇𝑒 Electromagnetic torque (N-m) interface system with Spartan 3AN FPGA board. In this paper,
𝑇𝑙 Load torque (N-m) a digital PWM technique is proposed for speed control of
𝐵 Damping constant (N/rad/s) BLDC motor using proportional integrator (PI) controller. The
p Number of poles Simulink results are further verified by experimental results.
P Derivative operator d/dt
M Mutual inductance (H) II. DYNAMIC MODELLING OF BLDC MOTOR DRIVE
F(𝜃) Back–EMF reference function of For a three-phase BLDC motor, three Hall-effect sensors are
rotor position embedded on non-rotating side to designate the relative rotor
H A, H B, H C Hall sensors positions to the controller so that it can empower the stator
L Load couple with motor windings in the right sequence and at the correct time [8].
I. INTRODUCTION When the rotor magnetic poles pass the Hall sensors, a high
or a low signal is generated. As discussed in detail below, the
The brushless direct current (BLDC) motor has quickly precise sequence of commutation can be determined by
improved reputation by its utilization in medical, aerospace and merging the signals from the three sensors [9]. As distinctive
industrial automation applications. The regulator made for such three-phase star connected BLDC motor is fed by a three-phase
systems can’t give a best response but give steady-state and voltage source as shown in fig. 1. This system shows the three
transient output. The parameters of the motor never change coils of the motor organized in a star connection and a three-
during operating conditions. However, in many practical phase inverter comprising six IGBTs.

978-1-5386-7703-2/18/$31.00 ©2018 IEEE


+
S1 S3 S5 A
+
Vin 3-phase
BLDC
Ra Inverter L
motor
La
Vin C B
Ea

S4 S6 S2 Gate
signals
HA, HB, HC
- C
ω
Speed
Fig. 1. Equivalent circuit of a BLDC motor connected to an inverter.
controller ω*
*
Start
Fig. 3. Schematic diagram of digital PWM control technique.

Set speed value in RPM The schematic diagram of digital PWM control technique is
shown in fig. 3. Here used Spartan 3AN FPGA board for
generate digital PWM signal and given to direct three-phase
Closed loop
inverter bridge. The electrical prototypical of winding of the
armature of the BLDC motor is expressed as follows. Following
If open No Actual speed assumption are made;
loop calculates 1. Motor is not saturated as it operated within the rated current.
2. There is no changes in the rotor reluctances with angle.
Yes 3. Three phases are balanced one.
PI controller 𝑑𝐼
𝑉𝑎 = 𝑅𝑎 𝐼𝑎 + 𝐿𝑎 ( 𝑎) + 𝐸𝑎 (1)
Check hall sensor signals 𝑑𝑡
𝑑𝐼𝑏
𝑉𝑏 = 𝑅𝑏 𝐼𝑏 + 𝐿𝑏 ( ) + 𝐸𝑏 (2)
Error = 𝑑𝑡
𝑑𝐼𝑐
(set speed – 𝑉𝑐 = 𝑅𝑐 𝐼𝑐 + 𝐿𝑐 ( ) + 𝐸𝑐 (3)
𝑑𝑡
Reference & carrier value actual speed) or in the matrix form as follows.

𝑉𝑎 𝑅𝑎 + 𝑃𝐿𝑎 0 0 𝐼𝑎 𝐸𝑎
Compare reference & PI output & 𝑉
[ 𝑏 ]=[ 0 𝑅𝑏 + 𝑃𝐿𝑏 0 ] [𝐼𝑏 ]+[𝐸𝑏 ] (4)
carrier value generate PWM 𝑉𝑐 0 0 𝑅𝑐 + 𝑃𝐿𝑐 𝐼𝑐 𝐸𝑐
pulses
where,
PWM pulses La = Lb = Lc = Ls – M in Henry.
output Ra = Rb =Rc= R is armature resistance in ohm.
The expression of back-EMF must be modified as expressed in;
Three-phase
inverter 𝐸𝑎 (𝑡) = 𝐾𝑒 ∗ 𝐹(𝜃) ∗ 𝜔(𝑡) (5)
2𝜋
𝐸𝑏 (𝑡) = 𝐾𝑒 ∗ 𝐹 (𝜃 − ) ∗ 𝜔(𝑡) (6)
3
2𝜋
BLDC motor 𝐸𝑐 (𝑡) = 𝐾𝑒 ∗ 𝐹 (𝜃 + ) ∗ 𝜔(𝑡) (7)
3
Where Ke is the back-EMF constant in volts, F(𝜃) is back-
EMF function and ω is the rotor speed. The permanent magnet
End (PM) also made torques due to the trapezoidal flux linkage. The
produced torques;
Fig. 2. Flowchart for speed control of BLDC motor drive.
𝐸𝑎 𝐼𝑎 +𝐸𝑏 𝐼𝑏 +𝐸𝑐 𝐼𝑐
𝑇𝑒 = (8)
The flowchart for speed control of BLDC motor drive shown in ω
fig. 2. In this technique compare the duty cycle and back-EMF The resultant torque, TE, can be obtained by the following
waveforms and generate PWM pulses for three-phase inverter expressions;
bridge. 𝑇𝑎 (t) = 𝐾𝑡 ∗ Ø(θ) ∗ 𝐼𝑎 (t) (9)
2𝜋
𝑇𝑏 (t) = 𝐾𝑡 ∗ Ø (θ − ) ∗ 𝐼𝑏 (t) (10)
3
2𝜋
𝑇𝑐 (t) = 𝐾𝑡 ∗ Ø (θ + ) ∗ 𝐼𝑐 (t) (11) Auto 3- Inverter
3
𝑇𝐸 (t) = 𝑇𝑎 (t) + 𝑇𝑏 (t) + 𝑇𝑐 (t) (12) transformer

With the Newton’s second law of motion, the angular motion of BLDC
the rotor can be written as follows; Motor
𝑑𝜔(𝑡)
𝑇𝑒 (𝑡) − 𝑇𝑙 (𝑡) = 𝐽 + 𝐵 𝜔(𝑡) (13)
𝑑𝑡 3-
Rectifier
This mathematical model has been used for the simulation of
BLDC motor in MATLAB/Simulink model. FPGA
III. DIGITAL SPEED CONTROL OF BLDC MOTOR DRIVE
PWM method is the most general speed control methods for Ethernet cable
electrical motors. This method performs by matching a high
frequency signal with specific duty cycle is multiplied by
switching signals of inverter [8]-[9]. The schematic diagram of Computer
digital PWM control technique shown in fig. 3. In this
technique compare the duty cycle and back EMF waveforms
and generate PWM pulses for three-phase inverter bridge. Fig. 4. Schematic diagram of experimental setup.
Commutation conveys the design of a rotating field and it is
important to have the angle between the rotor and stator flux
close to 90° for a proper operation of BLDC motor. The sensor
output and the respective clockwise switching sequence is
shown in table I. According to the truth table of sensors
generate back EMFs. Then, according to back EMFs sequence
operate inverter switches [10]-[11]. The schematic diagram of
experimental setup is shown in fig. 4. Here used Spartan 3AN
FPGA board for generate digital PWM signal and given to direct
three-phase inverter bridge.
IV. EXPERIMENTAL VERIFICATION
The aforementioned control strategy was first implemented
through MATLAB/Simulink model. This has been done using
a variation of the PWM duty cycle, according to the error signal.
This has been further verified through experimental setup, as
shown in fig. 5. The inverter was built using power IGBT
modules, rated at 30 A, 600 V, with a switching frequency of
Fig. 5. Experimental setup of BLDC Motor.
10 to 20 kHz. The rectifier was built using six diode switches
rated at 60 A, 1.2 kV. Reference speed was established in a TABLE. II. E XPERIMENTAL SET-U P SPECIFICATION
graphical user interface and speed loop was used to match the
actual speed and the reference speed and based on error to PARAMETERS RATING UNIT
Power 1.07 kW
regulate the duty cycle for the next period [9]. Table II is shown
Rated speed 4000 RPM
the experimental set-up specification.
No. of poles 04
TABLE. I. C LOCKWISE SWITCHING SEQUENCE Torque cont. stall 3.6 N-m
Current cont. stall 6.29 A
Sensor Clockwise direction Rated bus voltage 300 V
HA HB HC S1 S2 S3 S4 S5 S6 Resistance 3.07 Ohms
1 0 1 0 1 0 0 1 0 Inductance 6.57 mH
Rotor inertia 1.4-1.8 kg-m2
0 0 1 0 0 0 1 1 0
0 1 1 1 0 0 1 0 0 Spartan 3AN FPGA kit 20
MHz
0 1 0 1 0 0 0 0 1 (Clock frequency)
1 1 0 0 0 1 0 0 1 Peak current 16 A
1 0 0 0 1 1 0 0 0 Torque constant 0.49 Nm
600 V
IGBTs based inverter stack
30 A
PWM frequency (switching) 10-20 kHz
a quasi-square wave with amplitude is 2 A. Fig. 6 (b) shows the
waveform of stator back-EMFs ( 𝐸𝑎 , 𝐸𝑏 , 𝐸𝑐 ) of BLDC motor,
each phase is 120-degree phase shifted with respect to each
other. The waveform of back-EMFs is constant for each 60-
degree interval and changes for each 120 degrees in a cycle.
When voltage of any two phases is constant means these are
associated to positive and negative DC link voltage respectively
at that time interval the voltage transition take place in the
floating phase. Fig. 6 (c) and (d) shows the rotor speed of BLDC
motor at a rated torque and gain value of 𝐾𝑝 = 2 & 𝐾𝑖 = 8, and
the speed reference is 1000 and 2500 RPM respectively.
(a) The steady state error in the speed response is zero due to the
effective control action taken by the speed PI controller as
shown in Fig. 6 (c) and (d). The peak overshoot in each speed
reference is not more than 5%. The settling time for the speed
response is less than 0.02 seconds. Based on these performance
indices values, the used BLDC motor drive qualifies to be called
as high-performance motor drive. The perfect PI controller
design leads to the excellent performance of the BLDC motor
drive.
The control strategy has been implanted on a three phase 4
pole BLDC motor coupled with DC generator load of
parameters as shown in table II. Since the torque sensor has not
been connected, the loading patterns of the DC generator load
(b) could not be verified. The experimental results are shown in
fig.7. The three-phase stator phase current shown in fig. 7 (a).
The BLDC motor stator currents confirms the simulated currents
waveform of fig. 6(a). It is quasi square waveforms and 120
electrical degree phase shift to each other. The output signals of
hall sensors are “HIGH” or “LOW” and in terms of digital “0”
and “1” only. Speed response of BLDC motor shown in fig. 7
(b) and (c).
Step speed reference of 500 RPM has been applied at the time
instant of 11th second. It takes approximate to 6 second to settle
the speed response. Such a large transient time is due to the non-
perfect design of speed controller. During the drive simulation
(c)
the same design of PI controller has given the perfect speed
response. The hardware speed response shows no steady state
error. The PI speed controller is designed with considering load
inertia, the speed response is similar to the simulated speed
response.

(d)

Fig. 6. Simulation results of BLDC motor drive: (a) stator phase current, (b)
stator phase back-EMFs, (c) speed response in RPM (refer. speed is 1000
RPM) and (d) speed response in RPM (refer. speed is 2500 RPM).

The simulation results are shown in fig. 6. Fig. 6 (a) shows the (a)
waveform of stator phase current of BLDC motor; it looks like
the motor. The digital PWM control thus was able to achieve
high performance speed control coupled with accurate
computation. The use of Spartan 3AN FPGA in digital control
can be easily adapted to analog control. The effectiveness of
PWM technique for speed control of BLDC motor and its
practical applications has been demonstrated experimentally.
Using Spartan 3AN FPGA platform drives can be easily
controlled with least starting time, real time control action,
parallel processing and fast transient response compared to
microcontroller-based approach. In conclusion, this paper has
(b)
presented the effective digital PWM speed control technique for
BLDC motor using FPGA. Further development and
modification of this technique will lead to the development of
digital current control techniques for sensorless BLDC motor
drive.
ACKNOWLEDGEMENT

The authors are thankful to Naval Research Board, India for


financial support.
(c)
REFERENCES

[1] R. Shanmugasundram, K. M. Zakariah, and N. Yadaiah, “Implementation


and Performance Analysis of Digital Controllers for Brushless DC Motor
Drives”, IEEE/ASME transaction on mechatronics, vol. 19, no. 1, pp. 213-
224, Feb. 2014.
[2] F. Rodriguez, and A. Emadi, “A Novel Digital Control Technique for
Brushless DC Motor Drives”, IEEE transaction on industrial Electronics,
vol. 54, no. 5, pp. 2365-2373, Oct. 2007.
[3] N. Milivojevic, M. Krishnamurthy, Y. Gurkaynak, and A. Sathyan,
“Stability Analysis of FPGA Based Control of Brushless DC Motors and
Generators Using Digital PWM Technique”, IEEE transaction on
industrial Electronics, vol. 59, no. 1, pp. 343-351, Jan. 2012.
[4] A. Darba, F. D. Belie, P. Dhaese, and J. A. Melkebeek, “Improved
Dynamic Behavior in BLDC Drives Using Model Predictive Speed and
Current Control”, IEEE transaction on industrial Electronics. vol. 63, no.
(d) 2, pp. 728-740, Feb. 2016.
[5] A. Emadi, “Handbook of Automotive Power Electronics and Motor”
Fig. 7. Experimental results of BLDC motor drive: (a) stator phase current, (b) Drives, Boca Raton, FL: CRC, 2005.
low speed response, (c) high and low speed response and (d) bode plot response. [6] K. T. Chau, C. C. Chan, and C. Liu, “Overview of Permanent Magnet
Brushless Drives for Electric and Hybrid Electric Vehicles,” IEEE
The fig. 7 (d) shows frequency response of BLDC motor transaction on industrial Electronics, vol. 55, no. 6, pp. 2246–2257, Jun.
drive. The magnitude and phase plots show that the speed gain 2008.
is 25.4 dB at 63.3 Hz. The system has the phase of -84.7 degree [7] P. C. Desai and A. Emadi, “A novel digital control technique for brushless
DC motor drives: Current control,” IEEE Electronics Machine Drives
at 62.6 Hz. Therefore, it is seen that, the digital PWM technique Conference, 2005, pp. 326–331, Dec. 2005.
for BLDC motor drive is highly stable with enough phase [8] A. Sathyan, N. Milivojevic, Y. J. Lee, M. Krishnamurthy, and A. Emadi,
margin at required cross over frequency. “An FPGA-based Novel Digital PWM Control Scheme for BLDC Motor
Drives,” IEEE Transaction on Industrial Electronics, vol. 56, no. 8, pp.
V. CONCLUSION 3040–3049, Aug. 2009.
This work demonstrates the use of an efficient and low cost [9] A. Tashakori, M. Hassanudeen and M. Ektesabi, “FPGA Based Controller
Drive of BLDC Motor Using Digital PWM Technique”, IEEE PEDS
digital PWM controller to control the speed of BLDC motor 2015, Sydney, Australia, pp.658-662, 9–12 Jun. 2015.
drive. The digital PWM controller is designed and modeled in [10] E. Monmasson and M. N. Cirstea, “FPGA design methodology for
MATLAB/Simulink which is then implemented (in FPGA) on industrial control systems—A review,” IEEE Transaction on Industrial
the hardware setup. The results obtained through simulation are Electronics, vol. 54, no. 4, pp. 1824–1842, Aug. 2007.
validated experimentally. It has been observed that the [11] M. W. Naouar, E. Monmasson, A. A. Naassani, I. S. Belkhodja, and N.
experimental results obtained matches with the Patin, “FPGA Based Current Controllers for AC Machine Drives—A
Review,” IEEE Transaction on Industrial Electronics, vol. 54, no. 4, pp.
MATLAB/Simulink results; which includes speed response of
1907–1925, Aug. 2007.

You might also like