Torque Ripple Reduction Based Direct Torque Control for Induction Motor Drive

DOI : 10.17577/IJERTV3IS120161

Download Full-Text PDF Cite this Publication

Text Only Version

Torque Ripple Reduction Based Direct Torque Control for Induction Motor Drive

Hayder S. Hameed Electrical Engineering Department, University of Baghdad, Baghdad, Iraq

Hanan Mikhael Dawood Electrical Engineering Department, University of Baghdad,

Baghdad, Iraq,

J. H. Alwash

Electrical Engineering Department, University of Baghdad, Baghdad, Iraq

AbstractDirect Torque Control is a control technique used in AC drive systems to obtain high performance torque control. In this paper, Proportional-Integral (PI) controller has been presented to improve the system performance which gives better torque and flux response and also reduces the undesirable torque ripple. The conventional DTC controller approach for induction machines, based on an improved torque and stator


+ ETe

– –

Torque hysteresis




Sa Sb


flux estimator, is implemented using Xilinx System Generator (XSG) for MATLAB/Simulink environment through Xilinx blocksets. The DTC performance is significantly improved by the use of Xilinx FPGA. The design was achieved in VHDL which is based on a MATLAB/Simulink simulation model. The hardware in the loop results are obtained considering the implementation of the proposed model on the Xilinx NEXYS2 Spartan 3E1200 FG320 Kit. The design, implementation and simulation of the overall drive system is performed using MATLAB/Simulink program version (R2011ba) and Xilinx ISE Design Suite 14.2.

Keywordsinduction motor; Direct Torque Control (DTC);

s Flux hysteresis Es



^ s





Xilinx FPGA


    Fig. 1. Block diagram of classical DTC

    Various methods are proposed by many researchers to address these problems of conventional DTC. Many of them

    The concept of Direct Torque Control (DTC) was developed by Takahashi and Dpenbrock [1].It has become a powerful control scheme for the control of induction motor drives and it considered as an alternative to the field oriented control (FOC) strategy [2] .The scheme of DTC has good dynamic performance, precise and quick control of stator flux and electromagnetic torque, robustness against the motor parameter variations, and the simplicity of the algorithm [3].Simple structure of classical DTC comprises torque and flux estimator, hysteresis controller for flux and torque, and switching table as shown below in Fig.1. The performance of DTC depends on the error band set between the desired and measured torque and stator flux values. The variation in speed and according to flux and torque controllers hysteresis bandwidth, the inverter switching frequency is changed [4]. The DTC aims to choose the best voltage vector in order to control both stator flux and electromagnetic torque of machine simultaneously. Similar to hysteresis band (HB)current control, there will be ripple in current ,flux ,and torque .The current ripple will give additional harmonic loss, and torque ripple will try to induce speed ripple in a low inertia system and possible problem during starting .To improve the performance of DTC, the torque ripple must be reduced [5].

    use space vector modulation (SVM) to get continuous voltage vector, which can adjust the torque and flux more accurately and moderately, hence the torque and flux ripples were reduced while obtaining fixed switching frequency. To produce the commanding voltage vector, such methods as including deadbeat control, sliding mode control, PI controller, etc. are proposed.

    The space vector modulation technique is more popular than classical technique because of the higher efficiency, lower base band harmonics than regular pulse width modulation (PWM) or other sine based modulation methods and more output voltage can be obtained without distorting waveform[6].

    A three-phase voltage source inverter fed DTC motor drive produces eight switching state , comprising two zero states(0 and 7) and six active states(1-6) to generate the space vector PWM [7] . The direct torque control (DTC) is the main interest of this paper and it will be described in the following sections.


    Using the two-axis notation and the matrix form, the voltage equations can be represented by:


    The arbitrary reference frame rotates with electrical angle velocity of rotor ), therefore, the electrical equation of the squirrel-cage induction motor becomes:


    In order to have fast simulation, the above equation should be represented in state space form with currents as state variables as in the following [8]:

    Now the current equation of an induction motor in the two-axis stator reference frame can be written as [9]:

    The speed r cannot be normally treated as a constant .It can be related to the torques as:



    The block diagram in Fig.2 shows the complete SIMULINK scheme of the described induction machine model:

    Fig. 2. The SIMULINK of the induction machine model


    The structure of the conventional DTC was shown in Fig.1 which consists of two hysteresis comparator, torque and flux estimators, voltage vector selector and voltage source inverter (VSI) [10].

    1. Flux and Torque Estimator

      The three-phase variables are transformed into the d-q axes variables using Clarks transformation as follows:


      The voltage across the stator coil can be expressed as follows [11]:



      The electromagnetic torque equation is


      The term represents the change in stator flux in d and q axis , respectively. Reforming the above equations yields the following formulas




      The estimate of the stator q and d axis flux linkages are an integral of the stator EMF which can be written by solving (3.4) and (3.5) for ) to give the following equations.



      plane is divided into six sectors where each one has a set of voltage vectors. Thick vector indicates the decreasing of the stator flux while the light vector indicates the increment. The reference stator flux and torque values are compared with the estimated values in hysteresis flux and torque controllers. The digitized output signals of the flux (H) and torque (HTe) controllers are as follows:

      The stator flux vector is:

      V4 (011)

      V3 (010)



      According to (14), the stator flux angle is used to divide the electrical revolution into six sectors denoted from Sec1 to Sec6 as shown in Fig.3. These sectors can be distributed as follows:

      V5 60






      V0 (000)

      V7 (111)

      V1 (100)

      V2 (110)

      -30º < s< 30º 30º < s< 90º

      90º < s< 150º

      150º < s< 210º

      210º < s< 270º

      270º < s< 330º

      The developed electric torque is calculated from the

      Fig. 3. Six sectors with different set of voltages

      For For





      estimated flux linkage components and the measured stator currents in the two-axis stationary reference frame.

      For (21)

      For (22)

    2. Torque and Flux Hysteresis Comparator

      The IM stator voltage equation can be written by:


      Where E and ETe are the flux and torque errors, HB and HBTe are the acceptable predefined flux and torque errors and 2HB and 2HBTe are the total hysteresis band width ofthe flux and the torque control [12].


      Where vs ,is, and s are the stator voltage, current and stator flux space vectors, respectively. If the stator resistance is small and can be neglected, the change in' stator flux, will follow the stator voltage; i.e.,


      Therefore, variation of stator flux space vector can be achieved by the application of stator voltage vs for a time interval of t. The stator flux is controllable if a proper selection of the voltage vector is made. In Fig.3, the stator flux

    3. Lookup Table

      The feedback flux and torque are calculated from the machine terminal voltages and currents. The signal computation block also calculates the sector number S(k) in which the flux vector lies. There are six sectors each angle wide. The voltage vector block in Fig.1 receives the input signals H, HTe and S(k) and generates the appropriate control voltage vector for the inverter by a look up table, which is shown in Table I.

      If the stator flux lies in sector k with the motor rotating in counter clockwise, active voltage vector VS,k+l is used to increase both the stator flux and torque. Voltage vector VS,k+2 is selected to increase the torque but decrease the stator flux. The two zero voltage vectors (VS,7 and VS,8) are

      used to reduce the torque and at the same time, freezes the stator flux. Reverse voltage vector VS,k-2 is used to decrease the torque and flux in forward braking mode. Whereas VS,k.1 will reduce the torque and increase the flux.


      Table II shows flux and torque variations due to applied voltage vector in sector 2 (Arrow indicates magnitude and direction) [13].


    4. Three-Phase Voltage Source Inverter

    A voltage source inverter (VSI) is used to convert a fixed DC voltage to three-phase AC voltage . The VSI synthesizes the voltage vectors commanded by the switching table. In DTC, this is quite simple since no pulse width modulation is employed, the output devices stay in the same state during the entire sample period. The connection of power switches in a VSI with three phase windings of an Induction Motor is shown in Fig.4.

    Fig. 4. Schematic of Voltage Source Inverter

    Each leg of the inverter has two switches; one is connected to the high side (+) of the DC link and the other is connected to the low side (-). Only one of the two can be on at any instant. When the high side gate signal is on, the phase is assigned the binary number 1, and assigned the binary number

    0 when the low side gate signal is on. Considering the combinations of status of phases a, b and c, the inverter has eight switching modes (Va Vb Vc=000-111): two are zero voltage vectors V0 (000) and V7 (111) where the motor terminals is short circuited and the others are nonzero voltage vectors V1 to V6 .

    The complete SIMULINK model of conventional DTC scheme is as shown in Fig.5.

    Fig. 5. Complete SIMULINK model of conventional DTC scheme


    A. Classic PI Controller

    A classic Proportional plus Integral (PI) controller is suitable enough to adjust the reference torque value Te*. Nevertheless, its response depends on the gains Kp and Ki, which are responsible for the sensitivity of speed error and for the speed error in steady state. During computer analysis, we use a controller in a discrete system in order to simulate a digital signal processor (DSP) drive system. The SIMULINK model of the PI speed controller is as shown in Fig.6.

    Fig. 6. The SIMULINK model of the PI speed controller

    The SIMULINK model of modified DTC scheme is as shown in Fig.7.

    Fig. 7. SIMULINK model of modified DTC scheme.


    A Field Programmable Gate Array (FPGA) is a silicon device that contains logic. It is constructed of cells called Configurable Logic Block (CBL); each configurable logic block contains more or less a Look Up Table (LUT), a Flip- Flop and a multiplexer. In-between the CBLs, there are interconnections and at the borders input and output cells. An FPGA is normally programmed with a Hardware Description Language (HDL) like VHDL or Verilog. An FPGA can be re- programmable and several tasks can be executed at the same time; in other words, parallel programming can be applied to it.

    1. Hardware in the Loop

      Hardware in the loop (HIL), or FPGA in the loop, is a concept that as revealed by the name uses the hardware in the simulation loop. This leads to easy testing and the possibility to see how the actual plant is behaving in hardware. By having the stimuli in a software on the PC, implementing a part of the loop in hardware and then receiving the response from hardware back in the software, a good indication of the designs performance is given [14].

    2. Implementation of Sector ,Flux and Torque Estimators Using Xilinx Software

      All of the equations modeling the motors behavior are implemented in a two-stage architecture as shown in Figure Fig.8. Several mathematical operations are performed in parallel. At the first stage, stator currents and voltages in coordinates are calculated in parallel, so that those results can be used to estimate the stator flux in the same stage. The resulted currents and flux are used to determine sector number, the flux magnitude and the torque estimation in the second stage [15].

      Fig. 8. Sector number, the flux magnitude ,the torque estimators and Clarks transformation using Xilinx MCode blocks.

    3. Flux and Torque hysteresis Controller

      The Xilinx SIMULINK model of the controller with flux and torque hysteresis comparator is as shown in Fig.9.

      1. (b)

        Fig. 9. (a) Flux hysteresis controller and comparator.(b)Torque hysteresis controller and comparator.

    4. Switching Table Using Xilinx Mcode Block

    A Xilinx SIMULINK model was built to implement the switching process as shown in Fig.10.

    Fig. 10. Look-up table design using Xilinx SIMULINK MCode block.

    The complete model of classical DTC scheme is as shown in Fig.11.

    Fig. 11. The complete model of conventional DTC scheme using Xilinx SIMULINK


    The model of the PI speed controller is designed with using Xilinx SIMULINK as shown in Fig.12.

    Fig.12 : The Xilinx SIMULINK model of the PI speed controller.

    Fig. 12. The Xilinx SIMULINK model of the PI speed controller.

    The SIMULINK model of modified DTC scheme using Xilinx SIMULINK environment is as shown in Fig.13.

    Fig. 13. The SIMULINK model of modified DTC scheme using Xilinx SIMULINK.


    In this section the conventional DTC and PI-DTC simulations are performed. The block diagram shown in Fig.5 and Fig.7 .The parameters of the induction motor used in simulation research are shown in Appendix A. The classic DTC flux variation of the hysteresis band equal to =0.0028 was chosen and for the torque the hysteresis band controller was chosen to be Te=0.65. The graphs shown later depict the response of the conventional DTC system for no load at (0-0.1)sec. , a step change in torque from 18 N.m. to 5 N.m. at (0.1and 0.4 ) sec. ,and 5N.m. at (0.4-0.5)sec.. The speed is dropped by 30.6% from the no load speed when the full load is applied at 0.1 sec .The transient and steady state flux vector in Fig.14(a) shows nearly a circular path indicating a good flux regulation and the estimated stator flux is shown in Fig.14(b).The motor speed response is shown in Fig.15(a).The electromagnetic torque shown in Fig.15(b) is close to the commanded value, while the time taken for the torque reach its commanded value is about 0.0092 sec., ensuring good dynamic torque response. The peak to peak ripple values in the torque response are 3 ,3.1,2.9 at no load,18 N.m ,and 5 N.m, respectivly, with TS_DTC=5 µsec the sampling time for discrete implementtion. The starting torque is equal to 28.9

      1. Fig.16 shows both the stator currents in phase a, b and c , which are nearly sinusoidal , and the waveforms of stator currents in d-q axis. It is noticed that the phase shift between them is equal to 900.

        1. (b)

    Fig. 14. (a) Circular path indicating a good flux regulation, (b) Estimated stator flux

    (a) (b)

    Fig. 15. (a)The motor speed response . (b)The electromagnetic torque .

    Fig. 16. d-q axis stator currents and stator currents.



    The MATLAB/SIMULINK model of the modified DTC was shown in Fig.7.The conventional PI controller is tuned manually by trial and error method. The obtained gains are kp= 2.4 and ki =0.001. This section studies the responses of the speed and torque for DTC with PI controller at different load and speed conditions. Fig.17 shows the speed and torque responses of IM for DTC with PI controller for no load at (0- 0.1)sec., 18 (0.1-0.4)sec., and 5N.m. at (0.4-0.5)sec., at speed equal to 120 rad/sec. Where the speed is dropped by

    7.5 % from the no load speed when the full load is applied at

      1. sec, the speed response is very smooth . The peak to peak ripple values in the torque response are 0.72 N.m. at no load, 0.98N.m. at full load and 0.83 N.m. at medium load, and these valuse are less than those of conventional DTC for the same case. The starting torque is about 30.5 N.m., which is equal to the obtained value of the conventional DTC . Also, the speed response has zero overshoot when compared with that in the conventional DTC which has high overshoot.

        1. (b)

    Fig. 17. (a)Speed response at =120rad/sec. (b) Torque response at =120 rad/sec.


    The DTC schemes, that are presented so far, are designed and simulated using two Xilinx models to examine the different control algorithm. One is used for the conventional DTC and the other is used for the modified DTC. Fig.11 illustrated the conventional DTC using MATLAB/SIMULINK and Xilinx blocks. The graphs in Fig.18 depict the response of the conventional DTC system for no load at (0-0.1)sec., 18 (0.1-0.4)sec., and 5N.m. at (0.4-0.5)sec., at speed equal to158 rad/sec. The speed is dropped by 30.6 % from the no load speed when the full load is applied at 0.1 sec.

    The peak to peak ripple values in the torque response are

      1. ,3.18,2.95 at no load,18 N.m ,and 5 N.m ,respectively. These values are much more less than those for conventional.

        The starting torque is equal to 29.75 N.m

        1. (b)

    Fig. 18. (a)Speed response of IM for conventional DTC.(b) Torque response of IM for conventional DTC.

    Fig. 19. d-q axis stator currents and stator currents.


    Fig.20 shows the speed and torque responses of IM for DTC with PI controller using Xilinx for no load at (0-0.1)sec., 18 (0.1-0.4)sec., and 5N.m. at (0.4-0.5)sec., at speed equal to 120 rad/sec.. The speed is dropped by 8.68% from the no load speed when the full load is applied at 0.1 sec.. The speed response is very smooth . The peak to peak ripple values in the torque response are 1.9 ,1.5,2 at no load,18 N.m

    ,and 5 N.m, respectivly. These values are much more less than

    those for conventional.The starting torque is equal to 31.1

      1. and there is no overshoot.

        1. (b)

    Fig. 20. (a)Speed response at =120 rad/sec. (b)Torque response at =120 rad/sec.


    Figures Fig.11 and Fig.13 showed the models that use the Xilinx blokset for Conventional DTC and PI_DTC. These models can be used for co-simulation. Once the design is verified, a hardware co-simulation block can be generated and then it will be used to program the FPGA. Fig.21 shows the model with the hardware co-simulation block. The bitstream download step is performed using a JTAG cable.

    1. (b)

      Fig. 21. (a)The conventional DTC model with the hardware Co-simulation block (b) The PI_DTC model with the hardware co-simulation block.

      Now the design is ready for Co-Simulation. Click the Start Simulation button in the model window toolbar to start the Co-Simulation. The System Generator will first download the bitstream associated with the block dtcxilinx1515 hwcosim

      ,aaDTCXilinx2014 as shown in Fig.21.

      When the download is complete, System Generators read the inputs from Simulink simulation environment and send them to the design on the board using the JTAG connection. System Generator then reads the output back from JTAG and sends it to Simulink for displayed. After the simulation is completed, the results should be displayed as shown in Fig.22.

    2. (b)

    Fig. 22. (a)Torque response of conventional DTC with Co-Simulation and MATLAB/SIMULINK (b) Torque response of PI_ DTC with Co- Simulation and MATLAB/SIMULINK

    We can verify the results by comparing the simulation output to the expected output as shown in Fig.23 (b).

    Fig. 23. (a) Zoomed Torque response of PI_ DTC with Co-Simulation and MATLAB/SIMULINK (b)Torque response comparison.


    As illustrated in Fig.24, the test instrumentation consists of a computer and Xilinx NEXYS2 Spartan 3E1200 FG320 Kit. The instrumentation computer allows the user to control the kit settings. It also strip charts the voltage and current for each output and maintains a count of discrete pulses, which are connected to error signals from the device under test

    Fig. 24. Experiment Setup and Instrumentation


The PI controller is presented to enhance the response of the speed at different loads. The selection of the PI-controller gains by trial and error is difficult and consumes a long time. Using PI (trial and error) controller shows the improvement in the speed and torque responses in terms of less steady state error, less torque ripple especially at low speeds, zero overshoot at any speed at different load conditions and less speed drop at the full load .

This paper presented an effective way to design, simulate and implement hysteresis and PI (trial and error) controller based DTC utilizing Xilinx FPGAs. All modules in the system have been designed in fully generic VHDL code, which is independent of the FPGA target implementation technology. All calculations in the modules are conducted in twos complement fixed-point arithmetic with appropriate word sizes. The choice of word sizes, the binary format and the sampling time used are very important in order to achieve a good implementation of the estimators. The simulation results of the DTC model in MATLAB/SIMULINK, which performed double-precision calculations, are used as references to digital computations executed in Xilinx FPGA implementation. The Hardware-in-the-loop (HiL) method is used to verify the minimal error between MATLAB/ SIMULINK simulation and the experimental results. The design, which was coded in synthesizable VHDL code for implementation on Xilinx NEXYS2 Spartan 3E1200 FG320 device, has produced very good estimations, giving minimal errors when being compared with MATLAB/Simulink double-precision calculations.


SquirrelCage Induction Motor, 3-phase, 400 volt, 50 Hz,

1.1 KW , No. of pole pairs: 2,Rated speed:1410 rpm, Stator resistance: 9.25 , Rotor resistance : 4.51 , Stator leakage inductance : 306.6 mH, Rotor leakage inductance :306.6 mH, Mutual inductance: 290 mH, Moment of inertia : 0.01 Kg.m2

/sec., DC voltage 220 V.


  1. Vojkan Kostic, Milutin Petronijevic, Nebojsa Mitrovic, Bojan Bankovic , Experimental verification of direct torque control methods for electric drive applicaion , Facta Universitatis Series: Automatic Control and Robotics Vol. 8, NO.1, pp. 111 – 126, 2009.

  2. A. Alwadie,High Performance Predictive Direct Torque Control Of Induction Motor Drives System, A. Alwadie / International Journal of Engineering Research and Applications (IJERA) ,Vol. 2, Issue 6, pp.501-512,November- December 2012.

  3. Sanda Victorinne PATURCA, Aurelian SARCA, Mircea COVRIG A simple method of torque ripple reduction for direct torque control of PWM inverter fed induction machine drives ,Annals of the University of Craiova, Electrical Engineering series, No. 30, 2006.

  4. Sebti Belkacem, Farid Naceri, Rachid Abdessemed ,Reduction of torque ripple in DTC for induction motor using input-output feedback linearization, Serbian Journal of Electrical Engineering,Vol. 8, No. 2, 97-110,May 2011.

  5. Bimal K. Bose, "Modern Power Electronics and AC Drives", Prentice Hall PTR, 2006.

  6. Yongchang Zhang , and Jianguo Zhu , Direct Torque Control of Permanent Magnet Synchronous Motor With Reduced Torque Ripple and Commutation Frequency , IEEE Trans. Power Electron., VOL.26, NO. 1, Jan. 2011.

  7. M. Harsha Vardhan Reddy, V. Jegathesan. Open Loop V/f Control of Induction Motor based on hybrid PWM With reduced torque ripple. Proceedings of ICETECT. 978-1-4244-7926-9/11, 2011 IEEE.

  8. Okoro, O.I., "Dynamic and thermal modeling of induction machine with non-linear effects", Dissertation, University of Kassel, Germany, September 2002.

  9. K. L. SHI, T.F. CHAN, Y. K.WONG and S.L.HO,Modelling and Simulation of three-phase induction motor using simulink , Int. J. Engng Ed.Vol. 19, No. 4, pp. 646±654, 2003.

  10. M.Sunil Kumar ,A.V.Naresh Babu , Implementation of Direct Torque Control based on space vector modulation for induction motor, International Journal of Emerging trends in Engineering and Development , Issue 2, Vol.6 (September 2012).

  11. Vojkan Kostic, Milutin Petronijevic, Nebojsa Mitrovic, Bojan Bankovic , Experimental verification of direct torque control methods for electric drive application , Facta Universitatis Series: Automatic Control and Robotics Vol. 8, NO.1, pp. 111 – 126, 2009.

  12. Obbu Chandra Sekhar ,Dr.Koritala Chandra,Torque ripple reduction in direct Torque control Induction Motor drive using SVM and FLDRC, SEKHAR,RECENT,Vol.14,no.1(37),March,2013.

  13. Prof. V. S. Kamble, Prof. D. S. Bankar, Direct Torque Control of Induction Motor with fuzzy logic for minimization of torque ripple, Proceedings of International Conference on Energy Optimization and Control (ICEOC-20 I 0) December 28 – 30, 2010, Aurangabad, Moharashtra, India .

  14. Ozkan Akin,Irfan Alan, The use of FPGA in field-oriented control of an induction machine, Turk J Elec Eng & Comp Sci, Vol.18, No.6, 2010.

  15. Tole Sutikno, Member, IEEE, Nik Rumzi Nik Idris, Senior Member, IEEE, Auzani Jidin,Member, IEEE,and Marcian N. Cirstea, Senior Member, IEEE, An Improved FPGA Implementation of Direct Torque Control for Induction Machines, IEEE Transaction on Industrial Informatics, VOL. 9, NO. 3, August 2013.

Leave a Reply