Professional Documents
Culture Documents
FPGA Based Controller Drive of BLDC Motor Using Digital PWM Technique
FPGA Based Controller Drive of BLDC Motor Using Digital PWM Technique
Abstract—Permanent magnet Brushless DC (BLDC) mo tors Synchronous AC Motors (PMSMs) and the other type with
have been extensively used in industrial, automotive and trapezoidal-wave back-EMF that are called Permanent Magnet
aerospace applications in the last decade. This paper presents a
Brushless DC (BLDC) Motors. BLDC motors produce larger
Field Programmable Gate Array (FPGA) based control drive for
BLDC motors using digital pulse width modulation (PWM) speed torque compared to PMSMs [7]; however they have more torque
controller. Presented BLDC motor commutation technique is ripples. Schematic diagram of a three phase BLDC motor drive
based on three inbuilt Hall Effect sensors. A novel algorithm is is shown in Fig. first.
proposed to implement a closed loop PWM speed controller
using FPGA for BLDC motors. Motor speed is controlled through
a predefined value or manually by the user. The proposed
method is modeled by Xilinx Integrated Software Environment (ISE)
Simulator and MATLAB/Simulink. Performance of the proposed
FPGA based control drive of BLDC motor is also evaluated
through experimental test setup. Simulation results and effec
tiveness of the proposed method are proved and validated by
experimental data.
I. INTRODUCTION
In specific applications such as Electric Vehicles (EVs),
electric motor has an essential effect on the overall per form of
the system. In such applications, efficient and reliable control
and operation of the overall systems are mainly dependent on
the selected motor type and its control drive.
Correct selection of electric motor drive is highly dependent on
application requirements. BLDC motor is a novel conventional
DC motor that has electronic commutation. They have been
widely used in industrial applications since 1970's. BLDC motors
are the main choice for in-wheel traction applications due to
their high efficiency and precise controllability [1].
Motor comparison studies also recommend BLDC motor as the Fig. 1. Schematic diagram of a three phase BLDC motor drive
best choice for high performance passenger EVs [2].
High efficiency, high speed ranges and high power/torque to Electronic commutation of the BLDC motor is based on
size ratio are main advantages of BLDC motors compared to position of permanent magnet rotor. Rotor position is either
other electric motor types [3]. BLDC motors need less main detected through inbuilt sensors or through sensorless algo
tenance due to the elimination of the mechanical commutators rithms by back-EMF zero crossing detection (ZCD). Position
and brushes. BLDC motors have faster dynamic response due detection sensors provide signals based on rotor position. Hall
to their low inertia (permanent magnet) rotor compared to Effect sensors are generally used for low resolution application
induction motors [4]. Low rotor losses and low acoustic noise and optical encoders are generally used for high resolution
are also other benefits of permanent magnet BLDC motors [5]. applications. Back-EMF sensing, back-EMF integration, free
BLDC motors are becoming increasingly popular in industrial, wheeling diode conduction of unexcited phase, flux link age
automotive and robotics application nowadays due to their based, third-harmonic analysis of back-EMF are various BLDC
immediate advantages. Therefore a developing low cost and motor sensorless control techniques [8]. Reduction of motor
efficient BLDC motor control drive by including new techniques, maintenance, extra wiring, temperature sensitivity, cost and
tools and circuits is in high demand [6]. complexity of motor construction are main advantages of
There are two types of permanent magnet synchronous sensorless control algorithms [9]. However control algorithms
motors based on their back Electro-Motive Force (EMF) wave complexity, starting and low speed commutation difficulties are
forms. Permanent magnet synchronous motors with sinusoidal main drawbacks of sensorless BLDC motor drives [10].
wave back-EMF that are well known as Permanent Magnet Therefore sensorless drives need a starting algorithm to speed
up the BLDC motor to the point that is able to sense back faster than DSPs due to the inherent parallel architectures.
EMF [11]. The FPGAs offer fast time to market, low design/manufacturing
In this paper, BLDC motor commutation is based on three cost and risk, extremely high processing performance and pro
inbuilt Hall Effect sensors. Hall Effect sensors are typically grammability [5]. Another major advantage of using FPGAs is
mounted at the non-rotating end of BLDC motors in 120 the possibility to validate the designed control algorithm by
electrical degree phase difference. Each sensor signal is high using simulation tools before hardware implementation.
for 180 electrical degrees according to rotor position during Spartan-3E and the Basys 2 are FPGA boards are used to
one electrical rotation of the BLDC motor [10]. Commutation implement the BLDC motor control in this study.
points of the BLDC motor are determined by decoding the Hall This paper presents a simple FPGA based control drive of
Effect signals. The six-step commutation technique is used to the BLDC motor using digital PWM technique. Details of the
switch the three phase Variable Source Inverter (VSI) drive of proposed FPGA based speed controller is discussed in the
BLDC motor in six switching sequences. In this technique only next section. Simulation and experimental results of the
two BLDC motor phases are energized at each switching developed FPGA based BLDC motor drive is presented and
sequence while the remaining phase is inactive. Reversing of discussed later on the following respectively. This study also
the switching sequences changes the motor rotation direction. provides a platform for future development and implementation
Speed of the motor is directly proportional to the width of the of high performance and efficient FPGA based BLDC motor
position sensor signals. Ideal line voltages, back-EMF voltages, drives for EV applications.
commutation signals, phase currents and six-step switching
II. THE PROPOSED FPGA BASED PWM CONTROLLER
pattern of the three phase BLDC motor are shown in Fig. 2.
Hysteresis current control and PWM switching techniques
are the most widely used speed controllers in BLDC motor
drives [4]. In BLDC motors, speed is directly proportional to
applied line voltages. Variable DC link inverters and PWM
switching techniques are main methods to adjust voltage in
VSI drives. In the first method, VSI DC bus voltage is adjusted
to achieve desired speed where in PWM technique a duty
cycle controlled high frequency signal is logically added to
switching signals of the inverter to control the VSI average
output voltage. PWM signal can be applied to either upper
side switches, or lower side switches or all six switches of VSI
[3]. PWM signal is applied to upper side switches of the inverter
in the proposed method in this paper.
PWM signal can be generated digitally using processors or
through an analogue electronic circuit using comparators. High
noise susceptibility, temperature and voltage level sensitivity
of electronic circuit are main drawbacks of analogue methods;
however on the other hand flexibility, less environmental noise
susceptibility and ease of generation through programming by
microcontrollers or FPGAs are main advantages of digital
methods [13]. The counter-based, the delay-line and hybrid
delay-line/counter architectures are main PWM generation
topologies used in digital controllers [14]. The counter based
PWM generator topology is used in this paper due to its
Fig. 2. Ideal three phase BLDC motor signals and switching pattern simplicity and ease of implementation. In this method, the
PWM signal is set high as the counter is triggered by a clock
Digital Signal Processors (DSPs) were used to drive BLDC signal and is set low after number of predefined clock cycles.
motors. Modern control systems employ mi crocontrollers that Number of clock cycles is directly related to the required duty
are basically an integration of DSP and powerful peripherals cycle of the signal . Although counter-based method is simple
in a complete package [12]. Microcon trollers are computing and compatible for FPGA based systems, but it needs a high
systems that can perform loops, timings, conditionings and clock frequency that increases power dissipation [14].
complex math calculations. On the other hand FPGAs are A FPGA based PWM technique is reported by Sathyan et
integrated circuits designed to be programmed using a al. two effective duty cycle values have been chosen to control
hardware description language (HDL). In comparison to the speed of the BLDC motor [4]. Duty cycle of the PWM
microcontrollers, FPGAs are generally used for simpler signal is switched between high and low predefined values
operations however they have higher processing speed. based on speed error to adjust the BLDC motor speed.
FPGAs also perform complex computations and calculations In this paper, speed of the motor is sensed through Hall Effect
659
Machine Translated by Google
The proposed BLDC motor controller, developed coding by external switches on the FPGA board. Xilinx ISE is used
and algorithms for the counter based PWM generation through to generate control algorithm VHDL codes for Spartan 3E
the FPGA boards are discussed and presented in this section. and Basys 2 FPGA boards. Xilinx ISE software allows for
The proposed BLDC motor PWM control algorithm is synthesis, simulation and implementation of the code generator
modeled in Simulink using Simscape library. Data of the ated. Input and output signals of the developed BLDC motor
controller are shown in Table II.
experimental BLDC motor given in Table I is used in the motor
drive model. BLDC motor commutation is done according to TABLE II
the inbuilt Hall Effect position sensors signals. A three phase I/O SIGNALS OF THE DEVELOPED BLDC MOTOR CONTROLLER
voltage source inverter is modeled using Metal Oxide Semi
conductor Field Effect Transistor (MOSFET) switches based Signals I/O description
on experimental inverter drive. Six-step switching algorithm Clock Input It is derived from the 50MHz oscillator
is used to drive the BLDC motor VSI drive (refer to Fig. available in the Spartan 3E board
2). Matlab codes have been written and embedded into the Start Input It activates the motor controller (user control)
model to generate a duty cycle controlled PWM signal, detect Reset Input It stops the motor controller (user control)
motor speed from position sensors signals and implement the Position Inputs Three inbuilt Hall Effect sensors are used
proposed control algorithm. PWM signal is added to the upper sensors to obtain permanent magnet rotor position
side switches of the inverter. Speed up Input It increases the motor speed (user control)
Speed down Input It said the motor speed (user control)
TABLE I
Direction Input It changes direction of rotation (user control)
SPECIFICATION OF EXPERIMENTAL BLDC MOTOR
Switching Outputs Six PWM switching signals to drive the
DC voltage 24 DRAW
660
Machine Translated by Google
from three inbuilt Hall Effect sensors signals that are inputs 3E and Basys 2 are programmed and used as the experimental
to the controller. A Finite State Machine (FSM) program is BLDC motor control drive. FPGA based experimental test rig
running in an infinite loop to commutate BLDC motor. of the BLDC motor is shown in Fig. 5.
Six states are defined based on input Hall Effect signals and
according to the six-step inverter switching topology.
The program detects the current rotor position and checks
the direction input signal at each state. Thus the program
chooses the next state to generate correct commutation
signals according to the current state and direction of rotation
input signal. The generated duty cycle controlled PWM signal
is logically added to the switching signals of the VSI upper
side switches.
The proposed control algorithm is coded using Xilinx ISE
and the simulation results are shown in Fig. 4. Commutation
signals are generated in a sequence for one electrical rotation
of the BLDC motor. As can be seen, six step inverter switch
ing topology is used to commutate the BLDC motor. The
generated PWM signal is only added to upper side switches
of the VSI. As shown in simulation results, inverter switches Fig. 5. BLDC motor experimental test rig
on the same leg are not activated at the same time to avoid
short circuit of the inverter DC link. Simulation results also The FPGA board gets the Hall Effect signals directly from
show that duty cycle of the generated PWM signal is correctly inbuilt sensors of the BLDC motor. Commutation of the motor
changing according to speed up and speed down input signals. mainly depends on correct reading of Hall Effect signals. In
Speed up and speed down signals can be controlled by user order to check and confirm not existing of any invalid Hall
to change the speed, however they vary by the program in effect sensors signals as well as commutation sequences
the closed loop control scheme. Simulation results prove states in advance and during the motor operation, LEDs on
correct performance of the proposed FPGA based control the FPGA board and Microchip LV development board are
drive of BLDC motor using digital PWM technique. used for visual observation. The FPGA controller produces
PWM and commutation signals at a voltage level of 3.3 volts.
IV. EXPERIMENTAL RESULT
Thus switching signals is pulled up to 5 volts that is required
The proposed control system is implemented to control a by the inverter driver. The PWM switching frequency is 5 kHz.
low voltage experimental BLDC motor. Experimental BLDC The experimental BLDC motor drive is tested under no
motor specifications are given in Table I. Inverter drive of the load condition at full speed (3300 RPM) and 1000 RPM to
Microchip Low Voltage (LV) development board consists of investigate performance of the proposed FPGA based control
three half-bridge gate drivers using MOSFETs are utilized to drive. Experimental BLDC motor line voltage and Hall Effect
drive of the experimental BLDC motor. FPGA boards Spartan signals at different speed operations are shown in Fig. 6. As
661
Machine Translated by Google
can be seen in Fig. 6-a, PWM duty cycle value is 100% to BLDC motor drive is more efficient and has more smooth
apply the maximum voltage to the BLDC motor for full speed speed response. The proposed control algorithm is modeled
operation. Good agreements between the experimental results in ISE Simulator and Simulink. Effectiveness of the proposed
shown in Fig. 6-a and simulation results in Fig. 3 validate FPGA based BLDC motor drive is evaluated through exper
correct performance of the proposed control drive and the imental data. Good agreements between experimental data
BLDC motor simulation model. High frequency PWM switching and simulation results prove correct performance of the
of the BLDC motor is shown in Fig. 6-b for BLDC motor proposed FPGA based drive of the BLDC motor using digital
operation at 1000 RPM reference speed. Experimental results PWM speed controller.
prove correct performance of the proposed FPGA based
ACKNOWLEDGMENT
control drive of BLDC motor using digital PWM technique
speed controller. The authors would like to thank Swinburne University of
Technology, Malaysia Automotive Institute and the Common
wealth of Australia through the Automotive Australia 2020
CRC for providing funding for this research.
REFERENCES
[1] B. Lee and M. Ehsani, “Advanced bldc motor drive for low cost and high
performance propulsion system in electric and hybrid vehicle,” in IEEE
International Electric Machines and Drives Conference, (IEMDC), 2001.
662