Beruflich Dokumente
Kultur Dokumente
{cristinel.ababei}@marquette.edu
AbstractWe present a field programmable gate array (FPGA) [5][8]. FPGAs have also been proposed for hardware-in-
based implementation for direct torque control (DTC) of in- the-loop (HIL) simulation of power electronic converters -
duction motor drives. The proposed design utilizes several which exhibit very fast switching dynamics. In such cases,
improvements to execute the functional blocks in DTC that
reduce the execution time and improve the sampling frequency. FPGAs can provide the latencies needed for real-time simu-
The FPGA system is implemented on a Xilinx Virtex-5 board lation of fast switching transistors. FPGAs have been used
using VHDL code assembled from scratch and the DSP based for modeling and simulation [9][12] of power electronic
solution is implemented using dSPACE DS 1104. Both systems components. For actual implementation applications of motor
are validated experimentally with hardware-in-the-loop, on a control algorithms, as pointed in [13] (and shown in in Fig. 1),
small 200 W, 3 phase induction machine. Experimental results
indicate that the proposed design enables a far higher sampling timing constraints and algorithm complexity are the two main
frequency (up to 800 kHz), compared to typical digital signal factors governing the choice - DSP or FPGA. Implementing
processors (DSP) based solutions which are limited to 20kHz. The
higher sampling frequency helps mitigate torque ripple which is
a well known limitation of DTC. Additionally, the short execution
times suggest the possibility of extending the use of such FPGA
implementations to serve auxiliary motor diagnostic functions.
Index TermsFPGA, dSPACE, Direct Torque Control (DTC),
Induction Motor.
I. I NTRODUCTION
The demand for high performance electric drives is steadily
growing with the increasing emphasis for electrification of the
transportation industry. For induction motors, direct torque
control (DTC) [1], [2] and Field Oriented Control (FOC) Fig. 1. DSP and FPGA domain of use based on algorithm complexity and
[3] are two popular torque control methods and a relative timing constraints, [13]
comparison of their performance is presented in [4]. While DTC with FPGAs introduces challenges because the algorithm
FOC is considered industrially mature but more complex, involves several complex arithmetic operations. For exam-
DTC, which is relatively recent, is rapidly becoming a popular ple, estimating the torque and stator flux involves numerical
strategy because of its simplicity (no need for mechanical integration and square root evaluations and the stator flux
shaft mounted torque transducers) and good dynamic response. vector (magnitude and angle) needs to be computed. Thus,
However, minimizing the high torque ripple that is inherent in finding clever implementations of these functions is the major
DTC schemes continues to pose a significant challenge to Dig- research focus for FPGA based implementations. The work
ital Signal Processor (DSP) based implementations. Because in [14] suggests improved methods for torque and stator flux
DTC uses hysteresis torque and stator flux comparators, the estimators, sector selectors, and the data format, with the
ripple needs to be contained within the hysteresis bands which overall design goal of maximizing the sampling frequency and
calls for higher sampling frequencies. Current DSP platforms while minimizing hardware resource utilization and errors. The
such as dSPACE DS1104 or TMS C2000 can support sam- results in [14] achieve a sampling frequency of 200kHz.
pling frequencies upto 20 kHz. However, with this resolution, This paper presents a hardware implementation of DTC
the hysteresis controllers cannot be still driven to reach the on a 200W, 3 phase, 4 pole induction motor with FPGAs
performance provided by its analog counterparts. These lim- (on a Xilinx Virtex-5 board) and the DSP counterpart (on a
itations have motivated FPGA-based implementations where dSPACE DS1104 platform). Specifically we use the following
the parallelism can be exploited to achieve shorter execution design features: (i) We employ a look-up table to implement
times that can be beneficial in high performance applications. the sector selection block. This requires only comparison
FPGA applications to achieve drastically shorter simulation operators and while similar to [14], our implementation is
times of motor control algorithms have been proposed in achieved in 4 clock cycles and thus it is much simpler than
978-1-4799-5944-0/14/$31.00 2014
c IEEE
evaluating the arctan function with the CORDIC algorithm ( where e is the stator angular electrical frequency; r is
[15] ) (ii) Custom hardware is designed for signal conditioning, the rotor angular electrical frequency; Rs and Rr are stator
A/D conversion and generating the gating signals driving the and rotor resistances; isd and isq are the stator current dq
inverter, (iii) Operating the hysteresis comparators and sector components; sd , sq , rd and rq are the dq axes stator
selector in parallel which requires 7 clock cycles for execution. and rotor flux components, respectively. The flux variables are
Experimental results show that the control loop is executed in related to the machine currents and inductances as:
66 clock cycles at a maximum clock frequency of 54MHz. sq = Ls isq + Lm irq , sd = Ls isd + Lm ird (5)
This implies that the maximum inverter switching frequency
rq = Lr irq + Lm isq , rd = Lr ird + Lm isd (6)
can be potentially raised up to approximately 800kHz; com-
pared to 20kHz achieved with DSP implementation and 200 where Ls and Lr are the stator and rotor inductances, and Lm
kHz achieved in [14]. This feature of the FPGA-based imple- is the magnetizing inductance.
mentation is immensely beneficial because as explained earlier, The 3-phase voltages of the stator, transformed to dq
reducing the torque ripple requires a high sampling frequency components are obtained from the positive sequence dq trans-
considering the bandwidths of the hysteresis comparators. formation matrix:
The rest of the paper is organized as follows. In section
II, the DTC scheme is briefly explained. Sections III and IV vsd 1 0.5
0.5
vsa
describe the dSPACE and FPGA based system components vsq = 2 0 3
23 vsb (7)
3 2
and design respectively. In section V, experimental results vs0 1 1 1 vsc
of both dSPACE and FPGA-based systems are presented and
compared. Section VI concludes this paper. The electromechanical (intertial) dynamics are given by:
dm 1
II. D ESCRIPTION OF THE D IRECT T ORQUE C ONTROL = (Te TL ) (8)
dt J
S CHEME
where m is the angular mechanical speed, Te is the elec-
The DTC scheme as shown in Fig. 2 contains the following tromechanical torque, TL is the load torque and J denotes the
main components: 3-phase induction motor, 3-phase voltage machine inertia.
source inverter, estimation block, switching table, torque and
stator flux comparators and a sector selector. These blocks B. Estimation Block
are described in the following subsections. It should be noted The torque and stator flux estimation blocks (see Fig. 2)
that except the induction motor and inverter which appear estimate the motor electromechanical torque Te and stator flux
as physical hardware-in-the-loop, the rest of the blocks are linkage s described by the following equations.
implemented digitally. 3P
Te = (sd isq sq isd ) (9)
2 2
sd = (vsd Rs isd )dt, sq = (vsq Rs isq )dt (10)
s = 2sd + 2sq (11)
The evaluation of sd and sq from equation (10) is done
numerically by:
sd = sdold + Ts (vsd Rs isd ) (12)
sq = sqold + Ts (vsq Rs isq ) (13)
Fig. 2. Block diagram of Direct Torque Control (DTC). where Ts is the integration time step.
C. Torque and Flux Comparators
A. Induction Machine
The values estimated by the estimation block are compared
The 3-phase induction motor is modeled by the following with the torque and stator flux command values using three and
differential equations in the synchronous reference frame using two-level hysteresis torque and flux comparators, respectively,
dq components. as shown in Fig.2. The output of the comparators are used
dsq along with the sector selector block output to determine the
vsq = Rs isq + + e sd (1) proper switching signals that should be applied to the inverter.
dt
dsd
vsd = Rs isd + e sq (2) D. Sector Selector
dt
drq The dq coordinate plane is divided into 6 sectors. This block
0 = Rr irq + + (e r )rd (3) determines in what sector number the stator flux vector is
dt
drd located at a given sampling instant. This is done by comparing
0 = Rr ird + (e r )rq (4) the flux magnitude (s ) and the flux dq components (sd , sq ).
dt
E. Switching Table A. FPGA design for DTC
The inverter switching signals are decided based on the Fig. 4 shows the outputs and inputs of FPGA when it is
switching table shown in Table I. The table consists of zero and used as the processing unit for DTC. The FPGA receives
non-zero (active) vectors. Zero vectors are (0,0,0) and (1,1,1) two phase currents (ia , ib ), the DC link voltage (E) and
that stop the field vector, reducing the torque as the result. On three switching signals (Sa , Sb , Sc ). Based on these inputs, it
the other hand, all other six vectors known as active vectors estimates stator flux (s ) and torque (Te ) values and outputs
which advance the field forward resulting in torque increase the inverter switching signals.
[16].
TABLE I
S WITCHING TABLE FOR DTC.
(Sa , Sb , Sc )
, , N N=1 N=2 N=3 N=4 N=5 N=6
= 1 (1,1,0) (0,1,0) (0,1,1) (0,0,1) (1,0,1) (1,0,0)
=1 = 0 (1,1,1) (0,0,0) (1,1,1) (0,0,0) (1,1,1) (0,0,0)
= -1 (1,0,1) (1,0,0) (1,1,0) (0,1,0) (0,1,1) (0,0,1)
= 1 (0,1,0) (0,1,1) (0,0,1) (1,0,1) (1,0,0) (1,1,0)
=0 = 0 (0,0,0) (1,1,1) (0,0,0) (1,1,1) (0,0,0) (1,1,1)
= -1 (0,0,1) (1,0,1) (1,0,0) (1,1,0) (0,1,0) (0,1,1)
Fig. 4. Inputs and outputs of FPGA as the digital signal processor for DTC.
Fig. 12. Induction motor estimated stator flux for a step torque command
of 0.5Nm to -0.5Nm.
Fig. 10. Induction motor dq flux linkages for a step torque command of
0.5Nm to -0.5Nm. Fig. 13. Experimental setup for FPGA-based DTC scheme.
R EFERENCES
[1] I. Takahashi and T. Noguchi, A new quick-response and high effi-
ciency control strategy of an induction motor, IEEE Trans. on Industry
Application, vol. 22, no. 5, pp. 820827, Sept./Oct. 1986.
[2] M. Depenbrock, Direct Self Control (DSC) of Inverter Fed Induction
Machine, IEEE Trans. on Power Electronics, vol. 3, no.4, pp.420-429,
Oct. 1988.
[3] F. Blaschke, A new method for the structural decoupling of A.C.
induction machines, in. Conf. Rec. IFAC, Duesseldorf, Germany, Oct.
1971, pp. 115.
[4] D. Casadei, F. Profumo, G. Serra, and A. Tani, FOC and DTC: Two
Fig. 14. Number of clock cycles required by the building blocks for the viable schemes for induction motors torque control, IEEE Trans. on
proposed DTC estimator. It takes 66 clock cycles for each iteration of the Power Electonics, vol. 17, no. 5, pp. 779-787, Sept. 2002.
feedback loop. [5] H. Kia, M. Zare, R. Kavasseri, and C. Ababei, Dynamic simulation
of direct torque control of induction motors with FPGA based accel-
erators, Int. Conference on Reconfigurable Computing and FPGAs
plementation, the maximum clock frequency is about 54MHz. (ReConFig) 2013, Cancun, Mexico.
[6] H. Chen, S. Sun, D.C. Aliprantis, and J. Zambreno, Dynamic sim-
Executing one loop of the calculation requires 66 clock cycles. ulation of electric machines on FPGA boards, IEEE Int. Electric
This suggests that the inverter switching frequency can be Machines and Drives Conference (IEMDC), 2009.
potentially up to about 800KHz. However, one should note that [7] H. Chen, S. Sun, D. C. Aliprantis, and J. Zambreno, Dynamic
simulation of DFIG wind turbines on FPGA boards, Power and Energy
the switching frequency is also limited by the ADCs and the Conference, 2010.
switching devices used in inverters. Overall, this improvement [8] S. Tola and M. Sengupta, Real-Time simulation of an induction
leading enabling higher sampling frequencies can dramatically motor in different reference frames on an FPGA platform, IEEE Int.
Conference on Power Electronics, Drives and Energy Systems, 2012.
reduce the torque ripple - which is one of the main limiting [9] M. Martar, M. Adbel-Rahman, and A.-M. Soliman,FPGA based real-
factors for DTC. time digital simulation, Int. Conference on Power Systems Transients,
2005.
VI. C ONCLUSION [10] G. Parma and V. Dinavahi,Real-time digital hardware simulation of
power electronics and drives, IEEE Trans. on Power Delivery, vol. 22,
The inherent parallelism in FPGAs can be exploited in no. 2, pp. 12351246, Apr. 2007.
[11] J. Pimentel,Implementation of simulation algorithms in FPGA for real
the design of high performance controllers for electric drives time simulation of electrical networks with power electronics devices,
where execution time is critical. This paper presents the design IEEE Int. Conference on Reconfigurable Computing and FPGAs, 2006.
and hardware implementation of one such controller - namely, [12] P. Le-Huy, S. Gu erette, L. A. Dessaint, and H. Le-Huy,Real-
simulation of power electronics in power systems using an FPGA,
Direct Torque Control (DTC) for induction motor drives. The Canadian Conference Electrical and Computer Engineering, 2006.
implementations are realized on both the FPGA and DSP [13] E. Monmasson and M. Cirstea, FPGA Design Methodology for Indus-
(using dSPACE) platforms. The proposed FPGA design uses trial Control SystemsA Review, IEEE Trans. on Industrial Electronics,
vol. 54, no. 4, pp. 1824-1842, Aug. 2007.
a look-up table to implement the sector selection block which [14] T. Sutikno, N. Idris, A. Jidin, and M. Cirstea, An improved FPGA
is operated in parallel with the hysteresis comparators. The implementation of direct torque control for induction machines, IEEE
estimation block which requires numerical integration and Trans. on Industrial Informatics, Oct. 2012.
[15] C. Kowalski, J. Lis, and T.O Kowalska, FPGA implementation of
square-root function evaluations takes the longest time (48 DTC control method for the induction motor drive, Int. Conference
cycles) for execution compared to the other functional blocks. on Computer as a Tool (EUROCON), 2007.
These design improvements reduce the overall execution time [16] M. P. Kazmierkowski and G. Buja, Review of direct torque control
methods for voltage source inverter-fed induction motors, IEEE In-
to 66 clock cycles. While the dSPACE-based system has a dustrial Electronics Society (IECON), 2003.
sampling frequency limit of 20kHz imposed by the system [17] S. Ferreira, F. Haffner, L. Pereira, and F. Moraes, Design and
ADCs, the proposed FPGA-based design allows a potential prototyping of direct torque control of induction motors in FPGAs,
Proceedings of the 16th Symposium on Integrated Circuits and Systems
maximum sampling frequency of 800kHz. This has significant Design (SBCCI), 2003.
implications because higher sampling frequencies in the hys- [18] T. Sutikno, A. Jidin, and N. Idris, New approach FPGA-based imple-
teresis controllers reduce the torque ripple - which continues mentation of discontinuous SVPWM, Turkish Journal of Electrical
Engineering and Computer Science, vol. 18, pp. 499-514, 2010.
to be a challenge for DTC. The design choice of 32-bit float- [19] http://www.dspace.com/
ing point representations provides sufficient accuracy while [20] http://www.xilinx.com/
increasing hardware utilization. These benefits, along with
short execution times suggests that FPGAs primarily employed
to implement the control can additionally be utlilized for
auxiliary tasks such as fault analysis and diagnosis, and closely
monitor motor operation. The development of such add-ons
will be the subject of our future work.
VII. ACKNOWLEDGEMENT
Support for this work in part from John Deere, Inc and the
Department of Electrical and Computer Engineering at North
Dakota State University, Fargo is gratefully acknowledged.