Sunteți pe pagina 1din 6

DTC for induction motor implemented with

LabVIEW FPGA for Undergraduate Laboratory


*Luis Ibarra , *Pedro Ponce, *Arturo Molina and **Brian MacCleery
*Tecnológico Monterrey, Campus Ciudad de México, **National Instruments US Austin Texas
ibarra.luis@itesm.mx, pedro.ponce@itesm.mx, armolina@itesm.mx ,

Abstract — This paper shows the implementation of DTC systems are required and the whole experimentation can be
(Direct Torque Control) voltage sensorless, over an induction followed straightforward.
machine by FPGA real time system. LabVIEWTM Graphic
programming, robust digital system and low power electronics In order to drive electric power to the motor an inverter is
make this implementation suitable for academic purposes, quick needed, the current application uses a non-expensive IGBT
tests and demonstrations, achieving a reliable platform for based VSI (Voltage Source Inverter) for low power
improving electric machines teaching. Different platforms are applications, which implies also non-expensive electric
already used in university laboratories for motor speed control of machines up to 240V and 6A.
DC and AC machines, nevertheless, they are hardware-based or
software-restricted and are not improved for easy Although there are many DC motors speed controllers which
comprehension of the students, on the other hand, direct torque can be used for teaching purposes [4] and speed PWM based
control didactic systems are not common in laboratory for controls for AC machines [6], they are mainly hardware
undergraduate students, thus this platform allows students interfaced by simple displays and buttons or includes a PC
understand dynamic controls for induction motors. application which, nevertheless, does not include direct torque
control.
I. INTRODUCTION
II. DEVELOPMENT
Increasing industry needs of torque control in specific
applications using induction motors, make electric machinery, A. DTC Technique
control systems and power electronics courses to be paramount DTC technique implies the calculus of st t ’s f ux d
g gp g s’ u u , g “P w t s d torque based on the information acquired of actual phase
t ”, “E t h d t s” d “I dust currents and voltages; using a vector description of the motor
E t s” undergraduate courses in different universities. driven by a voltage source inverter (VSI), it is possible to
Most of the teaching topics are restricted to close a single decouple st t ’s flux and torque by knowing the effects of
speed loop using factory settings and taking the harshness of each ph s s’ voltage vector over the induction motor, forcing
the control system to be managed by commercial equipment these two variables to track a target settable value. [9]
[2] or in a virtual environment [7] [8], allowing the students to
manipulate few parameters of the controller and restricting
their inquiries and technical proposals.
There is a need of quick interfacing for computer-aided
analyses, a base easy-to-follow program that allows safe
modifications and a compatible platform to facilitate hardware
implementation.
LabVIEWTM graphical programming mimics the theoretical
representation of the control system and presents it as an
organized flow diagram, in this way, students become able to
recognize links or operations between meaningful concepts
(blocks) just by looking at the program. If those links are
understood, cause-effect tests can be driven intuitively
achieving comprehension of the programed technique as well
as the effects of modification of parameters.
Devices programming facilities imply a direct relation between
the block diagram and the program downloaded into the Figure 1 Schematic representation of VSI and induction motor
hardware platform, so no high skills in programming or digital
Based on the schematic shown in Figure 1, the three “pu g” th st t ’s flux vector in the rotation direction will
branches named A, B and C, makes the voltage from the DC increase the torque.
us v t th sp t v t ’s phase, which will
permit a current flow through the associated stator windings. If (4)
the high semiconductor of any branch is closed and the low one
in the same branch is open, a number 1 will be assigned to that
branch; anytime this situation is reversed, a number 0 will be If a counter-clockwise (CCW) rotation is assumed, and the
assigned (e.g. the actual state of Figure 1 can be denoted as st t ’s flux vector is located as shown in figure 3, a
(101) for the states of (ABC)). combination (010) or (011) w “pu ” th f ux v t th
CCW direction, notice that both combinations increase the
In the present situation (101), the applied voltage to A and torque but are not interchangeable since the flux magnitude
C phases are V+ while the one to B phase is V-, assuming the will be increased or decreased respectively.
motor to be a balanced star-connected load, the voltage drop at
B seen from the neutral will be twice in magnitude to the one at
A and C. It is evident there are 8 possible combinations using
the 6 semiconductors which will modify the voltages at each
branch. Each combination generates a three-element voltage
vector (one per phase) which can be mapped to a two-
dimensional space through Park transformation (1), so every
vector can be seen as shown in Figure 2.

(1)

Park transformation can be used for voltages and currents


mapping both magnitudes in a two-dimension space named d-q
plane (or frame). As this representation holds certain spatial
approach to the electric machine, it provides a useful way to
geometrically represent the actual st t ’s flux. Thus the
calculation can be done by (2), notice how it is generated by
the voltage present at the inductive element of each branch
discounting the voltage drop at the stator resistive one. Figure 2 Two-dimension representation of VSI voltage vectors

(2)

Resulting quantities are the components of a single vector


whose magnitude represents flux one, in this way, voltage
vectors described before can directly affect flux magnitude
characteristics.
Torque can be calculated by (3) so its magnitude and
direction are subjected to the phase-shift of the previously
calculated components.
(3)
Notice that the vector representation of voltages is referred
to the d-q plane, and that the flux vector will be rotating over
its orthogonal axis, so the effect of the voltage vectors depends
on the actual position of the flux, e.g. if the flux vector is close
to the graphical combination (100), operating the VSI precisely
with that combination will provoke an increase in the
magnitude of the flux vector. Figure 3 R p s t t f th p t fv t g v t s v st t ’s f ux
On the other hand, mechanical rotation is due to a shift
tw th st t ’s d t ’s f ux s, h g x u As th st t ’s f ux v t s tu g, d ff t v t g
torque value when shifted by 90° as can be addressed by (4), vectors are needed to induce a desired operation. As there are 6
where k represents a constant scalar and S and R are magnetic useful voltage vectors, there could be 6 different sectors
field vectors. Increasing the torque implies the coercion of the distributed among the d-q plane; each sector will occupy 60° in
st t ’s f ux s t g ts s p t df th t ’s . As the following manner: 1st sector (-30° to 30°), 2nd sector (30°
this last vector is supposed to be lagged from the first one, to 90°), 3rd sector (90° to 150°), 4th sector (150° to 210°), 5th
sector (210° to 270°) and 6th sector (270° to 330°) completing Figure 4 Torque tracking by hysteresis bands representation
a whole turn. If the rotor is desired to go backwards (Clockwise CW), the
The voltage vectors can now be chosen so the st t ’s flux desired torque (negative) will become the new upper limit and
and torque characteristics can be modified depending on the the limit band will be the new lower one, so the process
position of the flux vector as shown in Table 1 where ↑ means described will be the same but following a negative ( ↓ )
increase,↓ decrease and -, hold (positive torque is assumed to reference.
be CCW).
T*
S1 S2 S3 S4 S5 S6 -
Table VSI I.M.

↑T (110) (010) (011) (001) (101) (100) |Ψ|*


↑ -
-T (000) (111) (000) (111) (000) (111)
F Volt
↓T (101) (100) (110) (010) (011) (001) ∟Ψ
↑T (010) (011) (001) (101) (100) (110)
3φ/2φ
↓ |Ψ|
-T (111) (000) (111) (000) (111) (000) Curr
F
↓T (001) (101) (100) (110) (010) (011) X ∫
- -
Table 1 Voltage vectors depending on required operation X ∫ -
It is easy to follow from Table 1 that the tracking of the R1 R1
desired values for flux and torque will be achieved by
triggering the voltage vectors when the calculated flux and 3φ/2φ
torque values get out from a tolerance band, e.g. ,
implies a reduction need in torque magnitude, where T is the
Figure 5 DTC as a block diagram
actual value, is the desired one and is the tolerance band
size. Notice there is a double band for torque as it can goes B. Implementation
positive or negative as shown in figure 4 where the circles and A fast digital system is mandatory for control applications
crosses represent the moment in which the system sends a [5] which implies the use of VSIs to manage voltages applied
“h d” t “ s ” sp t v y. to the motor; simultaneous ADC acquisition, parallel
Looking closely to “–T” rows, another approach is useful to arithmetic processing and dead time management are some of
understand double-band and torque tracking: Imagine the the issues related with computing times and justify the use of
motor is starting CCW and a mechanical load of a specified FPGAs (Field Programmable Gate Arrays).
v u s tt h d t t ’s sh ft; s th st t ’s flux goes A programming platform, which can easily communicate
through each sector, torque value would be below the desired with a target FPGA and can program it in an evident graphical
one so torque increasing combinations will be chosen from the way, is preferred considering academic purposes. Data post-
table until the calculated value overcome the limit band, this processing and plotting capabilities are also required so
means the motor has reached the set value so no more energy LabVIEWTM becomes an adequate solution. VHDL (VHSIC
injection is needed, that is why only (000) and (111) vectors Hardware Description Language) programming methods are
are sent so no more power is delivered to the motor. These not often covered in electric and control systems engineering
combinations will decrease the delivered power to the motor, curricula, besides, it is not an easy job to manage an efficient
reducing the torque and degenerating the st t ’s f ux, h , communication channel with a host PC, and no analogies can
torque calculated value would decrease until it gets lower than rise with descriptive DTC block diagrams.
the target value. At this point, increasing combinations will be
sent again, power will be delivered to the motor and The hardware platform used is composed by a sbRIO-9606
consequently, torque will increase. a RIO mezzanine card 9683 and an evaluation inverter board
STEVAL-IHM027V1, additional current sensors where used to
provide better performance than those included in the inverter
board. A block diagram of the described system is shown in
Figure 7 including the motor and the host PC.
sbRIO system allows the addition of further modules in
order to accomplish speed control loops, signal conditioners,
DMA channels for fast communication of data, etc. As said
before, graphical environment reduces the time spent on
finding errors and proposing solutions because it is quite
similar to the theoretical block, unlikely to plain text-code [6]
organization of the DTC technique as shown in Figure 6.
Figure 6 DTC program in LabVIEWTM FPGA

The whole DTC program is contained in one timed while


loop, which will acquire a current sample each time the cycle is
run. It is possible to find short-circuit faults from the VSI if
both semiconductors in the same branch are triggered-on at the
same time, besides this problem can be solved by basic logic
processing, the semiconductors used in power inverters
(commonly IGBTs) has asymmetric rising and falling delay
times, being the falling one the biggest. This means from a
practical perspective, to switch from (101) to (001) implies
opening the high A semiconductor and closing the low A one
after the first device has totally opened. The time gap between
these two instants is called dead time and must be warranted to
avoid failures in VSI operation. To solve this problem, a
software interlock protection (IP) has being programmed and
added to the DTC program (figure 9). Figure 9 Software interlock protection

sbRIO-9606 The Interlock protection program avoids any combination


IHM027V1 (XXX) to provoke a dead time violation, letting the user to
RMC - 9683 modify the program without risks of damaging the power
electronics module, so the didactic approach is enriched. For
the suggested platform a 1µs gap is set, different power
Current modules would need a different time to ensure fault avoidance.
Sensors Users can safely modify the program as they preserve the
combinations transmission path through the registers called
Branch A, Branch B, and Branch C and adjust the dead time to
satisfy specific required operation parameters.
The DTC technique programming itself is visually divided
with colors, in this way, the purpose of the operative blocks is
Figure 7 Block diagram of used system established even from its appearance:
 Pink: Built-in LabVIEWTM blocks (Ports,
memories, operators, registers, etc)
 Gray: Fixed-point inputs to the system
 Red ribbon: Mathematical processing
 Green ribbon: DTC technique blocks
Those blocks are used to program the DTC technique and
they are briefly explained below, dividing them between pure
mathematical processing and DTC operations. Mathematical
processing refers to signal processing; hysteresis bands and
transformations while DTC operations are those of flux and
Figure 8 Actual used system (without the PC) torque estimation.
Mathematical processing blocks (every block has its figure, will operate with the values measured and calculated in one
a brief description and its equivalent in figure 5): instant for a certain amount of time after acquiring new fresh
data.
The following blocks have an explanation and the equation
that is programmed When a combination is sent to the interlock protection
through the registers, there are certain issues which can be
Signal conditioner to assumed about system operation like its DC bus is ripple
compensate current reduced, power modules are sound and the dead time is shorter
● sensors undesired - th th ADC qu s t t , s th u t v u “s ”
signal characteristics the system is actually due to the voltage change generated for
and scale them. the executed combination chosen in the last cycle. This means
that if previous assumptions are true, a constant step value will
Park transformation 3φ/2φ be nearly as good as the actual measured voltage.
● (equation 1)
The chosen combination is sent as feedback to the green-
k d “VOLT” f (T ) wh h
Hysteresis double- keeps the combination values as those in Table 1, so the
● band limiter voltage values which are Park transformed and used to
calculate flux and torque in the next cycle are not measured but
Hysteresis single- “p d t d”
● band limiter D. PC interface
As the induction motor is running, data can be obtained
directly from the sbRIO and presented in a graphical way, as
DTC technique (every block has its figure, a brief well as operation parameters and inputs can be changed
description and its equivalent in figure 5): through screen numeric controls like those shown in Figure 10,
like in [7].
This block ∫
calculates both flux -
components from ∫ -
● voltages and
R1 R1
currents values Figure 10 Screen numeric controls
(equation 2)
Data can be taken from the system and post-processed at
This block -
X host PC so signal treatment is done for taking advantage of PC
calculates the torque
X LabVIEWTM solutions which would decrease performance if
based in calculated driven at target sbRIO, an example of a low-pass filtered
● torque calculated signal is shown in Figure 11.
flux and acquired
current (equation 3)
This block
calculates the sector
● where the flux ∟Ψ
vector is based on its
components
This block provides
estimated voltages
● from the VSI -
triggering
information

Using only these previous 8 blocks, the full DTC technique


description is complete and the theoretical explanation can fit Figure 11 Filtered torque signal tracking a stepped reference
with the program.
C. Stator voltage estimation Signal tracking in Figure 11 shows the correct
implementation of DTC technique and those target values are
The discrete nature of the DTC technique program directly written by the user at the numeric controls, so a direct
execution implies a time delay between a sampling-processing- perspective of DTC performance can be taken from the
actuating sequence and the next one. This means the program students unlike didactic closed-box systems.
Modifying the st t ’s flux estimation and using a low-pass The didactic approach given by graphic programming style
filter instead of an integral gives a good result [9], so DTC and the PC-FPGA cross-platform solution shown are very
improves the speed estimation capability and robustness, and useful tools for learning. Direct Torque Control can be added
the stator resistor parameter does not affect drastically the to the assessments to be developed during an undergraduate
complete stator flux estimation that is proposed. The laboratory course as its requirements can be covered by the
experimental results prove the system has good control platform.
performance. Hence, students can learn the effects of this kind
of flux estimation. Non-optimal operations can also being
studied and results analyzed when the wrong cut-frequency is REFERENCES
chosen and applied to the low-pass filter as it is shown in
Figure 12.
[1] Montesinos, D.; Galceran, S.; Sudria, A.; Gomis, O., "A
laboratory test bed for PM brushless motor control,"
Power Electronics and Applications, 2005 European
Conference on , vol., no., pp.6 pp.,P.6, 0-0 0
[2] Yang Geng; Huang Lipei; Xu Dehong; Zhou Honglin,
"States on education of power electronics and electrical
drive in China's university," Power Electronics
Conference (IPEC), 2010 International , vol., no.,
pp.1101,1104, 21-24 June 2010
[3] Kiing-Ing Wong; Silek, K.A., "Integration of brushless
DC motor drive into undergraduate electric machinery
courses," E-Learning in Industrial Electronics, 2009.
ICELIE '09. 3rd IEEE International Conference on , vol.,
no., pp.69,73, 3-5 Nov. 2009
[4] Nehrir, M.H.; Odermann, A.J.; Bowen, B.D., "A
microcomputer-microprocessor-based DC motor speed
controller for undergraduate electric machinery
laboratory," Education, IEEE Transactions on , vol.33,
no.4, pp.341,345, Nov 1990
[5] Chi-Kwong Luk, P.; El Khamlichi, K.D., "An innovative
DSP-based teaching module for electrical machine
drives," Education, IEEE Transactions on , vol.39, no.2,
pp.158,164, May 1996
[6] Rodriguez-Resendiz, J.; Herrera-Ruiz, G.; Rivas-Araiza,
E.A., "Adjustable Speed Drive Project for Teaching a
Servo Systems Course Laboratory," Education, IEEE
Transactions on , vol.54, no.4, pp.657,666, Nov. 2011
[7] Luk, P. C K; Khamlichi, K.D.E., "A low cost PC-based
user interactive induction motor drive system," Industrial
Electronics, Control, and Instrumentation, 1996.,
Figure 12 Non optimal calculation of flux during a test Proceedings of the 1996 IEEE IECON 22nd International
Conference on , vol.2, no., pp.952,956 vol.2, 5-10 Aug
III. CONCLUSIONS 1996
DTC technique is properly implemented by LabVIEWTM [8] Sziebig, G.; Nagy, I.; Jardan, R.K.; Korondi, P.,
FPGA program and deployed to the sbRIO-9606 as a control "Integrated multimedia educational program of a DC
unit, connected to the power VSI module, which drives an servo system for distant learning," Power Electronics and
induction motor. Motion Control Conference, 2008. EPE-PEMC 2008.
13th , vol., no., pp.2360,2367, 1-3 Sept. 2008
Although conventional DTC uses voltage sensors as part of
the stator flux estimation, the proposed basic topology does not [9] Takahashi, I.; Noguchi, T., "A New Quick-Response and
need the voltage sensor for estimating the stator flux. The High-Efficiency Control Strategy of an Induction Motor,"
current sensors are required in order to correctly calculate the Industry Applications, IEEE Transactions on , vol.IA-22,
stator flux and torque. The voltage vectors calculated into the no.5, pp.820,827, Sept. 1986
FPGA are sent to the VSI.

S-ar putea să vă placă și