You are on page 1of 158

Kurdistan Regional Government

Ministry of Higher Education and Scientific Research


University of Sulaimani
College of Engineering

Design and Implementation of FPGA Based Vector


Controlled of a Three Phase Induction Motor

A Thesis Submitted to the Council of College of Engineering-University


of Sulaimani as a Partial Fulfillment of the Requirements for the Degree
of Master of Science in Electrical Engineering/Power and Machine

By

Adil Omar Ahmad

Supervised by

Dr. Alaa Muheddin Abdulrahman

Lecturer

October - 2019 Galarezan - 2719 Safar - 1441


Linguistic Evaluation Certificate

This is to certify that I, Soma Nawzad Abubakr, have proofread this M.A. thesis
entitled “Design and Implementation of FPGA Based Vector Controlled of a
Three Phase Induction Motor” written by Adil Omar Ahmad. After marking and
correcting the mistakes, the thesis was handed again to the writer to make the
corrections in this last copy.

Proofreader

Soma Nawzad Abubakr

Date: 21 / 7 / 2019

Department of English, College of Languages, University of Sulaimani.


Supervisor’ Certification

I certify that the preparation of this thesis entitled “Design and Implementation of
FPGA Based Vector Controlled of a Three Phase Induction Motor” has been
prepared by Adil Omer Ahmad under my supervision at the Electrical Engineering
Department of the College of Engineering in the University of Sulaimani as a partial
requirement for the degree of Master of Science in Electrical Engineering (Power
and Machines).

Signature:

Name: Dr. Alla M.Abdulrahman

Date: 23 / 11 /2019

(Member)

In view of the available recommendation, I forward this thesis for debate by the
Examining Committee.

Signature:

Name: Assist. Prof. Dr. Amjad Muhammed Ali

Date: / / 2019

Head of Post graduate Studies Committee.


Examining Committee Certification

We certify that we have read this thesis entitled “Design and Implementation of
FPGA Based Vector Controlled of a Three Phase Induction Motor” prepared by
Adil Omer Ahmad and as examining committee, examined the student in its
content and in what is connected with it, and in our opinion it meets the requirements
to award the degree of Master of Science in Electrical Engineering (Power and
Machines).

Signature: Signature:

Name: Assist. Prof. Dr. Asso R. Majeed Name: Assist. Prof. Mr.Mohamed A.Hussain

Date: 21 / 11 /2019 Date: 21 / 11 /2019

(Member) (Member)

Signature: Signature

Name: Dr. Alla M.Abdulrahman Name: Prof. Dr.Muhammed A.Ibrahim

Date: 23 / 11 /2019 Date: 21 / 11 /2019

(Member and Supervisor) (Chairman)

Signature:

Name: Assist. Prof. Dr. Serwan Kh. Rafiq

Date: / /2019

The Dean of the College of Engineering.


Dedication

My thesis dedicated to:

My dear parents

My supervisor

My college of engineering
Acknowledgements
Firstly, I have to send my deepest gratitude to the most merciful and graceful
God (Allah), who has given me unaccountable rewards and this dissertation is one
of them.
I would like to express sincere appreciation to my supervisor, Dr. Alaa
Muheddin Abdulrahman at University of Sulaimani, who gave me information to
accomplish this dissertation.
Immense gratitude is due to all my family members especially my mother
who helped me at all the phases of my life.
Finally, but by no means least, special thanks to my best teachers and friends
who positively supported me in completing this dissertation.
i

Abstract

Design and Implementation of FPGA Based Vector Controlled of a


Three Phase Induction Motor
By: Eng. Adil Omar Ahmad “, Adil.omar89@gmail.com
Supervisor: Dr. Alaa Muheddin Abdulrahman”, alaa.abdulrahman@univsul.edu.iq

Abstract
Three phase induction motors are the most essential machines for high power
applications where high efficiency, high reliability and robust construction are
required. Controlling the speed of the induction motor is one of the most important
targets for most of the applications. However, in medium and high-power
applications, to control the speed of the induction machine, the current must be
controlled instantaneously to prevent the motor from damage during the transient
condition while the motor start up or the sudden changes of the load. Therefore,
vector control approach is recently used to control the speed of three phase induction
machines. In this method, the currents and the voltages are controlled
instantaneously to keep speed of the motor constant and provide the safe operations.

This Study is looking at applying vector control practically on three phase


induction motor. At first, available three phase induction motor at the university of
Sulaimani electrical engineering department laboratory is modelled. Then, current,
flux, voltage and speed controls is designed, and they are validated using Matlab
Simulink. After that, vector control is validated practically, where the speed and
currents is measured using sensors. The measured data are converted to digital by
using analogue to digital converter. Then, the measured digital data are fed to FPGA.
All discretized control equations for current, flux and speed are applied in FPGA
and based on the input data, the controls have provided required switching signals
for three-phase inverter. Three-phase inverter is used to produce required three
phase AC voltages for the induction motor. Optocoupler and gate drivers are
required between inverter switches and FPGA to provide isolation and decouple
control signals from power signals.

Keywords: Vector Control, Three Phase Induction Motor, Modeling, Matlab, Open
Loop Vector Control, Closed Loop Vector Control, PI Controller, FPGA .
ii

List of Notation and Abbreviations:


Vds Direct voltage

Vqs Quadrature voltage

J Moment of Inertia
Wr Rated Speed

V.ph Phase Voltage


I.ph Phase Current

ls Stator leakage inductance


lr Rotor leakage inductance

Lm, L0 Magnetization inductance

Xm Magnetization reactance
Ls Stator Self Inductance

Lr Rotor Self Inductance

𝜎 Leakage Factor

𝝉𝒔 Stator time Constant

𝝉𝒓 Rotor Time Constant

Ψ𝑟d Direct Rotor flux

Ψ𝑟q Quadrature Rotor flux


Imrd Magnetization Current

Ea Back Induced Emf


Ia Armature DC Current
Ra Armature Dc Resistance

Va Armature DC voltage
D Friction Coefficient

Wn Natural Frequency
VLL Line to line Voltage

Damping factor
Kp Proportional Gain Factor

Ki Integration Gain Factor


iii

ADC Analogue to Digital Converter


PCB Printed Circuit Board

FPGA Field Programmable Gate Array


Eag Air gap Voltage

F Frequency
Rc Core Resistance

Rr Rotor Resistance

Rs Stator Resistance
S Sleep

Xls Stator Leakage Reactance


Xlr Rotor Leakage Reactance

Pm Mechanical Power
Pin Input Power

Te Electrical Torque

Tm Mechanical Torque
Ws Synchronous Speed

Isd Direct Current


Isq Quadrature Current

PWM Pulse Width Modulation


VFD Variable Frequency Drive

VVVF Variable Voltage Variable Frequency

IGBT Insulated Gate Bipolar Transistor


MSPS Million Sample per Second
iv

Table of Contents
Abstract ......................................................................Error! Bookmark not defined.i
List of Notation and Abbreviation .......................................................................... ii
Chapter 1- Introduction and Background .............................................................. 1
1.1 Overview ........................................................................................................... 1
1.2. Literature Review ............................................................................................ 2
1.3 Aims and Objectives: ........................................................................................ 4
1.4 Problem Statement ............................................................................................ 4
1.5 Thesis Structure ................................................................................................ 5
Chapter 2- Speed Control of Induction Motor........................................................ 7
2.1Speed Control of Induction Motor and Equivalent Circuit. .............................. 7
2.1.1 Variable-Frequency Drive. ......................................................................... 9
2.1.2Pulse-Width Modulation (PWM). .............................................................. 13
Chapter 3- Theory behind Working of Three phase Induction Motors and
Modeling ................................................................................................................. 18
3.1 Dynamic Model of Three Phase Induction Motor .......................................... 18
3.1.1 Dynamic Model of the Induction Motor in Stationary Reference Frame. 18
3.1.2 Dynamic Model of the Induction Motor in Synchronously Rotating
Reference Frame................................................................................................ 19
3.1.3 Determination of Motor Parameters ........................................................ 20
3.2- Motor Performance DOL .............................................................................. 27
3.2.1 Induction Motor Model Description: ..................................................... 29
3.2.2 Effect of Moment of Inertia on Induction Motor .................................. 31
3.2.3 Induction Motor Behavior at Different Load Torque with J= 0.0026 kg.m2
........................................................................................................................... 34
3.2.4 Effect of Friction Coefficient on Motor Performance: ............................. 39
3.3. Controller Design .......................................................................................... 42
3.3.1 d-q Current Loop PI Controller ............................................................... 42
3.3.2 Flux Loop PI Controller ........................................................................... 44
3.3.3 Speed Loop PI Controller ......................................................................... 46
3.3.4. State Space Model with Controllability and Observability. .................... 48
3.4 Examine Simulations of Vector Controlled IM. ............................................. 55
3.4.1 Examine Current Loop Controller ....................................................... 55
3.4.2 Examine Speed Loop Controller............................................................... 66
3.5 Effect of Rotor Time Constant Variation and Field Weakening. ................... 75
3.5.1 Rotor Time Constant Variation ................................................................ 75
3.5.2 Field Weakening Design ........................................................................... 83
3.5.3 Rotor Time Constant Design .................................................................... 87
Chapter 4- Implementation of Vector Control on a Three Phase Induction
Motor Using FPGA .............................................................................................. 966
v

4.1 Sensor Board Design ................................................................................ 966


4.1.1 Isolated Dc to Dc Converter. .................................................................. 977
4.1.2 Speed Sensor and Current Transducer ................................................... 977
4.1.3. 16-Bits Analogue to Digital Converter (ADC) .................................... 1000
4.2 Design, Examine and Discretize Implemented PI Compensator in FPGA 1077
4.3 VHDL Code Explanation .......................................................................... 10808
4.3.1 Open Loop Code Explanation ............................................................ 10909
4.3.2. Closed Loop Code Explanation ........................................................... 1155
4.4 Experimental Setup ................................................................................... 11919
4.4.1 Hardware Implementation of the Induction Motor Control (Open Loop)
..................................................................................................................... 11919
4.4.2 Sensor Board Implementation ............................................................ 12222
4.4.3 Closed Loop Hardware Setup............................................................. 12323
Conclusion ........................................................................................................ 12525
Refernces: ............................................................................................................. 126

List of Figures
Figure2.1: Equivalent Circuit of the Induction Motor.............................................. 7
Figure2.2: Torque-Speed Curve for Variable Voltage. ............................................ 9
Figure2.3: Type of Variable Frequency Drive........................................................ 10
Figure2.4 : Clarke Transformation ......................................................................... 12
Figure2.5: Park Transformation ............................................................................. 12
Figure2.6:Inverse Park Transformation ................................................................. 12
Figure2.7: Inverse Clarke Transformation ............................................................. 12
Figure2.8: VFD is Made Up of 3 Main Parts ......................................................... 14
Figure2.9: PWM Signal Generation ....................................................................... 15
Figure2.10: Schematic of Output IGBT Stage of a VFD ........................................ 15
Figure2.11: PWM Representation with Longer “ON”time .................................... 16
Figure2.12: PWM Representation with Shorter “ON” time ................................. 16
Figure2.13: Different PWM Waveforms Results in Different Output Frequencies 17

Figure3.1: d-q representation of the Induction Motor............................................ 18


Figure3.2: d-q equivalent circuit of Induction Motor in Stationary Reference Frame
................................................................................................................................. 18
Figure3.3: d-q equivalent circuit of Induction Motor in synchronously rotating
reference frame........................................................................................................ 19
Figure3.4: Prophase equivalent circuit ................................................................ 22
Figure3.5: Circuit diagram and phasor diagram ................................................... 22
Figure3.6: Equivalent Circuit at starting (notes) ................................................... 23
Figure3.7 : circuit diagram of dc shunt motor........................................................ 25
Figure3.8: calculation of friction coefficient factor ............................................... 27
Figure3. 9: Direct on Line Model ........................................................................... 28
vi

Figure3.10: Conversion Block Diagram ................................................................. 29


Figure3.11: Peak and RMS Stator Current at TL=0 and J=0.0026kg.m2 ............. 31
Figure3. 12: Peak and RMS Stator Flux at TL=0 and J=0.0026kg.m2 .................. 31
Figure3.13: Peak and RMS Rotor Flux at TL=0 and J= 0.0026kg.m2................... 32
Figure3.14: Speed and torque VS time at TL=0 and J=0.0026kg.m2 .................... 32
Figure3.15: Peak and RMS Stator Current at TL=0 and J=1kg.m2....................... 32
Figure3.16: Peak and RMS Stator Flux at TL=0 and J=1kg.m2 ............................ 33
Figure3.17: Peak and RMS Rotor Flux at TL=0 and J=1kg.m2............................. 33
Figure3.18: Speed and torque VS time at TL=0 and J=1kg.m2 ............................. 33
Figure3.19: Peak and RMS Stator Current at TL=5Nm and J=0.0026kg.m2 ........ 34
Figure3.20: Peak and RMS Stator Flux at TL=5Nm and J=0.0026kg.m2 ............. 35
Figure3.21: Peak and RMS Rotor Flux at TL=5Nm and J=0.0026kg.m2 .............. 35
Figure3.22: Speed and torque VS time at TL=5Nm and J=0.0026kg.m2 ............... 35
Figure3.23: Peak and RMS Stator Current at TL=10.1Nm and J=0.0026kg.m2 ... 36
Figure3.24: Peak and RMS Stator Flux at TL=10.1Nm and J=0.0026kg.m2 ........ 37
Figure3.25: Peak and RMS Rotor Flux at TL=10.1Nm and J=0.0026kg.m2 ......... 37
Figure3.26: Speed and torque VS time at TL=10.1Nm and J=0.0026kg.m2 .......... 37
Figure3.27: Peak and RMS Stator Current at TL=20Nm and J=0.0026kg.m2 ...... 38
Figure3.28: Peak and RMS Stator Flux at TL=20Nm and J=0.0026kg.m2 ........... 38
Figure3.29: Peak and RMS Rotor Flux at TL=20Nm and J=0.0026kg.m2 ............ 39
Figure3.30: Speed and torque VS time at TL=20Nm and J=0.0026kg.m2 ............. 39
Figure3.31: Rotor Voltage and Current at TL=10NM ........................................... 40
Figure3.32: Power factor with TL=0, 5, 10 NM ..................................................... 40
Figure3.33: Efficiency with TL=0, 5,10NM ............................................................ 40
Figure3.34: Angle between volt and current at TL=0 NM ...................................... 41
Figure3.35: Angle between volt and current at TL=10 ........................................... 41
Figure3.36: Effect of Friction coefficient on motor performance ......................... 41
Figure3.37: PI Controller Block diagram .............................................................. 42
Figure3.38: pi controller for dq Current loop ........................................................ 44
Figure3.39: Closed loop dq Current Response ....................................................... 44
Figure3.40: flux closed loop diagram ..................................................................... 45
Figure3.41: Flux closed loop response ................................................................... 46
Figure3.42: speed closed loop ................................................................................ 48
Figure3.43: speed closed Response ........................................................................ 48
Figure3.44: dq current closed loop controller........................................................ 50
Figure3.45: Flux closed loop controller ................................................................. 52
Figure3.46: Speed closed loop controller ............................................................... 53
Figure3.47: Torque speed subsystem ...................................................................... 56
Figure3.48: current Loop Model............................................................................. 56
Figure3.49: Isdq and Fluxdq responses .................................................................. 57
Figure3.50: speed and Torque response at no Load .............................................. 58
Figure3.51: speed and Torque Response at full load ............................................. 58
Figure3.52: Isdq and Ψrdq responses ..................................................................... 59
Figure3.53: Speed and Torque response ................................................................ 59
Figure3.54: Speed and Torque response (rated load applied at 0.9 second)......... 60
vii

Figure3.55: Isdq and Ψrdq responses ..................................................................... 60


Figure3.56: Speed and Torque at no load and full load (load applied after 1sec) 61
Figure3.57: Speed and Torque at full load (load applied at zero) ......................... 61
Figure3.58: Speed Acceleration (No load) ............................................................. 62
Figure3.59: Speed acceleration load applied at 1 second ...................................... 62
Figure3.60: Lamda subsystem shows (We) in it ..................................................... 63
Figure3.61: Current Loop Model with Compensation term ................................... 64
Figure3.62: Isdq responses with and without Voltage Compensation ................... 64
Figure3.63: Isdq and Speed Torque responses with and without Voltage
Compensation .......................................................................................................... 65
Figure3.64: Speed controller with Anti-windup integrator .................................... 67
Figure3.65: Speed Loop Control............................................................................. 67
Figure3.66: Rotor Flux ........................................................................................... 68
Figure3.67: dq-Current ........................................................................................... 68
Figure3.68: Speed and Torque response ................................................................ 69
Figure3.69: Required Phase voltage applied to motor at full load ........................ 69
Figure3.70: dq Current ........................................................................................... 70
Figure3.71: Rotor Flux, Speed and Torque Responses .......................................... 71
Figure3.72:Dq_ Current response in different simulation time ............................. 72
Figure3.73: Rotor Flux, Speed and Torque Responses .......................................... 72
Figure3.74: Current response ................................................................................. 73
Figure3.75: Rotor Flux, Speed and Torque Responses .......................................... 74
Figure3.76: Controller think ................................................................................... 75
Figure3. 77: Current response at different Tr and at applied torque = 10 Nm ..... 77
Figure3. 78: Flux response at different Tr and at applied torque = 10 Nm........... 77
Figure3.79: Speed and Torque response at different Tr and at applied torque = 10
Nm............................................................................................................................ 78
Figure3.80: RMS Applied Voltage response at applied torque = 7.8 Nm .............. 78
Figure3.81: Current and Rotor Flux response at applied torque = 7.8 Nm .......... 79
Figure3.82: Speed and Torque Response at TL=7.8N.m........................................ 79
Figure3.83: RMS Applied Voltage response at applied torque = 10 Nm ............... 80
Figure3.84: dq-Current and dq-Rotor flux at TL=10 Nm ...................................... 79
Figure3.85: Speed and Torque responses at Tr = 0.06 second and TL=10 Nm .... 81
Figure3.86: Speed and torque at different Tr and TL=11.5Nm ............................. 81
Figure3.87: dq current at different Tr and TL=11.5 Nm ........................................ 82
Figure3.88: dq Rotor flux at different Tr and TL=11.5 Nm ................................... 82
Figure3.89: Field weakening curve ........................................................................ 84
Figure3.90: Field weakening Subsystem model ...................................................... 84
Figure3.91: Overall Model including Field Weakening ......................................... 85
Figure3.92: dq Current Responses (starting current is too high 7.1 times rated and
to observe rated it is cut) ......................................................................................... 85
Figure3.93: dq Flux Responses ............................................................................... 86
Figure3.94: Speed and torque Responses ............................................................... 86
Figure3.95: Applied Voltage responses (TL=80 Nm is applied at t=2 s) .............. 87
Figure3.96: Stator Flux Responses (TL= 80 Nm is applied at t=2 s ..................... 87
viii

Figure3.97: Equation F Subsystem ......................................................................... 89


Figure3.98: Equation F* Subsystem ....................................................................... 90
Figure3.99: Sign block subsystem ........................................................................... 89
Figure3.100: Comparison block between Wsl and Epsilon Constant .................... 91
Figure3.101: Lamda Subsystem including Tr and Wsl ........................................... 92
Figure3.102: Final Model contains (Reactive power Method for Tr design (F,F*,
Sgn and Comparator ............................................................................................... 92
Figure3.103: Rotor Time Constant with Reactive power method at TL=10N.m and
Wr=1500rpm ........................................................................................................... 93
Figure3.104: Error with small limit of Y-axis......................................................... 93
Figure3.105: dq-Rotor flux, Speed and Torque Responses .................................... 94
Figure3.106: Rotor time constant at TL=0.2 Nm ................................................... 95

Figure4.1: block diagram of sensor board ............................................................. 97


Figure4.2: Schematic diagram of DC to DC converter .......................................... 97
Figure4.3: Circuit diagram of Current Transducer with ADC .............................. 98
Figure4.4: Circuit diagram of Speed sensor ........................................................... 99
Figure4.5: incremental rotary encoder pulses ........................................................ 99
Figure4.6: Schematic configuration of the ADC .................................................. 100
Figure4.7: Transfer characteristic of ADC........................................................... 101
Figure4.8: CONVST Timing—Reading After a Conversion ................................. 101
Figure4.9: AD7606 Serial Interface with Two DOUT Lines ................................ 102
Figure4.10: Serial Read Operation (Channel 1) .................................................. 103
Figure4.11: CS(yellow) vs Busy(blue) in micro second........................................ 103
Figure4.12: Cs(yellow) vs Busy(blue) .................................................................. 103
Figure4.13: Cs(yellow) vs busy(blue)in different time ......................................... 103
Figure4.14: Cs(yellow) VS data(blue) .................................................................. 103
Figure4.15: Sclk (yellow) vs data (blue) ............................................................... 104
Figure4.16: +10vdc=32767 in decimal ................................................................ 104
Figure4.17:+7.5volt=25262 in decimal................................................................ 104
Figure4.18:+5volt=16800 in decimal................................................................... 104
Figure4.19: +2.5volt=8250 .................................................................................. 104
Figure4.20: Sensor board PCB layout .................................................................. 106
Figure4.21: Overall structure of the VHDL file ................................................... 109
Figure4.22: Open loop flow chart PWM signal generation ................................ 111
Figure4.23: two 20 KHz PWM 120 degree ........................................................... 112
Figure4.24: two 20 KHz PWM 240 degree ........................................................... 112
Figure4.25: Speed and current sensor data .......................................................... 113
Figure4.26: PWM signal generation from FPGA................................................. 114
Figure4.27: Process of PWM signal generation from sine and triangular
comparison ............................................................................................................ 114
Figure4.28: PI controller inside FPGA ................................................................ 118
Figure4.29: three phase inverter with Gate driver circuit ................................... 119
Figure4.30: effect of capacitor on the output signal ............................................. 119
Figure4.31: Three phase inverters in Matlab Simulink ........................................ 120
ix

Figure4.32: Matlab Simulink result test when PWM signal coming from comparing
Sine and triangular wave. ..................................................................................... 121
Figure4.33: Practical result test when PWM signal coming from comparing Sine
and triangular wave. ............................................................................................. 121
Figure4.34: Matlab Simulink and Practical result test when 20 KHz PWM signal
applied. .................................................................................................................. 122
Figure4.35: Sensor boar hardware ....................................................................... 123
Figure4.36: Experimental setup ............................................................................ 124

List of Tables
Table3.1: Motor Parameters ................................................................................... 20
Table3.2: Practical Data were Recorded: .............................................................. 26
Table3.3: Squirrel-Cage Induction Motor Parameters .......................................... 27
Table3.4: Current Loop Specifications ................................................................... 42
Table3.5: Flux Loop Specifications ........................................................................ 44
Table3.6: Speed Loop Specifications ...................................................................... 46
Table3.7: Lookup Table Values............................................................................... 67
Table3.8: Field Weakening Lookup Table .............................................................. 83

table4.1: Recommended Connection of Current Transducer ................................. 98


table4.2: Current Sensor with ADC Result. .......................................................... 105
Chapter One

Introduction and Background


Chapter 1 1 Introduction and Background

Chapter 1- Introduction and Background


1.1 Overview
Most electric motors work through the interaction between the
motor's magnetic field and electric current in a wire winding to produce force in the
form of rotation of a shaft. Electric motors can be powered by direct current (DC)
sources, such as from batteries, motor vehicles or rectifiers, or by alternating current
(AC) sources, such as a power grid, inverters or generators. General-purpose motors
with standard dimensions and characteristics deliver convenient mechanical power
for industrial use. The largest electric motors are used for ship propulsion, pipeline
compression and pumped-storage applications with ratings reaching 100 megawatts.
Electric motors are found in industrial fans, blowers and pumps, machine tools,
household appliances, power tools and disk drives [1] .
Three phase induction motors are generally used in industrial use for many
purposes due to robust construction, reliability and high efficiency when controlled.
In general, two methods are used to start up induction motors and they are Direct on
Line (DOL) method and control method which is mostly vector control. The use of
asynchronous motors particularly squirrel-cage rotor has increased tremendously
since the day of its invention. They are being used as actuators in many types of
industrial processes, robotics, house appliances (generally single-phase) and other
similar applications. The reason for its daily increasing popularity can be primarily
attributed to its simplicity in design, robust construction and cost effectiveness, high
efficiency, reliability and good self –starting capability [2]. The induction motor is a
vital class of electric machines which finds wide applicability in industry [4] and in
its single phase form in several domestic applications. More than 85% of industrial
motors in use today are in fact induction motors that is basically a constant speed
motor with a shunt characteristic [5].

Vector control, also called field-oriented control (FOC), is a variable-


frequency drive (VFD) control method in which the stator currents of a three-phase
AC electric motor are recognized as two orthogonal components that can be
visualized with a vector. FOC is used to control AC synchronous and induction
motors. Vector control involves estimating the instantaneous magnitude and angle
of the space vector of the rotor flux linkage. In order to validate vector control on
induction motor, FPGA will be used [6].
Field-programmable gate array (FPGA) is an integrated circuit designed to
be constructed by a customer or a designer after manufacturing – hence the term
"field-programmable". The FPGA configuration is generally specified using
a hardware description language (HDL), similar to that used for an Application-
Chapter 1 2 Introduction and Background

Specific Integrated Circuit (ASIC). this is increasingly rare due to the advent
of electronic design automation tools [7].
1.2. Literature Review
An induction motor is an AC electric motor in which the electric current in
the rotor is compulsory to produce torque. This current is obtained
by electromagnetic induction from the magnetic field of the stator winding. An
induction motor can be complete without electrical connections between stator to
the rotor and because of their higher electrical torque and robust three-
phase squirrel-cage induction motors are widely used as industrial drives. They are
self-starting, reliable and economical, also it can be used in many application such
as Electric Train engine, cooling fans used to cool large machines like alternators
etc, chimneys at power plants, printing machines and Rolling mills [1]. Induction
motors are more being used with variable-frequency drives (VFDs) in variable-speed
service. Variable frequency drives (VFD) s offer especially important energy
savings opportunities for existing and prospective induction motors in variable-
torque centrifugal fan, pump and compressor load applications. Squirrel cage
induction motors are very widely used in both fixed-speed and variable-frequency
drive (VFD) applications. In contrast, single-phase induction motors are used
extensively for smaller loads, such as household appliances like fans although
traditionally used in fixed-speed service [8].
Regarding FPGAs, they contain an array of programmable logic blocks,
and a hierarchy of "reconfigurable interconnects" that allow the blocks to be "wired
together", like many logic gates that can be inter-wired in different
configurations. Logic blocks can be shaped to perform complex combinational
functions, or merely simple logic gates like AND and XOR. In most FPGAs, logic
blocks also contain memory elements, which may be simple flip-flops or more
complete blocks of memory [9]. Many FPGAs can be reprogrammed to implement
different logic functions [10,11] allowing flexible reconfigurable computing as
performed in computer software.
There are advantages of using an FPGA over a microprocessor like an
application-specific integrated circuit (ASIC) in a prototype or in limited production
designs. Those benefits are that they are very flexible, reusable, and quicker to
acquire [40]. An FPGA has a quicker time-to-market since they are not pre-designed
to perform certain tasks. You can buy a ready-made FPGA and then configure it to
the design you want. On the other hand, an FPGA can be reprogrammed over and
over for different tasks, making them very cost efficient by avoiding recurring
expenses. The software will handle much of the routing, placement, and timing
automatically to match the programmed specification. Because FPGA’s are
reprogrammable, they are reusable, making them springy for faster prototyping and
mistakes are not so costly.
Chapter 1 3 Introduction and Background

Several methods are developed for controlling the induction motor including
direct torque control, scalar control and sensor less vector control [6, 41]. But due to
their peculiar limitations none of them is found failure-proof. For implementing
direct torque control encoder is required for only high speed accuracy. This
contains calculating an estimate of the motor's magnetic flux and torque based on
the measured voltage and current of the motor and there are no PI current
controllers that makes remaining steady state error for low speed operation [12].
Scalar control required the simple modeling to control the motor because it works
only in steady state operation and cannot be used to control the motor during
transient as a result all affected parameters during transient are neglected [13].Also
for implementing sensor less vector control speed sensor cannot be used then it is
required also a simple model and smaller cost. But, since the speed can be found
from mathematical equations this makes controller never eliminating error signal of
the speed [14].
In addition, such controllers are established for applying vector control on induction
motor including pi controller, fuzzy control, and neural network. Fuzzy controller is
capable of controlling the plant without thinking in terms of mathematical model [15].
One of the main advantages of fuzzy logic system is the design on the basis of
incomplete and approximate information, thus providing simple and fast
approximations of the unknown or too complicated models. [16]. But, the fuzzy
controller is weaker in stability because it lacks a strict mathematics model to
demonstrate and select of membership functions (MFs) for the input and output
variables and the determination of fuzzy rules are not always easy. Artificial neural
network ANN has the ability to implicitly detect complex
[17]
nonlinear relationships between dependent and independent variables . It has
ability to detect all possible interactions between predictor variables of the vector
controller. But operating the neural network required to train and then it takes long
time to process large neural network, also quality predictions need a large amount
of data [18].
Regarding the effectiveness of control implementation in FPGA, there are
several control types in induction motor which can be found in literature and these
controller methods have been validated using FPGA. Firstly, induction motor vector
control has been implemented in Xilinx system generator which is a high level tools
for designing high performance DSP systems [42]. Secondly, vector control systems
of the induction motor supplied from the tandem (hybrid) static-frequency converter
has been implemented in Field Programmable Gate Arrays (FPGA) using library
elements for rapid prototyping [43]. Thirdly, simple control system of motor was
implemented in ALTERA FPGA which was integrated with DSP [44]. Finally, field
oriented speed drive control was implemented in ALTERA FPGA due to its
flexibility, high computation speed and cost effective [45]. In addition to the all
advantages mentioned in literature, high speed PWM signals required for gating the
inverter switches can be accurately produced in FPGA. Since the proposed control
Chapter 1 4 Introduction and Background

system is integrated to the inverter and induction motor, most cheapest FPGA and
as lower as possible of FPGA resources is aimed to be used in this project. Therefore,
ALTERA FPGA has been used.
1.3 Aims and Objectives:
The main aims and objectives are presented below:
1. Design and simulate vector control using direct rotor flux orientation
(feedback).
2. Responses will be taken and checked for various outputs at different instance.
3. Observe the effect of the controllers on the system.
4. Design other necessary blocks which will be useful such as voltage
compensator and Rotor time constant identification.
5. Design and experimental validation of an FPGA vector controlled for three
phase induction motor.

1.4 Problem Statement


The following statements are considered during validation of vector control:
1. In high power three phase induction motors, controlling starting current is a
major requirement to save the motor from damage and to control the starting
current, available three phase induction motor is modeled. For simplicity,
some assumptions are made in the modeling process and starting current is
calculated. To validate the modelling practically, starting current is scoped
using current sensor with Ardiniou microcontroller.
2. Friction coefficient (D) has major effect on motor performance especially for
high power motor, due to its small value, it is usually neglected. Firstly,
neglecting friction coefficient results a small difference between simulations
with practical tests. However, for high motor performance and for vector
control, neglecting the friction coefficient makes a problem because vector
control works with transient operation and friction coefficient a major effect
on the transient characteristic of the motor. Then, friction coefficient of the
motor is calculated and included in the modeling section.
3. During implementing a three phase inverter, the most interesting point is
observed as larger overshoot occurs at the output of the inverter and this
damages IGBTs during switching. This overshoot occurs because of energy
which remains in the parasitic inductance of the connectors between legs of
inverter and between inverter itself with the DC source when the IGBTs
switched off with high switching frequency. Finally, this overshoot is
eliminated by making a path for the current to transfer the remaining energy
in parasitic inductance to the capacitors which were connected in parallel with
inverter legs.
4. After testing the inverter, it is essential for safety to discharge the remaining
electrical energy in the capacitors.
Chapter 1 5 Introduction and Background

5. Operating inverter for long time at high frequency will damage the IGBTs
switches because of heat. Heat sink is used for cooling purposes and since the
insulated gate bipolar transistors IGBTs are connected to high DC voltage,
high quality isolation paper is used between the IGBTs switches and the heat
sink.
6. During operating analogue to digital converter ADC the most interesting point
are the unwanted pins which should be tied to ground.

1.5 Thesis Structure


This study will look at modeling and controlling design of three phase
induction machine experimentally validated with an FPGA. For this purpose, a three
phase induction motor of 1.5 KW cage rotor type rotor will be chosen and then for
controllers’ purposes, motor parameters will be calculated as described in section
3.1. This model of motor describes the transient and the steady state behavior of the
induction machine. This model is essential to evaluate and show asynchronous
motor drives transient performances in MATLAB simulation. It is also necessary
developing and validation high performance control techniques for the
asynchronous motor drives such as vector control or direct torque control (DTC)
drives. Later, direct and quadrature axis d-q axis model for the study of converting
three phases to two phase’s dq axis is described in chapter3.2, [19].
Moreover, based on Motor parameters a current, speed and flux control loops
will be designed in section 3.3. Next step, using MATLAB simulation, current loop
controllers will be tested with different conditions and a voltage compensator will
be designed and examined. Then, speed loop will be designed to control the speed
of the motor and it will be examined to observe the effectiveness of control. In
addition, field weakening will be designed and added to the system to describe the
effect of direct flux on the speed of the motor as showed in section 3.5 and also in
this section reactive power method will be designed for tuning rotor time constant.
In addition, the direct online and direct rotor flux orientation vector control will be
included in section 3.4.
In order to validate vector control of induction motor using FPGA, all
equation in Matlab Simulink is discretized as described in section 4.2 and the stator
currents of the induction motor will be measured using current sensors. Then, speed
of the motor will be recorded using a rotary encoder. Furthermore, the required
components for measuring the induction motor current will be implemented on a
PCB and required component for measuring the speed of the motor will also be
implemented. Next, to be able to read the measured date by an FPGA, 16-bits
analogue to digital converter (ADC) will be used. Finally, the schematic of the
whole circuit of the sensor board will be implemented on the printed circuit board
PCB as presented in section 4.1.
Chapter 1 6 Introduction and Background

Moreover, Quartos 2 (FPGA board) will be used to implement the discretized


proportional integral PI controllers into the FPGA to control pulse width modulation
PWM signals which are required for turning on and turning off the IGBT switches.
All PWM signals will be produced based on counting the rising edge of the internal
clock of the FPGA which is 50 MHz (each clock period = 20ns), very high display
integrate circuit hardware description language VHDL language is used as presented
in section 4.3.
Finally, gate drive circuits will be implemented on PCB to provide PWM
power signals to IGBT switches from PWM control signals which are generated by
an FPGA as displayed in section 4.4. Every gate circuit consists of opencollector,
optocoupler, and capacitor and gate resistor. For practical validation, all circuits
(three phase induction motor, sensor board, and ADC, FPGA and gate drive circuits)
will be set up practically, the effectiveness of implementing vector control to control
current and spend of induction motor using FPGA will be shown.
Chapter Two

Speed Control of Induction Motor


Chapter 2 7 Speed Control of Induction Motor

Chapter 2- Speed Control of Induction Motor.


2.1Speed Control of Induction Motor and Equivalent Circuit.
In mechanical system, speed varies with the number of tasks so speed control
is necessary to do mechanical work in a proper way. It makes motor to operate
easily.
Having known the Torque-speed characteristic of the motor, its speed can be
controlled in the following ways [6]:
a) Changing the number of poles
b) Variation of Motor Resistance
c) Variable-Voltage, Constant-Frequency Operation
d) Variable-Frequency Operation
e) Constant Volts/Hertz Operation
To maintain torque capability of the motor close to the rated torque at any
frequency, the air gap flux, φag is maintained constant. Any reduction in the supply
frequency without changing the supplying voltage will increase the air gap flux and
the motor may go to saturation. This will increase the magnetizing current, distorted
the line current and voltage, increase the core loss and copper loss, and it makes the
system noisy. The Equivalent circuit of the induction motor is presented in
Figure2.1. The air gap voltage is related to φag and the frequency f as described
below:
𝐸𝑎𝑔 = 𝑘1 𝜑𝑎𝑔 𝑓 … (2.1)
Input voltage, 𝑉𝑠 ≈ 𝑘1 𝜑𝑎𝑔 𝑓 … (2.2)
𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡≈𝑉𝑠
Or, 𝜑𝑎𝑔 = … (2.3)
𝑓
Where 𝑘1 is a constant

Figure2.1: Equivalent circuit of the induction motor [6]


Chapter 2 8 Speed Control of Induction Motor

To study the behavior of the induction motor at various operating conditions,


it is convenient to an equivalent circuit of the motor under sinusoidal steady state
operating conditions.
For a balanced 3 phase system, equivalent circuit for any phase will suffice.
From the per-phase equivalent circuit of the induction motor, the current drawn by
the circuit is [1, 8].
From the approximate equivalent circuit:
𝑉1
𝐼2′ = ′
√ (𝑅1 +𝑅2/𝑠 )2 +(𝑋1 +𝑋2′ )2
The air-gap power is given as,
𝑅2′
𝑃𝑎𝑔 (𝑎𝑖𝑟 𝑔𝑎𝑝 𝑝𝑜𝑤𝑒𝑟) = 3. 𝐼2′ 2 .
𝑆
𝑉1 2 𝑅2′
== 3. ( 2) .
√ (𝑅1 +𝑅2′ /𝑠 )2 +(𝑋1 +𝑋2′ ) 𝑆
3𝑉12 𝑅2′
= ∙
(𝑅1 + 𝑅2′ /𝑠 )2 +
(𝑋1 + 𝑋2′ )2 𝑆
Mechanical output power is given as
′ ′
′ ′ 3.𝐼2 𝑅2 1−𝑠
𝑃𝑚 = 𝑃𝑎𝑔 − 3. 𝐼2 . 𝑅2 = 𝑠 − 3. 𝐼2′ 𝑅2′ =3. . 𝐼2′ . 𝑅2′
𝑠
Hence, the mechanical torque is given as,
𝑃𝑎𝑔 3.𝐼2′ .𝑅2′
𝑇𝑒 = = 𝑃𝑚 /𝜔𝑟 =
𝜔𝑠 𝜔𝑠 .𝑠

3 𝑉21 𝑅′2
𝑇𝑒 = ∙ 2 2 ∙ (2.4)
𝜔𝑠 𝑆
(𝑅1 +𝑅′2 /𝑠 ) +(𝑋1 +𝑋′2)

Plotting the torque against slip or speed gives the researcher the torque-speed
characteristic of the motor.
For positive values of slip, the torque-speed curve has a peak. This is the
maximum torque produced by the motor and is called the breakdown torque or the
stalling torque.
Chapter 2 9 Speed Control of Induction Motor

Figure2.2: Torque-speed curve for variable voltage [8].


Its value can be calculated by differentiating the torque expression with
respect to slip and then setting it to zero to get ŝ, the slip at the maximum torque.

𝑅2′
𝑆̂ = ± …. (2.5)
√(𝑅2′ /𝑠 )2 +(𝑋1 + 𝑋2′ )2

Maximum torque,

3𝑉𝑠2 1
𝑇𝑒(𝑚𝑎𝑥) = ∙
2𝜔𝑠 ′
2

2
𝑅2 + √(𝑅2 /𝑠 ) + (𝑋1 + 𝑋2 )

From equation (2.4) we observe that the torque is proportional to the square
of applied voltage. Figure 2.2 shows the variation of torque-speed curves with
changes in the applied voltage.
2.1.1 Variable-Frequency Drive.

VFD is a type of adjustable-speed drive used in mechanical drive system to


control AC motor speed and torque by varying motor input frequency and
voltage[20].
Overview of key competing VFD control platforms shown in figure2.3.
Chapter 2 10 Speed Control of Induction Motor

Figure2.3: Type of Variable frequency drive [20]


2.1.1.1. VECTOR CONTROL
Vector control, also called field-oriented control (FOC), is a variable-
frequency drive (VFD) control method in which the stator currents of a three-
phase AC electric motor are identified as two orthogonal components that can be
visualized with a vector. One component defines the magnetic flux of the motor, the
other the torque. The control system of the drive calculates the corresponding current
component references from the flux and torque references given by the drive's speed
control. Typically controllers are used to keep the measured current components at
their reference values. The pulse-width modulation of the variable-frequency drive
defines the transistor switching according to the stator voltage references that are the
output of the PI current controllers [21].
FOC is used to control AC synchronous and induction motors [22]. It was
originally developed for high-performance motor applications that are required to
operate smoothly over the full speed range, generate full torque at zero speed,
and have high dynamic performance including fast acceleration and deceleration.
However, it is becoming increasingly attractive for lower performance applications
as well due to FOC's motor size, cost and power consumption reduction superiority
[23 ,24]
.
Vector drives can separately manipulate the voltage and frequency to always
produce the optimum V/Hz ratio for maximum torque. In this way, vector drives can
generate more starting torque, and can provide full torque down to 1 Hz or less,
while V/Hz drives are limited to about 5-6 Hz.
There are basically 2 types of vector drives: closed-loop, and open-loop or
sensor less. Closed-loop vector drives require special motors with encoder feedback
(hence the term "closed-loop") that provide motor shaft position info to the drive.
The drive uses this information to constantly alter the V/Hz ratio to produce
maximum torque. This type of VFD is very high performance and very expensive.
In contrast, sensor less vector drives work with standard motors, but because
there is no encoder feedback, the performance is not quite as good as closed-loop,
but still much better as V/Hz drives [13].
Vector drives (more accurately referred to as "Field Oriented Control" drives)
do not explicitly solve a V/Hz relationship. Rather, they solve two specific currents
within the stator simultaneously. The V/Hz relationship is solved implicitly
Chapter 2 11 Speed Control of Induction Motor

according to flux density from the vector sum of current components described
below.
The first current is the Magnetizing current. Since there is no magnetic field
within the rotor of the motor, it must be induced using electromagnetism (Hence
Induction Motor). A DC current is controlled in the stator to induce an
electromagnetic field in the rotor. As the rotor is turned (eg motor spinning) this
magnetic field is rotated synchronously with the rotor to maintain a static
orientation of the magnetic field relative to the rotor.
The second current is the Torque Producing Current. This current is
controlled in the stator to produce another electromagnetic field within the stator
itself that is oriented 90 degrees to the magnetic field simultaneously induced in
the rotor as described above. As the intensity of the torque producing current
increases, the torque applied to the rotor (eg motor shaft) increases.
It is the VECTOR SUM of these two currents in the stator that is solved by the
drive in a Vector drive application.
In vector control, an AC induction or synchronous motor is controlled under
all operating conditions like a separately excited DC motor [25] that is, the AC motor
behaves like a DC motor in which the field flux linkage and armature flux linkage
created by the respective field and armature (or torque component) currents
are orthogonally aligned such that, when torque is controlled, the field flux linkage
is not affected, hence enabling dynamic torque response.
Vector control accordingly generates a three-phase PWM motor voltage
output derived from a complex voltage vector to control a complex current vector
derived from motor's three-phase stator current input
through projections or rotations back and forth between the three-phase speed and
time dependent system and these vectors' rotating reference-frame two-
coordinate time invariant system [26].
Such complex stator current space vector can be defined in a (d,q) coordinate
system with orthogonal components along d (direct) and q (quadrature) axes such
that field flux linkage component of current is aligned along with the d axis and
torque component of current is aligned along with the q axis .
The required steps for vector-control are summarized as follows [27, 28 , 29]:
Step1. The 3-phase stator currents ia .ib ic and the rotor velocity ωr are measured
as described in chapter 4.

Step2. The 3-phase currents are converted to a 2-axis system as shown in Figure2.4.
This conversion provides the variables iα and iβ from the measured ia ib and ic
values. iα and iβ are time varying quadrature current values as viewed from the
perspective of the stator.
Step3. The above 2-axis coordinate system is then rotated to align with the rotor flux
using a transformation angle information calculated at the last iteration of the control
loop (Figure2.5). This conversion provides the id and iq (Isd and Isq) variables from
Chapter 2 12 Speed Control of Induction Motor

iα and iβ. Isd and isq are the quadrature currents transformed to the rotating
coordinate system. For steady state conditions, id and Iq will be constant.
Step4. Error signals are formed using id, Iq and their reference values for each. The
Id reference is used to control rotor magnetizing flux. The Iq reference is used to
control the rotor output of the motor. The error signals are the inputs to the PI
controller. The output of the controller provides Vsd and Vsq, which is a voltage
vector that will be sent to the motor.
Step5. A new coordinate transformation angle is calculated. The motor speed, the
rotor electrical time constant and id and Iq are the inputs of this transformation.
Step6. The Vsd and Vsq output values from the PI controller are rotated back to the
stationary reference frame using the new angle. This calculation provides quadrature
voltage values ν α and ν β (Figure2.6).
Step7. The να and νβ values are transformed back to 3-phase voltage values which
are then used to calculate new PWM duty cycle values that generate the desired
voltage vector (Figure 2.7).

Figure2.4 : Clarke transformation [26] Figure2.5: Park transformation [26]

Figure2.6:Inverse Park transformation [26] Figure2.7:Inverse Clarke transformation[26]

Significant aspects of vector control application:

 Speed or position measurement or some sort of estimation is needed.


 Torque and flux can be changed reasonably fast, in less than 5-10 milliseconds, by
changing the references.
Chapter 2 13 Speed Control of Induction Motor

 The step response has some overshoot if PI control is used. And it is solved by using
saturation block in Matlab Simulink, also it is eliminated from FPGA by using if
else statement.
 The switching frequency of the transistors is usually constant and set by the
modulator (Triangular frequency).
 The accuracy of the torque depends on the accuracy of the motor parameters used in
the control. Thus, large errors due to for example rotor temperature changes often
are encountered. For this purpose effect of rotor time constant variation on the
control behavior is described.
 Reasonable processor performance is required; typically, the controlled algorithm is
calculated every PWM cycle.
2.1.1.2. Scalar Control V/F Control.
“Scalar control” means that only magnitudes of the input variable-frequency
and voltage are controlled. In such controls, very little knowledge of the motor is
required for frequency control. Hence, a control of this type offers low cost and it
is easy to implement solution. Thus, this control is widely used. A disadvantage of
such control is that the torque developed is load dependent as it is not controlled
directly. Also, the transient response of such a control is not fast due to the
predefined switching pattern of the inverter.
Scalar control is based on the steady-state model of the motor .Scalar
control, as the name indicates, is due to magnitude variation of the control variable
only and disregards the coupling effect in the machine. The voltage of a machine
can be controlled to control the flux, and frequency or slip can be controlled to
torque. However, flux and torque are also function of frequency and voltage
respectively.
It always maintains a certain V/Hz ratio to the motor. For example, a 230 Vac,
60 Hz motor wants to see a V/Hz ratio of 3.83 (230/60 = 3.83). When a V/Hz drive
changes speed (frequency), it also changes the output voltage to keep the ratio
constant. So, at 30 Hz (half speed), the same 230 Vac motor will only see 115 Vac
output from the drive [30].
For most applications this works great, if the machine is operated from about
6-60 Hz (10:1 speed range). Below 6 Hz, a motor on a V/Hz type VFD can't generate
much torque, because at those low speeds, the V/Hz ratio to achieve maximum
torque is different than at higher speeds. If you try to run at those low speeds with a
V/Hz drive, you will typically see the motor shaft "cogging" as it tries to turn.
2.1.2Pulse-Width Modulation (PWM).

PWM signal is used for controlling the amplitude of digital signals in order to
control devices and applications needful power or electricity. It essentially controls
the amount of power, in the perspective of the voltage component that is given to a
device by cycling the on-and-off phases of a digital signal quickly and varying the
width of the "on" phase or duty cycle. To the device, this would appear as a steady
Chapter 2 14 Speed Control of Induction Motor

power input with an average voltage value, which is the result of the percentage of
the on time. The duty cycle is expressed as the percentage of being fully (100%) on.
A very powerful benefit of PWM is that power loss is very minimal. PWM
actually turns off the power output rather than limits it. Applications range from
controlling DC motors and light dimming to heating elements [31].
Variable frequency drives (VFDs) used on industrial applications provide an
efficient way to vary the speed and torque of the connected motor. The VFD
involves of three main parts: The input converter section, the intermediate DC bus,
and the output inverter section as shown in figure 2.8.

[32]
Figure2.8: VFD is made up of 3 main parts
The converter section uses a diode bridge rectifier to convert the AC input
voltage to a DC voltage. The DC bus section consists of a capacitor bank, which is
used to smooth out the DC voltage from the converter section and provide some
voltage storage capacity. The inverter section of the VFD takes the DC voltage from
the DC bus and inverts it back to a variable voltage and variable frequency AC
voltage used for the motor control [32].

2.1.2.1 PWM Definition.


The process PWM involved in inverting the DC voltage to the variable voltage
variable frequency (VVVF) AC voltage in the inverter section of the VFD is called
pulse width modulation or PWM. Pulse width modulation signal produced by
comparing triangular wave with sine wave is shown in figure2.9
Chapter 2 15 Speed Control of Induction Motor

Figure2.9: PWM signal generation [32]


Later on, PWM uses transistors which switch the DC voltage on and off in a
defined sequence to produce the AC output voltage and frequency. Most VFD’s
today utilize insulated gate bipolar transistors or IGBT’s. The typical configuration
of the IGBT’s in the inverter section of a VFD is shown below in figure 2.10.

Figure2.10: Schematic of output IGBT stage of a VFD [32]


The transistors act as switches connecting the DC bus across the windings of
the motor. A VFD with a 250 VAC input will have a DC bus of approximately
625VDC. Thus the ‘pulse’ refers to the switching on and off of the transistors
generating a pulse of voltage with an amplitude of approximately 625VDC
(Triangular amplitude).
The goal of the PWM control is to create a three phase sine wave (120 degree
shift with them) current waveform output to produce torque in the motor.
In order for current to flow between two phases of the motor above, at least
one transistor in the top portion of the diagram and one in the bottom of the diagram
Chapter 2 16 Speed Control of Induction Motor

must be activated. By utilizing specific combinations of transistors, current can be


induced in either direction between phases.
For example, if T1 and T6 are open, current will flow from DC bus positive
through the U to V phase of the motor and then to the DC bus negative. If T3 and
T4 are open, then current will flow from the DC bus positive through the V to U
phase of the motor to the DC bus negative.
One of the advantages of using a VFD with PWM technology is the ability to
control the amount of current going through the motor windings, which when
running a rotary industrial motor, translates into controlling the amount of torque at
the motor shaft.
In the case of a VFD that utilizes PWM technology, this is done by varying the
RMS voltage to the motor. By controlling the amount of time each pulse is on and
off, the resulting RMS voltage across the motor phases can be controlled. The
‘width’ of the pulse factors into the resulting RMS voltage output.
A longer ‘ON’ time of the pulse results in a higher RMS voltage across the
phases as shown in figure2.11. In contrast a shorter ‘ON’ time of the pulses results
in a lower RMS voltage across the motor phases as shown in figure2.12.

Figure2.11: PWM representation with Figure2.12: PWM representation with


longer “ON”time [32] shorter “ON” time [32]

Moreover, by modulating the pulse width over each successive half wave, the RMS
voltage across the motor phases can be controlled. The resultant variable RMS
voltage allows the VFD to vary the amount of current flowing between motor
phases. The current waveform produced through the PWM process is also
influenced by the IGBT switching frequency [32].

2.1.2.2. Switching Frequency


One drive uses a default switching frequency setting of 4 kHz. Reducing the
drive’s switching frequency (the carrier-frequency) reduces the heat generated by
the IGBTs.
Chapter 2 17 Speed Control of Induction Motor

A carrier frequency of at least ten times the desired output frequency is used to
establish the PWM switching intervals. A carrier frequency in the range of 2,000 to
16,000 Hz is common for LV (low voltage, under 600 Volts AC) VFDs. A higher
carrier frequency produces a better sine wave approximation but incurs higher
switching losses in the IGBT, decreasing the overall power conversion efficiency.
The IGBT switching frequency refers to the rate of the on/off switching if the
individual IGBT’s. Typical switching frequencies used are 4 kHz, 8 kHz [33], and
even up to 16kHz.For this current project 10 kHz switching frequency (triangular
frequency) is applied.
A higher switching rate will provide a cleaner waveform to the motor as there
will be more pulses over each half wave.
In addition to the motor torque (current), the motor speed (frequency) can also
be controlled by utilizing PWM. By changing the period of the voltage pulses which
induce the current in the motor phases the resulting output current waveform
frequency can be changed as shown in figure 2.13.

Figure2.13: Different PWM waveforms results in different output frequencies [33].


Chapter Three

Modeling of Induction Motor


Chapter 3 18 Modeling of Induction Motor

Chapter 3- Theory behind Working of Three Phase Induction Motors


and Modeling.
During start-up and other motoring operations, the motor draws large
currents, produce oscillatory torques, voltage dips and can even generate harmonics
in the power system. So, it is important to be able to model the asynchronous
machine in order to predict these phenomenon. Also , for good transient responses,
keeping motor from high starting current and damage, the vector control method
should be used and this is required a modeling of the motor at the beginning.
3.1 Dynamic Model of Three Phase Induction Motor

3.1.1 Dynamic Model of the Induction Motor in Stationary Reference Frame.

A three-phase induction machine can be represented by equivalent two


phase’s machine as shown in Figure3.1, where ds - qs axes correspond to stator
direct and quadrature axes. The dynamic model of the induction motor in the
stationary reference frame, used for the analysis carried out in this thesis is explained
here with equivalent circuits and a series of equations (3.1) to (3.10). The d-q
equivalent circuit of Induction Motor in Stationary Reference Frame is shown in
Figure3.2 [34].

Figure3.1: d-q representation of the Induction Motor[34]

(a):D_axis circuit (b):Q_axis circuit


Figure3.2: d-q equivalent circuit of Induction Motor in Stationary Reference Frame[34]
Chapter 3 19 Modeling of Induction Motor

………. (3.1)

…….… (3.2)

………. (3.3)

………. (3.4)

………. (3.5)
………. (3.6)
………. (3.7)

.……… (3.8)

…….… (3.9)

……… (3.10)

3.1.2 Dynamic Model of the Induction Motor in Synchronously Rotating


Reference Frame

The induction motor equations described in previous section are referred to the
stationary reference frame. These equations can also be referred to the
synchronously rotating reference aligned with d-q axes as shown in Figure3.3.

(a):D_axis circuit (b):Q_axis circuit


Figure3.3: d-q equivalent circuit of Induction Motor in synchronously rotating reference frame[34]
When equations (3.1) and (3.2) are referred to the synchronously rotating
reference frame rotating at ω
…….. ..(3.11)
……… (3.12)
Chapter 3 20 Modeling of Induction Motor

The last terms in equations are defined as speed EMF due to the rotation of axes.
That is, when ω=0, the equations revert to the stationary reference frame form. The
equations (3.3) and (3.4) for the rotor become:
…… (3.13)
…… (3.14)

All the sinusoidal variables at fundamental frequency in the stationary frame


appear as D.C quantities in the synchronously rotating reference frame. The flux
linkage expressions can be written as:
…. (3.15)
…. (3.16)

…. (3.17)
…. (3.18)

The torque expression of the motor can be derived as follows:

…. (3.19)

From above equations based on parameters we can model a three-phase induction


motor.
3.1.3 Determination of Motor Parameters

3.1.3.1 Determination of Electrical Parameters


In general, motor parameters are provided by manufactures, either on motor
nameplate or would be available in a data sheet [34, 35]. For this project, motor
parameters are given as shown in table 3.1.
Table3.1: Motor parameters

Motor parameter Value


Rated Mechanical power 1.5KW
Line-to-Line Voltage (VL-L) 380 V
Frequency (f) 50 Hz
Chapter 3 21 Modeling of Induction Motor

Connection Type star connection


Rated Speed (Nm) 1380 rpm
Rated Speed (𝑊𝑟) 144 rad/s
Line Rated Current( Israted ) 3.63 Amp
Full-Load Power Factor 0.8
Line Starting Current (15 Amp)
Stator Resistor 4.1 find by ohmmeter
Moment of inertia (j) 0.0026kg.m2
In induction motor, synchronous speed is faster than rated speed (𝑊𝑟=157rad/s)
which was given therefore, synchronous speed can be calculated, and it is equal to
(Ns=1500 rpm). Before calculating the requirements, certain essentials and
fundamental parameters are found from given parameters as shown.
60
𝑊𝑒 = 2 ∗ 3.14 ∗ 𝑓 = 314.159𝑟𝑎𝑑/𝑠 𝑁𝑠 = 𝑊𝑒 ∗∗ = 3000 𝑟𝑝𝑚
2∗3.14

𝑤𝑒 3000
𝑝𝑎𝑖𝑟 𝑝𝑜𝑙𝑒 =
𝑤𝑠
 𝑝𝑎𝑖𝑟 𝑝𝑜𝑙𝑒 = 1500=2 number of p𝑜𝑙𝑒 = 4

𝑉𝑝ℎ = 𝑉L /√3 𝑉𝑝ℎ = 380/√3 𝑉 =219.393 but, iph = il iph = 3.63 𝐴𝑚𝑝
𝐸𝑙𝑒𝑐𝑡𝑟𝑖𝑐𝑎𝑙 𝑖𝑛𝑝𝑢𝑡 𝑝𝑜𝑤𝑒𝑟 = 3 ∗ (Vsrated) ∗ (Israted) ∗ (𝑐𝑜𝑠𝜃)
Where Vsrated and Israted are phase quantities
𝐸𝑙𝑒𝑐𝑡𝑟𝑖𝑐𝑎𝑙 𝑖𝑛𝑝𝑢𝑡 𝑝𝑜𝑤𝑒𝑟 = 3 ∗ 219.393 ∗ 3.63 ∗ 0.8  𝑃𝑖𝑛 = 1.9113 𝐾𝑊

P mechanical-rated= T rated * Ns rated 


1500
𝑇 𝑟𝑎𝑡𝑒𝑑 = 2∗𝜋  𝑇 𝑟𝑎𝑡𝑒𝑑 = 10.38𝑁𝑚
1380∗
60

𝑝𝑜𝑢𝑡 1500
ղ=
𝑝𝑖𝑛
 ղ=1911.3  ղ=0.784
𝑤𝑠 −𝑤𝑟 1500−1380
𝑆=
𝑤𝑠
Where S is normalized slip, 𝑠 =
1500
 𝑠 = 0.08 𝑎𝑡 𝑓𝑢𝑙𝑙 𝑙𝑜𝑎𝑑

N𝑠𝑙 = N𝑠 − Nm Where Wsl is rated slip,



N𝑠𝑙 = 1500 − 1380  N𝑠𝑙 = 120 rpm  Wsl = 120 ∗  Wsl = 12.56 rad/s
60
Chapter 3 22 Modeling of Induction Motor

3.1.3.1.1 Calculation of Lo and Rr

The per phase equivalent circuit of induction motor is shown in Figure 3.4.
However, for calculating Lo and Rr, since the stator inductor and resistor have minor
effects and the magnetization is important, therefore the equivalent circuit can be
drawn as shown in figure 3.5.

Figure3.4: Prophase equivalent circuit[34]

Figure3.5: Circuit diagram and phasor diagram[34]


From phasor diagram shown in figure 3.5,
𝐼r = 𝐼s ∗ 𝑐𝑜𝑠𝜃  Where 𝐼s = 3.63 𝐴𝑚𝑝 and 𝑐𝑜𝑠𝜃 = 0.8, 𝑰r = 2.904 𝑨𝒎𝒑
𝐼𝑜 = 𝐼s ∗ 𝑠𝑖𝑛𝜃  Where 𝜃 = 𝑐𝑜𝑠−1 (0.8)  𝜃 = 36.87°  𝑰𝒐 = 2.178 𝑨𝒎𝒑
Now, from figure 3.5
𝑉𝑠 = 𝑗 ∗ 𝑊𝑒 ∗ 𝐿𝑜 ∗ 𝐼𝑜
𝑉𝑠 = 𝑗 ∗ 2 ∗ 𝜋 ∗ 𝑓 ∗ 𝐿𝑜 ∗ 𝐼𝑜
𝑉𝑠
𝐿0 =
𝑗 ∗ 2 ∗ π ∗ f ∗ 𝐼0
Where 𝑉𝑠 = 219.393, 𝐼r =2.904 Amp and 𝐼𝑜 = 2.178 𝐴𝑚𝑝
𝐿𝑜 = 0.32063 𝐻
Chapter 3 23 Modeling of Induction Motor

0.08
𝑉𝑠 = Ir * Rr/S  Rr= 219.393 ∗  Rr=6.04388 𝜴
2.904
Where the stator resistance Rs was obtained with a DC measurement. Rs =4.1
3.1.3.1.2 Calculation of Leakage Inductances, Stator and Rotor Self Inductances
and Leakage Factors.

For calculating leakage inductances, at the starting instance, it is assumed that


the motor is stationary which means speed is zero and slip is one. Supply voltage
380 V is applied, then RR/S is very small and << We*Lr, therefore, it can be
neglected. Since at the starting, starting current is too large and Io is very small,
thus, the magnetizing inductance can also be neglected. Then per phase equivalent
circuit can be drawn as shown in figure 3.6.

Figure3.6: Equivalent Circuit at starting [34]


However, starting current is calculated by using Arduino microcontroller
which is equal to 15 Amp.
Based on figure 3.6:
𝑉𝑠
𝑉𝑠= 𝑗 ∗ 𝑤𝑒 ∗ (𝑙𝑠 + 𝑙𝑅) ∗ 𝐼𝑠𝑡𝑎𝑟𝑡(𝑙𝑠 + 𝑙𝑟) =
𝑗 ∗ 𝑤𝑒 ∗ 𝐼𝑠𝑡𝑎𝑟𝑡
219.393
(𝑙𝑠 + 𝑙𝑟) =
2∗𝜋∗50∗15

(𝑙𝑠 + 𝑙r) = 0.04655 H.................... (3.20)


Since resistance values are available (Rs given and Rr obtained), their ratio
can be obtained (Rs/Rr). Now, same ratio can be assumed for leakage inductances
for calculating (𝑙𝑠, 𝑙r), because the number of turn ratio is direct proportional to both
leakage inductances and resistance.
𝑙𝑠/𝑙r = 𝑅s/𝑅r Where Rs=4.1ohm given and RR=6.04388 ohm calculated
𝑙𝑠/𝑙r = 4.1/6.04388  𝑙𝑠 = 0.67837𝑙r ………… (3.21)
Chapter 3 24 Modeling of Induction Motor

By substituting equation 3.21 in equation 3.20


0.67837𝑙r + 𝑙r = 0.04655
1.678337𝑙r = 0.04655
𝑙r = 0.04655/1.67837  𝒍r = 0.027735𝑯 , now substituting the values of 𝑙r in
equation 3.20
0.027735 + 𝑙𝑠 = 0.04655  𝑙𝑠 = 0.04655− 0.027735 𝒍𝒔 = 0.018815𝑯
Next step, calculating the stator and rotor self-inductances Ls, Lr and the leakage
factors ( )
𝐿𝑠 = 𝐿𝑜 + , r = 𝐿𝑜 + 𝑙r, 𝜎 𝑠 = 𝑙𝑠/𝐿𝑜 , 𝜎r= 𝑙r/𝐿𝑜,
𝜎≈𝜎𝑠+𝜎ℛ,
𝐿𝑠 = 0.32063 + 0.018815  L s = 0.339445𝑯
𝐿r = 0.32063 + 0.027735  Lr = 0.348365𝑯
𝜎 𝑠 = 0.018815/0.32063  𝝈𝒔 = 𝟎.05868
𝜎r = 0.027735𝑯 /0.32063  𝝈r = 𝟎. 08650
𝜎 ≈ 𝟎.05868 + 𝟎. 08650  𝝈 ≈ 𝟎. 1451
3.1.3.1.3 Calculation of Rotor and Stator Time Constant and Rotor Flux.

Since leakage inductances, resistances and leakage factors are obtained, the
stator and rotor time constants can be calculated as shown below.
𝜏𝑠= 𝜎 𝐿𝑠⁄ Rr  𝜏𝑠= 0.1451 ∗ 0.339445/4.1  𝝉𝒔= 12.02𝒎𝑺
When applied voltage is changed, the rate of torque which will be injected
into the stator can be determined by stator time constant.
𝜏𝑟= Lr/𝑅r  𝜏𝑟= 0.348365/6.04388  𝝉𝒓= 57.64 𝒎𝑺
When applied voltage is changed, the rate of the motor magnetic field
variation can be determined by rotor time constant.
Final step, for determining 𝑖𝑠𝑞 which produces torque, 𝑖𝑠𝑑 which produces field,
magnetization current (𝑖𝑚𝑟𝑑) and rotor flux (Ψ𝑟), below equations will be used.
In no-load case: 𝑖𝑠𝑑 = 𝑖𝑜 = 𝑖𝑚𝑟𝑑 = 2.178𝐴𝑚𝑝
2 2
From dq-axis  𝑖𝑠𝑞 = √ 𝑖𝑠 − 𝑖𝑠𝑑

√(3.632 − 2.1782 )  𝒊𝒔𝒒 = 2.904 𝑨𝒎𝒑


Chapter 3 25 Modeling of Induction Motor

𝑖𝑚𝑟𝑑 = 𝑖𝑠𝑑 under steady state condition 𝑖𝑚𝑟𝑑 = 2.178𝐴𝑚𝑝


Ψ𝑟 = 𝐿𝑜 ∗ 𝑖𝑚𝑟𝑑
Ψ𝑟 = 0.32063 ∗ 2.178 Ψ𝑟 = 0.698𝑾𝒃.
3.1.3.2 Determination of Mechanical Parameters Moment of Inertia (J) and
Friction Coefficient (D) of the Induction Motor Setup
The friction coefficient D of the induction motor can be determined by using
the coupled DC shunt motor as shown in figure 3.7.

Figure3.7 : circuit diagram of dc shunt motor[34]


The following equations can be derived for the DC machine:
… (3.22)

… (3.23)

… (3.24)

… (3.25)

… (3.26)

… (3.27)

In steady-state, if the load torque shown in (3.26) is equal to zero.

… (3.28)

… (3.29)
Chapter 3 26 Modeling of Induction Motor

When the DC motor was driving the induction motor as load, the voltage,
current and rotor speed were recorded and the power was calculated as in (3.23) , as
shown in table 3.2 . The friction coefficient D was calculated from (3.29).
Table3.2: Practical data were recorded:

I If Ia=I- Ra Ea Pa= Wr
Nm(rpm) 𝑊2
(Amp) (Amp) Ish (ohm) (Volt) Ea*Ia (rad/s) rad/s
1.48 0.45 1.03 5.9 138.92 143.09 1200 125.6 15775.36
1.4 0.39 1.01 5.9 128.04 129.32 1134 118.69 14087.79
1.4 0.37 1.03 5.9 116.92 120.43 1067 111.67 12472.27
1.4 0.34 1.06 5.9 103.74 109.97 981 102.67 10542.77
1.4 0.28 1.12 5.9 91.39 102.35 897 93.88 8814.581
1.4 0.26 1.14 5.9 80.27 91.51 823 86.14 7420.214
1.4 0.22 1.18 5.9 66.03 77.92 735 76.93 5918.22
1.4 0.19 1.21 5.9 52.86 63.96 649 67.92 4614.30
1.5 0.11 1.39 5.9 26.79 37.25 478 50.03 2503.06
2 0.05 1.95 5.9 11.49 22.41 305 31.92 1019.09
0 0 0 5.9 0 0 0 0 0

Where Ea – Back-emf(volt), Va - DC Voltage(volt), Ia – armature DC


motor current(Amp), ω – Speed in rad/sec, Te – Electromagnetic Torque, TL–Load
Torque, D-Friction Coefficient, J–Rotor Inertia.
In order to calculate the friction coefficient, the speed of the DC motor was
varied by controlling the DC input voltage. The input power was plotted
against𝑊 2 , where ω is the speed in rad/sec. From the slope of the figure 3.8, the
friction coefficient D was calculated to be 0.0084 Nm/rad/second.
Chapter 3 27 Modeling of Induction Motor

Figure3.8: calculation of friction coefficient factor [Researcher]

All the parameters of the induction motor used for controlling induction motor are
presented in Table3.3.
Table3.3: Squirrel-Cage Induction Motor Parameters

Motor parameter Value


Rated Mechanical power 1.5KW
Line-to-Line Voltage (VL-L) 380 V
Frequency (f) 50 Hz
Connection Type star connection
Rated Speed (Nm) 1380 rpm
Line Rated Current 3.63 Amp
Full-Load Power Factor 0.8
Line Starting Current 15 Amp
Stator Resistor 4.1 find by ohmmeter
Moment of inertia (j) 0.0026kg.m2
Rotor Leakage Inductance Llr 0.348365𝑯
Stator Leakage Inductance Lls 0.339445𝑯
Magnetizing Inductance Lm 0.32063 H
or Lo
Rotor Resistance Rr 6.04
Friction Coefficient D 0.0084Nm/rad/second
3.2- Motor Performance DOL
In general, there are several approaches to start three phase induction motor
(IM) depending on the load accelerating, starting current and torque requirement.
One of the methods is Direct on Line (DOL). This method is as a basic approach to
Chapter 3 28 Modeling of Induction Motor

start IM and it is not advised to be used in applications which are required high
efficiency, accuracy because of its instability and poor transient response caused by
starting torque and high inrush of current at the starting with high oscillation. In this
section, the DOL method will be modeled and simulated with different values of
load torque (no-load, half load and full-load) and different load inertia (0.02 Kg.m2
and 1Kg.m2) to investigate motor performance. At first, the calculated and given
parameters which found in previous section, are set to the motor. The motor is
supplied by 50Hz, 380-three phase voltage source which converted to αβ
coordination to feed the motor with smooth starting current. Figure 3.9 shows the
DOL model [Shi, K.L, 1997]. The outputs (Is, R-flux and S-flux) are converted to
three phase values to be able to see and evaluate their peak and RMS values. Motor
speed is designed based on the speed equation shown below and it is converted to
rpm values to be fed to the motor [8].
1
𝑤𝑟 = (𝑇𝑒 − 𝑇𝐿 ) − 𝑤𝑟 ∗ 𝐷 … … 𝑆𝑝𝑒𝑒𝑑 𝑒𝑞𝑢𝑎𝑡𝑖𝑜𝑛
𝑗𝑠

Figure3. 9: Direct on Line Model [Researcher]


Chapter 3 29 Modeling of Induction Motor

3.2.1 Induction Motor Model Description:

3.2.1.1Three Phase to Alpha Beta Model.


Three phase voltage source which is converted to αβ coordinate and vice versa
and αβ to d-q model as described in chapter 2 are the following equations:
𝑖𝛼 3/2 0 0 𝑖𝑎
( )=( ) ∗ (𝑖𝑏 ) … … … … . (3.30)
𝑖𝛽 0 √3/2 −√3/2 𝑖𝑐

𝑖𝑎 2/3 0
𝑖𝛼
(𝑖𝑏 ) = (−1/3 1/√3) ∗ ( ) … … … … … (3.31𝐴)
𝑖𝛽
𝑖𝑐 −1/3 1/√3

𝑖𝑑 cos(θ) sin(𝜃) 𝑖𝛼
( )=[ ]( ) … … … … … (3.31𝐵)
𝑖𝑞 −sin(𝜃) cos(𝜃) 𝑖𝛽
Based on above equations block diagram of a conversion of three phase to
alpha beta and alpha beta to three phase and also to DQ can be represented as
shown in figure 3.10.

A- Three phase to αβ conversion


Chapter 3 30 Modeling of Induction Motor

B- αβ to Three phase conversion

C- αβ to dq model
Figure3.10: Conversion Block Diagram [Researcher]
3.2.1.2 Direct and Quadrature Model.
Equation (3.11) and (3.12) also can be represented as follows:
𝑑 𝐿𝑜 𝑑
𝑣𝑠𝑑= 𝑅𝑠 𝑖𝑠𝑑 + 𝜎𝐿𝑠 𝑖𝑠𝑑 − 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑞 + 𝜑
𝑑𝑡 𝐿𝑟 𝑑𝑡 𝑟𝑑
𝑑 𝐿𝑜
𝑣𝑠𝑞= 𝑅𝑠 𝑖𝑠𝑞 + 𝜎𝐿𝑠 𝑖𝑠𝑞 + 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑑 + 𝑤𝑒 𝜑𝑟𝑑
𝑑𝑡 𝐿𝑟
From above equations direct _quadrature current, Torque, rotor and stator flux
can be modeling as showed in figure 3.9.
Chapter 3 31 Modeling of Induction Motor

3.2.2 Effect of Moment of Inertia on Induction Motor

In this part, zero load torque is applied with different values of moment of
inertia to investigate the effect of moment of inertia on the behavior of induction
motor. Figures (3.11, 3.12, 3.13 and 3.14) show the behavior of induction motor
(stator current, stator flux, rotor flux and torque speed characteristic, respectively)
at moment of inertia of motor J= 0.0026 kg.m2 and figures (3.15, 3.16, 3.17 and
3.18) present motors’ load inertia behavior at J= 1 kg.m2.

Figure3.11: Peak and RMS Stator Current at TL=0 and J=0.0026kg.m2[Researcher]

Figure3.12: Peak and RMS Stator Flux at TL=0 and J=0.0026kg.m2 [Researcher]
Chapter 3 32 Modeling of Induction Motor

Figure3.13: Peak and RMS Rotor Flux at TL=0 and J= 0.0026kg.m2[Researcher]

Figure3.14: Speed and torque VS time at TL=0 and J=0.0026kg.m2 [Researcher]

Figure3.15: Peak and RMS Stator Current at TL=0 and J=1kg.m2 [Researcher]
Chapter 3 33 Modeling of Induction Motor

Figure3.16: Peak and RMS Stator Flux at TL=0 and J=1kg.m2 [Researcher]

Figure3.17: Peak and RMS Rotor Flux at TL=0 and J=1kg.m2 [Researcher]

Figure3.18: Speed and torque VS time at TL=0 and J=1kg.m2 [Researcher]


Chapter 3 34 Modeling of Induction Motor

From figures above, moment of inertia has a major effect on the transient
duration. At first, with J= 0.0026 kg.m2, stator current, stator flux, rotor flux, speed
and torque require around 0.18 second to reach steady state (see figure 3.11, 3.12,
3.13 and 3.14). However, with J= 1 kg.m2, they require around 12 second and the
oscillation during the transient time has increased. Based on these, it can be clearly
noticed that the increase of moment of inertia leads to the increase of the transient
duration. Since the starting current (15Amp) is about 5times than the rated current
(3.63 Amp) as shown in figures (3.11 and 3.15) respectively, the increase of
transient duration will significantly affect the motor windings and it may damage
the motor.
Another point to be noticed from figures (3.11, 3.13, 3.15 and 3.17) is that the
RMS values of stator current and rotor flux are 2.178 Amp and 0.6563 Wb
respectively and these values are near the rated values which are calculated
previously. As a result, it can be clearly stated that moment of inertia affects the
machine start up.
3.2.3 Induction Motor Behavior at Different Load Torque with J= 0.0026 kg.m2

In order to investigate the effect of load torque on the behavior of induction


motor, moment of inertia is fixed (J=0.0026 kg.m2) and several values of load torque
( 5 Nm, 10.1Nm rated values and 20 Nm)are applied.

Figures (3.19, 3.20, 3.21 and 3.22) show stator current, stator flux, rotor flux
and speed torque characteristic respectively and it can be noticed that transient
duration is around 0.2 second. The RMS values of stator current and rotor flux are
2.556 Amp and 0.6846 respectively and torque is 5 Nm (see figure 4.15).

Figure3.19: Peak and RMS Stator Current at TL=5Nm and J=0.0026kg.m 2[Researcher]
Chapter 3 35 Modeling of Induction Motor

Figure3.20: Peak and RMS Stator Flux at TL=5Nm and J=0.0026kg.m2 [Researcher]

Figure3.21: Peak and RMS Rotor Flux at TL=5Nm and J=0.0026kg.m2 [Researcher]

Figure3.22: Speed and torque VS time at TL=5Nm and J=0.0026kg.m2 [Researcher]


Chapter 3 36 Modeling of Induction Motor

Figures (3.23, 3.24, 3.25 and 3.26) present the motor performance at full
load (10.1N.m). As it is shown in figures, the transient duration is slightly more than
0.2 second and from figures (3.23 and 3.24) it can be seen that the RMS values of
the stator current and rotor flux are 3.636 Amp and 0.667 Wb respectively. In
comparison to rated values (𝐼𝑠 = 3.63 𝐴𝑚𝑝 𝑎𝑛𝑑 𝛹𝑟 = 0.698 ) which are calculated
theoretically, it can be seen that they are not exactly the same because in theoretical
calculation to be able to calculate, in each step certain parameters are neglected due
to minor effect such as neglecting magnetization inductance for calculating leakage
inductances and neglecting leakage inductances and stator resistor in calculation of
Lo and Rr.
An important point to be declared is that from all figures in this section, it
can be noticed that the increase of load torque has affected the transient time and it
has shown that by increasing the load torque (0, 5, and 10.1) the transient duration
increases. As shown in all figures, during transient starting current is very high (5
than ratted) therefore, with more transient duration, this high current will affect the
motor and it may damage the windings. This is one of the reasons which makes the
direct operation method not preferred to be utilized when good transient
performance is required. This high starting current needs to be controlled as shown
in other methods of operation.

Figure3.23: Peak and RMS Stator Current at TL=10.1Nm and J=0.0026kg.m2 [Researcher]
Chapter 3 37 Modeling of Induction Motor

Figure3.24: Peak and RMS Stator Flux at TL=10.1Nm and J=0.0026kg.m2 [Researcher]

Figure3.25: Peak and RMS Rotor Flux at TL=10.1Nm and J=0.0026kg.m2 [Researcher]

Figure3.26: Speed and torque VS time at TL=10.1Nm and J=0.0026kg.m2 [Researcher]


Chapter 3 38 Modeling of Induction Motor

Finally, the performance of induction motor when the load torque is more
than rated value is shown in figures below (3.27, 3.28, 3.29 and 3.30). In these
figures a 20 Nm of load is applied and it can be clearly seen that the stator current
(15Amp figure 4.20) is always around 5 times bigger than rated value (3.63) and
rotor flux is approximately zero (see figure 3.29). Another important point to be
stated is that theoretically the rotor is rotating in reverse direction (see figure 3.30)
with a very high stator current which leads to the damage of the motor if this load
is applied with direct on line operation (DOL). Consequently, it can be certainly said
that the load torque is a parameter which affects the machine start up.
However, in the situation of rotating the rotor of induction machine in reverse
direction, the induction motor acts as a plugging.

Figure3.27: Peak and RMS Stator Current at (2*TLrated) TL=20Nm and J=0.0026kg.m 2 [Researcher]

Figure3.28: Peak and RMS Stator Flux at TL=20Nm and J=0.0026kg.m2[Researcher]


Chapter 3 39 Modeling of Induction Motor

Figure3.29: Peak and RMS Rotor Flux at TL=20Nm and J=0.0026kg.m2 [Researcher]

Figure3.30: Speed and torque VS time at TL=20Nm and J=0.0026kg.m2 [Researcher]


Finally, Rotor voltage and current is plotted in simulation at full load as
showed in figure 31 and the power factor and efficiency of induction motor when
the load torque (0,5 and 10) which are plotted in simulation as shown in Figures
(32,and 33). In these figures it can be clearly showed that by increasing load torque
efficiency is increased. In addition , power factor also increases this is due to angle
between voltage and current at no load the angle about 84 degree so cosine theta
near 0.2 but by increasing the load torque it is about 140 degree so cosine theta
increasing and which is equal near 0.8 as described in figure (34 and 35).
Consequently, it can be certainly said that the load torque is the important factor
which is affected to the machine start up.
Chapter 3 40 Modeling of Induction Motor

Figure3.31: Rotor Voltage and Current at TL=10NM [Researcher]

Figure3.32: Power factor with TL=0, 5, 10 Figure3.33: Efficiency with TL=0,


NM[Researcher] 5,10NM[Researcher]
Chapter 3 41 Modeling of Induction Motor

Figure3.34: Angle between stator volt and stator Figure3.35: Angle between stator volt and stator
current at TL=0 NM [Researcher] current at TL=10[Researcher]

3.2.4 Effect of Friction Coefficient on Motor Performance:

Friction coefficient has the major effect on the motor performance, When the
friction coefficient increased the value of the speed during transient is decreased
because of it is developed mechanical loss of the motor, as shown in figure 3.36.

Figure3.36: Effect of Friction coefficient on motor performance[Researcher]


Chapter 3 42 Modeling of Induction Motor

3.3. Controller Design


In order to design and build a model and simulation of vector controller, it
is required to design a controller for current loop, flux loop and speed loop. In this
section, a PI controller will be designed for each loop basing on the parameters of
induction machine and given specification. The block diagram of general PI
controller is shown in figure 3.37.

Figure3.37: PI Controller Block diagram[Researcher]

X*(s) is reference input and X(s) is output of the plant. Gc(s) is the transfer
function of the PI controller and Gp(s) is the transfer function of the plant (IM). In
a control philosophy, current loop must be always much faster than the speed loop
[36]
.
3.3.1 d-q Current Loop PI Controller

A PI controller for the current loop will be designed depending on the


specifications shown in table 3.4.
Table3.4: Current loop specifications
Specification Value
Natural frequency 𝜔𝑛 200 Hz, 1256.63 rad/s
Damping factor ( ) 0.7
Stator time constant ( s) 0.01202 S
Stator Resistor 4.1
Rated isd* 2.178 Amp
Rated isq* 2.904 Amp

Stator resistor and stator time constant are calculated previously.


Considering PI controller scheme, the transfer functions of the system are driven as
shown below.
𝑑 𝐿𝑜 𝑑
𝑣𝑠𝑑= 𝑅𝑠 𝑖𝑠𝑑 + 𝜎𝐿𝑠 𝑖𝑠𝑑 − 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑞 + 𝜑
𝑑𝑡 𝐿𝑟 𝑑𝑡 𝑟𝑑
Chapter 3 43 Modeling of Induction Motor

𝑑 𝐿𝑜
𝑣𝑠𝑞= 𝑅𝑠 𝑖𝑠𝑞 + 𝜎𝐿𝑠 𝑖𝑠𝑞 + 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑑 + 𝑤𝑒 𝜑𝑟𝑑
𝑑𝑡 𝐿𝑟
𝑑
𝑣𝑠𝑑= 𝑅𝑠 𝑖𝑠𝑑 + 𝜎𝐿𝑠 𝑖  𝑣𝑠𝑑= 𝑅𝑠 𝑖𝑠𝑑 + 𝜎𝐿𝑠 𝑠𝑖𝑠𝑑  𝑣𝑠𝑑= (𝑅𝑠 + 𝜎𝐿𝑠 𝑠) 𝑖𝑠𝑑
𝑑𝑡 𝑠𝑑
1
𝑖𝑠𝑑 = 𝑣 
(𝑅𝑠 +𝜎𝐿𝑠 𝑆) 𝑠𝑑
1
𝑅𝑠 +𝜏𝑠 1 1 20.3
𝐺𝑝(𝑠) = 1 Where 𝑘 =
𝑅𝑠 +𝜏𝑠
𝑎𝑛𝑑 𝑝 =
𝜏𝑠
 𝐺𝑝(𝑠) = 𝑠+83.2 by
𝑆+
𝜏𝑠
substituting parameters
𝑘𝑖
Gc(s) =
kp(s+a)
, where 𝑎 =
s 𝑘𝑝

X*(s) = Isdq*(s) and X(s) = Isdq(s)

Based on the controlled theory the closed loop transfer function will be as shown
below:-
𝐼𝑠𝑑𝑞(𝑠) 20.3𝑘𝑝(𝑠+𝑎)
 𝐼𝑠𝑑𝑞∗(𝑠)
=
𝑠 2 +(20.3𝑘𝑝+83.2)𝑠+20.3𝑘𝑝𝑎

Since the closed loop transfer function is the second order, the values of 𝑘p
𝑎𝑛𝑑 𝑎 can be found by comparing the denominator of the above equation with the
denominator of the general form of the second order transfer function which is
shown below.
𝑠2 + 2𝜀𝜔𝑛𝑠 + 𝜔𝑛2 Compering with the denominator of

(20.3𝑘p + 83.2) = 2 𝜀𝜔𝑛  (20.3𝑘p + 83.2) = 2 ∗ 0.7 ∗ 1256.63  𝑘p = 82.5656


20.3∗ 𝑘p∗ 𝑎 = 𝜔𝑛2  20.3∗ 82.5656 ∗ 𝑎 = 1256.632  𝑎 = 942.15

Now, by substituting 𝑘p 𝑎𝑛𝑑 𝑎, the PI controller can be obtained.


82.5656(𝑠+942.15)
𝐺𝑐(𝑠) =
𝑠

The dq current closed loop block diagram is shown in figure3.38.


Chapter 3 44 Modeling of Induction Motor

Figure3.38: pi controller for dq Current loop[Researcher]


The response of the dq current closed loop system needs around 0.007 second
to reach steady state condition as it can be seen in figure 3.39.

Figure3.39: Closed loop dq Current Response [Researcher]


3.3.2 Flux loop PI Controller

A flux loop PI controller will be designed basing on the specifications shown


in table 3.5.
Table3.5: Flux loop specifications

Specification Value
Natural frequency 𝜔𝑛 10 Hz, 62.83 rad/s
Damping factor ( ) 0.7
Rotor time constant ( R) 0.05764 S
Rated imrd* 2.178 Amp
Chapter 3 45 Modeling of Induction Motor

Rotor time constant and Imrd are obtained previously. Considering PI


controller block diagram, the transfer functions of the flux loop can be driven as
shown below.
𝐼𝑠𝑑 𝐼𝑚𝑟𝑑 1
𝐼𝑚𝑟𝑑 =  𝐺𝑝(𝑠) = =
𝜏𝑟 𝑠+1 𝐼𝑠𝑑 𝑡𝑟∗ 𝑠+1

1⁄ 1 1 17.35
𝜏𝑟
𝐺𝑝(𝑠) = 1
𝑠+ ⁄𝜏𝑟
Where 𝑘 =
𝜏𝑟
𝑎𝑛𝑑 𝑝 =
𝜏𝑠
 𝐺𝑝(𝑠) = 𝑠+17.35 by substituting
parameters
𝑘𝑝(𝑠+𝑎)
𝐺𝑐(𝑠) =
𝑠

X*(s) = Imrd*(s) and X(s) = Imrd(s)

Similar to the previous section, depending on the control theory the closed loop
transfer function will be as shown below.
𝐼𝑚𝑟𝑑(𝑠) 17.35𝑘𝑝(𝑠+𝑎)
 𝐼𝑚𝑟𝑑∗(𝑠) = 𝑠2+(17.35𝑘𝑝+17.35)𝑠+17.35𝑘𝑝𝑎

Again, by comparing the denominator of the closed loop transfer function


with the dominator of the general form of second order transfer, the values of 𝑘p
𝑎𝑛𝑑 𝑎 can be calculated.
(17.35𝑘p + 17.35) = 2 𝜀𝜔𝑛  (17.35𝑘pp + 17.35) = 2 ∗ 0.7 ∗ 62.83  𝑘p = 4.07
17.35∗ 𝑘p ∗ 𝑎 = 𝜔𝑛2  17.35∗ 4.07 ∗ 𝑎 = 62.832  𝑎 = 55.9
By substituting 𝑘p, the flux loop PI controller can be driven as shown below.
4.07(𝑠+55.9)
𝐺𝑐(𝑠) =
𝑠

Now, the flux closed loop can be obtained as shown in figure 3.40.

Figure3.40: flux closed loop diagram[Researcher]


The response of the flux closed loop system takes around 0.1 second to reach
steady state condition as shown in figure 3.41.
Chapter 3 46 Modeling of Induction Motor

Figure3.41: Flux closed loop response [Researcher]


3.3.3 Speed Loop PI Controller

A speed loop PI controller will be designed based on the specifications shown


in table 3.6.
Table3.6: Speed loop Specifications

Specification Value
Natural frequency 𝜔𝑛 3 Hz, 18.85 rad/s
Damping factor ( ) 0.7
Number of pole 4
Stator Resistor 4.1
Rated isd 2.178Amp
MOI 0.0026 kg.m2
Rotor inductance (Lr) 0.348365 H
Magnetizing inductance 0.32063 H
(Lo)
Chapter 3 47 Modeling of Induction Motor

Isd, Lr and Lo are calculated previously and moment of inertia which is


(0.0026 kg.m2). Considering PI controller scheme, the transfer functions of the
system are driven as shown below.
𝑑
𝑇𝑒 = 𝑇𝐿𝑜𝑎𝑑 + 𝑗 𝑤𝑟 + 𝐵𝑣 𝑤𝑟 + 𝐵𝑎 𝑤𝑟 2
𝑑𝑡
𝑇𝑒 = 𝑇𝐿𝑜𝑎𝑑 + 𝑗𝑆𝑤𝑟 + 𝐵𝑣 𝑤𝑟
1⁄
𝑗
𝑤𝑟 = (𝑇𝑒 − 𝑇𝐿𝑜𝑎𝑑 )
𝐵𝑣
𝑆 + ⁄𝑗
𝑘𝑡
𝑗 𝑘𝑡 𝐵𝑣
𝐺𝑝(𝑠) = 𝑤ℎ𝑒𝑟𝑒 𝑘 = 𝑎𝑛𝑑 𝑝 =
𝐵 𝑗 𝑗
𝑠+ 𝑣
𝑗

Viscous friction coefficient (Bv) which are calculated in section 3.1 which
is equal (0.0084Nm/rad/ second) and this makes 𝑝 = 3.23. kt is called torque constant
which can be driven from torque equation as shown below.
𝑝 𝐿𝑜 2
𝑇 = (3 ∗ ∗ ∗ 𝑖𝑚𝑟𝑑) ∗ 𝑖𝑠𝑞𝑇 = 𝑘𝑡 ∗ 𝑖𝑠𝑞
2 𝐿𝑟
𝑝 𝐿𝑜 2
𝑘𝑡 = (3 ∗ ∗ ∗ 𝑖𝑚𝑟𝑑) 𝑘𝑡 = 3.8564
2 𝐿𝑟
3.8564
1483.2
𝐺𝑝(𝑠) = 0.0026
𝑠+3.23
 𝐺𝑝(𝑠) = 𝑠+3.23
𝑘𝑝(𝑠+𝑎)
𝐺𝑐(𝑠) =
𝑠

X*(s) = Wr*(s) and X(s) = Wr(s)

Basing on the control theory, the speed closed loop transfer function can be written
𝑊𝑟(𝑠) 𝐺(𝑠)
as shown below. =
𝑊𝑟∗(𝑠)

1+𝐺(𝑠)

𝑊𝑟(𝑠) 1483.2𝑘𝑝(𝑠+𝑎)
=
𝑊𝑟∗(𝑠) 𝑠 2 +(1483.2𝑘𝑝+3.23)𝑠+1483.2𝑘𝑝∗𝑎

Similar to the previous PI controller, by comparing the denominator of the


closed loop transfer function with the dominator of the general form of second order
transfer, the values of 𝑘p 𝑎𝑛𝑑 𝑎 can be found.
1483.2𝑘p+3.23 = 2 𝜀𝜔𝑛  1483.2𝑘p+3.23= 2 ∗ 0.7 ∗ 18.85 𝑘p = 0.0156
Chapter 3 48 Modeling of Induction Motor

1483.2∗ 𝑘p ∗ 𝑎 = 𝜔𝑛2 1483.2 ∗ 0.0156∗ 𝑎 = 18.852  𝑎 = 15.342

Now, by substituting 𝑘p 𝑎𝑛𝑑 𝑎, the PI controller can be obtained.


0.0156(𝑠+15.342)
𝐺𝑐(𝑠) =
𝑠
The speed closed loop system can be drawn as shown in figure 3.42.

Figure3.42: speed closed loop[Researcher]


The response of the speed closed loop system requires 0.5 second to reach
steady state condition as shown in figure 3.43. As it was expected, it can be noticed
that the speed loop response is much slower (100 times slower) than current loop
response.

Figure3.43: speed closed Response[Researcher]

3.3.4. State Space Model with Controllability and Observability.

State equation from transfer function:


Consider the general differential equation
𝑑𝑛 𝑦 𝑑 𝑛−1 𝑦 𝑑𝑦
+ 𝑎(𝑛 − 1) +. . +𝑎1 + 𝑎0
𝑑𝑡 𝑛 𝑑𝑡 𝑛−1 𝑑𝑡
𝑑 𝑛−1 𝑢 𝑑𝑢
= 𝑏(𝑛 − 1) 𝑛−1 +. . +𝑏1 + 𝑏0𝑢 ….
𝑑𝑡 𝑑𝑡
………… (3.32)
Equation (3.32) can be represented by the transfer function shown below
Chapter 3 49 Modeling of Induction Motor

Also, the equation (3.32) can be defined as a set of variables such that
𝑥1 . = 𝑥2
𝑥2 . = 𝑥3
. .
. .
. .
𝑥𝑛 . = −𝑎0 𝑥1 − 𝑎1 𝑥2 − ⋯ − 𝑎𝑛−1 𝑥𝑛 + 𝑢
And an output equation is
𝑦 = 𝑏0 𝑥1 + 𝑏1 𝑥2 + ⋯ + 𝑏𝑛−1 𝑥𝑛
Then the state equation is
𝑥1 . 0 1 0 … 0 𝑥1 0
.
𝑥2 0 0 1 … 0 𝑥 2 0
⋮ = ⋮ ⋮ . . . ⋮ + ⋮ 𝑢 …….
𝑥𝑛−1 . 0 0 0 … 1 𝑥𝑛−1 0
.
( 𝑥𝑛 ) (−𝑎0 −𝑎1 −𝑎2 … −𝑎𝑛−1 ) ( 𝑥𝑛 ) (1)
(3.33)
The state space representation in equation (3.33) is called the controllable
canonical form and the output equation is
𝑥1
𝑥2
𝑦 = (𝑏0 𝑏1 𝑏2 ⋯ 𝑏𝑛−1 ) 𝑥3

(𝑥𝑛 )
The concepts of controllability and observability were introduced by Kalman
(1960) and play an important role in the control of multivariable system. A system
is said to be controllable if a control vector u (t) exists and will transfer the system
from any initial state x (t0) to some final state x (t) in a finite time interval. A system
Chapter 3 50 Modeling of Induction Motor

it said to be observable if at time t0, the system state x (t0) can be exactly determined
from observation of the output y (t) over a finite time interval.
The previously described system can be represented as the state equation below.
𝑥 . = 𝐴𝑥 + 𝐵𝑢
𝑦 = 𝐶𝑥 + 𝐷𝑢
Then a sufficient condition for complete state controllability and is that the n*n
matrix
𝑀 = [𝐵: 𝐴𝐵: … … . : 𝐴𝑛−1 𝐵]
Contains n linearity independent row or column vectors, i.e.is of rank n(that
is , the matrix is non –singular ,i.e determinant is not zero .then the system is
controllable[36].
The system described by equation below is completely observable if the n*n
matrix
𝑁 = [𝐶 𝑇 : 𝐴𝑇 𝐶 𝑇 : … . .: (𝐴𝑇 )𝑛−1 𝐶 𝑇
Is of rank n i.e. is non –singular having non-zero determinant.
3.3.4.1. Controllability and Observability of dq Current Loop Controller.
The dq current closed loop block diagram as described in previous section is
shown in figure 3.44.

Figure3.44: dq current closed loop controller[Researcher]


Closed Loop transfer function of dq current loop controller is
𝐼𝑠𝑑𝑞(𝑠) 20.3𝑘𝑝(𝑠 + 𝑎)
= 2
𝐼𝑠𝑑𝑞 ∗ (𝑠) 𝑠 + (20.3𝑘𝑝 + 83.2)𝑠 + 20.3𝑘𝑝𝑎
Now, by substituting 𝑘p = 82.5656 𝑎 = 942.15 the closed loop can be obtained.
Chapter 3 51 Modeling of Induction Motor

𝐼𝑠𝑑𝑞(𝑠) 1676 𝑠 + 1579120


= 2
𝐼𝑠𝑑𝑞 ∗ (𝑠) 𝑠 + 1759 𝑠 + 1579120
Then the state equation is
0 1 𝑥1 0
[𝑥′1] = [ ] [ ]+ [ ]∗𝑢
𝑥′2 −1579120 −1759 𝑥2 1
The output equation is
𝑥1
𝑦 = [1579120 1676 ] [ ]
𝑥2
0 1 0
𝐴=[ ] , 𝐵=[ ] , 𝐶 = [1579120 1676 ]
−1579120 −1759 1
0 −1579120 1579120
𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑒 𝑜𝑓 𝐴 𝑖𝑠 [ ] , 𝑎𝑛𝑑 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑒 𝑜𝑓 𝐶 𝑖𝑠 [ ]
1 −1759 1676
Then the Controllability of dq current loop controller can be found by this formula
𝑀 = [𝐵: 𝐴 ∗ 𝐵 ]
0 1 0 1
𝐴∗𝐵 =[ ] ∗[ ] 𝐴∗𝐵 =[ ]
−1579120 −1759 1 −1759
0 1
𝑆𝑜, 𝑀=[ ]
1 −1759
M matrix is non-singular since it has a non-zero determination (Det=-1). Also,
the two row and column vectors can be seen to be linearity independent, so it’s a
rank 2 and therefore the system is controllable.
Also, the Observability of dq current loop controller can be found by this
formula
𝑁 = [𝐶𝑡: 𝐴𝑡 ∗ 𝐶𝑡 ]
𝑁 = [𝐶𝑡: 𝐴𝑡 ∗ 𝐶𝑡 ]
0 −15791201 1579120
𝐴𝑡 ∗ 𝐶𝑡 = [ ] ∗[ ] 
1 −1759 1676
−2.6 ∗ 10^9 1579120 −2.6 ∗ 10^9
𝐴𝑡 ∗ 𝐶𝑡 = [ ] 𝑆𝑜, 𝑁=[ ]
−1.4 ∗ 10^6 1676 −1.4 ∗ 10^6
N matrix is non-singular since it has a non-zero determination
(Det=2.2*10^12). Also, the two row and column vectors can be seen to be linearity
independent, so it’s a rank 2 and therefore the system is observable.
Chapter 3 52 Modeling of Induction Motor

3.3.4.2 Controllability and Observability of Flux Loop Controller


The flux loop block diagram is shown in figure 3.45.

Figure3.45: Flux closed loop controller[Researcher]


Closed Loop transfer function of flux loop controller is
𝐼𝑚𝑟𝑑(𝑠) 17.35𝑘𝑝(𝑠 + 𝑎)
= 2
𝐼𝑚𝑟𝑑 ∗ (𝑠) 𝑠 + (17.35𝑘𝑝 + 17.35)𝑠 + 17.35𝑘𝑝𝑎
Now, by substituting 𝑘p = 4.07 𝑎 = 55.9 the closed loop can be obtained.
𝐼𝑚𝑟𝑑(𝑠) 70.6 𝑠 + 3948
= 2
𝐼𝑚𝑟𝑑 ∗ (𝑠) 𝑠 + 87.9 𝑠 + 3948
Then the state equation is
0 1 𝑥1 0
[𝑥′1] = [ ] [ ]+ [ ]∗𝑢
𝑥′2 −3948 −87.9 𝑥2 1
The output equation is
𝑥1
𝑦 = [3948 70.6 ] [ ]
𝑥2
0 1 0
𝐴=[ ] , 𝐵=[ ] , 𝐶 = [3948 70.6 ]
−3948 −87.9 1
0 −3948 3948
𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑒 𝑜𝑓 𝐴 𝑖𝑠 [ ] , 𝑎𝑛𝑑 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑒 𝑜𝑓 𝐶 𝑖𝑠 [ ]
1 −87.9 70.6
Then the Controllability of flux loop controller can be found by this formula
𝑀 = [𝐵: 𝐴 ∗ 𝐵 ]
0 1 0 1
𝐴∗𝐵 =[ ] ∗[ ] 𝐴∗𝐵 =[ ]
−3948 −87.9 1 −87.9
0 1
𝑆𝑜, 𝑀=[ ]
1 −87.9
Chapter 3 53 Modeling of Induction Motor

M matrix is non-singular since it has a non-zero determination (Det=-1).


Also the two row and column vectors can be seen to be linearity independent, so it’s
a rank 2 and therefore the system is controllable.
Also the Observability of flux controller can be found by this formula
𝑁 = [𝐶𝑡: 𝐴𝑡 ∗ 𝐶𝑡 ]
𝑁 = [𝐶𝑡: 𝐴𝑡 ∗ 𝐶𝑡 ]
0 −3948 3948 −2.8 ∗ 10^5
𝐴𝑡 ∗ 𝐶𝑡 = [ ] ∗[ ] 𝐴𝑡 ∗ 𝐶𝑡 = [ ]
1 −87.9 70.6 −2.26 ∗ 10^3
3948 −2.8 ∗ 10^5
𝑆𝑜, 𝑁=[ ]
70.6 −2.26 ∗ 10^3
N matrix is non-singular since it has a non-zero determination
(Det=1.1*10^7). Also, the two row and column vectors can be seen to be linearity
independent, so it’s a rank 2 and therefore the system is observable.
3.3.4.3 Controllability and Observability of Speed Loop Controller
The speed closed loop block diagram is shown in figure 3.46.

Figure3.46: Speed closed loop controller[Researcher]


Closed Loop transfer function of speed loop controller is
𝑊𝑟(𝑠) 𝐺(𝑠) 𝑊𝑟(𝑠) 1483.2𝑘𝑝(𝑠 + 𝑎)
=  = 2
𝑊𝑟 ∗ (𝑠) 1 + 𝐺(𝑠) 𝑊𝑟 ∗ (𝑠) 𝑠 + (1483.2𝑘𝑝 + 3.23)𝑠 + 1483.2𝑘𝑝 ∗ 𝑎
Now, by substituting 𝑘p =0.0156 𝑎 = 15.342 the closed loop can be obtained.
𝑊𝑟(𝑠) 23.13792 𝑠 + 354.981
= 2
𝑊𝑟 ∗ (𝑠) 𝑠 + 26.367𝑠 + 354.98
Then the state equation is
0 1 𝑥1 0
[𝑥′1] = [ ] [ ]+ [ ]∗𝑢
𝑥′2 −354.98 −26.367 𝑥2 1
The output equation is
𝑥1
𝑦 = [354.98 23.13792 ] [ ]
𝑥2
Chapter 3 54 Modeling of Induction Motor

0 1 0
𝐴=[ ] , 𝐵=[ ] , 𝐶 = [354.98 23.13792 ]
−354.98 −26.367 1
0 −354.98 354.98
𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑒 𝑜𝑓 𝐴 𝑖𝑠 [ ] , 𝑎𝑛𝑑 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑒 𝑜𝑓 𝐶 𝑖𝑠 [ ]
1 −26.367 23.13792
Then the Controllability of speed loop controller can be found by this formula
𝑀 = [𝐵: 𝐴 ∗ 𝐵 ]
0 1 0 1
𝐴∗𝐵 =[ ] ∗[ ] 𝐴∗𝐵 =[ ]
−354.98 −26.367 1 −26.367
0 1
𝑆𝑜, 𝑀=[ ]
1 −26.367
M matrix is non-singular since it has a non-zero determination (Det=-1).
Also, the two row and column vectors can be seen to be linearity independent, so
it’s a rank 2. Therefore, the system is controllable.
Also, the Observability of speed loop controller can be found by this formula
𝑁 = [𝐶𝑡: 𝐴𝑡 ∗ 𝐶𝑡 ]
𝑁 = [𝐶𝑡: 𝐴𝑡 ∗ 𝐶𝑡 ]
0 −354.98 354.98 −8213.5
𝐴𝑡 ∗ 𝐶𝑡 = [ ] ∗[ ] 𝐴𝑡 ∗ 𝐶𝑡 = [ ]
1 −26.367 23.13792 −255.1
354.98 −8213.5
𝑆𝑜, 𝑁=[ ]
23.13792 −255.1
N matrix is non-singular since it has a non-zero determination (Det=99488.8).
Also, the two row and column vectors can be seen to be linearity independent, so
it’s a rank 2. Therefore, the system is observable.
Chapter 3 55 Modeling of Induction Motor

3.4 Examine Simulations of Vector Controlled IM.


The designed controllers in the previous part will be examined in this
section. At first, current loop will be simulated and tested with different conditions
(Isd=2.178 Amp and Isq=0, Isd=0 and Isq= 2.904 Amp, Isd=2.178 Amp and Isq=
2.904Amp) at no load and rated load. Secondly, the speed loop will be simulated.
3.4.1 Examine Current Loop Controller

In order to use PI controller to control current, speed and flux, the AC


induction machine need to be transformed to DC machine (dq axis). This
transformation is obtained by using (ab-dq) block to convert the output current and
flux of the IM to dq values, and (dq-ab) block for converting the output of the
controllers to ab values to be feed to the induction machine. One of the required
parameter in both blocks (dq-ab and ab-dq) is known as Lamda which is the rotor
flux angle and will be designed basing on the below equations.
𝑑
𝑤𝑒 (𝑡) = 𝜆(𝑡)
𝑑𝑡
𝜆 = ∫ 𝑤𝑒 𝑑𝑡

𝜆 = ∫(𝑤𝑟 + 𝑤𝑠𝑙 )𝑑𝑡


𝑅𝑟
𝑤𝑠𝑙 = ∗ 𝑖𝑠𝑞
𝐿𝑟 ∗ 𝑖𝑚𝑟𝑑
𝑖𝑠𝑞
𝑤𝑠𝑙 = Substituting in the above equation
𝜏𝑟 ∗𝑖𝑚𝑟𝑑
𝑖𝑠𝑞
𝜆 = ∫(𝑤𝑟 + )𝑑𝑡 While for batter result Isq* is used
𝜏𝑟 ∗𝑖𝑚𝑟𝑑
As it can be seen from the equations above, magnetization current (Imrd) is
needed and it can be found as shown below.
𝑖𝑠𝑑
𝑖𝑚𝑟𝑑 =
𝜏𝑟 𝑠 + 1
In order to be able to show the overall model, a subsystem is designed for
torque-speed conversion as shown in figure 3.47.
Chapter 3 56 Modeling of Induction Motor

Figure3.47: Torque speed subsystem[Researcher]


Finally, by creating Lamda block and placing PI controllers for Isd and Isq, the
current loop model can be designed as shown in figure 3.48.

Figure3.48: current Loop Model [Researcher]


3.4.1.1 Examine Current Loop Controller with Rated Isd and Zero Isq at No-
Load and Full-Load Condition
In this part, with settling rated Isd and zero Isq at no-load condition, it is
expected to see field (Ψ𝑟𝑑) which is produced by Isd and zero torque which is
produced by Isq and since the dq rotating frame is oriented on rotor flux, therefore
Chapter 3 57 Modeling of Induction Motor

Ψ𝑟𝑞 = 0 is expected. Since no-load is applied, therefore, speed will be also zero.
Figures (3.49, 3.50) show the simulation results using current loop model to observe
whether the expectations will be obtained or not.

Isdq (Amp)

Fluxdq
Figure3.49: Isdq and Fluxdq responses [Researcher]
Chapter 3 58 Modeling of Induction Motor

Figure3.50: speed and Torque response at no Load [Researcher]


As it can be noticed from figures (3.49 and 3.50), since Isq is zero and no load
is applied, the speed and torque are zero. The flux on d-axis is produced because
Isq is rated and Ψ𝑟𝑞 = 0 as expected due to dq frame orientated on rotor flux.
Next step, settling Isd rated and Isq zero at full-load condition, the simulation
results are same as no-load with one difference which is the rotor rotates at reverse
direction due to applying load torque and there is no torque produced by the motor
to act against the load torque because of zero Isq. Figure 3.51 shows the speed
response of current loop with Isd rated and Isq zero at full load.

Figure3.51: speed and Torque Response at full load [Researcher]


Chapter 3 59 Modeling of Induction Motor

3.4.1.2 Examine Current Loop Controller with zero Isd and Rated Isq at No-
Load and Full-Load Condition
In this section, zero Isd and rated Isq will be settled at no load and full load.
The expectations are, firstly, Ψ𝑟𝑞 = 0 due to orientation and Ψ𝑟𝑑 = 0 since it is
produced by Isd. Secondly, zero speed and zero torque. Figures (3.52 and 3.53)
show the responses at no-load.

Figure3.52: Isdq and Ψrdq responses [Researcher]

Figure3.53: Speed and Torque response [Researcher]


As it can be seen from figures above, Isd is produced at transient condition
and very few Ψ𝑟𝑑 is also produced (0.027Wb) and it reduces to a very small value.
These make the motor to produce a small amount of torque which leads to rotate the
rotor at no load. However, once the rated load is applied the rotor will rotate in
reverse direction and the motor torque will be zero as shown in figure 3.54 while
the load is applied at 0.9 second.
Chapter 3 60 Modeling of Induction Motor

Figure3.54: Speed and Torque response (rated load applied at 0.9 second) [Researcher]
3.4.1.3 Examine Current Loop Controller with Rated Isd and Rated Isq at No-
Load and Full-Load Condition
In this section, rated Isd and rated Isq will be settled at no load and full load.
The expectations are, at first, Ψ𝑟𝑞 = 0 due to orientation of dq-axis on rotor flux and
Ψ𝑟𝑑 will be produced since Isd is applied. Secondly, at no-load case, torque is
produced by Isd and speed goes to infinity since there is no speed controller to limit
its increasing. Once a full load is applied, the slop of speed will be changed. Figures
(3.55, 3.56 and 3.57) show the system response at rated Isd and rated Isq.

Figure3.55: Isdq and Ψrdq responses [Researcher]


Chapter 3 61 Modeling of Induction Motor

Figure3.56: Speed and Torque at no load and full load (load applied after 1sec) [Researcher]

Figure3.57: Speed and Torque at full load (load applied at zero) [Researcher]
As it can be seen from the graphs above, the expectations were correct.
3.4.1.4 Setting Speed without Adding Speed Loop.
In the previous section, it can be seen that the actual Isd and Isq will track the
demands within few milliseconds. However, the speed will accelerate to infinity in
an uncontrolled manner.
Chapter 3 62 Modeling of Induction Motor

This acceleration depends on 𝑘𝑡 ∗ 𝐼𝑠𝑞 𝑎𝑛𝑑 𝐽 at no load and 𝑘𝑡 ∗ 𝐼𝑠𝑞, 𝑇𝑙𝑜𝑎𝑑


𝑎𝑛𝑑 𝐽 whenever load is applied. With fixed J it will be depended on 𝑘𝑡 ∗ 𝐼𝑠𝑞 𝑎𝑛𝑑
𝑇𝑙𝑜𝑎𝑑 as shown in equations and figure 3.58 and 3.59.
𝒅𝑾𝒓 𝒌𝒕 ∗ 𝒊𝒔𝒒
= 𝒂𝒕 𝒏𝒐 𝒍𝒐𝒂𝒅
𝒅𝒕 𝒋
𝑑𝑊𝑟 𝑘𝑡 ∗ 𝑖𝑠𝑞 − 𝑇𝑙𝑜𝑎𝑑
= 𝑎𝑡 𝑓𝑢𝑙𝑙 𝑙𝑜𝑎𝑑 𝑎𝑛𝑑 𝑖𝑓 𝑇𝐿 < 𝑘𝑡 ∗ 𝑖𝑠𝑞
𝑑𝑡 𝑗

Figure3.58: Speed Acceleration (No load) [Researcher]

Figure3.59: Speed acceleration load applied at 1 second [Researcher]


In order to control the speed, it is more efficient to design PI controller and
𝑑𝑤𝑟
closed the loop. However, it is possible to make = 0 by applying the load
𝑑𝑡
torque which is equal to the motor torque at the instance when the speed becomes
targeted value.
This way is not the efficient way since the applied torque should be more than rated
which leads to problems and a small issue can lead to accelerating speed to infinity
which can damage the motor.
Chapter 3 63 Modeling of Induction Motor

3.4.1.5 Voltage Compensation


In general, when the load changes the PI controller supplies a desired value
of voltage to increase or decrease the current and this change will affect the flux and
back-emf. In order to overcome changing flux and the back-emf, a voltage
compensator is used and with using voltage compensator, the voltage will be
supplied by the PI controller only to increase and decrease the current. This means
the system is decoupled that is why the compensation term is also called “decoupling
term “. The voltage compensation term is designed based on the green box of the
below equations.

Since electrical speed (We) is needed in the equations, it can be easily obtained
from lamda subsystem as shown in figure 3.60.

Figure 3.60: Lamda subsystem shows (We) in it [Researcher]


Now, the current loop design will voltage compensation term will be as shown
in figure 3.61.
Chapter 3 64 Modeling of Induction Motor

Figure3. 61: Current Loop Model with Compensation term [Researcher]

Now, the responses of the above system will be tested to figure out the
differences between Is-dq with and without Voltage compensator term.

A-Without Voltage compensation term B-With Voltage Compensation term


Figure3.62: Isdq responses with and without Voltage Compensation [Researcher]
As it can be noticed from figure 3.62, without compensation term, in a
transient condition Isd has reached around 3.6 Ampere and it required 9 ms to reach
steady state condition (figure 3.62-A) while with voltage compensation term the
Chapter 3 65 Modeling of Induction Motor

overshoot of the Isd is very small and Isd needs less time to reach steady state value
(figure 3.62-B). The reason behind this is, Isq affects the Isd when there is no voltage
compensation term, the high overshoot occurs due to back-emf term and
the long duration occurs because of (– 𝑊𝑒 ∗ 𝜎 ∗ 𝐿𝑠 ∗ 𝐼𝑠𝑞).

A-Without Voltage compensation term B-With Voltage Compensation term

C- Current responses with and without Voltage Compensator

D-Without Voltage compensation term E-With Voltage compensation term


Figure3.63: Isdq and Speed Torque responses with and without Voltage Compensation[Researcher]
However, when the voltage compensation term is used, Isq will not affect
Isd and the two terms will be decoupled as shown in figure 3.63. This is the reason
Chapter 3 66 Modeling of Induction Motor

for taking less time to reach steady state and producing less overshoot. The two
equations can be written down as below.
𝑑
𝑣𝑠𝑑= 𝑅𝑠 𝑖𝑠𝑑 + 𝜎𝐿𝑠 𝑖
𝑑𝑡 𝑠𝑑
𝑑
𝑣𝑠𝑞= 𝑅𝑠 𝑖𝑠𝑞 + 𝜎𝐿𝑠 𝑖
𝑑𝑡 𝑠𝑞

Another important point to be stated is using voltage compensator term,


which is also called feed forward. It provides less sensitivity to wrong controller and
helps to reduce the dependence of the system on the feedback. Also, by using voltage
compensation term the value of speed when isd=o isq=2.904 is so decreased as
compared without compensation term shown in Figure 3.63_D and 3.63_E , because
with voltage compensation term the overshoot of the Isd is very small as shown in
figure 3.62_B, this means isq has a minor effect on isd and Isd needs less time to
reach steady state value (figure 3.62 -B).
3.4.2 Examine Speed Loop Controller

In this section, a speed loop will be simulated. Since the speed controller is
much slower than the current controller as previously shown, Imrd will reach steady
state (reach to Isd) before the speed transient and flux is also built up. Therefore, for
considering these, a rated rotor flux (Ψ𝑟𝛼 = 0.69 𝑊𝑏) is set at initial time (t=0).
Finally, Isd* is used for voltage compensation term instead of Imrd.
In practice, most of the motors and actuators have limited scope so they saturate
(steady state value). In our practical design the integration action must be stopped
in the controller whenever the motor reaches the limit (steady state). Otherwise,
undesirable overshoot will be produced because of the continuous integration action
by the integrator and this may affect the motor and damage it. For avoiding this
phenomenon (windup) and preventing overshoot in the system response an anti-
windup block is used. The anti-windup integrator is modelled with speed controller
in a subsystem block as shown in figure 3.64.
Chapter 3 67 Modeling of Induction Motor

Figure3.64: Speed controller with Anti-windup integrator [Researcher]


A -2.92 Amp as lower limit and 2.92 Amp for upper limit (1 x Isq_rated)
are used for saturation block and in order to develop high starting torque a limit of
2 x Isq_rated is used in some applications and this is maximum limit for power
electronic convertors. The high limit such as 20*Isq_rated must be prevented
otherwise the motor will be damage due to very high starting current which leads to
burn the windings. More graphs will be presented later in this section. The lookup
table values are used shown in table 3.7.
Table3.7: Lookup Table values
Break point Isq (Amp) value

1 -2.92 0

2 -2.91 1

3 0 1

4 2.91 1

5 2.92 0

At the end, the speed control loop can be modelled as shown in figure 3.65.

Figure3.65: Speed Loop Control [Researcher]


Chapter 3 68 Modeling of Induction Motor

3.4.2.1 Examine the Speed Loop (0 to 1500 rpm) with Initial 𝚿𝒓𝜶 =0.7 𝑾𝒃.
In order to observe how far the transient of rotor flux is eliminating during
speed transient, the rotor flux is scoped with initial time (t=0) Ψ𝑟𝛼 = 0.7 𝑊𝑏 and
with demand speed (0 to 1500 rpm). Figure 3.66 show the results.

Rotor Flux at 𝑟𝛼=0.7 𝑊𝑏


Figure3.66: Rotor Flux [Researcher]

Dq-current at Ψ𝑟𝛼=0.7 𝑊𝑏
Figure3.67: dq-Current [Researcher]
Chapter 3 69 Modeling of Induction Motor

Speed and Torque at Ψ𝑟𝛼=0.7 𝑊𝑏


Figure3.68: Speed and Torque response [Researcher]

Figure3.69: Required Phase voltage applied to motor at full load [Researcher]


In real machine, since the flux will be built up before speed transient, rated
rotor flux (Ψ𝑟𝛼 = 0.7) is applied at t=0 in IM and it can be noticed, flux transient is
almost eliminated as shown in figure 3.66. The change of rotor flux is very minor
during speed transient as it can be seen from figure 3.66. After 2 second when the
Chapter 3 70 Modeling of Induction Motor

load torque is applied it can be noticed that the dq-rotor flux is slightly affected due
to settling speed by responding of Isq* to the error.
During speed transient, Isq and Isd reach steady state in few milliseconds and
they stay at this limit value until the speed reaches its limit, after that Isd stays at
limit value whereas, Isq drops to minimum value and since viscous friction
coefficient (Bv) is very small, the current drops to about zero (see figure 3.67). After
2 second when the load is applied, speed reduces then Isq increases to near its limit
to develop torque so as to return the speed back to its limit.
However, when Ψ𝑟𝛼 = 0.7 𝑊𝑏 at t=0, since rotor flux is already built up,
torque is developed and reached maximum values in few milliseconds (during
current transient) and it stays at its limit until speed reaches steady state. After that
it drops to zero due to the reduction in Isq. Speed reduces when load torque is
applied after two second and the torque increases due to increasing Isq taking speed
back to its limit value. Finally, figure 3.69 shows a necessary voltage which is
applied to the motor for producing enough torque and also in the last section this
help us for determining the amplitude of triangular wave to produce PWM signals.
3.4.2.2 Examine the Speed Loop (1500 to -1500 rpm) with 𝚿𝒓𝜶 =0.7 𝑾𝒃.

In this section, the flux, current, speed and torque will be observed during 0
to 1500 rpm and 1500 to -1500 rpm, it will be done by firstly, a speed from 0 to
1500 rpm and after two seconds a full load will be applied and then after 4 seconds
a speed pf -3000 is applied to obtain transient from 1500 to -1500. Figure 3.70
shows the result

A:dq_current B:dq_current from 4second


[Researcher]
Figure3.70: dq Current
Chapter 3 71 Modeling of Induction Motor

A- dq- Rotor Flux B- Speed-Torque

C- Speed-Torque
Figure3.71: Rotor Flux, Speed and Torque Responses [Researcher]
From 0 to 4 seconds, as previously explained, as it can be noticed from figure
(3.70-A) that at t=4 seconds, at the instant of applying speed of -3000 rpm to gain
transient from 1500 to 1500rpm, Isq dramatically drops to high value (-3.6 Amp)
and back to 2.84 Amp in few milliseconds (see figure 3.70-B) and torque of -
10.75Nm will be developed until the speed reaches steady state (see figure 3.71).
After that, Isq leaves its negative limit back to its positive limit and the torque turns
to its positive state (figure 3.70-B and 3.71-C). Regarding rotor flux, as it can be
observed from figure (3.71-A), the rotor flux slightly changes during speed transient
for both cases. This minor change is due to the change of Isq.
3.4.2.3 Examine the Speed Loop (0 to1500 rpm) with 𝚿𝒓𝜶 = 0.7 Wb at 2 x Rated
Isq
In previous sections when a full load torque is applied, since rated Isq is used
for limiting the starting torque while the speed transient was around 6 Nm. In order
Chapter 3 72 Modeling of Induction Motor

to increase starting torque a limited range has increased to 2 x rated Isq value (5.808
upper limits and – 5.808 lower limits). The flux, current speed and torque can be
observed in figures below

Figure3.72:Dq_ Current response in different simulation time [Researcher]

A:Dq-Rotor flux B:Speed _Torque


Figure3.73: Rotor Flux, Speed and Torque Responses [Researcher]

As it can be noticed from figure above, by doubling the limited range of the
limiter (2 x Isq_rated) Isq and torque have increased (doubled) during speed
transient (T=12 Nm and current 5.8 Amp). When the speed reaches steady state, Isq
and torque will be reduced to zero as shown in figure (3.72 and 3.73-B) respectively.
Regarding rotor flux it can be noticed from figure (3.73-A), although it changes
slightly during speed transient, its change is more than previous section (when 1 x
Isq-rated we used). The range of the limiter depends on the type of application, but
a range of 2 x Isq-rated is commonly used.
Chapter 3 73 Modeling of Induction Motor

3.4.2.4 Examine the Speed Loop (0 to 1500 rpm) with 𝚿𝒓𝜶 = 0.7 Wb at 20 x
Rated Isq
In this section, a range of 20 x Isq-rated to observe the flux, current, speed
and torque. The expectations are, firstly, very large current and high torque during
speed transient. Rotor flux will be affected due to the high current. Figures below
show the result with applying 20 x Isq-rated.

A- Dq-current at short simulation time B- Dq-current


Figure3.74: Current response [Researcher]

A- Dq-Rotor flux B- Speed-Torque


Chapter 3 74 Modeling of Induction Motor

C- d-rotro flux D- Speed-Torque


Figure3.75: Rotor Flux, Speed and Torque Responses [Researcher]
As it can be noticed from figures above, during speed transient, Isq is very
high (figure 3.74). Consequently, torque is very large (figure 3.75-B, D). Therefore,
the transient of rotor flux appears again and dq-rotor flux has changed as shown in
figure (3.75-A, C) (d-flux from 0.35 Wb to 0.23 wb then to 0.7wb and q-flux from
0 to -0.17 Wb) and they take 0.05 second to end these oscillations. As a result, it
can be clear that these oscillations and large current will leads to the damage the
rotor and burn motors winding and it will affect the power convertors since they are
designed to be stand for twice the rated value.
Chapter 3 75 Modeling of Induction Motor

3.5 Effect of Rotor Time Constant Variation and Field Weakening.


In this section, the effect of the wrong value of the time constant will be
explained and a model for rotor time constant identification will be designed and
evaluated. Finally, a field weakening lookup table will be calculated and
implemented.
3.5.1 Rotor Time Constant Variation

One of the most important information to design a proper vector control in


rotor flux orientation (RFO) is the information on the position of the flux and it can
be calculated using mathematical model of induction machine. For the RFO
feedback technique, the stator voltage, stator current and rotor speed (position) are
measured and used with some commanded values in the rotor estimator. What the
RFO vector controller think as it is shown in figure 3.76.

Figure3.76: Controller think [22]


In figure 3.76, the hat values are the controller value and the others are real
value. Delta symbol is the angle between d-axis and Is and Lamda symbol is the
angle between and daxis. The operation of the controller depends on the dq
reference frame which calculated by the position of the rotor flux angle and the
accuracy of the controller is dependent on the accuracy of the parameter
information.

Rotor time constant is one of the parameters that can be varied because it
depends on Rr which is a function of temperature.
From the equations below the effect of correct and incorrect rotor constant can be
explained.
𝐿𝑅
𝜏𝑟 =
𝑅𝑅
Chapter 3 76 Modeling of Induction Motor

𝑅𝑟 1 𝑖𝑠𝑞
𝑤𝑠𝑙 = 𝑖𝑠𝑞 =
𝐿𝑟 𝑖𝑚𝑟𝑑 𝜏𝑟 𝑖𝑠𝑑

Using q-axis equations and when current transient finish Isd=Imrd

At the controller there is


𝑅𝑟 ⋏ ⋏
1 𝑖𝑠𝑞 ⋏
𝑤𝑠𝑙 = ⋏ 𝑖𝑠𝑞 = ⋏
𝐿𝑟 𝑖𝑚𝑟𝑑⋏ 𝜏𝑟 𝑖𝑠𝑑 ⋏

If rotor time constant is correct and equal to the actual rotor time constant then
1 𝑖𝑠𝑞 ⋏ 1 𝑖𝑠𝑞
=
𝜏𝑟 ⋏ 𝑖𝑠𝑑 ⋏ 𝜏𝑟 𝑖𝑠𝑑
𝐼𝑓 𝜏𝑟 ⋏ = 𝜏𝑟 𝑡ℎ𝑒𝑛 𝛿 ⋏ = 𝛿
However, if rotor time constant is incorrect and not equal to the actual rotor time
constant then
𝐼𝑓 𝜏𝑟 ⋏ ≠ 𝜏𝑟 𝑡ℎ𝑒𝑛 𝑖𝑡 𝑐𝑎𝑛 𝑏𝑒 𝑠𝑡𝑎𝑡𝑒 𝑡ℎ𝑎𝑡 𝜆⋏ ≠ 𝜆
Now, the unequal of real rotor flux angle and controller rotor flux angle means
orientation loss. Orientation loss means Ψ𝑟𝑞 ≠ 0 and dq-axis in the controller is
shifted from the real dq-axis. The incorrectness of rotor time constant in the
controller can be either higher than actual value or lower. Each case has different
effect on the motor performance and both of them will be explained in the following
sections and the load is applied at time = 2 seconds for all cases.
3.5.1.1 Actual Rotor Time Constant Less than Controller Rotor Time Constant
In general, the Rr is a function of temperature, thus, it changes by 50% to
100% and this will lead to change the rotor time constant. In the previous section
the rotor time constant is calculated and it is 57.64 ms. This value is used for
designing the controllers. For this section a value of 0.03s (Rr increased) will be
used in the lamda function calculator block in the simulation model. The
expectations are, firstly, higher Isq will be produced and the controller will keep Isd
at rated value thus, applied voltage to the motor will reduce. As a result, Lo will be
reduced. Secondly, Ψ𝑟𝑞 and Ψ𝑟𝑑 transient cannot be eliminated and when load is
applied Ψ𝑟𝑞 will have negative value and Ψ𝑟𝑑 will be reduced due to reduction of
Lo, accordingly, the produced torque will be reduced but the controller think the
torque is at rated value. Therefore, if rated torque is applied the rotor will be
Chapter 3 77 Modeling of Induction Motor

uncontrolled and rotate in the reverse direction or it can be stated that the motor
cannot drive the torque. Figures below show the results at 𝜏𝑟= 0.05764 s and 𝜏𝑟=0.03
𝑠 and load is applied at t=2 second.

A- Dq-Current at correct value 𝜏𝑟 =0.05764 s B- Dq-Current at 𝜏𝑟 =0.03 s


Figure3.77: Current response at different 𝜏𝑟 and at applied torque = 10 Nm [Researcher]

A- Dq-Rotor flux at correct value 𝜏𝑟 =0.05764s B- Dq-Rotor flux 𝜏𝑟 =0.03 s


Figure3.78: Flux response at different 𝜏𝑟 and at applied torque = 10 Nm [Researcher]
Chapter 3 78 Modeling of Induction Motor

A- Speed torque at correct value 𝜏𝑟 =0.05764s B- Speed torque at 𝜏𝑟 =0.03 s


Figure3.79: Speed and Torque response at different 𝜏𝑟 and at applied torque = 10 Nm [Researcher]
As it can be noticed from figures above, the expectations were correct and if
the full load (10 Nm) is applied the rotor will rotate in reverse direction and it cannot
be controlled because the motor cannot produce torque to drive this load. The
maximum produced torque can be calculated using the above equations and it can
be also determined by reducing the applied torque in the simulation until the
controlled speed will be obtained. After several attempts, it is found that torque of
7.8 Nm is the maximum torque that can be produced under required speed. Figures
below show the responses with a torque of 7.8 Nm at t= 2 second.

A- Applied Voltage to motor at Tr=0.03S B- Applied Voltage to motor at Tr=0.05764 S


Figure 3.80: RMS Applied Voltage response at applied torque = 7.8 Nm [Researcher]
Chapter 3 79 Modeling of Induction Motor

A- Dq-Current at Tr=0.03 S B- Dq-rotor flux at Tr=0.03 s


Figure3.81: Current and Rotor Flux response at applied torque = 7.8 Nm [Researcher]

Figure3.82: Speed and Torque Response at TL=7.8N.m [Researcher]


As it can be observed from figures above, at Tr (0.03 s) the maximum torque
that can be applied is 7.8 Nm (see figure 3.82). When this load is applied Isq= 2.77
Amp (see figure 3.81A) and in comparison, to correct value of Tr (0.05764 s) where
Isq=2.55 Amp (see figure 3.77-A), it can be noticed that Isq has increased. At the
start of simulation dq-rotor fluxes have a great change of almost -0.3 Wb during
speed transient and they returned back to their value after one second (Ψ𝑟𝑞 = 0 and
Ψ𝑟𝑑 = 0.7 Wb). However, when the load is applied the dq-rotor fluxes will be
reduced to Ψ𝑟𝑞 = -0.11 and Ψ𝑟𝑑 = 0.4 Wb due to reduction in Lo. Lo is reduced due
to the reduction of applied voltage (see figure3.80) which is controlled by PI
controllers and PI controllers will make certain to keep Isd at rated value.
Consequently, the maximum produced torque reduced to 7.8Nm. The increasing of
Chapter 3 80 Modeling of Induction Motor

Isq, decreasing of Lo and decreasing of torque, reduce the efficiency and increase
the copper losses.
3.5.1.2 Actual Rotor Time Constant more than Controller Rotor Time Constant
Although in practice, mostly the rotor time constant decreases due to the
change of the resistance by 50% to 100% caused by temperature, a higher rotor time
constant then the normal case will be tested in this section. The rotor time constant
of 0.06 s will be utilized in the lamda function calculator block in the simulation
model. The following expectations are expected. Firstly, in comparison to normal
case, when load is applied, Isq will be reduced and Lo will be increased due to the
increase of applied voltage which is controlled by PI controller to keep Isd at rated
value. Secondly, Ψ𝑟𝑞 and Ψ𝑟𝑑 transient cannot be prevented and when load is
applied Ψ𝑟𝑞 and Ψ𝑟𝑑 will be increased due to increase of Lo. As a result, a higher
torque can be produced however, the machine will be operating at higher saturation
region and this will lead to increase the iron loss which depends on the peak of the
flux density. Figures below show the responses of applied voltage, dq-current, dq-
rotor flux, speed and torque. Load is applied at t= 2 second.

A- Applied Voltage to motor at 𝜏𝑟 =0.06 S B- Apllied Voltage at 𝜏𝑟 =0.05764 s


Figure3.83: RMS Applied Voltage response at applied torque = 10 Nm [Researcher]

A- Dq-Current at 𝜏𝑟 =0.08 S B- Dq-rotor flux at 𝜏𝑟 =0.08 s


Figure3.84: dq-Current and dq-Rotor flux at TL=10 Nm [Researcher]
Chapter 3 81 Modeling of Induction Motor

Figure 3.84-A shows that the Isq is 2.54 Amp when the load is applied, and
it is reduced compering to Isq (2.55 Amp) when Tr is correct (see figure 3.77-A),
accordingly, Lo will increase due to increase of the applied voltage (see figure 3.83).
Regarding rotor flux, it can be observed that the dq-rotor fluxes have a great
overshoot appeared during speed transient and they return to their value after one
second. Additionally, When the load is applied at t=2 second, the dq-rotor fluxes is
increased as shown in figure 3.84-B. Moreover, regarding torque it can be noticed,
from figure 3.85 that the rated torque can be produced and since the d-rotor flux is
increased, the more torque can be produced. Figures below show the maximum
motor produced torque with 𝜏𝑟 =0.06 second and other responses.

Figure3.85: Speed and Torque responses at 𝜏𝑟 = 0.06 second and TL=10 Nm[Researcher]

A- Torque and speed at 𝜏𝑟 =0.06 S B- Torque and speed at correctvalue 𝜏𝑟 =0.05764 s


Figure3.86: Speed and torque at different 𝜏𝑟 and TL=11.5Nm [Researcher]
Chapter 3 82 Modeling of Induction Motor

A- dq-Current at 𝜏𝑟 =0.06 S B- dq-current at correct value 𝜏𝑟 =0.05764 s


Figure3.87: dq current at different 𝜏𝑟 and TL=11.5 Nm [Researcher]

A- dq-Rotor flux at 𝜏𝑟 =0.06S B- dq-Rotor flux at correct value 𝜏𝑟 =0.05764s


Figure3.88: dq Rotor flux at different 𝜏𝑟 and TL=11.5 Nm [Researcher]
From above figures, when the load torque of 11.5 Nm is applied, it can be
noticed that the motor with 𝜏𝑟 =0.06 second can produce a torque to drive the load
(see figure 3.86-A), whereas, when the 𝜏𝑟 is correct value (0.05764 s) at TL=11.5
Nm the motor would not be able to drive the load and the rotor will rotate at reverse
direction (see figure 3.86-B). The reason behind this, as shown in figure 3.88, in
case of incorrect value of 𝜏𝑟 (0.06 s), the drotor flux (0.72 Wb) is more than d-rotor
flux (0.71 Wb) in case of correct value (0.05764 s) due to large Lo which is produced
by higher applied voltage. The Isq is less than Isq in case of correct (0.05764) (see
figure 3.87). However, the orientation loss the increase of dq rotor flux will lead to
the increase in the iron loss and the motor will be in higher saturation region. The
increase of voltage can affect the inverter which may reach to its limit.
Chapter 3 83 Modeling of Induction Motor

3.5.2 Field Weakening Design

As it is known, the increase of speed requires more voltage to be applied and


higher speed will cause violation to applied voltage. In order to eliminate the stator
voltage, violation of the induction machine at high speed, an important and effective
technique is used which is called field weakening. As it is obvious, the speed and
flux is proportional to the induction machines back induced emf which needs to be
less than stator voltage, thus, the reduction of flux will lead to the achievement
higher speed.

When the speed goes over the rated value, the developed torque will be
affected by the other torque component such as friction and windage torque and they
are varying at high speed. Therefore, the torque shape will become nonlinear and
depending on the capacity of the induction motor. The speed can be increased with
the utilization of the field weakening technique which is based on the equation (
) for the constant power operation the speed increases as the torque is reduced.
The torque reduces by reducing the flux and flux reduction will make certain to
prevent violation of applied voltage.
Based on the above explanation, the lookup table for the field weakening can
be implemented and since the flux of the machine depends on Isd. Therefore, the Isd
and speed are used for preparing the lookup table based on ( where
Wr*=1500 rpm, Isd* = 2.178 Amp and Isd= required current for required speed
(Wr) as shown in table 3.8.
Table3.8: Field weakening lookup table
Break point Speed (RPM) Isd (Amp)

1 -2950 1.08

2 -2587.5 1.3

3 -2225 1.6

4 -1862.5 1.8

5 -1500 2.178

6 1500 2.178

7 1862.5 1.8

8 2225 1.6

9 2587.5 1.3

10 2950 1.08
Chapter 3 84 Modeling of Induction Motor

The Curve of the lookup table is shown in figure 3.89.

Figure3.89: Field weakening curve[Researcher]


Now, the input of the field weakening will be speed in rmp and the output
will be Imrd*. Then, the difference between Imrd* and Imrd will be fed to the flux
loop PI controller which is designed in section 3.2 and the output of the controller
will be Isd*. Figure3.90 shows the field weakening subsystem in Matlab simulation.

Figure3.90: Field weakening Subsystem model [Researcher]


Then, the overall model will be as shown in figure 3.91.
Chapter 3 85 Modeling of Induction Motor

Figure3.91: Overall Model including Field Weakening [Researcher]

A step input is used in order to look at torque, flux and current when the
speed increases from zero until it reaches 2950 rmp (309 rad/s). It is found that the
maximum torque which can be produced at speed 2950 rmp is 5 Nm without
considering friction torque (see figure 3.94). Practically, it will be less than 80Nm.
Figures below show the responses of current, flux, speed and torque.

A- dq Current at no-load B- dq Current at Load= 5 Nm


Figure3.92: dq Current Responses (starting current is too high 7.1 times rated and to observe rated it is
cut) [Researcher]
Chapter 3 86 Modeling of Induction Motor

A- dq Flux at no-load B- dq Flux at Load = 80 Nm


Figure3.93: dq Flux Responses [Researcher]

A- Speed and torque at no-load B- Speed and Torque at Load= 5 Nm


Figure3.94: Speed and torque Responses [Researcher]
As it is explained previously and from figures above, it can be noticed that as
the speed increase (figure3.94) the flux will be reduced (figure 3.93). Accordingly,
the torque will be reduced as shown in figure 3.90-B. It can be seen that the Isd at
maximum speed (2950 rmp) 1.08 amp (see figure 3.92) is produced by field
weakening lookup table.
In addition, as previously is discussed, with using field weakening, the power
remains constant, and since the speed need to be increased thus more voltage will
be applied to the motor. Figures below show the voltage and stator flux responses.
Chapter 3 87 Modeling of Induction Motor

A- Usd Voltage B- Usq Voltage


Figure3.95: Applied Voltage responses (TL=80 Nm is applied at t=2 s) [Researcher]

Figure3.96: Stator Flux Responses (TL= 80 Nm is applied at t=2 s [Researcher]


3.5.3 Rotor Time Constant Design

As it is explained previously, the rotor resistance changes by 50% to 100%


from its cold value. This change affects the rotor time constant and it leads to loss
orientation. Therefore, whenever rotor resistance changes, the rotor time constant
needs to be tuned to avoid orientation loss. The rotor time constant can be calculated
and tuned by rotor parameter and there are lots of methods which are used to tune
the rotor time constant. One of the methods is called reactive power method which
is considered as a very effective way for tuning rotor time constant.
Chapter 3 88 Modeling of Induction Motor

Now, the process of this method starts with firstly, the two stator equations
which shown below, in the rotating dq-frame are considered.
𝑑 𝐿𝑜 𝑑 𝐿𝑜
𝑣𝑠𝑑= 𝑅𝑠 𝑖𝑠𝑑 + 𝜎𝐿𝑠 𝑖𝑠𝑑 − 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑞 + 𝜑𝑟𝑑 − 𝑤𝑒 𝜑𝑟𝑞
𝑑𝑡 𝐿𝑟 𝑑𝑡 𝐿𝑟
𝑑 𝐿𝑜 𝑑 𝐿𝑜
𝑣𝑠𝑞= 𝑅𝑠 𝑖𝑠𝑞 + 𝜎𝐿𝑠 𝑖𝑠𝑞 + 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑑 + 𝜑𝑟𝑞 + 𝑤𝑒 𝜑𝑟𝑑
𝑑𝑡 𝐿𝑟 𝑑𝑡 𝐿𝑟

Secondly, (d/dt) values will be neglected because changes of Rr due to heat are
very low. Therefore, the equation can be written as shown below.

𝐿𝑜
𝑣𝑠𝑑 = 𝑅𝑠 𝑖𝑠𝑑 − 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑞 − 𝑤𝑒 𝜑 … . . . 𝐸𝑞𝑢𝑎𝑡𝑖𝑜𝑛 3.35
𝐿𝑟 𝑟𝑞
𝐿𝑜
𝑣𝑠𝑞 = 𝑅𝑠 𝑖𝑠𝑞 + 𝑤𝑒 𝜎𝐿𝑠 𝑖𝑠𝑑 + 𝑤𝑒 𝜑𝑟𝑑 … … 𝐸𝑞𝑢𝑎𝑡𝑖𝑜𝑛 3.36
𝐿𝑟

Then, the equation 3.35 will be multiplied by Isq and the equation 3.36 by Isd.
Then, by subtracting the second from the first the below equation is obtained.
𝐿𝑜 𝐿𝑜
𝑣𝑠𝑑 𝑖𝑠𝑞 − 𝑣𝑠𝑞 𝑖𝑠𝑑 = −𝑤𝑒 𝜎𝐿𝑠 (𝑖𝑠𝑑 2 + 𝑖𝑠𝑞 2 ) − 𝑤𝑒 𝜑𝑟𝑞 𝑖𝑠𝑞 − 𝑤𝑒 𝜑𝑟𝑑 𝑖𝑠𝑑
𝐿𝑟 𝐿𝑟

As known, 𝜑𝑟𝑑 = 𝐿0 ∗ 𝑖𝑠𝑑 , then the equations become


𝐿𝑜 𝐿𝑜 2
𝑣𝑠𝑑 𝑖𝑠𝑞 − 𝑣𝑠𝑞 𝑖𝑠𝑑 + 𝑤𝑒 𝜎𝐿𝑠 (𝑖𝑠𝑑 2 + 𝑖𝑠𝑞 2 ) = −𝑤𝑒 𝜑𝑟𝑞 𝑖𝑠𝑞 − 𝑤𝑒 𝑖𝑠𝑑 2
𝐿𝑟 𝐿𝑟

Whether the field is oriented or not, it can be noticed that the left-hand side is
dependent on and this can be declared as shown above.
In fact, the first two terms are:

𝑣𝑠 ∗ 𝑖𝑠 = |𝑣𝑠 | ∗ |𝑖𝑠 | ∗ sin 𝜃

It is the reactive power going to the machine and it is independent on the rotor
angle
The left term contains only |is| and it is also independent on the
angle 𝜆. Then, the two equations can be defined as shown
𝐹 = 𝑣𝑠𝑑 𝑖𝑠𝑞 − 𝑣𝑠𝑞 𝑖𝑠𝑑 + 𝑤𝑒 𝜎𝐿𝑠 (𝑖𝑠𝑑 2 + 𝑖𝑠𝑞 2 )
𝐿𝑜 2
𝐹 ∗ = −𝑤𝑒 𝑖𝑠𝑑 2
𝐿𝑟

𝐹 is independent on angle 𝜆 if there is a field oriented or not.


Chapter 3 89 Modeling of Induction Motor

However, since * contains Isq* therefore, it depends on angle and it is


directly coordinate on the d-axis

Finally, by subtracting F from F* the equation can be defined as below


𝐿𝑜
𝐹 ∗ − 𝐹 = −𝑤𝑒 𝜑 𝑖
𝐿𝑟 𝑟𝑞 𝑠𝑞
The above equation is the error and it will be zero if the field is orientated. The
two functions will be introduced inside the microprocessor and then the error will
be found. Finally, the Tr will be tuned until the error become zero.

In order to be able to obverse the whole model design certain subsystems are
made.
Firstly, a subsystem for equation is made as shown in figure 3.97.

Figure3.97: Equation F Subsystem [Researcher]


Secondly, a subsystem for * is designed as shown in figure 3.98.
Chapter 3 90 Modeling of Induction Motor

Figure3.98: Equation F* Subsystem [Researcher]


Next step, designing the model subsystem of sgn block which will be created
to apply the correct sign of We (based on positive or negative speed) as shown in
figure 3.99.

Figure3.99: Sign block subsystem [Researcher]


As it can be seen from figure 3.97, (IF) block is used to apply correct sign of
𝑊𝑒 and, it is found that the error’s result is always opposite to the sign
𝐿𝑜
of 𝑊𝑒(𝐹 ∗ − 𝐹 ) = −𝑊𝑒 ∗ ∗ Ψr ∗ Isq.
𝐿𝑟
Therefore, when there will be a positive Speed (We) the output of the block
will be negative one (-1) otherwise it will be positive one (1). The output of this
block will be multiplied with the error of the F and F*.
Chapter 3 91 Modeling of Induction Motor

Another point to be stated is that if the Constant epsilon is greater than Wsl then
the integrator needs to be stopped integrating, thus, in order to obtain this another
IF block is used as shown in figure 3.100.

Figure3.100: Comparison block between Wsl and Epsilon Constant [Researcher]

As it can be seen from figure 3.100, Wsl and Constant epsilon (0.01) are
compared and if Wsl greater than this constant, the error (F* - F) will be integrated
and passed through a gain of (0.000075) which is a part of the implementation and
it gives delta Tr. However, if Wsl is smaller than the epsilon constant, zero will be
output of this block (delta Tr). Finally, delta Tr will be added to the reference value
of the Tr and then it will be fed to the system and in terms of time rotor time constant
response it gives a good convergence with very small error when the load is applied.
Since Wsl and Tr need to be checked, some reform is done to Lamda model
which is introduced previously to provide Tr as an input and Wsl as an output as
shown in Lamda subsystem figure 3.101.
Chapter 3 92 Modeling of Induction Motor

Figure3.101: Lamda Subsystem including Tr and Wsl [Researcher]


Now, by connecting the all subsystems with other parts, the final model design as
Shown in figure 3.102.

Figure3.102: Final Model contains (Reactive power Method for Tr design (F,F*, Sgn and
Comparator[Researcher]

Then, a Tr* of (0.05764) second is applied with power reactive method at speed
1500 rpm (157 rad/s) and load torque 10.1Nm which is applied at t=5 second the
responses are shown in figures below.
Chapter 3 93 Modeling of Induction Motor

Figure3.103: Rotor Time Constant with Reactive power method at TL=10N.m and Wr=1500rpm
[Researcher]

A: Error with small simulation time B: Error with large simulation time
Figure3.104: Error with small limit of Y-axis[Researcher]
From the figures above, when the speed is 1500 rmp and the load is applied
at t=5s, the effectiveness of the reactive power method for tuning the Tr can be
noticed. Figure 3.103 shows that the Tr is tuned to 0.05691 in approximately 10
seconds whereas, the cold value of Tr is 0.05764 s which is calculated in section3.1.
This small error 0.0007 is due to stopping the integration when Wsl will be smaller
Chapter 3 94 Modeling of Induction Motor

than the epsilon value (0.01). In addition, at the instance of applying load, the error
(F*- F) will be very big (see figure 3.104B) but it will be reduced to very small value
(almost zero) in few seconds as it can be seen from figure 3.104A and if a percentage
error between Tr* and tuned Tr is calculated, it can be noticed that the result would
be:
0.05691−0.05764
∗ 100 = 1.26%
0.05764

Moreover, it can be noticed that with reactive power method when the load is
applied the orientation will stay and the rotor flux will be almost the same due to
tuning the Tr. Tuning 𝜏𝑟 will make the motor to be able to drive the full load as
shown in figure (3.105) whereas, as it is shown previously, when Tr is less then cold
value the motor would not be able to drive the load due to rotor flux reduction and
orientation loss (see figure 3.103).

A- Dq-Rotor flux B- Speed and torque responses


Figure3.105: dq-Rotor flux, Speed and Torque Responses [Researcher]
Furthermore, the concept of comparing Wsl with epsilon constant (0.01) is to
ensure that the reactive power model is disabled at very low slip which means at
low load because with low load the Tr does not settle and it keeps on increasing due
to continuous integration of small error (F* - F) for a very long time however, it
settles at a very high value as shown in figure 3.106. Then, if the percentage error
between Tr* and tuned Tr is calculated, it can be noticed that the result would be :-
0.04616 − 0.05764
∗ 100 = 19%
0.05764
.
Chapter 3 95 Modeling of Induction Motor

Figure3.106: Rotor time constant at TL=0.2 Nm [Researcher]


Chapter Four

Implementation of Vector Control using FPGA


Chapter 4 96 Implementation of Vector Control using FPGA

Chapter 4- Implementation of Vector Control on a Three Phase


Induction Motor using FPGA
In order to validate vector control of induction motor using FPGA, all
equation in Matlab Simulink is discretized and the stator currents of the induction
motor will be measured using current sensors. Later on, speed of the motor will be
recorded using a rotary encoder. Furthermore, the required components for
measuring the induction motor current will be implemented on a PCB and required
component for measuring the speed of the motor will be implemented. Next, to be
able to read the measured date by an FPGA, 16-bits analogue to digital converter
(ADC) will be used. Finally, the schematic of the whole circuit of the sensor board
will be implemented on the PCB.
4.1 Sensor Board Design
In general, in order to be able to control the motor, signal measurements
(speed and current) are required and to measure the necessary signals, sensors are
used. Then these signals will be used inside the FPGA for controlling purposes. In
order to measure the desired speed, flux and current of the machine, sensor board is
designed using Vittrace software in order to print it on a PCB. Several components
are used such as ten dc to dc converter, six gate resistors, six insulated gates bipolar
transistor (IGBT), six open collectors, six opt coupler, one Rotary encoder (speed
sensor), three current transformers (current sensors), three analogue to digital
converters (ADC), and several connectors and capacitors. The process of the design
is performed as the following: firstly, for each component; schematic symbol and
PCB footprint are designed. Secondly, schematic symbols are connected as they
supposed to form the circuit of the sensor board and thirdly, the schematic of the
final circuit is translated to the PCB layout. Finally, the components are soldiered.
Moreover, figure 4.1 shows the block diagram of the sensor board and in this chapter
the final schematic will be explained.
Chapter 4 97 Implementation of Vector Control using FPGA

Figure4.1: block diagram of sensor board [Researcher]


4.1.1 Isolated Dc to Dc Converter.

The basic purpose of the DC/DC conversion is to change the DC voltage level
(Lower: higher). It could also be used for insulation purposes. For this current
project ten Dc to Dc converters bias sensors and opt coupler drive of switching are
used.

Figure4.2: Schematic diagram of DC to DC converter [Researcher]


4.1.2 Speed Sensor and Current Transducer

In order to measure the stator current of the motor, a current sensor is used
where its input is recommended to be in the range 0 to 6 amp. The current sensor
Chapter 4 98 Implementation of Vector Control using FPGA

provides two voltages, positive voltage (+Vout) where it is equal to 2.5V+output,


common-mode voltage (Vocm) and negative voltage (-Vout) where it is equal to
2.5V- output common-mode voltage (Vocm). The output common-mode voltage is
varying from 0 to 0.625 basing on the input current. At input 6 ampere maximum
+Vout=2.5+0.625 is produced, at input -6 ampere maximum +Vout=2.5-0.625 is
produced.
Moreover, outputs (+Vout and -Vout) are connected to ADC device for
converting these signals to 16-bit digital signals which represent the stator current
of the motor. Choosing 16 bit ADC will produce higher resolution and decreases the
degree of possible error and makes a greater accuracy in the values obtained after
quantization.
With regards to measuring the current, current transducer is used and basing
on the connection of the pins, it can measure different value of current as shown in
table4.1 [37] .
table4.1: recommended connection of current Transducer
Combination RMS Current Output Voltage Recommended Connections
1 ±6 2.5±0.625

2 ±3 2.5±0.625

3 ±2 2.5±0.625

Then, the output of the current transducer is connected to the ADC, as shown
in figure 4.3.

Figure4.3: Circuit diagram of Current Transducer with ADC[Researcher]


Chapter 4 99 Implementation of Vector Control using FPGA

Moreover, rotary encoder (speed sensor) is used for measuring speed of the
motor. Rotary encoders are used to provide direct physical feedback of motor
position, joint position, and speed of rotation. Unlike potentiometers, it can turn
infinitely with no end stop. The number of pulses or steps generated per complete
turn varies from 16 - 1024 pulses/revolution. A rotary encoder has two square wave
outputs (A and B) which are 90◦ out of phase with each other. Every time the A
signal pulse is on the falling edge, the value of the B pulse is read. From Figure
4.5_A, when the encoder is turned clockwise, the B pulse is always positive. The B
pulse is negative when the encoder is turned counter-clockwise. By connecting both
outputs with FPGA, it is possible to determine the direction of turn. By counting the
number of A _pulses, one can determine speed of the motor. The rotary encoder is
open collector encoder, so it is necessary to connect pull-up resistors of 10KΩ to the
A and B phase outputs, otherwise it will not function properly. Next step, practical
result test of phase A and B shown in figure 4.5_B. Finally, connection diagram of
rotary encoder shown in figure 4.4.

Figure4.4: Circuit diagram of Speed sensor [Researcher]

A:Theoretical B:Practical Result test


Figure4.5: incremental rotary encoder pulses [Researcher]
Chapter 4 100 Implementation of Vector Control using FPGA

4.1.3. 16-bits Analogue to Digital Converter (ADC)

In order to obtain fast data transmission to the FPGA, analogue to digital


converter is utilized to convert each sensed signal; accordingly, three ADCs are
used. The ADC can provide several operational configurations and basing on the
datasheet, the proper configuration for this application is chosen as shown in figure
4.6.

Figure4.6: Schematic configuration of the ADC [Researcher]


Then ADC operates from 3.125MSPS up to 200MSPS [38]. Therefore, a
frequency of 14.5MHz is produced by the FPGA and it is connected to the ADCs.
The given FPGA has 70 direct I/Os, hence to be able to transmit parallel data from
the three ADCs, all 16bit ADC I/Os are connected to the FPGA connectors. But, for
serial operation only one I/O port used for transmit 64 bit serial data from the ADC
to FPGA. In addition, across of the inputs of the ADC (+Ain and -Ain), 4.7micro
farad capacitor is connected to smooth analogue signal. The ideal transfer
characteristic for the AD7606 is shown in Figure 4.7.
Chapter 4 101 Implementation of Vector Control using FPGA

Figure4.7: Transfer characteristic of ADC[Researcher]


Next step, conversion of analogue input signal which will start after
applying logic high to CONV pin in ADC, at the first time a 50ns reset signal must
be connected to ADC_reset pin to reset all data in ADC. Second step, logic high
connected to CONV pin, after rising edge of conversion then busy signal coming
from the ADC to FPGA describes the weather of analog input which is converted or
not , if the busy signal is one means conversion will finish and ADC waiting to CS
pin to logic low to read data as shown in figure 4.8.

Figure4.8: CONVST Timing—Reading After a Conversion[Researcher]


Next step, to read data back from the AD7606 over the serial interface, the
PAR/SER/BYTE SEL pin must be tied high. The CS and SCLK signals are used to
transfer data from the AD7606. There are two serial data output pins, DOUTA and
DOUTB. Data can be read back from using one or both of these DOUT lines. For
the AD7606, conversion results from Channel V1 to Channel V4 first appear on
DOUTA, and conversion results from Channel V5 to Channel V8 first appear on
DOUTB.
The CS falling edge takes the data output lines, DOUTA and DOUTB, out of
three-state and clocks out the MSB of the conversion result. The rising edge of
SCLK clocks all subsequent data bits onto the serial data outputs, DOUTA and
Chapter 4 102 Implementation of Vector Control using FPGA

DOUTB. The CS input can be held low for the entire serial read operation, or it can
be pulsed to frame each channel read of 16 SCLK cycles. Figure 4.9 shows a read
of eight simultaneous conversion results using two DOUT lines on the AD7606. In
this case, a 64 SCLK transfer is used to access data from the AD7606, and CS is
held low to frame the entire 64 SCLK cycles. Data can also be clocked out using
just one DOUT line, in this case it is recommended that DOUTA be used to access
all conversion data, because the channel data is output in ascending order. For the
AD7606 to access all eight conversion results on one DOUT line, a total of 128
SCLK cycles is required. These 128 SCLK cycles can be framed by one CS signal,
or each group of 16 SCLK cycles can be individually framed by the CS signal. The
disadvantage of using just one DOUT line is that the throughput rate is reduced if
reading occurs after conversion. The unused DOUT line should be left unconnected
in serial mode. For the AD7606, if DOUTB is to be used as a single DOUT line, the
channel results are output in the following order: V5, V6, V7, V8, V1, V2, V3, and
V4; however, the FRSTDATA indicator returns low after V5 is read on DOUTB.
For the AD7606-6 and the, if DOUTB is to be used as a single DOUT line.

Figure4.9: AD7606 Serial Interface with Two DOUT Lines[Researcher]


Figure 4.10 shows the timing diagram for reading one channel of data, framed
by the CS signal, from the AD7606 in serial mode. The SCLK input signal provides
the clock source for the serial read operation. The CS goes low to access the data
from the AD7606. The falling edge of CS takes the bus out of three-state and clocks
out the MSB of the 16-bit conversion result. This MSB is valid on the first falling
edge of the SCLK after the CS falling edge. The subsequent 15 data bits are clocked
out of the AD7606 on the SCLK rising edge. Data is valid on the SCLK falling edge.
To access each conversion result, 16 clock cycles must be provided to the AD7606.
The FRSTDATA output signal indicates when the first channel, V1, is being read
back. When the CS input is high, the FRSTDATA output pin is in three-state. In
serial mode, the falling edge of CS takes FRSTDATA out of three-state and sets the
FRSTDATA pin high, indicating that the result from V1 is available on the DOUTA
output data line. The FRSTDATA output returns to a logic low following the 16th
SCLK falling edge. If all channels are read on DOUTB, the FRSTDATA output
does not go high when V1 is being output on this serial data output pin. It goes high
Chapter 4 103 Implementation of Vector Control using FPGA

only when V1 is available on DOUTA (and this is when V5 is available on DOUTB


for the AD7606).

Figure4.10: Serial Read Operation (Channel 1) [Researcher]


After that, basing on the data sheet VHDL code is writing for ADC and the
practical timing diagram result of ADC shown in figures (4.11, 4.12, 4.13, 4.14, and
4.15).

Figure4.11: CS(yellow) vs Busy(blue) in micro Figure4.12: Cs(yellow) vs Busy(blue) [Researcher]


second[Researcher]

Figure4.13: Cs(yellow) vs conv(blue)in different Figure4.14: Cs(yellow) VS data(blue) [Researcher]


time[Researcher]
Chapter 4 104 Implementation of Vector Control using FPGA

Figure4.15: Sclk (yellow) vs data (blue) [Researcher]


Next step, for good operation of ADC, we apply some analogue input voltage to
ADC and compare with theoretical values see figure 4.7 .AS it can be seen from the
Figure (4.16, 4.17, 4.18 and 4.19) there was minor difference between the practical
result with theoretical value.

Figure4.16: +10vdc=32767 in decimal[Researcher] Figure4.17:+7.5volt=25262 in


decimal[Researcher]

Figure4.18:+5volt=16800 in decimal [Researcher] Figure4.19: +2.5volt=8250 [Researcher]


Chapter 4 105 Implementation of Vector Control using FPGA

Next, to test current sensor and ADC together and for determining offset value,
it is compulsory to connect the DC supply voltage to IN and OUT of the current
sensor for passing RMS current through current sensor, according to this RMS
current the output signal voltage increased or decreased as described in previous
section and then connected to ADC, Table 4.2 shows the result.
table4.2: current sensor with ADC result.
Rms current out/volt out/adc digital
0 2.51 8267(offset)
0.3 2.55 8354
0.6 2.58 8482
0.9 2.61 8572
1.2 2.64 8679
1.5 2.67 8799
1.8 2.7 8912
2.1 2.73 8943
2.4 2.76 9101
2.7 2.79 9162
3 2.83 9313
3.3 2.86 9437
3.6 2.89 9485
3.9 2.92 9663
4.2 2.95 9702
4.5 2.98 9719
4.8 3.02 9836
5.1 3.05 10055
5.4 3.08 10130
5.7 3.11 10242
6 3.14 10265

Finally, the schematic of the whole circuit of the sensor board is translated to the
PCB layout and arranged as shown in figure 4.20.
Chapter 4 106 Implementation of Vector Control using FPGA

Figure4.20: Sensor board PCB layout[Researcher]


Chapter 4 107 Implementation of Vector Control using FPGA

4.2 Design, Examine and Discretize Implemented PI Compensator in FPGA


Based on this a PI controller is designed using the same criteria as in the
section 5 The PI controller of dq current, flux and speed shown in equation 1.
𝐾𝑃𝑠+𝐾𝑖)
𝐺𝑐(𝑠) = ………. (4.1)
𝑠
Afterwards, the PI controller is discretized using equation 2, [36].
2(𝑍−1)
𝑠= … … … . (4.2)
𝑇𝑆𝑤𝑙(𝑍+1)
Where Tswl is a switching frequency at the output filter and Tswl=1/10 KHz
sec. Then, substituting the value of Tswl, CV (z) is obtained as shown in equation
4.3. After that, it is multiplied by the delay operator ( ) to obtain u (z)/e (z) as
shown in equation 4.4.
Finally, the delay operator is converted to sampling representation as shown
in equation 4.5.
𝑇 𝑇
(𝐾𝑝+𝐾𝑖∗ )∗𝑍 +(𝐾𝑖∗ −𝐾𝑝)
𝐺𝑐(𝑧) = 2 2
……. (4.3).
𝑍−1
𝑇 𝑇
𝑢(𝑧) (𝐾𝑝+𝐾𝑖∗ )∗𝑍 +(𝐾𝑖∗ −𝐾𝑝) 𝑧 −1
2 2
= ∗
𝑒(𝑧) 𝑍−1 𝑧 −1

𝑇 𝑇
𝑢(𝑧) (𝐾𝑝+𝐾𝑖∗ ) +(𝐾𝑖∗ −𝐾𝑝)∗𝑧 −1
= 2 2
…….. (4.4)
𝑒(𝑧) 1−𝑧 −1

U (z) *𝑧 𝑛 = U (k+ n) ……based on control theory

The Discretize model of PI controller will be


𝑇 𝑇
𝑈(𝑘) = 𝑈(𝑘 − 1) + 𝐸(𝑘) ∗ (𝐾𝑝 + 𝑘𝑖 ∗ 2) + 𝐸(𝑘 − 1) ∗ (−𝐾𝑝 + 𝐾𝑖 ∗ 2) … (4.5).

Where U (k): output of pi controller


U (k-1): previous value of output pi controller
E (k): error signal
E (k-1): previous error signal
K p: proportional gain factor
Ki: integrating gain factor
U (k) represents Vsd and Vsq for dq current controller which is applied to
motor after conversion. Then, for flux controller u (k) represents isd* which is
becomes reference signal for direct current controller. Next, for speed controller u
(k) which represent isq*. Later on e (k) for dq current controller is equal to (isd*-isd
Chapter 4 108 Implementation of Vector Control using FPGA

and isq*-isq) respectively while for flux controller which is equal to (imrd*-
imrd).Finally e (k) represents (wr*-wr) for speed controller.
By substituting KP and Ki values which are evaluated in chapter 3 the equation
of 4.5 for dq current, flux and speed controller respectively become:
For current controller:
𝑇
𝑉𝑠𝑑(𝑘) = 𝑉𝑠𝑑(𝑘 − 1) + (𝐼𝑠𝑑 ∗ − 𝑖𝑠𝑑) ∗ (82.56 + 77789.8 ∗ ) + (𝐼𝑠𝑑∗ −
2
𝑇
𝑖𝑠𝑑)(𝑘 − 1) ∗ (−82.56 + 77789.8 ∗ ) ………. (4.6)
2
𝑇
𝑣𝑠𝑞(𝑘) = 𝑣𝑠𝑞(𝑘 − 1) + (𝑖𝑠𝑞 ∗ − 𝑖𝑠𝑞) ∗ (82.56 + 77789.8 ∗ ) + (𝑖𝑠𝑞 ∗ −
2
𝑇
𝑖𝑠𝑞)(𝑘 − 1) ∗ (−82.56 + 77789.8 ∗ ) ………. (4.7)
2
For Flux controller:
𝑇
𝑖𝑠𝑑 ∗ (𝑘) = 𝑖𝑠𝑑 ∗ (𝑘 − 1) + (𝑖𝑚𝑟𝑑 ∗ −𝑖𝑚𝑟𝑑) ∗ (4.07 + 227.5 ∗ ) + (𝑖𝑚𝑟𝑑 ∗
2
𝑇
−𝑖𝑚𝑟𝑑)(𝑘 − 1) ∗ (−4.07 + 227.5 ∗ ) ………… (4.8)
2
For speed controller:
𝑇
𝑖𝑠𝑞 ∗ (𝑘) = 𝑖𝑠𝑞 ∗ (𝑘 − 1) + (𝑤𝑟 ∗ −𝑤𝑟) ∗ (0.0156 + 0.24 ∗ ) +
2
𝑇
(𝑤𝑟 ∗ −𝑤𝑟)(𝑘 − 1) ∗ (−0.0156 + 0.24 ∗ ) ……… (4.9)
2
Thereafter, the equation 4.5 (u(k)) will be implemented in the FPGA and in
order to obtain fast data transmission, analogue to digital converter (ADC) is used
where the current of the motor will be measured using current sensor and it will be
converted to digital through the ADC. The digital data will be sent to the FPGA and
it is representing u(k) data in the equation 4.5 where after receiving the data, the
FPGA will do the calculations and produces required phase shift between two PWM
signals to controller output current, flux and speed. Finally angle theta also required
to convert from s domain to z, from chapter 3 equation of theta which is described
and it is as the following:-
𝑖𝑠𝑞∗ 1
𝑡ℎ𝑒𝑡𝑎(𝑠) = (𝑤𝑟𝑒 +
𝑡𝑟∗𝑖𝑚𝑟𝑑
) ∗ 𝑠 …… (4.10)
Substituting equation 4.2 into 4.10 then to obtain discretize model of theta:
𝑇 𝑖𝑠𝑞∗ 𝑇 𝑖𝑠𝑞∗
Theta (k) = theta (k-1) + (2 ∗ 𝑤𝑟 + ) (k) + (2 ∗ 𝑤𝑟 + )(k-1)….
2 𝑡𝑟∗𝑖𝑚𝑟𝑑 2 𝑡𝑟∗𝑖𝑚𝑟𝑑
(4.11).
4.3 VHDL Code Explanation
Quartos 2 (FPGA board) [39] is given in order to be used to control the speed
of induction motor, and in order to implement the discretized PI controller
(equation4.5 ) into the FPGA to control PWM signals which are required for turning
on and turning off the switches of the IGBT, VHDL language is used.
Chapter 4 109 Implementation of Vector Control using FPGA

Figure 4.21 shows FPGA development board components and the overall structure
of the VHDL file.

A:Structure of VHDL

B:FPGA development board component


Figure4.21: FPGA development board and Overall structure of the VHDL file [Researcher]
4.3.1 Open Loop Code Explanation

In order to operate the IGBT with open loop (uncontrolled) and to test the
ADC, an open loop code is written. The architecture of the open loop code has three
inputs clock, reset and input data from the ADC (snsrdata). It produces five outputs,
Chapter 4 110 Implementation of Vector Control using FPGA

three 20 KHz PWM signals (PWM_20Khz_0, PWM_20Khz_120 and


PWM_20Khz_240) with 50% of duty cycle and a phase shift 120º between them.
These 20 KHz signals are used for switching the IGBT. The next output is a
14.5MHz PWM signal (PWM_14.5Mhz) which is used for the clock of the ADC
and finally, a 10 KHz PWM signal (PWM_10Khz) where it is used internally for
indicating the point where the input data is sampling. All PWM signals are produced
based on counting the rising edge of the internal clock of the FPGA which is 50
MHz (each clock period = 20ns). Therefore, five counters are made, Counter1 for
first 20 KHz signal, Counter2 for second 20 KHz signal, Counter3 for third 20 KHz
signal Counter4 for 14.5 MHz signal and Counter5 for 10 KHz signal. Process
statement is used for counting the rising edge of the clock and saving the result in
the counters. As a result, process is sensitive to clock and it also sensitive to reset to
disable all signals. This means that the action takes place only if these two signals
change. The counter ranges are found basing on the internal frequency of the FPGA
as shown in the equation 4.12, 4.13, and 4.14.
50𝑀ℎ𝑧
𝑐𝑜𝑢𝑛𝑡𝑒𝑟1 = 𝑐𝑜𝑢𝑛𝑡𝑒𝑟2 = 𝑐𝑜𝑢𝑛𝑡𝑒𝑟3 = = 1250 𝑐𝑙𝑜𝑐𝑘 𝑐𝑦𝑐𝑙𝑒 …….. (4.12)
20𝐾ℎ𝑧/2
These counter count from (0 to 1250), and in Hexadecimal ( x”000” to x”4E2”).
50𝑀ℎ𝑧
𝑐𝑜𝑢𝑛𝑡𝑒𝑟5 = = 5000 𝑐𝑜𝑢𝑛𝑡 … … (4.13) this counter count from (0 to
10𝐾ℎ𝑧
5000), and in Hexadecimal ( x”0000” to x”1388”)
50𝑀ℎ𝑧
𝑐𝑜𝑢𝑛𝑡𝑒𝑟4 = =2 …… (4.14) this counter count from (0 to 2), and in
14.5𝐾ℎ𝑧/2
Hexadecimal ( x”00” to x”02”)
Since theoretically 180º is the maximum phase shift that is allowed between
two PWMs and the result always between 0 to 1 and which is equivalent to 1250
clock cycles in this FPGA, in order to obtain the desired phase shift, angle of the
following equation are applied.
1250counter/x=180/120 so x= counter A =833 ----- 120 degree
1250counter/x=180/240 so x=counter B=1666 ------240 degree
Chapter 4 111 Implementation of Vector Control using FPGA

Figure4.22: Open loop flow chart PWM signal generation [Researcher]


Figure 4.22 shows the open loop flow chart where all actions are occurring
inside the process and if the reset signal is one then all outputs will be zero.
However, if reset is 0 then, the four counters (Counter1, Counter4, Counter A and
Counter B) start counting the rising edge of the clock in parallel and a condition is
made where any counter reaches its maximum range then it starts counting from
zero. Counter4 is controlling PWM_14.5MHz signal which is ‘1’ when counter4 is
‘2’ and ‘0’ when Counter4 is 0 and vice versa, as a result a 14.5 MHz signal is
produced with the duty cycle of 50%. Counter1 is controlling PWM_20Khz_0
signal where to produce 20 KHz signal with 50% duty cycle, PWM_20Khz_0 is ‘1’
when Counter1 Counts from ‘0’ to ‘1250’ (x”1388”) and ‘0’ when Counter 1 is 0
and vice versa . In addition, Counter A, counter B are also controlling the Counter2
and counter3 to produce 120º and 2400 phase shift between PWM_20Khz_0 and
PWM_20Khz_120, PWM_20Khz_240. Counter2 starts counting when Counter A
>833 and counter 3 starts counting when counter B>1666. Counter2 is controlling
PWM_20Khz_120 signal which is ‘1’ when Counter2 Counts from ‘0’ to ‘1250’
(x”1388”) and ‘0’ when Counter 2 is 0 and vice versa. Also, Counter3 is controlling
PWM_20Khz_240 signal which is ‘1’ when Counter3 Counts from ‘0’ to ‘1250’
(x”1388”) and ‘0’ when Counter 3 is 0 and vice versa.
Figure 4.23 shows the produced two 20 KHz PWM signals with 50% duty
cycle and phase shift 120º. Also, Figure 4.24 shows the produced two 20 KHz PWM
signals with 50% duty cycle and 240phase shift.
Chapter 4 112 Implementation of Vector Control using FPGA

Figure4.23: two 20 KHz PWM 120 Figure4.24: two 20 KHz PWM 240
degree[Researcher] degree[Researcher]

Moreover, Counter5 is also used to sample the input data (sensor data) every
10 KHz where at first snsrdata was sampled with one sample and the sample was
not stable due to the noise in the measured signal. Hence in order to obtain stable
sample of the snsrdata, the average of 2 samples are taken using Counter1250 which
is controlled by Counter5. When Counter5 is ‘0’, Counter1250 starts counting from
(0 to 1250) and at each step a sample of the snsrdata is added to register iReadData.
After 1250 clock cycles, Counter1250 become zero and it will wait for
Counter5 to become ‘1600’ again and the register iReadData will be divided by 2 to
obtain the average value of the samples. Additionally, for mathematical operation
IP floating point sources are used and logical analyzer IP sources are used to scope
necessary signals where the operational process of all IP sources are controlled by
Conter5 and required clock cycles are considered during the operation as shown in
figure 4.25.
Chapter 4 113 Implementation of Vector Control using FPGA

Figure4.25: Speed and current sensor data[Researcher]


On the other hand, these six PWM signals which described in figure 4.22
that are used to test IGBTs also can be generated by comparing three sine wave with
triangular wave basing on pulse width modulation. Procedure for implementing
triangular wave in FPGA required two counters, Count A and count B. First counter
which controls the frequency of the triangular wave while the second counter is used
to control amplitude of the wave. For choosing 10KHZ switching frequency
(50Mhz/10Khz=5000 count ,triangular frequency) counter A starts from (0 to 5000)
and when count A =5000 then count A=0. Similarly for choosing the(650volt)
amplitude of triangular wave when count A<=2500 counter B starts from (0 to
2500) and then divide by 3.84 to make 2500 to (650V) , when counter A>=2500
then counter B starts to decrease (650 down to 0) as shown in figure 4.26_B.Next
step, sine wave can be implementing from FPGA by using look up table as shown
in figure 4.26_A , sine wave 50hz required counter C which counts from (0 to 999),
this is coming from ( 50Khz /50Hz=1000 count) clock cycle , this process is required
to create 50Khz clock cycle from internal clock (50Mhz/50Khz/2) and then process
of creating 50Hz sine waves sensitive for 50Khz clock. Finally, 10 kHz triangular
wave can be compared with 50 Hz sine wave which produce first PWM signal
(0_degree). Next PWM signal can be produced by comparing the same triangular
wave with next sine wave ((1200 ) phase shifted). Later, third PWM signal is
produced from comparison triangular wave with third sine wave ((2400 ) phase
shifted). Other three PWM signals are generated from inverting each PWM after
Chapter 4 114 Implementation of Vector Control using FPGA

(1_microsecond) dead time for safe operation during switching as shown in figure
4.26_C.

A: three sine wave 120 degree phase shift B:10khz Triangular wave

C:PWM signals result comparing sine waves with triangular wave


Figure4.26: PWM signal generation from FPGA[Researcher]
Moreover, open loop test flow chart for comparison sin wave and triangular
wave as shown in figure 4.27.

Figure4.27: Process of PWM signal generation from sine and triangular comparison[Researcher]
Chapter 4 115 Implementation of Vector Control using FPGA

4.3.2. Closed Loop Code Explanation

The flow chart of the code is written for the closed loop IGBT can be seen
below, similarly to the open loop counters Counter4, and Counter5 are controlling
the production of 14.5 MHz PWM and 10 KHz PWM. However, the main difference
is that the PWM signals are produced from comparison triangular with the three-
sine wave output of dq_current pi controller after converting to three phase. The
calculation of the PI controller is based on the equation 4.5 and the operation is
controlled by the Counter5 as shown in figure 4.28. Therefore, all equations that are
used to perform the calculations has become as described in previous section.

The calculation of all equations are performed basing on the Counter5 in the
following steps:
• During the first 1600clock cycles (0<Counter5≤1600) (1250+250 two data
of current ready as described in figure 4.15) then current snsrData are
sampled 2 times where all samples are adding together and storing into the
register iReadData. Also speed sensor data storing in to the register swr.
Similarly, theta added to sine and cosine port map the result is produced after
1500(50 MHz/50Khz+zero in begining500) clock cycle basing on look up
table of sine and cosine.
• During the next 10 clock cycles (1600<Counter5≤1610) the summation of the
samples (iReadData) and speed sensor data are changed to floating point
using IP source.
• iReadData is divided by 2 in order to obtain the Average of the samples in 5
clock cycles (1610<Counter5≤1615)
• In 10 clock cycles (1615<Counter5≤1625) the offset current value (8267) is
subtracted from averaged samples and this results in IA, IB and IC which will
be stored into a register to be used for calculating Isd and Isq in the next
sample.
• During (1615<Counter5≤2500) the values of sine and cosine are ready with
IA, IB and IC for implementing Isd and Isq.
• In 84 clock cycles (2500<Counter5≤2584) the equation (4.15 and 4.16) are
implemented using multiplication and add/subtract IPs.
• 𝑖𝑠𝑑 = 0.666 ∗ [ (𝐼𝐴 cos 𝜃) + (𝐼𝐵 cos(𝜃 − 120)) + (𝐼𝐶 cos(𝜃 +
120))] … … (4.15)
• 𝑖𝑠𝑞 = 0.666 ∗ [ (−𝐼𝐴 sin 𝜃) − (𝐼𝐵 sin(𝜃 − 120)) − (𝐼𝐶 sin(𝜃 +
120))] … … (4.16)
Chapter 4 116 Implementation of Vector Control using FPGA

• In 46 clock cycles (2584<Counter5≤2630) direct current controller (equation


4.17) is implemented as the following steps.
𝑇
𝑉𝑠𝑑(𝑘) = 𝑉𝑠𝑑(𝑘 − 1) + (𝐼𝑠𝑑∗ − 𝑖𝑠𝑑) ∗ (82.56 + 77789.8 ∗ ) + (𝐼𝑠𝑑 ∗ −
2
𝑇
𝑖𝑠𝑑)(𝑘 − 1) ∗ (−82.56 + 77789.8 ∗ ) … … (4.17) this corresponds to
2
equation 4.6
• In 10 clock cycles (2584<Counter5≤2594) the Isd is subtracted from
reference data (Isd*(R)=2.178) after changing to floating and this results error
E(k) which will be stored into a register to be used as E(k-1) in the next
sample
T
• The error E (k) is multiplied by (82.56 + 77789.8 ∗ ) in 8 clock cycles
2
(2594<Counter5≤2602) where T=1/10 KHz.

• The error of previous interval (E(k-1)) is multiplied by (−82.56 +


T
77789.8 ∗ ) in 8 clock cycles (2602<Counter5≤2610)
2

• In 10 clock cycles the result of the second multiplication is subtracted from


the result of the first multiplication (2610<Counter5≤2620)
• The result of the second subtraction is added with U (k-1) to obtain U (k) in
10 clock cycles (2620< Counter5 ≤ 2630) and U (k) is stored in a register to
represent U (k-1) in the next interval, while U (k-1) represents Vsd (k-1).
• The result U(K) represents Vsd(K) is ready in 2630 clock cycle to calculate
VA, VB and VC ac supply voltage which have been compared with
triangular wave to produce PWM signals.
• In Next 46 clock cycles (2630<Counter5≤2676) speed controller as shown in
(equation 4.18) is implemented based on the above procedures, where wr=swr
and Wr* represented reference speed (1458 RPM).
𝑇
𝑖𝑠𝑞 ∗ (𝑘) = 𝑖𝑠𝑞 ∗ (𝑘 − 1) + (𝑤𝑟 ∗ −𝑤𝑟) ∗ (0.0156 + 0.24 ∗ ) +
2
𝑇
(𝑤𝑟 ∗ −𝑤𝑟)(𝑘 − 1) ∗ (−0.0156 + 0.24 ∗ ) … … (4.18) this corresponds
2
to equation 4.9
• In Next 46 clock cycles (2676<Counter5≤2722) Quadrature current controller
(equation 4.19) also is implemented.

𝑣𝑠𝑞(𝑘) = 𝑣𝑠𝑞(𝑘 − 1) + (𝑖𝑠𝑞 ∗ − 𝑖𝑠𝑞) ∗ (82.56 + 77789.8 ∗


𝑇 𝑇
) + (𝑖𝑠𝑞 ∗ − 𝑖𝑠𝑞)(𝑘 − 1) ∗ (−82.56 + 77789.8 ∗ ) … … (4.19)
2 2
This corresponds to equation 4.7
Chapter 4 117 Implementation of Vector Control using FPGA

• In Next 80 clock cycles (2722<Counter5≤2802) the following equation is


implemented.
𝑉𝐴 = 𝑣𝑠𝑑 ∗ cos 𝜃 − 𝑣𝑠𝑞 ∗ sin 𝜃
𝑉𝐵 = 𝑣𝑠𝑑 ∗ cos(𝜃 − 120) − 𝑣𝑠𝑞 ∗ sin( 𝜃 − 120)
𝑉𝐶 = 𝑣𝑠𝑑 ∗ cos(𝜃 + 120) − 𝑣𝑠𝑞 ∗ sin( 𝜃 + 120)
• The result VA, VB and VC are changed to integer number in 5 clock cycles
(2802<Counter5≤2807).
• In Next 5 clock cycles (2807<Counter5≤2812) put the limiter for VA, VB
and VC to protect the motor from damage as follows.
If VA, VB and VC are in the range between -265 to 265 then VA=VA,
VB=VB and VC=VC. Else if VA, VB and VC are not in the range -265 to
265 then VA =VB=VC= -265 to 265.
• In one clock cycle the integer result of the VA, VB and VC are compared
with triangular waveform to produce a required PWM signal for controlling
speed of the motor as follows:
1. If VA, VB and VC are greater than triangular wave then PWM signal
equal to 1.
2. Else if VA, VB and VC are smaller than triangular wave then PWM
signal equal to 0.
3. Three PWM signals were generated from comparing VA, VB and VC
with triangular wave and then after a dead time other remaining PMW
signals which are equals to NOT three PWM.
4. PWM2= NOT PMW1 after 1micro second dead time
5. PWM4= NOT PMW3 after 1micro second dead time
6. PWM6= NOT PMW5 after 1micro second dead time
• In Next 80 clock cycles (2813<Counter5≤2893) (equation 4.20) is
implemented.
T isq∗ T isq∗
Theta (k) = theta (k-1) + (2 ∗ wr + ) (k) + 2 (2 ∗ wr + tr∗imrd )(k-
2 tr∗imrd
1)… …(4.20) this corresponds to equation 4.11
Furthermore, all steps for calculating the value of PWM signals require about
3000 clock cycles. After that the process do not think till counter 5=5000, this means
counter =0 and starts to calculate a new sample value of all equation again. All
Chapter 4 118 Implementation of Vector Control using FPGA

calculations are executed in 32 bits floating point using IEEE-754 standard


conversion and then they are used in the FPGA.

Figure4.28: PI controller inside FPGA[Researcher]


Chapter 4 119 Implementation of Vector Control using FPGA

4.4 Experimental Setup

4.4.1 Hardware Implementation of the Induction Motor Control (Open Loop)

In this section the hardware implementation of the whole circuit will be


shown as well as the acquired results. At first for implementing the three phase
inverters, PCB board are designed for three legs and the board also has the gate
drivers which produce a signal for the gate of the switches with high current from
low current PWM signals of the FPGA as shown in figure 4.29. The gate drivers
also provide technical isolation ground between the switches. The switches, gate
drives, required resistors, diodes and capacitors for the inverters circuit are
established on the PCB. In addition, heat sinks are used to cool the switches and
protect them from high temperature. After that, the two PWMs signals shown in
figure 4.22 are given to the gate drivers for switch 1 and switch 2 and then 1 volts
is given to the first leg. Then, the IGBT 1 and IGBT 2 produced an output, as shown
in figure 4.30_A and although there is seen larger overshoot on the output for more
detail look channel 2 blue color. Afterwards, the designed capacitors (450 volt
300micro farad )are connected in parallel with the first leg and this eliminate an over
shoot from the output while we applied about 80 volt instead of 1 volt to switches
as shown in figure 4.30_B.

Figure4.29: three phase inverter with Gate driver circuit

A : larger overshoot (output=blue) B: without overshoot


Figure4.30: effect of capacitor on the output signal[Researcher]
Chapter 4 120 Implementation of Vector Control using FPGA

Next step is implementing the written VHDL code into an FPGA and
validating the design by comparing with the analogue design (Matlab Simulink) is
discussed.
First, we connected three phase inverters in MATLAB Simulink as shown in
figure 4.31.

Figure4.31: Three phase inverters in Matlab Simulink[Researcher]


Next, creating these six PWM signals as described in previous section by
using Matlab Simulink as shown in figure 4.31 and then connected to Gate of the
IGBTs. Next step, applying 50 VDC to each leg and finally connecting these outputs
to the per phase equivalent circuit of the induction motor. Basing on IGBT theory
the line to line voltage become (±V DC) as shown in figure 4.32_A while phase
voltage is (+V DC/3, 2*V DC/3, 0, –V DC/3, -2*V DC /3) as shown in figure
4.32_B.
Chapter 4 121 Implementation of Vector Control using FPGA

A:Line to line voltage B:Phase voltage

Figure4.32: Matlab Simulink result test when PWM signal coming from comparing Sine and triangular
wave. [Researcher]
Finally, implementing the written code into an FPGA and connected PWM
signals in figure 4.27 to gate driver circuit and then connected the output of these
IGBT to the motor. The result as shown in figure 4.33_ A and 4.33_B.

A:Line to line voltage B:Phase voltage


Figure4.33: Practical result test when PWM signal coming from comparing Sine and triangular
wave[Researcher].
Next step, implementing three phase inverters using writing code in FPGA
and Matlab Simulink but 20 KHz square wave PWM signal directly connected to
the gate of IGBTs, the result is shown in Figure4.34.
Chapter 4 122 Implementation of Vector Control using FPGA

A:Line voltage Matlab Simulink test B:Line voltage Practical test

[Researcher]
Figure4.34: Matlab Simulink and Practical result test when 20 KHz PWM signal applied
However, by increasing DC supply voltage the phase voltage of the motor
increased by (V DC /3, 2V DC/3, 0, -V DC/3, - 2V DC/3) and then the motor will
start running till about 1460RPM.
4.4.2 Sensor Board Implementation

As previously are explained in the section 4.1, the required components for
measuring the induction motor current and converting it to digital format, are
implemented on the PCB and also required component for measuring the speed of
the motor are implemented as shown in figure 4.35 firstly, all voltage sources
(Isolated dc-dc converters) are soldered and three variable dc sources are provided
to the sensor board to supply current transducer, rotary encoder and opt couplers.
Secondly, ADC is tested by supplying it with output signal of current sensor and
using FPGA to provide a desired clock (14.5MHz) and scope the input data to the
FPGA. Thirdly, after finishing the test of the ADC, all other components are
soldered and checked as described in table 4.2 section4.1.
Chapter 4 123 Implementation of Vector Control using FPGA

Figure4.35: Sensor boar hardware[Researcher]


As it is explained in the section 4.1, current sensor provides three outputs
where they are connected to the ADC.
4.4.3 Closed Loop Hardware Setup

After finishing the test of the sensor board, all circuits (three phase inverters,
sensor board, ADC and FPGA) are set up as shown in figure 4.36 where the output
of the inverters connected to the motor and then the current of the motor connected
to the current transducer which is sensing the current and converting it to the
analogue signal and then from ADC converting to a 16 bit digital data .Also ,the
motor rotor shaft is connected to the rotary encoder sensor which is sensing the
speed and converting it to the digital data. After that, digital data is used by the
FPGA to implement in PI controller as explained in the section 4.3. Afterwards, the
closed loop code is implemented inside the FPGA. Then, the DC voltage has
increased from zero and it can be noticed that up to around 90V the motor will start
.Next step, selected 1458RPM as a reference speed .However, we change the
reference speed to 1488RPM and then PI controller increased Vsq for increasing
VA, VB and VC, as a result PWM duty cycle was increased. Therefore, the input
voltage is applied to the motor increased till the motor reached 1488RPM.
Chapter 4 124 Implementation of Vector Control using FPGA

Figure4.36: Experimental setup[Researcher]


Conclusion 125

Conclusion
1. A direct on line method was used to start up three phase induction motor and it is
found that a large inrush current with high oscillation were required to start up the
motor and caused an oscillation torque.

2. For controlling this inrush current and torque a vector control for direct rotor flux
orientation was designed. Firstly, based on motor parameters current loop designed
and modelled. It was found that the system requires almost 5 milliseconds to reach
steady state value.

3. A voltage compensator was designed to decouple the d-axis and q-axis. When it
was tested, it was found that the changing in flux and back induced emf is overcome.
Then, a speed loop was designed and when it was tested, it could be observed that
the motor reach it is rated value within approximately 50 milliseconds.

4. Different rotor time constants were examined, and it was observed that the system
will lose orientation; therefore, a reactive power method was designed to tune the
rotor time constant. When it was tested, tuning the rotor time constant to almost
wanted value was obtained.

5. Moreover, a field weakening technique was designed and added to the system.
When it was examined, it was found that the motor operates at higher speed with
developing lower torque without having violent oscillation on the stator applied
voltage. Basing on the responses which were obtained from both methods, it can be
suggested that for the motor which does not require good transient responses direct
on line method is better but when high efficiency, stability and good transient
responses are needed, the vector control method must be used.
6. The practical work presented in this thesis, attempted to explain and clarify the
design and practical implementation of vector control of induction motor and
controlled using an FPGA platform and this is one of the novelties of this work. At
the first stage, a sensor board were designed and implemented where three current
transducers are used to sense the current of each phase. Additionally, an encoder is
used to measure the speed of the motor. After that, all three phase current
measurements and spend measurement are converted to 16 bit digital data using
ADC and then they were fed to the FPGA. Next step, having all control equations
and required measurements in digital form, a VHDL code is used to implement the
control algorithm and produce PWM signals for the gate drives. Finally, gate drive
circuits are used to decouple and isolate the control signals and power electronic
devices (switches).
References 126

References:
[1] Gonen_Turan”Electrical_Machine _with Matlab”second edition 2012
[2]. Shakuntla Boora, S. K Agarwal, K. S Sandhu, “Dynamic d-q axis modeling of three-
phase asynchronous machine using matlab”, International Journal of Advanced Research
in Electrical, Electronics and Instrumentation Engineering, Vol. 2, pp. 3942-3951, 2013.

[3]. K.L. Shi, T.F. Chan, Y. K. Wong and S. L. Ho, “Modeling and simulation of the
three-phase induction motor using Simulink,” International Journal of Electrical
Engineering Education, vol. 36, pp. 163- 172, 1999.
[4] Vithayathil, J., “Power electronics principals and applications ", Mc Graw-Hill
International, 2006

[5] Oros, R.C., Forte, G.O. and Canali, L., 2007. Scalar Speed Control of a dq Induction
Motor Model Using Fuzzy Logic Controller. In Conf. paper.
[6] Ong, C.M., 1998. Dynamic simulation of electric machinery using Matlab/Simulink.
Prentice-Hall PTR,

[7] Kuon, I., Tessier, R. and Rose, J., 2008. FPGA architecture: Survey and
challenges. Foundations and Trends® in Electronic Design Automation, 2(2), pp.135-
253.
[8] Chapman, S.J., 2002. Electric machinery and power system fundamentals.

[9] Kuon, I., Tessier, R. and Rose, J., 2008. FPGA architecture: Survey and
challenges. Foundations and Trends® in Electronic Design Automation, 2(2), pp.135-
253.

[10] Mittal, S., 2018. A survey of FPGA-based accelerators for convolutional neural
networks. Neural computing and applications, pp.1-31.

[11] Krim, S., Gdaim, S., Mtibaa, A. and Mimouni, M.F., 2015, April. Fuzzy speed
controller for an induction motor associated with the Direct Torque Control:
Implementation on the FPGA. In 2015 4th International Conference on Systems and
Control (ICSC) (pp. 492-497). IEEE.

[12] Habetler , T., Porfumo , F., " DTC of I. M. Using space vector modulation " IEEE
Trans. on Ind. App., Vol.28, NO.5,pp. 1054-1053 sep 2006
[13] Srilad, S., Tunyasrirut, S. and Suksri, T., 2006, October. Implementation of a scalar
controlled induction motor drives. In 2006 SICE-ICASE International Joint
Conference (pp. 3605-3610). IEEE.

[14] Al-Nimma, D.A. and Khather, S.I., 2011, May. Modeling and simulation of a speed
sensor less vector controlled induction motor drive system. In 2011 24th Canadian
Conference on Electrical and Computer Engineering (CCECE) (pp. 000027-000032).
IEEE.
References 127

[15] Ying, H., 2000. Fuzzy control and modeling: analytical foundations and
applications. Wiley-IEEE Press.
[16] Kimiaghalam, B., Rahmani, M. and Halleh, H., 2008, October. Speed & torque
vector control of induction motors with fuzzy logic controller. In 2008 International
Conference on Control, Automation and Systems (pp. 360-365). IEEE.

[17] Francis, L., 2001. The basics of neural networks demystified. Contingencies, 11(12),
pp.56-61.
[18] Kashif, S.A.R., Saqib, M.A., Zia, S. and Kaleem, A., 2009, April. Implementation
of neural network based Space Vector Pulse Width Modulation inverter-induction motor
drive system. In 2009 Third International Conference on Electrical Engineering (pp. 1-
6). IEEE.
[19]. Lee, R.J., Pillay, P., and Harley, R.G., “D, Q Reference frame for the simulation of
induction motors”, Electric Power Systems Research Journal, vol. 8, pp. 15-16, October
1984.

[20] Campbell, Sylvester J. (1987). Solid-State AC Motor Controls. New York: Marcel
Dekker, Inc. pp. 79–189. ISBN 978-0-8247-7728-9.

[21] Zambada, J., 2007. Field-oriented control for motors. MachineDesign. com, 1.
[22] Lewin, C., 2006. New Developments in Commutation and Motor Control
Techniques. DesignNews. com, 2.

[23] DSP Manual (2007). "3-Phase AC Induction Vector Control Drive with Single
Shunt Current Sensing" (PDF). Freescale. p. 25, incl. esp. eq. 2–37. Retrieved May
16,2012.
[24] Godbole, K., 2006. Field oriented control reduces motor size, cost and power
consumption in industrial applications. Texas Instruments.

[25] “Speed Control of Separately Excited DC Motor “Moleykutty George Faculty of


Engineering and Technology, Multimedia University Melaka Campus, 75450 Melaka,
Malaysia American Journal of Applied Sciences 5 (3): 227-233, 2008 ISSN 1546-9239
[26] Europe, T.I., 1998. Field orientated control of 3-phase AC-motors. Literature
Number: BPRA073.

[27] Boldea, I. and Nasar, S.A., 1988. Torque vector control (TVC)-A class of fast and
robust torque-speed and position digital controllers for electric drives. Electric machines
and power systems, 15(3), pp.135-147.
[28] Hasse ,K.,On " the dynamic of speed control of Static Ac drives with Squirrel –
Cage induction machines " ,PH.D., Dissertaion ,T.H.Darmstadt, 2006 .

[29] Kang, J.K. et al: "Torque ripple minimization strategy for direct torque control of
induction motor", Conf. Rec. IEEE-IAS Annu. Meeting 98, pp. 438-443 2005

[30] K. Sandeep kumar, K. Pritam satsangi, ―Micro-controller based closed loop control
of Induction motor using V/f method, IET-UK International Conference on Information
References 128

and Communication Technology in Electrical Sciences (ICTES 2007), Dr. M.G.R.


University, Chennai, Tamil Nadu, India. Dec. 20-22, 2007. pp.340-342
[31] Barr, Michael (1 September 2001). "Introduction to Pulse Width Modulation
(PWM)".

[32]Barnes, Malcolm (2003). Practical variable speed drives and power electronics.
Oxford: Newnes. p. 97. ISBN 978-0080473918.
[33] D'Aversa, A., Hughes, B. and Patel, S., 2013, April. Challenges and solutions of
protecting variable speed drive motors. In 2013 66th Annual Conference for Protective
Relay Engineers (pp. 250-256). IEEE.
[34] Abboud, M.M., 2015. Simulation of 3ph induction motor in Matlab with Direct and
Soft starting methods.

[35] Shi, K.L., Chan, T.F. and Wong, Y.K., 1997. Modeling of the three-phase induction
motor using SIMULINK. In The 1997 IEEE International Electric Machines and Drives
Conference, IEMDC.
[36] Burns, R., 2001. Advanced control engineering. Elsevier.
[37]Current Transducer LTS-6-NP Available online.
https://www.alldatasheet.com/datasheet-pdf/pdf/965251/LEM/LTS-6-NP.html

[38] 16-Bits 200-MSPS Analogue to Digital Converter with AD7606, 2010


Availableonlinehttp://www.alldatasheet.com/datasheetpdf/pdf/347554/AD/AD7606.ht
ml
[39]Altera DE2 Board, development and education board 2005 by Altera

[40] Belkheiri, A., Aoughellanet, S. and Belkheiri, M., 2018. FPGA implementation of a
space vector pulse width modulation technique for a two-level inverter. Elektrotehniski
Vestnik, 85(3), pp.77-83.
[41] Shah, V., 2017, December. FPGA Implementation of Sensorless Field Oriented
Current Control of Induction Machine. In 2017 IEEE International Conference on
Computational Intelligence and Computing Research (ICCIC) (pp. 1-5). IEEE.

[42] Mailloux, J.G., Simard, S. and Beguenane, R., 2007, December. FPGA
implementation of induction motor vector control using Xilinx System Generator.
In Proceedings of 6th WSEAS International Conference on Circuit and Systems (Vol. 2,
pp. 252-257).
[43] Vásárhelyi, J., Imecs, M., Szabó, C. and Incze, I.I., 2005, November. FPGA
Implementation vector control of tandem converter fed induction machine. In 6th
International Symposium of Hungarian, Researchers on Computational Intelligence,
Budapest, Magyar.
[44] Thomas Chau , Ben Jeppesen , Kevin Smith “Motor Control Designs with an
Integrated FPGA Design Flow” WP-01162-2.0 May 2016
[45] WP, H., NA, R. and LC, K., 2009. FPGA-based field-oriented control for induction
motor speed drive. IEICE Electronics Express, 6(6), pp.290-296.
‫التصميم والتنفيذ العملي بأعتماد مصفوفة البوابات املنطقية القابلة للربجمة للتحكم املتجه على‬
‫حمرك حثي ثالثي االطوار‬
‫‪1‬‬
‫‪Electrical Dept., University of Sulaimani, adil.omar89@gmail.com‬‬ ‫الباحث ‪ :‬مهندس‪ .‬عادل عمر امحد‬

‫‪2‬‬
‫املشرف‪ :‬د‪.‬عالْء حمى الدين عبدالرمحن‪Electrical Dept., University of Sulaimani, alaa.abdulrahman@univsul.edu.i‬‬

‫املستخلص‬
‫حمرك احلثي ثالثي االطوار وو احدى مكائن االكثر االومية لتطبيقات القدرة العالية حيت الكفاءة العالية‪ ،‬والوثوقية‬
‫العالية و التأسيس الال متغري وو املطلوب ‪.‬السيطرة على سرعة احملرك احلثي وو احد اوم االوداف ملعظم التطبيقات ‪ .‬مع‬
‫ذلك‪ ،‬يف تطبيقات القدرة واملتوسطة والعالية‪ ،‬للسيطرة على سرعة احملرك احلثي يتطلب السيطرة على التيار الالَني ملنع‬
‫تلف احملرك يف حني بدء تشغيل احملرك او عند حدوث تغيريات مفائةة للحمل‪ .‬لذلك‪ ،‬حديثا‪ ،‬ان طريقة التحكم املتجه‬
‫تقدم اسلوب ووو يستعمل للسيطرة على سرعه مكائن احلثية ثالثية االطوار ‪.‬يف وذه الطريقة‪ ،‬سيتم السيطرة االنية‬
‫للتيارات و االئهاد للحفاظ على السرعة الثابتة للمحرك و توفري وضع اطثر سالمة للتشغيل‪.‬‬

‫وذه الدراسة تبحث عن تطبيق طريقة سيطرة املتجه عمليآ على حمرك حثي ثالثية االطوار ‪.‬يف البداية‪ ،‬مت‬
‫منذئة حمرك حثي ثالثية االطوار متوفر يف خمترب قسم الكهرباء يف ئامعة السليمانية‪ .‬الحقا‪ ،‬التيار ‪،‬والفيض‬
‫‪،‬والفولتية و حتكمات السرعة مت تصميمها‪ ،‬وايضآ مت التحقق من وذه النماذج باستخدام برنامج املاتالب والسميولينك‪.‬‬
‫بعد ذلك‪ ،‬مت التحقق من طريقة حتكم املتجه عمليآ‪ ،‬حيث تقاس السرعه والتيار باستخدام املتحسسات‪ .‬حتويل البيانات‬
‫املقاسة عمليا اىل بيانات رقمية بواسطة استخدام مبدل متاثلي رقمي‪ .‬ومن ثم تغذية البيانات الرقميه املقاسة اىل‬
‫مصفوفة البوابات املنطقية القابلة للربجمة (‪ .)FPGA‬مت تطبيق مجيع معادالت التحكم املنفصلة للتيار و الفيض و‬
‫السرعة يف مصفوفه البوابات املنطفية القابلة للربجمة اعتماداً على بيانات االدخال‪ ،‬املتحكمات استطاعت من جتهيز‬
‫التباديل املطلوبة ملبدل ثالثي االطوار‪ .‬ان مبدل ثالثي االطوار يستعمل لتوليد االئهاد املطلوبة ملتغري ثالثي االطوار‬
‫للمحرك احلثي‪ .‬تطلب استخدام مقرنات بصرية ومشغالت البوابة بني مفاتيح املبدالت ومصفوفة البوابات املنطقية القابلة‬
‫للربجمة لتوفري عزولية وفصل اشارات التحكم من اشارات القدرة الكهربائية‪.‬‬
‫الكلمات املفتاحية‪:‬التحكم املتجة‪,‬حمرك حثي ثالثي االطوار‪,‬التصميم‪,‬ماتالب‪,‬التحكم املتجه احللقة املفتوحة‪ ,‬التحكم‬
‫املتجه احللقة املغلقة‪,‬التحكم االلي ‪FPGA,PI‬‬
‫حكومة اقليم كوردستان‬
‫وزارة التعليم العالي والبحث العلمي‬
‫جامعة السليمانية‬
‫كلية اهلندسة‬

‫التصميم والتنفيذ العملي بأعتماد مصفوفة البوابات املنطقية‬


‫القابلة للربجمة للتحكم املتجه على حمرك حثي ثالثي االطوار‬

‫رسالة مقدمة اىل جملس كلية اهلندسة فى جامعة السليمانية و هى جزء من متطلبات‬
‫نيل شهادة ماجستري فى اهلندسة الكهربائية‪/‬مكائن و قدرة‬

‫من قبل‬
‫عادل عمر امحد‬

‫بإشراف‬
‫د‪.‬عالء حمى الدين عبدالرمحن‬
‫أستاذ‬

‫ئوكتوبر‪٩١١٢-‬‬ ‫كالريزان‪٩١١٢-‬‬ ‫صفر ‪١٤٤١-‬‬


‫ثوختة‬

‫بنيادنان و جيَبةجيَكردني كؤنرتؤلَي ئارِاستةي بؤ مؤتؤري سيَ رِةوطة بة بةكارهيَناني ‪FPGA‬‬


‫‪1‬‬
‫‪1Electrical‬‬ ‫‪Dept., University of Sulaimani, adil.omar89@gmail.com‬‬ ‫تؤيَذةر‪ :‬ئةندازيار‪ .‬عادل عمر امحد‬

‫‪2‬‬
‫‪2Electrical‬‬ ‫‪Dept., University of Sulaimani, alaa.abdulrahman@univsul.edu.iq‬‬ ‫سةرثةرشتيار‪ :‬د‪ .‬عالء حمي الدين عبد الرمحن‬

‫ثوختة‬

‫مؤتؤرى موطنةكارى سىَ رِةوطة يةكيَكة لة طرنطرتين مؤتؤرةكان بؤ بةكارهيَنانة توانا بةرزةكان لة كاتيَكدا كة‬
‫ضوستى بةرز و باوةرِثيَكراوى ثيَويستبيَت‪ ,‬كؤنرتؤلَكردنى مؤتؤر يةكيَكة لة ئاماجنة سةرةكيةكان لة زؤربةى‬
‫بةكارهيَنانةكانيدا‪ .‬لة كاتيَكدا لة مؤتؤرة توانا ناوةند و بةرزةكاندا بؤ كؤنرتؤلَكردنى خيَرايى مؤتؤر ثيَويستة‬
‫تةزووى مؤتؤرةكة يةكسةر كؤنرتؤلَبكريَت بؤ ثاراستنى لة سوتان لة كاتى طؤرانكارى خيَرادا وةك لةكاتي سةرةتاى‬
‫هةستانى مؤتؤردا يان لة ثرِ طؤرِانى بارى مؤتؤرةكة‪ .‬بة هةر حالَ‪ ،‬كؤنرتؤلَكردنى ئارِاستةيى بة زؤرى بةكارديَت بؤ‬
‫كؤنرتؤلَكردنى خيَرايى لة مؤتؤرِى موطنةكارى سىَ رِةوطةدا‪ .‬لةم جؤرة كؤنرتِؤلَةدا تةزوو وة ظؤلَتيية لة ثرِ كؤنرتِؤلَ‬
‫ئةكريَن بؤ هيَشتنةوةى خيَرايى ماتؤرةكة بة نة طؤرى وة دةستةبةركردنى ئيشكردنيَكى سةالمةت‪.‬‬
‫ئةم تويَذينةوةية ئةرِوانيَتة سةر بةكارهيَنانى كؤنرتِؤلَى ئارِاستةيى‪ ،‬لة سةرةتادا مؤتؤريَكى سىَ رِةوطةيى‬
‫ناو تاقيطة دةربرِيَندرا لة زانكؤى سليَمانى كؤليَجى ئةندازيارى كارةبا‪ ،‬ثاشان كؤنرتِؤلَةرى تةزوو و ليَشاوى‬
‫موطناتيسى و ظؤلَتية و خيَرايى بنيادنرا‪ ،‬وةهةروةها هةموو كؤنرتِؤلَةكان سةمليَنران بة بةكارهيَنانى بةرنامةى‬
‫هلوشيَوةى ويَنةى كؤمثيوتةرى ماتالب‪ .‬دواتر‪ ،‬كؤنرتِِِؤلَى ئارِاستةيى جيَبةجيَكرا بة تيؤرى لة كاتيَكدا خيَرايى و تةزوو‬
‫ثيَوران بة بةكارهيَنانى ثيَوةرى هةستياري‪ .‬داتا وةرطرياوةكان طؤرِدران بؤ دجييتالَ بة بةكارهيَنانى ئاميَرى ئةنةلؤط‬
‫بؤ دجييتالَ وة وثاشان داتا دجييتالَةكان نيَردران بؤ ئاميَري ‪ FPGA‬ةيةكة‪ .‬هةموو هاوكيَشةكانى كؤنرتِؤلَةكانى‬
‫تةزوو و ليَشاوى موطناتيسى و خيَراي دواى وةرطرتنى منوونة ليَيان بة ‪ FPGA‬جيَبةجيَ كران وة بة طويَرةى داتا‬
‫هاتوةكان كؤنرتِؤلَةكان شةثؤىل ثيَوست بؤ سويضى طؤرِةرة سىَ رِةوطييةكة دروستدةكةن‪ .‬طؤرِةر سىَ رِةوطة بة كارديَت بؤ‬
‫بةرهةمهيَنانى ظؤلَتييةى طؤرِاوى سىَ رِةوطةى ثيَويست بؤ مؤتؤرةكة‪ .‬ئؤثتؤكةثلَةر بةكارديَت لة نيَوان سويضى طؤرِةرةكان‬
‫و ‪ FPGA‬ةيةكةدا بؤ دروستكردنى بةربةست و وة ثضرِاندنى ثةيوةند ى نيَوان شةثؤىل كؤنرتِلَ و شةثؤىل تواناى‬
‫بةهيَز‪.‬‬

‫كليلة ووشة‪ :‬كؤنرتؤلَكردنى ئارِاستةيى ‪,‬مؤتؤرِى موطنةكارى سىَ رِةوطة‪,‬دةربرِاندن‪ ,‬ماتالب‪ ,‬كؤنرتؤلَكردنى ئارِاستةيى‬
‫كراوة‪ ,‬كؤنرتؤلَكردنى ئارِاستةيى داخراو‪,‬كؤنرتؤلَةرى ‪.FPGA,PI‬‬
‫حكومةتى هةريَمى كوردستان‬
‫وةزارةتى خويَندنى باالَو تويَذيتةوةى زانستى‬
‫زانكؤى سليَمانى‬
‫كؤليَجى ئةندازيارى‬

‫بنيادنان و جيَبةجيَكردنى كؤنرتِؤلَى ئارِاستةيى بؤ مؤتؤرى‬


‫موطنةكارى سىَ رِةوطة بة بةكارهيَنانى ‪FPGA‬‬

‫نامةيةك ثيَشكةشى ئةجنومةنى كؤليَجى ئةندازيارى زانكؤى سليَمانى كراوة وةك‬


‫بةشيَك لة ثيَداويستيةكانى بةدةستهيَنانى ثلةى ماستةر لة ئةندازيارى‬
‫كارةبا‪/‬ئاميَروتوانا‬

‫لةاليةن‬

‫عادل عمر امحد‬

‫سةرثةرشتيار‬

‫د‪.‬عالْ حمى الدين عبدالرمحن‬


‫مامؤستا‬

‫ئؤكتؤبةر‪٩١٠٢ -‬‬ ‫طةالَرِيَزان ‪٩١٠٢ -‬‬ ‫سةفةر ‪١٤٤١-‬‬

You might also like