Вы находитесь на странице: 1из 71

FLORIDA STATE UNIVERSITY

COLLEGE OF ENGINEERING

A PARTICLE SWARM OPTIMIZATION BASED MAXIMUM TORQUE PER AMPERE

CONTROL FOR A SWITCHED RELUCTANCE MOTOR



By

LEE GRIFFIN

S i t e . com
M a tl a b A Thesis submitted to the
Department of Electrical and Computer Engineering Department
in partial fulfillment of the
requirements for the degree of
Master of Science

Degree Awarded:
Summer Semester, 2014

Copyright 2014 Lee Griffin. All Rights Reserved.

MatlabSite.com
UMI Number: 1565762

All rights reserved

INFORMATION TO ALL USERS


The quality of this reproduction is dependent upon the quality of the copy submitted.

In the unlikely event that the author did not send a complete manuscript
and there are missing pages, these will be noted. Also, if material had to be removed,
a note will indicate the deletion.


m
co
UMI 1565762

t e .
Published by ProQuest LLC (2014). Copyright in the Dissertation held by the Author.

S i
Microform Edition ProQuest LLC.

a b
All rights reserved. This work is protected against

tl
unauthorized copying under Title 17, United States Code

M a ProQuest LLC.
789 East Eisenhower Parkway
P.O. Box 1346
Ann Arbor, MI 48106 - 1346

MatlabSite.com
Lee Griffin defended this thesis on July 17, 2014.
The members of the supervisory committee were:

Chris S. Edrington
Professor Directing Thesis



Petru Andrei
Committee Member

S i t e . com Pedro Moss

l a b
Committee Member

M a t
The Graduate School has verified and approved the above-named committee members, and certifies
that the thesis has been approved in accordance with university requirements.

ii

MatlabSite.com
ACKNOWLEDGMENTS

First, I would like to express my gratitude to my thesis director, Chris S. Edrington PhD. He
provided support, guidance, a vast knowledge of the switched reluctance motor, exceptional material
on various subjects, and a spectacular lab. He also supplied me with an office, a computer, and
engineering software, all of which proved to be indisposable. Ultimately, it was his suggestions that
shaped the direction of this thesis. Without his advise, I believe this thesis would have been less
substantial. Finally, I would like to thank him for encouraging me to become a more independent


engineer.


I would also like to thank Fletcher Fleming for consistently supporting me and my work. He


provided useful knowledge of the test bed and of the simulation and was invaluable when editing


papers. He was always willing and able to assist, despite his busy schedule. I would also like
to thank the SMART program, who funded my degree entirely, and the Electrical and Computer
Engineering professors at Florida State Universities Panama City campus: Jerome Barnes PhD,

com
Geoffrey Brooks PhD, and Clay Hughes PhD, who taught me the fundamentals of engineering.

tl a b S i t e .
M a
iii

MatlabSite.com
TABLE OF CONTENTS

List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
List of Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x

1 Introduction 1
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Switched Reluctance Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . 1


1.1.2 Maximum Torque Per Ampere and Firing Angles . . . . . . . . . . . . . . . . 1
1.1.3 Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . 3


1.2 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4


2 Fundamentals of Switched Reluctance Motors 6


2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Principles of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Principles of Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

m
2.3.1 Asymmetric Bridge Converter . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

o
2.3.2 Hysteresis Current Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

. c
2.3.3 Switching Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

i t e
2.3.4 Conventional Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

a b S
3 Computational Intelligence Based Methods of Control 15

tl
3.1 Particle Swarm Optimization Methods . . . . . . . . . . . . . . . . . . . . . . . . . . 15

a
3.1.1 Introduction to Particle Swarm Optimization . . . . . . . . . . . . . . . . . . 15

M
3.1.2 Optimizing the Firing Angles . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1.3 Optimizing the Current Waveform . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Genetic Algorithm Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

4 Modeling of the SRM 22


4.1 Basics of Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.1.1 Mathematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.2 Obtaining the Inductance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.2.1 Finite Element Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.2.2 Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2.3 Implementing the Inductance Function . . . . . . . . . . . . . . . . . . . . . . 28

5 Simulation 30
5.1 Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.1.1 Open-Loop Start Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.1.2 Closed-Loop Steady State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

iv

MatlabSite.com
6 Experimentation 36
6.1 Experimental Set Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6.2 Experimental Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.2.1 Open-Loop Start Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.2.2 Closed-Loop Steady State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

7 Conclusion 42
7.1 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Appendix
A The Particle Swarm Optimization Algorithm 44


B Switched Reluctance Machine Specifications 48


C Results of Finite Element Analysis 49


D Inductance Measurement Experiment 51


E Optimal Angles 56

Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

om
Biographical Sketch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

l a b S i t e . c
M a t
v

MatlabSite.com
LIST OF TABLES

2.1 Comparison of synchronous and switched reluctance machines . . . . . . . . . . . . . . 6

5.1 RMS current, torque, and torque per ampere for the open-loop test . . . . . . . . . . . 31

5.2 RMS current, torque, and torque per ampere for the closed-loop test . . . . . . . . . . 35

6.1 RMS current, torque, and torque per ampere for the open-loop test . . . . . . . . . . . 41

6.2 RMS current, torque, and torque per ampere for the closed-loop test . . . . . . . . . . 41


B.1 4-phase 8/6 SRM specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48


D.1 Values used in experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51


S i t e . com
M a tl a b
vi

MatlabSite.com
LIST OF FIGURES

1.1 Example of the rotor of an SRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Example of the effects of back EMF . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1 Examples of a simple 2/2 SRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Plot of the inductance and torque vs rotor position for the 2/2 SRM of Figure 2.1 . . 8

2.3 Cross section of a typical 8/6 SRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10


2.4 Inductance functions for an 8/6 SRM for a constant current . . . . . . . . . . . . . . . 10


2.5 An asymmetric bridge converter for a 4 phase SRM . . . . . . . . . . . . . . . . . . . 11


2.6 A block diagram representing control of an SRM motor . . . . . . . . . . . . . . . . . 13


2.7 An example of the current waveform and the firing angles in conventional SRM motor
control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1 An example of particle movement in a PSO . . . . . . . . . . . . . . . . . . . . . . . . 16

. com
3.2 An example plot of the function given in (3.9) . . . . . . . . . . . . . . . . . . . . . . 20

i t e
4.1 FEA of the flux at various rotor positions and various currents for the A phase . . . . 24

l a b S
4.2 FEA analysis of the inductance at various rotor positions and various currents for the

a t
A phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

M
4.3 The experimental set up used to determine inductance . . . . . . . . . . . . . . . . . . 26

4.4 Flux linkage determined experimentally . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.5 Inductance determined experimentally . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5.1 Open-loop test for conventional angles . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.2 Open-loop test for optimal angles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.3 Closed-loop test total current draw at 500 rpms . . . . . . . . . . . . . . . . . . . . . 34

6.1 Experimental set up of the SRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

6.2 Output speed of the motor in the start up test . . . . . . . . . . . . . . . . . . . . . . 38

6.3 DC link current drawn in the start up test . . . . . . . . . . . . . . . . . . . . . . . . . 39

6.4 Torque output of the motor in the start up test . . . . . . . . . . . . . . . . . . . . . . 39

vii

MatlabSite.com
6.5 DC link current drawn in the closed-loop test for the optimal strategy . . . . . . . . . 40

6.6 DC link current drawn in the closed-loop test for the conventional strategy . . . . . . 40

6.7 Torque output of the SRM in the closed-loop test . . . . . . . . . . . . . . . . . . . . . 41

C.1 FEA analysis of the torque output at various rotor positions and various currents for
the A phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

C.2 FEA analysis of the flux at various rotor positions and various currents for the A phase 50

C.3 FEA analysis of the inductance at various rotor positions and various currents for the
A phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50


D.1 A phase flux linkage results from the inductance test . . . . . . . . . . . . . . . . . . . 51


D.2 The inductance of the A phase as determined experimentally . . . . . . . . . . . . . . 52


D.3 B phase flux linkage results from the inductance test . . . . . . . . . . . . . . . . . . . 52


D.4 The inductance of the B phase as determined experimentally . . . . . . . . . . . . . . 53

D.5 C phase flux linkage results from the inductance test . . . . . . . . . . . . . . . . . . . 53

m
D.6 The inductance of the C phase as determined experimentally . . . . . . . . . . . . . . 54

e . co
D.7 D phase flux linkage results from the inductance test . . . . . . . . . . . . . . . . . . . 54

S i t
D.8 The inductance of the D phase as determined experimentally . . . . . . . . . . . . . . 55

tl a b
E.1 Optimal on angle as generated by the PSO in Appendix A . . . . . . . . . . . . . . . . 56

M a
E.2 Optimal off angle as generated by the PSO in Appendix A . . . . . . . . . . . . . . . 56

viii

MatlabSite.com
LIST OF ABBREVIATIONS

SRM: Switched Reluctance Machine


MTA: Maximum Torque per Ampere
PSO: Particle Swarm Optimization
FEA: Finite Element Analysis
EMF: Electromotive Force
HCC: Hysteresis Current Control
GA: Genetic Algorithm
ADC: Analog to Digital Converter


DAC: Digital to Analog Converter


IGBT: Insulated Gate Bipolar Transistor


S i t e . com
M a tl a b
ix

MatlabSite.com
ABSTRACT

The Switched Reluctance Machine (SRM) is known for being one of the oldest electric machine
designs. Unfortunately, it is usually assumed that this implies that the machine is outdated. How-
ever with the advent of microprocessors, the SRM has become a suitable option for a number of
applications because the shortcomings of the machine can be mitigated with control. Compared to
other machines, the SRM is more rugged, has a simpler structure, and is less expensive to manufac-
ture. The machine has two control regions: when the speed of the machine is beneath a value called


the base speed and when the speed is above the base speed. The base speed is the speed at which


the back electromotive force (EMF) of the motor becomes substantial when compared to the source


voltage. In both regions, the turn-on and turn-off angles of the machine can be used to control the


machine. This thesis proposes a method of generating optimal turn-on and turn-off angles.
The method presented in this thesis is concerned with finding the turn-on and turn-off angles
needed to generate maximum torque per ampere (MTA). The strategy applies a particle swarm

com
optimization (PSO) technique that searches for the angles that maximize the inductance of the

t e .
SRM in order to achieve MTA. The inductance function was obtained via Finite Element Analysis

b S i
(FEA) and experimentally. The method was applied to a 4-phase 8/6 SRM. The proposed strategy

tl a
was found to be effective at both low speeds (beneath the base speed) and high speeds (above the

M a
base speed), but MTA could only be asserted for low speeds.

MatlabSite.com
CHAPTER 1

INTRODUCTION

1.1 Motivation
1.1.1 Switched Reluctance Machine

The SRM is one of the oldest designs for an electric machine, dating back to the 19th century;


it is also one of the simplest designs. Similar to the more popular designs, the SRM has a salient


stator with windings. However, the rotor of an SRM is much more simplistic. The rotor contains


no windings, brushes, or magnets; it is simply a salient piece of iron, Figure 1.1. This simple rotor


design makes the machine significantly cheaper to fabricate. Another advantage of the SRM is the


fact that the machines phases operate independently. Torque is generated by pulsing a particular
phase which generates a magnetic field. The rotor, attempting to minimize reluctance, generates

om
torque to align with the pulsed phase. Torque can be maintained by independently pulsing the

e . c
phases. Since the phases are operated independently, they can be controlled independently, and if

S i t
one phase happens to fail the others can still operate. Furthermore, the SRM can reach higher speeds

l a b
compared to other common machine designs [1]. While the most common machines in industry are

a t
the Induction Machine, the Synchronous Machine, and the Permanent Magnet Machine, the SRM

M
is experiencing an increase in popularity [2] due to the fact that it is cheaper, can obtain higher
speeds, and each phase can be controlled independently.

1.1.2 Maximum Torque Per Ampere and Firing Angles

Control of the SRM is dependent on the speed of the rotor. When the rotor reaches a speed
defined as the base speed the back electromotive force (EMF) becomes so substantial that the desired
current waveform cannot be properly produced, as seen in Figure 1.2. This figure shows the current
input to each of the phases of a 4-phase 8/6 SRM at speeds below and above the base speed. Below
the base speed the desired current waveform is synthesized. Above the base speed, the waveform
cannot be properly synthesized due to the back EMF. In these two speed regions, the control of the
machine differs. When the speed is below the base speed, the on and off angles, or firing angles,

MatlabSite.com

m
Figure 1.1: Example of the rotor of an SRM

t e . co
for each phase and the shape of the current waveform can be controlled. However, above the base

b S i
speed only the firing angles for each phase can be controlled.

tl a
There are many effective methods for controlling an SRM by shaping the current waveform [3],

a
but due to the back EMF issue these strategies are restricted to low speeds applications. However,

M
strategies based off of the firing angles can potentially be applied to all speeds. Controlling the
firing angles can affect the efficiency of an SRM generator [4], the power factor of an SRM motor
[5], or a number of other performance characteristics. In particular, the strategy presented in this
thesis attempts to achieve MTA by optimizing the firing angles.
MTA and strategies designed to achieve it have been investigated and developed for a number
of machine designs [6]-[7]-[8]. MTA is highly desirable in any application where current draw is an
issue. One such example would be a battery powered machine. Applying an MTA strategy would
reduce the necessary current input and subsequently extend the battery life with minimal reduction
in torque output. Clearly, an effective MTA strategy would be very useful in the battery powered
vehicle industry.

MatlabSite.com
Current Input: Below the Base Speed
40

30
Current (A)

20

10

0
0.05 0.051 0.052 0.053 0.054 0.055 0.056 0.057 0.058 0.059 0.06
time (s)


Current Input: Above th Base Speed


40


30


Current (A)


20

10

. com
0
0.4 0.401 0.402 0.403 0.404 0.405 0.406 0.407 0.408 0.409

t e
time (s)

i
Figure 1.2: Example of the effects of back EMF

M a
1.1.3

tl a b S Particle Swarm Optimization

A drawback of the SRM is its high degree of non-linearity, which makes developing analytical
solutions very difficult. A popular alternative to solving problems analytically is to apply an opti-
mization technique. These techniques are search-based methods that seek local or global extremes.
There are a number of optimization techniques including evolutionary algorithms, particle swarm Student Version

optimization (PSO) algorithms, and ant algorithms. When compared, the PSO technique maintains
a number of advantages over the other techniques. Namely, PSO algorithms:

Converge faster

Are simpler to implement

Manage problem constraints faster

Do not require derivatives

MatlabSite.com
Have fewer parameters that need to be controlled

Due to the many advantages of the PSO algorithm, the technique has become very popular and
has been applied in many fields. For example, PSO algorithms have been used in route planning in
unmanned aerial vehicles [9], neural network design [10], robotics [11], speech recognition [12], and
power systems [13]. In particular, this thesis uses a PSO algorithm to optimize the firing angles of
an SRM to achieve maximum torque per ampere.

1.2 Literature Review


The SRM is a machine design that has existed since the mid 1800s, although it was not until


recently that the machine design began to gain popularity. The machine was originally invented


in Scotland to propel a locomotive [14]. However, before the rise of semiconductors the SRM was


limited because the switching aspect of the SRMs control had to be achieved with mechanical
switches. The modern semiconductor based structure of the SRM was introduced by S.A. Nasar in

m
the 1960s [15]. Then in the 1970s interest in SRMs began to increase which can be attributed to

. co
the invention of IGBTs, MOSFETs, and digital signal processors.

i t e
Maximum torque per ampere (MTA) strategies have been investigated for most machine designs.

b S
For the SRM, many of these strategies attempt to generate an optimal current waveform. In [16],

a tl a
it was shown that controlling the current waveform can increase torque production. However, the

M
current waveform also increased torque ripple, and the approach did not consider the possibility
of two phases conducting at the same instant, which will occur in practical SRM applications. In
[17], a PSO was applied to determine the relationship between current waveforms of the leading
and trailing phases, where the leading phase is defined as the phase already conducting and the
trailing phase is defined as the phase about to be turned on. This strategy successfully achieved
MTA while reducing torque ripple. Regardless, the primary drawback of both these strategies is
their speed limitation. Due to the back EMF issue previously discussed, the waveforms generated
by both strategies cannot be synthesized properly at high speeds. Strategies based on firing angles,
however, can theoretically operate at any speed.
Operation of the SRM is highly dependent on the firing angles, which can be controlled to affect
a number of parameters, from efficiency [18] to torque ripple [19]. In [20], look-up tables for the firing

MatlabSite.com
angles were generated with a genetic algorithm in an attempt to maximize torque and efficiency.
The tables were speed and current input dependent. The tables were effective but generating the
tables required the genetic algorithm to run for each pair of current input and speed.
A particle swarm optimization (PSO), [21], algorithm is a strong candidate for determining
the optimal firing angles. Due to the advantages previously discussed, PSO algorithms have been
applied to many different fields including electrical machines [22]. This thesis uses a PSO algorithm
to optimize the firing angles of an SRM in order to maximize torque per ampere at low speeds.


m
b S i t e . co
M a tl a
5

MatlabSite.com
CHAPTER 2

FUNDAMENTALS OF SWITCHED RELUCTANCE


MOTORS

2.1 Introduction

A reluctance motor can be defined as an electric motor in which torque is produced by the


tendency of its movable part to move to a position where the inductance of the excited winding


is maximized" [23]. Typically, the movable part of this machine is made only of iron, shaped to


maximize inductance variation with position. The structural simplicity of the machine is one of its


most attractive traits; without windings or permanent magnets, the manufacturing cost is lower,
while reliability is improved. There are two types of reluctance machines: synchronous and switched.
A brief comparison of the two types is shown in Table 2.1.

. com
Table 2.1: Comparison of synchronous and switched reluctance machines

S i t e
Switched Reluctance Synchronous Reluctance

b
1. Stator and rotor have salient poles 1. Stator has a smooth bore, except for slotting

tl a
2. Stator winding comprises of a set of coils each 2. Stator has a polyphase winding with sine-

a
of which is wound on one pole distributed coils

M
3. Excitation is a sequence of current pulses ap- 3. Excitation is a set of polyphase balanced
plied to each phase individually sinewave currents
4. As the rotor rotates, the phase flux-linkage 4. The phase self-inductance should vary sinu-
should have a sawtooth waveform soidally

Physically, a switched reluctance machine (SRM) is doubly salient, in that both the rotor and
stator have salient poles, with windings on the stator poles. The windings for each phase are
independent and are individually excited to generate torque. Each phase of the SRM consists of
two stator poles that are opposite of each other. One pole of a phase is excited with some voltage and
the opposite pole is simultaneously excited with the opposite voltage. An SRM can have different
combinations of rotor and stator poles. For example, this thesis considers an 8/6 SRM, i.e. it has
8 stator poles and 6 rotor poles. As previously stated, each phase consists of two stator poles.
Therefore, an 8/6 SRM has 4 phases.

MatlabSite.com


(a) An aligned 2/2 SRM (b) An unaligned 2/2 SRM

Figure 2.1: Examples of a simple 2/2 SRM

S i t e . com 2.2 Principles of Operation

a b
In an SRM the inductance of the stator windings, or phase inductances, and the output torque

a tl
will vary with rotor position, r . In Figure 2.1, a simple one-phase 2/2 SRM is shown at the aligned

M
position and the unaligned position. Assuming positive rotation is in the counterclockwise direction,
the variation of the phase inductance and the torque output with rotor position for the 2/2 SRM
with a constant current input is plotted in Figure 2.2. The inductance rises as the rotor moves
from the unaligned to the aligned positions and then falls as it moves from aligned to unaligned.
Note that the phase inductance will reach a maximum at the aligned position and a minimum at
the unaligned position. Due to the fact that an SRMs rotor moves in an attempt to maximize the
inductance of the excited winding, the rotor will attempt to align with the stator pole, Figure 2.1a,
when the phase is excited. As a result, the torque output will be positive when inductance is on
the rise and negative when inductance is falling, as in the torque plot of Figure 2.2. If the current
through the phase is constant across all angles, then the positive and negative torque impulses will

MatlabSite.com
cancel. Thus, to generate positive torque, current must be switched off at or before the aligned
position.
From Figure 2.1 it can be determined that the plots in Figure 2.2 will be periodic and that the
period will be 180 . For example, if the aligned position, Figure 2.1a, is defined as r = 0 then the
rotor would return to the aligned position every 180n , where n is any integer. However, according
to torque plot in Figure 2.2, if positive torque is desired, current can only flow in the phase for the
90 of the rotation in which inductance is not falling.


m
b S i t e . co
a tl a
Figure 2.2: Plot of the inductance and torque vs rotor position for the 2/2 SRM of Figure 2.1

M An equation for torque can be derived by applying Faradays law to a single phase. First,
assume the machine is linear, i.e. the inductance does not vary with current, and that mutual
coupling between phases is negligible. Then, by Faradays law, the terminal voltage of a phase can
be expressed as in (2.1).

d d
v =Ri + = Ri + r
dt dr
(2.1)
d(Li) di dL
=Ri + r = Ri + L + r i
dr dt dr
Note that v is the terminal voltage, i is the current, is the flux linkage, R is the phase resistance,
L is the phase inductance, r is the rotor position, and r is the angular velocity. Notice the last

MatlabSite.com
term in (2.1). This term is defined as the back emf, given in (2.2). Back EMF and its impact on
current synthesis and control were previously discussed in Chapter 1.

dL
e = r i (2.2)
dr
Continuing from (2.1), notice that multiplying by the current will yield the total power input, given
in (2.3).

di dL
Ptotal = vi = Ri2 + Li + r i 2 (2.3)
dt dr


By the law of conservation of energy, mechanical power, given by Pm = r Te , is what remains after


resistive loss and the derivative of magnetic stored energy are subtracted from the total input power.


Note that Te is the instantaneous electromagnetic torque. Also recall that resistive loss is given by


Pr = Ri2 and magnetic stored energy is given by Um = 12 Li2 . The derivative of magnetic stored
energy can easily be found with the chain rule, see (2.4).

om
 
d 1 2 1 dL di di 1 dL

c
Li = i2 + Li = Li + r i2 (2.4)

e .
dt 2 2 dt dt dt 2 dr

i t
Subtracting resistive losses and (2.4) from (2.3) and solving for torque yields (2.5).

tl a b S
1 dL

a
Te = i2 (2.5)
2 dr

M
Although (2.5) and the functions in Figure 2.2 are for a 2/2 SRM, they can easily be expanded
to any combination of stator and rotor poles. In particular, consider the 8/6 SRM in Figure 2.3.
Recall that a 8/6 SRM has four phases, which will be denoted as the A phase, B phase, C phase, and
D phase, each of which will have its own inductance function. However, the inductance function for
each phase should have the same shape as the inductance function for the 2/2 SRM. The difference
being that the 8/6 SRMs inductance functions will have a shorter period due to the increase in rotor
360 360
poles. Namely, the period will be T86 = Nr = 6 = 60 , where Nr is the number of rotor poles.
Also, there will be a phase shift between the 4 phases inductance functions due to the physical
separation. The phase shift will be equal to the stroke angle, which is given by (2.6). Where m
is the number of phases. For an 8/6 SRM note that the stroke angle is 15 . Thus the inductance

MatlabSite.com
functions for a 8/6 SRM will be given by Figure 2.4, assuming that aligned with the A phase is
r = 0 .

360
= (2.6)
mNr


m
Figure 2.3: Cross section of a typical 8/6 SRM

b S i t e . co
M a tl a
Figure 2.4: Inductance functions for an 8/6 SRM for a constant current

In order to expand (2.5) to a multi-phase machine, the torque contributions from each individual
phase can be linearly added. However, in Figure 2.4 it can be seen that positive torque can only be
generated by a maximum of two phases at a time (notice the slopes). Thus, only two phases need

10

MatlabSite.com
to be accounted for in the torque equation and these phases can be defined as the leading phase,
subscript l, and the trailing phase, subscript t, (2.7).

1 dLl 1 dLt
Te = i2l + i2 (2.7)
2 dr,l 2 t dr,t

2.3 Principles of Control

As shown in Figure 2.2, motoring with an SRM requires that current be pulsed when the phase
inductance is on the rise and current be zero when the phase inductance is falling. Clearly unlike


other machines, the SRM cannot operate as a motor without some amount of control. Specifically,


the current through each phase must be controlled. While there are a number of methods to achieve


current control, this thesis uses an asymmetric bridge converter, hysteresis current control, and soft


chopping.

S i t e . com
M a tl a b Figure 2.5: An asymmetric bridge converter for a 4 phase SRM

2.3.1 Asymmetric Bridge Converter

Asymmetric bridge converters are commonly used in machine control. As seen in Figure 2.5, the
converter consists of two switch-diode pairs per phase. The switches are controlled to synthesize
desired voltage waveforms or current waveforms. Because the SRM is a current driven machine,
a current control strategy is typically applied to the converter. In this thesis, a current control
strategy known as hysteresis current control is applied.

11

MatlabSite.com
2.3.2 Hysteresis Current Control

Hysteresis current control (HCC) is relatively easy to implement, although it requires a current
feedback. First, an allowable error, called h, and a desired current waveform, called i , must be
provided. Then current is measured at the output of the converter and compared to the error bands
(i hi ) of the desired waveform. If the measured current is below the top error band and rising
or below the bottom error band, the converters switches are set to apply positive voltage, which
raises the current. If the measured current is above the top error band the converters switches
are set to apply zero or negative voltage, depending on the switching approach. As a result, this


strategy restricts the current to the space in between the error bands, called the hysteresis band.


In practice, the current will resemble Figure 1.2 at speeds below the base speed. For typical SRM


motoring operations the waveform is a square pulse whenever the inductance is rising.


2.3.3 Switching Strategy

There are two different methods of switching. They are referred to as hard chopping and soft

m
chopping. The two methods differ in how they turn off a phase. An asymmetric bridge converter

. co
has the ability to apply positive, negative, or zero voltage to a phase. When a phase reaches its off

i t e
angle, the current in the phase must be reduced to zero, or negative torque will be generated. Due

b S
to the inductance of the coils, the current in a phase cannot be reduced to zero instantaneously.

a tl a
However, negative voltage can be applied to cause the current to fall faster. If negative voltage is

M
applied to reduce the current in a coil, the switching strategy is called hard chopping. The other
option is to merely apply zero voltage and let the current die naturally, called soft chopping. In this
thesis, soft chopping is applied due to its simplicity.

2.3.4 Conventional Control

Figure 2.6 shows the general control structure of an SRM motor with speed control. Speed
control of an SRM motor can be easily achieved with a PI controller. While there are a number
of error control methods, PI control is easy to implement, cheap, and sufficient for most motoring
applications. Depending on the approach, the PI can generate a torque or current command.
In conventional control, a current command is typically generated. The command is then used
to generate commanded current waveforms for each phase. The commanded waveforms are then
implemented via HCC, which generates the switching logic for the asymmetric bridge converter.

12

MatlabSite.com

Figure 2.6: A block diagram representing control of an SRM motor


The current waveform generator in Figure 2.6 is the critical piece of the control. The shape
of the waveform and the firing angles used can greatly affect the performance of the machine. In


conventional control, the shape is a square pulse of height i . The firing angles in conventional
control are based off of the inductance function. Specifically, the turn-on angle is set equal to the

om
unaligned point and the turn-off angle is set equal to the aligned point. This way positive torque

e . c
is guaranteed. Typically, by convention aligned with the A phase is r = 0 and considering that

S i t
the inductance function will be periodic by 60 then the unaligned position should be at r = 30 .

l a b
Thus the firing angles for the A phase are on = 30 and of f = 60 . The firing angles for the

a t
other phases are merely the A phase angles shifted by 15 , 30 , and 45 for the B, C, and D phase

M
respectively. The ideal current waveforms for conventional control can be seen in Figure 2.7.

13

MatlabSite.com

m
b S i t e . co
M a tl a
Figure 2.7: An example of the current waveform and the firing angles in conventional SRM motor
control

14

MatlabSite.com
CHAPTER 3

COMPUTATIONAL INTELLIGENCE BASED


METHODS OF CONTROL

As discussed in Chapter 2, conventional control of an SRM motor applies HCC with firing angles
of on = 30 and of f = 60 , with respect to the A phase, and a square demand current. However,


conventional control is not guaranteed to be optimal but is guaranteed to generate some amount of


positive torque. The firing angles of an SRM can be controlled to affect efficiency, torque production,


torque per ampere, and more. For example, in [20] a genetic algorithm is applied to determine the


firing angle that will generate maximum torque and efficiency, and in this thesis a PSO is applied


to determine firing angles that will generate MTA. An alternative to adjusting the firing angles,
the current waveform can also be optimized. In [3] a PSO is used to generate the optimal current

m
waveform for MTA and minimal torque ripple.

b S i t e .
3.1

co Particle Swarm Optimization Methods

l a
3.1.1 Introduction to Particle Swarm Optimization

a t
Particle swarm optimization (PSO) was originally developed by James Kennedy and Russel

M
Eberhart [24], [25]. The method models the ability of some groups of animals to behave more
intelligently than the individual animal. This perceived increase in intelligence is called emergence.
Some examples of emergence are a flock of birds, a school of fish, or a pod of humpback whales.
Studies into the behavior of these animal groups have shown that their behavior can be attributed
to each individual animal following a simple behavior [26]. Similarly in a PSO, the individuals in
the swarm, called particles, follow a simple behavior: emulate the success of neighboring particles.
A PSO begins by initializing a number of particles to random or defined locations and then the
particles move through the given search space with some velocity. The basic behavior of the particles
are governed by (3.1) and (3.2). Where Vi is the velocity of the ith particle, xi is the position of
the ith particle, pbi is the best solution found by the ith particle, w is the inertial weight, nb is
the neighborhood best, c1 , c2 , r1 , and r2 are constants, and n is the generation. Notice that the

15

MatlabSite.com
Figure 3.1: An example of particle movement in a PSO


velocity depends on the past velocity, the location of the best solution a particle has found, and

m
o
the best solution found in its neighborhood of particles. As a result, the particles will converge on

e . c
the optimal solution after a number of generations. The inertial weight is included to increase the

S i t
particles exploration, which is its ability to thoroughly explore the search space. The weight acts

l a b
as mass and causes the particle to resist changes in its velocity.

M a t Vi (n + 1) =w(n)Vi (n) + c1 r1 (pbi (n) xi (n))

+ c2 v2 (nb(n) xi (n))

xi (n + 1) = xi (n) + Vi (n + 1)
(3.1)

(3.2)

A particles neighborhood is the group of particles that the particle shares information with.
It is between a particle and its neighborhood that the neighborhood best, nb, is determined. The
simplest neighborhood is one where the entire swarm is the neighborhood. Such a neighborhood
has a high degree of connectivity between particles and will converge on a solution faster. However,
this neighborhood is also more susceptible to local extremes. Other neighborhood types have been
proposed and investigated [27], [28].

16

MatlabSite.com
f (x1 , x2 ) = x21 + 2x22 0.3 cos(3x1 ) 0.4 cos(4x2 ) + 0.7 (3.3)

Figure 3.1 shows an example of particle movement in a PSO. The algorithm is attempting to
minimize (3.3), which is a common benchmark problem referred to as Bohachevsky 1. The minimum
value of the function is know to be zero which is located at the origin. This can easily be confirmed
by substituting x1 = 0 and x2 = 0 into (3.3). In this case, the particles are initialized at defined
locations and after a few iterations the particles converge around the global minima at (0,0).

3.1.2 Optimizing the Firing Angles


This thesis applies a PSO algorithm in order to optimize the variables on,t and of f,l to achieve


MTA. These variables refer to the on angle for the trailing phase and the off angle for the leading


phase. The leading phase is defined as the phase that has been on longer and the trailing phase


is defined as the phase that has more recently been turned on. For example, in Figure 2.7, at 30
the A phase turns on and is considered the trailing phase until the D phase turns off at 45 . At

m
this point the B phase is considered trailing and the A phase is leading. In order to apply a PSO

. co
algorithm, a function to optimize must be derived. In this case, torque per ampere as a function of

i t e
the firing angles is desired. This function can be derived by considering the equation for the torque

b S
output of the motor. Recall the equation for torque derived in Chapter 2, given again in (3.4).

a tl a
1 dLl 1 2 dLt

M
Te = i2l + it (3.4)
2 dl 2 dt
Where subscripts t and l denote the trailing and leading phases, respectively. Recall that for a
8/6 SR, t = l + 15 and consequently dt = dl . Also, if it is assumed that il = it = i, then (3.4)
simplifies to (3.5).

2T dLl dLt
= + (3.5)
i2 dl dl
Notice that (3.5) shows that the sum of the derivatives, dLl
dl and dl ,
dLt
corresponds to the torque
per ampere. Hence, if the right hand side of (3.5) is maximized, then torque per ampere will be
maximized.

dLl dLt
f (l ) = + (3.6)
dl dl

17

MatlabSite.com
However, (3.6) does not depend on the desired values, on,t and of f,l . Therefore instead of max-
imizing the instantaneous value, the average value over the range on,l to of f,l can be maximized.
This corresponds to the integral of f (l ), yielding (3.7) and (3.8).

Z of f,l Z of f,l Z of f,l


dLl dLt
f (l )dl = dl + dl (3.7)
on,l on,l dl on,l dl

f(l ) = Ll (of f,l ) Ll (on,l ) + Lt (of f,l ) Lt (on,l ) (3.8)

Notice the fourth term on the right hand side of (3.8), Lt (on,l ). Recall that by definition on,t


will occur after on,l . There is no need to consider the inductance contribution from the trailing


phase until it is turned on. Thus the term Lt (on,l ) can be replaced with Lt (on,t ).


A critical assumption made is that the optimization does not optimize the angles for each


individual phase, but optimizes the relationship between each phase and its respective trailing
phase. That is to say that for each phase, it is assumed that the turn-on angle is known and the
optimization is ran to determine the optimal off angle for the current phase, of f,l , and the on angle

com
for that phases corresponding trailing phase, on,t . For clarification, consider Figure 2.7. Assume

t e .
that the C phase is being optimized, which means that the C phase is the leading phase and the D

b S i
phase is the trailing phase. Essentially, the algorithm will only consider the range of 0 to the off

tl a
angle generated for C; in Figure 2.7 30 is shown. Once the optimal off angle for C and on angle

M a
for D are determined, the algorithm would then move to optimizing the D phase, i.e. the D phase
is leading and the A phase is trailing. Thus, each run of the algorithm only needs to consider from
the leading phases on angle to the leading phases off angle. This is why in (3.7) the function is
integrated over on,l to of f,l .

f(l,of f , t,on ) = Ll (of f,l ) Ll (on,l ) + Lt (of f,l ) Lt (on,t ) (3.9)

Thanks to the simplicity of (3.9), the PSO algorithm applied in this thesis is relatively straight-
forward. In the algorithm:

Particles are randomly initialized

The neighborhood includes the entire swarm

18

MatlabSite.com
Velocity is clamped, or limited, and the max velocity is non-linearly decreased over iterations

Inertial weight is applied as a randomly generated number

Both of the variables are limited to min and max , which are determined as described below

The search space bounds, min and max , are implemented to prevent the algorithm from re-
turning angles that are not feasible. First, the search space is restricted to positive angles, such
that min = 0 . The second constraint is not as simple. For discussion consider Figure 3.2. It
represents a possible plot of the sum of Ll (of f,l ) and Lt (of f,l ), the portion of (3.9) that depends
on of f,l . Since these terms are positive the PSO algorithm will attempt to maximize this function.


Figure 3.2 shows that mathematically the maximum angle is around 51 . Unfortunately, this is


not a physically feasible solution. At this point the slope of the curve, dl ,
dL
shifts from positive to


negative and according to (2.5) negative dL
dl indicates negative torque. Current cannot be reduced


to zero instantaneously and thus if 51 is set as the off angle negative torque will be generated. To
avoid this situation, the algorithm first finds the zero crossings of the derivative of the inductance

m
function, Ll (of f,l ) + Lt (of f,l ). Then the angle associated with the zero crossing that transitions

. co
from positive to negative is selected. Finally, this angle minus one degree is set as the upper bound

i t e
of the search space, max .

b S
In summary, this thesis applies a PSO to the function given by (3.9) in order to determine the

a tl a
optimal firing angles for MTA. The PSO algorithm is given in Appendix A for reference. Due to

M
the fact that (3.5) is integrated to obtain the objective function (3.9), the resulting angles will not
necessarily generate instantaneous MTA but will generate average or rms MTA. Also, note that
this approach requires that the inductance function for at least one phase is known and assumes
that the currents through the leading and trailing phase are equal, namely the demanded current
waveform must be a square wave which is only achievable at speeds below the base speed. Also, if
it can not be assumed that the phases are balanced, the inductance function for all of the phases
must be obtained or approximated. The inductance function used for (3.9) is found as discussed in
Chapter 4.

3.1.3 Optimizing the Current Waveform

A PSO can also be used to optimize the current waveform, as opposed to optimizing the firing
angles. In [3], an algorithm similar to the one used in this thesis is used to obtain MTA, however,

19

MatlabSite.com
x 10
3 Sum of Leading and Trailing Intuctance vs Off Angle
4

3.5

Inductance (L)

2.5


1.5


0 10 20 30 40 50 60
Off Angle (Degrees)


Figure 3.2: An example plot of the function given in (3.9)

om
the algorithm generates an optimal current waveform instead of optimal firing angles. This leads to

e . c
a difference in objective functions. While the angles based algorithm maximizes (3.9), the waveform

S i t
Student Version of MATLAB
based algorithm attempts to minimize copper losses. Recall that the power dissipated in a resistor is

l a b
given by Pr = I 2 R and that at some angles two phases can be firing in an SRM motor. Thus, total

a t
copper loss is given by (3.10), which is the function minimized by the waveform based algorithm.

M Pcopper = It2 R + Il2 R

Other than the difference in objective functions, there are a few key differences between the
waveform based algorithm and the angles based algorithm. While the angles based algorithm is
relatively basic, the waveform based algorithm requires some additional components. First, the
waveform based algorithm requires more constraints. Both algorithms apply bounds to the search
(3.10)

space, essentially limiting the variables to a range of values, however, the waveform based algorithm
requires a torque based constraint and a location based constraint as well. The torque based
constraint requires that potential solutions generate a certain amount of torque. For example, on
each iteration the particles of the waveform algorithm evaluate (3.4). If a particles location does

20

MatlabSite.com
not generate a certain amount of torque or more, then the particles location is removed as a viable
solution. The location based constraint requires that the optimization problem be divided into two
parts, namely, below and above the critical angle, or the angle where the leading phase begins to
fall. At angles below the critical angle, the problem is constrained to only allow solutions where the
trailing phase is increasing. At angles above the critical angle, the problem is constrained to only
allow solutions where the leading phase is decreasing. Finally, the waveform algorithm requires a
randomized particle swarm (RPS). This simply randomly resets some of the particle positions after
a number of iterations. This encourages particles to explore new locations in the search space.


3.2 Genetic Algorithm Method


A genetic algorithm is a type of evolutionary algorithm, which are algorithms that model the


process of evolution. The process of modeling evolution involves applying evolutionary concepts


such as inheritance, mutation, selection, and crossover. For example, in a GA the best solutions are
encouraged to reproduce over generations, while the poorer solutions are less likely to reproduce,

om
mimicking the concept of selection.

e . c
In [20] a genetic algorithm (GA) was applied in order to optimize the firing angles for maximum

S i t
torque. The algorithm was ran for various currents and speeds, resulting in look-up tables for both

l a b
of the firing angles. It was found that a range of values were acceptable for the turn-on angles. So

a t
the algorithm was re-applied in order to maximize both torque and efficiency. Once again, angles

M
were generated for various currents and speeds. While the algorithm successfully generated optimal
angles, the algorithm took hours to run.

21

MatlabSite.com
CHAPTER 4

MODELING OF THE SRM

4.1 Basics of Modeling

The SRM is modeled in Simulink. The characteristics of the machine that are required to model
the SRM are the phase resistance, Rx , the self inductance of the phase, Lx , and the moment of


inertia of the machine, J. Typically, the quantities Rx and Lx are considered to be uniform across


the phases, i.e. each phase has equal resistance and inductance. However, this is not necessarily true


in practical applications. The variables that are desired to be modeled by the simulation are the


voltages across each of the phases, vx , the current through each of the phases, ix , the flux linkage


of each phase, x , the total torque output, Te , the speed of the rotor, r , and the position of the
rotor, r . Note that x represents any phase (e.g iA or iB ) and that Lx , vx , ix , x , and Te will all be

om
functions of rotor position, r , but for simplicity of notation are written as f as opposed to f (r ).

i t e . c
4.1.1 Mathematics

a b S
There are three equations that govern the behavior of an SRM: Faradays Law, the torque

a tl
equation, and Newtons 2nd law. These equations can be used to determine all of the desired

M
variables from the characteristics of the machine. Modeling begins with the voltage input to the
phases, vx . The voltage input will be determined by some HCC type control given a demanded
current waveform and thus can be assumed to be known. Faradays law, (4.1), can then be applied
to determine the current in the phases, ix . Solving for current in (4.1) gives (4.2).

dx dix dLx
vx = Rx ix + = Rx ix + Lx + r ix (4.1)
dt dt dr

Z  
1 dLx
ix = vx r ix Rx ix dt (4.2)
Lx dr
Once current is obtained via (4.2) it can be used to solve for torque and flux linkage. Also, notice
that current must be fed back to (4.2) and the HCC. Flux linkage can be calculated with (4.1) or

22

MatlabSite.com
(4.3) . The torque generated by each phase, Tx , can be found with (2.5) and the total torque, Te ,
is given by the sum of the individual torques.

x = Lx ix (4.3)

T = Jr (4.4)

T = Te Tl Br (4.5)


Torque can then be used to solve for the speed and the position by applying Newtons second


law. Recall that Newtons second law for rotational frames can be given as (4.4). Where T is the


sum of all the torques present, is the rotational acceleration, and J is the moment of inertia. The


sum of the torques can be given as (4.5). Where Tl is the torque load, r is the derivative of the
position, r , and B is the viscous coefficient. Thus (4.6) and (4.7) can be applied to solve for the

m
last of the desired variables. Note that r must be fed back to (4.2).

i t e . co
Te Tl Br
Z
(4.6)

S
r = dt
J

a tl a b
Z
r = r dt (4.7)

M
Notice that this approach to modeling requires that Rx , J, and Lx be known. Rx can easily
be found with a multi-meter or an LCR meter and J can be estimated or found experimentally.
However, the phase inductances, Lx , are more difficult. In most machines, Lx will vary with
current. However, this variance is typically ignored. In an SRM the variance is too significant to be
ignored. Thus, Lx must be found not only as a function of position but also as a function of current,
Lx (r , i). Two different methods of obtaining inductance were applied. The first method was to
apply an FEA software to determine the inductance. The second method was to experimentally
determine inductance.

23

MatlabSite.com
4.2 Obtaining the Inductance
4.2.1 Finite Element Analysis

Finite element analysis (FEA) is a powerful tool that can be used to analyze systems. The
process works by generating a mesh that divides the problem into a number of smaller problems.
Each point in the mesh contains the properties of the system at that point and the system is solved
numerically at each of these points. Meshes can be tuned to be more dense at problematic locations
and less dense at locations of minimal interest. The result is a highly adaptive method for solving
complex and nonlinear systems.


A software produced by Infolytica called MagNet was used to apply FEA to the SRM. The


SRM built in MagNet was built according to the specifications given in Appendix B, which are


the specifications of the machine used in experimentation. The machine is a 4-phase 8/6 SRM rated


for 1 kW of power. Due to the fact that the functions are periodic, sweeps were performed over
60 for various currents. Torque and flux linkage were calculated for one phase, the A phase. All
of the data calculated via FEA can be found in Appendix C. Note that aligned with the A-phase is

om
defined as r = 0 .

l a b S i t e . c
M a t
Figure 4.1: FEA of the flux at various rotor positions and various currents for the A phase

24

MatlabSite.com
In Figure 4.1, the flux as calculated by MagNet is shown for various currents. The plot is as
expected with flux linkage peaking at the aligned position, 0 , and then reaching a minimum at the
unaligned position, 30 . In order to determine inductance, recall that flux linkage is given by (4.3).
Thus, the values seen in Figure 4.1 were divided by the respective currents. This yielded Figure 4.2.


m
A phase

b S i t e . co
Figure 4.2: FEA analysis of the inductance at various rotor positions and various currents for the

M a tl a
Due to the fact that Figure 4.1 was only divided by constants, the inductance maintains a shape
similar to the flux linkage, which is as expected. Also, notice that while Figure 4.2 is not identical
to the ideal inductance function in Figure 2.4, they share the same general shape and maximum
and minimum locations. Furthermore, notice the inductance is on the rise from 30 to 60 and thus
will be producing positive torque, which is as expected.

4.2.2 Experimental

While the FEA approach is quick and capable of determining a large number of variables,
experimental data is more likely to accurately describe the machine and does not require software.
The experimental approach is based on Faradays equation, (4.1), which can be rearranged in order
to find flux linkage, (4.8). According to this equation, flux can be determined experimentally by

25

MatlabSite.com
allowing current, ix , to rise due to a voltage, vx , over some time, t. These three values can then be
used to calculate flux linkage.

Z  
x = vx Rx ix dt (4.8)

It would be preferable if current rose naturally without any control. This way each instant in
time could be correlated to a single current. Due to the small resistance of the phase windings,
Rx 71 m, uncontrolled current would quickly reach excessive amounts. Thus, in order to
limit current to values appropriate for the machine, a series resistance must be introduced, Rs . In


particular, a 2 kW 1 resistor was used. The acutal resistance was measured as 1.16 . The


experimental set up for such a test is given in Figure 4.3.


S i t e . com
M a tl a b Figure 4.3: The experimental set up used to determine inductance

Recall that when current flows through a phase the rotor will attempt to align with that phase.
This is undesirable because flux linkage is needed at specific angles, r . Thus, the rotor needs to be
locked but it also needs to be swept through various angles. The most convenient method of doing
this is by attaching an index head. The head will lock the rotor but still allow for the rotor to be
moved to the desired angle.
The process of the experiment was as follows:

1. A 1 resistor was added in series with a phase

2. Current was allowed to flow through the phase in order to align the rotor and the encoder
was set to zero

26

MatlabSite.com
(a) Phase A (b) Phase B


(c) Phase C

m
(d) Phase D

co
Figure 4.4: Flux linkage determined experimentally

tl a b S i t e .
3. The index head was tightened onto the rotor

a
4. The switch was opened and current was allowed to fall to zero

M
5. The switch was closed for 0.01 seconds and current rose according to Ohms law

6. Voltage, current, time, and rotor position were captured

Steps 5 and 6 were repeated for the mid-aligned position, r = 15 , and the unaligned position,
r = 30 , for all phases. Once all data was obtained, flux linkage for each phase at the various
positions was calculated with (4.8). Exact parameters of the test are given in Table D.1.
Figure 4.4 shows the flux versus current for each phase at three positions: aligned, mid-aligned,
and unaligned. Notice there is a significant difference between the flux of each phase at low current.
This confirms that the machine is not perfectly balanced and that each phase will have slightly
different inductance. Also, compare Figure 4.4a and Figure 4.1. Notice that the two agree until the
higher currents, 20 A to 25 A. This implies that the inductance begins to saturate sooner than the
FEA model predicts.

27

MatlabSite.com
(a) Phase A (b) Phase B


(c) Phase C

m
(d) Phase D

. co
Figure 4.5: Inductance determined experimentally

a tl a b S i t e
The inductance was calculated from the flux with (4.3). The results are given in Figure 4.5.
Clearly, the machine is not perfectly balanced. Notice that at lower currents the inductance of each

M
phase is not equal. However, as current increases, the inductance functions become more compa-
rable. In fact, at 25 A and 30 A the plots become indistinguishable. All data from experimental
analysis of the flux linkages is given again in Appendix D.

4.2.3 Implementing the Inductance Function

Implementing the inductance function in simulation can be done many different ways. One
method is to perform a sweep from 0 to 60 using one of the previously described methods. Then a
look-up table could be generated with the rotor positions and current values. While this method is
effective, it is time consuming to obtain entire sweeps. Another option is to use a truncated Fourier
series approach.

28

MatlabSite.com
Lk (, i) = L0 (i) + L1 (i) cos(6 + 2k ) + L2 (i) cos(12 + 2k ) (4.9)

In [29], it is shown that the phase inductance of an SRM can be approximated with a truncated
Fourier series, as in (4.9). Where k represents the phase, i.e. A, B, C, D, etc. The term k is the
shift between phases, which depends on the geometry of the machine, specifically the shift depends
on the stroke angle, (2.6). Each phase of the machine will be out of phase by the stroke angle. For
a 8/6 SRM the shifts will be 0 , 15 , 30 , and 45 for the A, B, C, and D phases respectively. In
order to apply this approach the Fourier coefficients, L0 (i), L1 (i), and L2 (i) must be determined.


These terms can be determined by substituting values into (4.9). For example, allowing to equal


0 , 15 , and 30 yields (4.10). Note that these are the aligned, mid-aligned, and unaligned positions


for the A phase. Converting (4.10) to matrix notation and solving for the Fourier coefficients yields


(4.11). Thus, the Fourier method of approximating the inductance requires that the inductance


only be found at three points.

om
La (i) = L0 (i) + L1 (i) cos(k ) + L2 (i) cos(2k )

t e . c
Lm (i) = L0 (i) L1 (i) sin(k ) L2 (i) sin(2k ) (4.10)

b S i
Lu (i) = L0 (i) L1 (i) cos(k ) L2 (i) cos(2k )

a tl a
1
L0 (i) 1 cos(k ) cos(2k ) La (i)

M
L1 (i) = 1 sin(k ) sin(2k ) Lm (i) (4.11)
L2 (i) 1 cos(k ) cos(2k ) Lu (i)
In this thesis, the inductance function was implemented with the Fourier series method. The
inductance data was based off of experimental data taken from the machine as described in 4.2.2, the
results of which are given in Appendix D. The algorithm described in 3.1.2 and given in Appendix
A was used to generate the optimal angles for the SRM used in experimentation and simulation.
Due to the fact that the inductance varies with current, the optimal angles vary with current. Thus,
the algorithm was run for various currents. The angles resulting from the algorithm are given in
Appendix E. Note that for these angles r = 0 is when the respective phase is aligned.

29

MatlabSite.com
CHAPTER 5

SIMULATION

5.1 Simulation Results

In order to determine the capabilities of the proposed control strategy, two tests are performed.
The first test is in order to determine the capability of the proposed strategy at start up. The


second test is intended to analyze the performance of the strategy at steady state. Each test is


performed for the conventional angles of 30 and 60 and for the optimal angles generated by the


PSO, Appendix E. Note that the DC link current refers to the sum of the currents in each phase or


the total current that would be drawn out of the DC link.


5.1.1 Open-Loop Start Up

m
This test is an open loop test and does not use any speed control. Instead, the SRM is allowed

. co
to run up to speed uncontrolled. The test is performed at 40 V and for 10 A, 15 A, and 25 A

i t e
square current waveforms. Also, the machine is loaded with 0.3 N m. The results of this test for

a b S
the conventional strategy are shown in Figure 5.1

a tl
Curiously, the steady state speed of the machine tends to fall as the size of the current waveform

M
rises. This is because it is not the back EMF that is limiting the speed but the negative torque
being generated. The conventional strategy has acceptable performance at low speeds. However,
as the speed of the machine increases the conventional strategy begins to generate negative torque.
This is due to the fact that the turn-off angle is so late that the current does not have enough time
to fall to zero before the negative torque region is reached. Eventually, the amount of negative
torque will equal the amount of positive and the machine will cease to accelerate. Depending on
the voltage, current, and torque load this may be before or after base speed is reached. Notice that
as the current increases so does the amount of negative torque, and as a result the negative torque
will equal the positive torque sooner. Thus, as the current is increased in Figure 5.1 the steady
state speed falls.

30

MatlabSite.com
The other quantities in Figure 5.1 are as expected. Torque peaks at an initial start up torque
but eventually settles at a steady state value. The total current draw rises over time because of the
issue of the turn-off angle. When the machine begins to move faster, the phases begin to fire faster
and there tends to be residual current in the phases that should be off.
In Figure 5.2 the results for the optimal strategy are shown. The first notable difference is the
speed. The optimal strategy reaches much higher speeds than the conventional strategy. This can
be attributed to the lack of negative torque. Furthermore, the total current begins to fall over time.
This is due to the machine reaching the base speed. As discussed, at the base speed the back EMF


becomes so large that the current waveform cannot be synthesized properly. As shown in Figure


1.2, this causes current to fall, which will continue to fall as the machine speeds up. This results in


the total current draw plots seen in Figure 5.2.


Comparing Figure 5.1 and Figure 5.2, the initial torque production of the optimal strategy is


slightly lower than the torque seen in the conventional strategy. However, the optimal strategy
draws significantly less current than the conventional strategy, both initially and as the machine

m
begins to reach steady state. This indicates that the optimal strategy generates higher torque per

. co
ampere. Table 5.1 shows rms values calculated with the MATLAB command rms.

b S i t e
Table 5.1: RMS current, torque, and torque per ampere for the open-loop test

a tl a
At 10 A
Value Optimal Conventional

M
DC Link Current (RMS) 16.17 A 25.55 A
Torque Output (RMS) 0.7616 N m 0.8358 N m
Torque per Ampere (RMS) 0.0471 NAm 0.0327 NAm

At 15 A
Value Optimal Conventional
DC Link Current (RMS) 19.14 A 40.10 A
Torque Output (RMS) 0.9615 N m 1.233 N m
Torque per Ampere (RMS) 0.0502 NAm 0.0308 NAm

At 25 A
Value Optimal Conventional
DC Link Current (RMS) 21.64 A 63.63 A
Torque Output (RMS) 0.9931 N m 1.570 N m
Torque per Ampere (RMS) 0.0459 NAm 0.0247 NAm

31

MatlabSite.com

(a) Speed for 10 A (b) Torque for 10 A (c) Current for 10 A


S i t e . com
l a b
(d) Speed for 15 A (e) Torque for 15 A (f) Current for 15 A

M a t
(g) Speed for 25 A (h) Torque for 25 A (i) Current for 25 A

Figure 5.1: Open-loop test for conventional angles

32

MatlabSite.com

(a) Speed for 10 A (b) Torque for 10 A (c) Current for 10 A


S i t e . com
l a b
(d) Speed for 15 A (e) Torque for 15 A (f) Current for 15 A

M a t
(g) Speed for 25 A (h) Torque for 25 A (i) Current for 25 A

Figure 5.2: Open-loop test for optimal angles

33

MatlabSite.com
(a) Conventional at 0.3 N m (b) Conventional at 0.5 N m (c) Conventional at 1 N m



(d) Optimal at 0.3 N m (e) Optimal at 0.5 N m (f) Optimal at 1 N m

om
Figure 5.3: Closed-loop test total current draw at 500 rpms

5.1.2

l a b S i t e . c
Closed-Loop Steady State

t
This test maintains the SRM at 500 rpms with a PI loop in order to analyze the machines

M a
performance at steady state. The machine is given 40 V and is loaded with 0.3 N m, 0.5 N m,
and 1 N m. Speeds above the base speed are not considered because the strategy cannot guarantee
MTA at high speeds. This is because the assumption that it = il is not necessarily true at high
speeds. Figure 5.3 shows the results. It is important to note that the data shown is at steady state,
i.e. the velocity is 500 rpms plus or minus 1 percent. The time it took the machine to accelerate
to 500 rpms is ignored because this test is only concerned with the performance at steady state.
It is very apparent from Figure 5.3 that the optimal strategy draws less current. Also, because
this is at steady state, the torque output is the same for both strategies. Namely, the torque output
is equal to the torque load, otherwise the machine would be accelerating. Thus, the optimal strategy
produces more torque per ampere because it draws less total current. This can be confirmed by
finding the rms values of the current and torque.

34

MatlabSite.com
Table 5.2: RMS current, torque, and torque per ampere for the closed-loop test
At Tl = 0.3 N m
Value Optimal Conventional
DC Link Current (RMS) 9.825 A 11.77 A
Torque Output (RMS) 0.3287 N m 0.3289 N m
Torque per Ampere (RMS) 0.0335 NAm 0.0279 NAm

At Tl = 0.5 N m
Value Optimal Conventional
DC Link Current (RMS) 12.40 A 15.14 A
Torque Output (RMS) 0.5273 N m 0.5275 N m
Torque per Ampere (RMS) 0.0425 NAm 0.0349 NAm


At Tl = 1 N m


Value Optimal Conventional
DC Link Current (RMS) 17.60 A 22.81 A


1.02 N m 1.02 N m


Torque Output (RMS)
Torque per Ampere (RMS) 0.0581 NAm 0.0449 NAm


Table 5.1 and Table 5.2 show the rms torque per ampere generated in the two tests. In both

m
situations it is quite clear that the proposed strategy generates higher torque per ampere than the

co
conventional strategy.

tl a b S i t e .
M a
35

MatlabSite.com
CHAPTER 6

EXPERIMENTATION

6.1 Experimental Set Up

The primary means of controlling the SRM is through the Digital Signal Processing and Control
Engineering (dSPACETM ) 1104. The DS1104 is one of a group of boards designed to test control


structures on the intended hardware. A control can be built in MATLAB/Simulink and can then be


compiled onto the DS1104, which uses many different forms of I/O to interface with the hardware.


The simulated control structure is then applied and tested on the hardware and any changes neces-


sary can easily be corrected in MATLAB/Simulink and then recompiled onto the board. dSPACE


also provides an interface software, dSPACE Control Desk. The environment is used to control vari-
ables in the MATLAB/Simulink model during run time and to capture data such as speed, torque,

om
current, etc. The DS1104 has 8 ADCs, 8 DACs, and 20 parallel I/Os with a 60 bit processor. The

e . c
DS1104 is used to perform all necessary calculations. Referring back to Figure 2.6, the dSPACE

S i t
board encompasses the adder, the PI, the current waveform generator, and the HCC.

l a b
Consider Figure 6.1. This figure depicts the set up of the SRM test bed used in experimentation.

a t
The encoder, on the very left, is a H25 Incremental Encoder from BEI which has a resolution of

M
0.1 . The encoder measures the rotor position and the speed of the rotor. The position is fed back
to the DS1104 and is used in HCC, while the speed is fed back to be used in the PI loop and
to be captured. On the right of the encoder is the SRM, the specifications of the SRM are given
in Appendix B. The current fed into the SRM comes from the IGBTs that are controlled by the
DS1104, note 2SD316EI IGBT drivers from Concept are used. Furthermore, the current flowing in
the phases are measured with Hall effect based current sensors LA55-P from LEM. The measured
current is fed back to the DS1104 for use in HCC and to be captured. The torquemeter shown is
a MCRT 48201V non-contact DC operated torquemeter from S. Himmelsteing and Company. The
torque is not used in control but is fed back to the DS1104 to be captured. The servo motor, on the
very right, is a SVL-210 motor provided by Sureservo. The servo motor is used to provide a torque
load and receives torque commands from the DS1104. Finally, a DCS40-75f DC power source from

36

MatlabSite.com
Sorenson is used to supply power. The source charges a capacitor bank which in turn feeds the
IGBTs. The power supply and the capacitor bank are not shown in Figure 6.1. Current drawn from
the Sorenson is plotted in this chapter as DC link current.


m
b S i t e . co
tl a
Figure 6.1: Experimental set up of the SRM

M a 6.2 Experimental Results

As in simulation, there are two tests performed. The first test is the open-loop start up test and
the second test is the closed-loop steady state test. In simulation, these tests were performed at
various currents and torque loads. However, the experimental tests only consider the tests at 15 A
and at a torque load of 0.3 N m.

6.2.1 Open-Loop Start Up

As in simulation, this test consists of allowing the SRM to run without any speed control. The
machine is allowed to run for 3 seconds, then the rms torque and current values are divided to

37

MatlabSite.com
determine the torque per ampere over that time. The test is ran with a DC voltage of 40 V and
with a commanded current of 15 A square waves. Also, the machine is loaded with 0.3 N m. Note
that conventional control uses firing angles of 30 and 60 and the optimal control uses the angles
generated by the PSO algorithm, Appendix E.



Figure 6.2: Output speed of the motor in the start up test

. com
In Figure 6.2 the speed of the SRM over time is given. At low speeds the optimal and conventional

i t e
angles rise at nearly the same rate. This implies that torque production is equal because torque is

a b S
related to acceleration. At high speeds, the conventional strategy saturates at around 2000 rpms.

a tl
This is exactly what was seen in simulation and just as in simulation, this is not due to the back

M
EMF. As discussed, this is caused by the conventional turn-off angle being too late for the current
to fall to zero before the negative torque region is reached.
Figure 6.3 shows the total current drawn by the SRM over time. It is apparent that the optimal
strategy significantly reduces the total current draw. In Figure 6.4 the torque output of the motor
is plotted. The optimal strategy produces more start up torque and more steady state torque. In
both the optimal and conventional strategies the machine is loaded with 0.3 N m. Both strategies
should settle at this value as it approaches steady state, however, the optimal strategy does not.
The difference in the steady state torque is due to air resistance, friction, etc., which usually vary
with speed in machine applications, for example Tair = B. Regardless of the reason, the optimal
strategy still produces more torque with less current, which results in higher torque per ampere.

38

MatlabSite.com

Figure 6.3: DC link current drawn in the start up test

m
b S i t e . co
M a
6.2.2
tl a Figure 6.4: Torque output of the motor in the start up test

Closed-Loop Steady State

In this test, the machine is maintained at a specific speed by using a PI speed loop. This allows
the performance of the strategies to be examined while operating at specific speeds. In order to
maintain consistency, this PI loop is the same as the one used in simulation. Namely, the P and I
gains are 1 and 0.1 respectively. For this test, 40 V , a speed demand of 500 rpms, and a load of
0.3 N m is used. Also, the time it took the machine to accelerate to 500 rpms is ignored because

39

MatlabSite.com

Figure 6.5: DC link current drawn in the closed-loop test for the optimal strategy


m
b S i t e . co
M a tl a
Figure 6.6: DC link current drawn in the closed-loop test for the conventional strategy

the performance of the strategies at start up were already considered in the last test.
In Figures 6.5 and 6.6 the total current draw of the two strategies are shown. Clearly, the
optimal strategy draws as little as 5 A at times, while the average current draw of the conventional
strategy appears to be significantly higher. In order to make the comparison easier, the rms values
of the DC link currents are given in Table 6.2. As seen, the optimal angles reduce the current draw
by approximately 1 A.

40

MatlabSite.com
Figure 6.7 shows the torque output of the motor. The optimal strategy does produce more
torque, but not a significant amount, which is as expected. Both strategies are loaded with 0.3 N m
and they should maintain that torque at steady state. However, the optimal strategy maintains the
load torque with less current and thus generates higher torque per ampere.


m
Figure 6.7: Torque output of the SRM in the closed-loop test

S i t e . co
In summary, rms values for the torque and current draw are given in Tables 6.1 and 6.2. Also,

b
l a
the rms torque per ampere is given. Clearly, the optimal strategy generates higher torque per

a t
ampere in both tests.

M
Table 6.1: RMS current, torque, and torque per ampere for the open-loop test

Value Optimal Conventional


DC Link Current (RMS) 15.06 A 37.46 A
Torque Output (RMS) 0.3943 N m 0.3230 N m
Torque per Ampere (RMS) 0.0262 NAm 0.0086 NAm

Table 6.2: RMS current, torque, and torque per ampere for the closed-loop test

Value Optimal Conventional


DC Link Current (RMS) 10.00 A 11.07 A
Torque Output (RMS) 0.3072 N m 0.3005 N m
Torque per Ampere (RMS) 0.0307 NAm 0.0272 NAm

41

MatlabSite.com
CHAPTER 7

CONCLUSION

7.1 Discussion

While the optimal angles did generate higher torque per ampere at high speeds, it cannot be
assumed that MTA is achieved because the PSO algorithm is based off of the assumption that


it = il which cannot be assumed at high speeds. This is due to the back EMF issue. However, it


was clearly shown both experimentally and in simulation that the optimal angles generated higher


rms torque per ampere at low speeds, see Tables 5.2 and 6.2. Thus, it can be asserted that at low


speeds the optimal angles generate MTA. It was also shown that the optimal angles generate higher


rms torque per ampere on start up, Tables 6.1 and 5.1, but MTA can only be asserted if the steady
state speed is below the base speed.

om
In comparison to other computationally intelligent methods, this method benefits from faster

e . c
and more flexible implementation. The optimal current waveform method discussed in Chapter 3

S i t
requires that look up tables be implemented into the control. However, any control for an SRM

l a b
would already have firing angles implemented in the control. Thus, the proposed PSO algorithm

a t
could be ran for the operating current and then the resulting angles could simply be input into the

M
control as constants. The proposed PSO can also be used to generate a look up table if desired,
similar to the look up table generated by the genetic algorithm. However, the proposed PSO method
only requires a single one dimensional look up table for the off angle because the on angle remains
fairly constant. The genetic algorithm table requires two two-dimensional tables, one for each firing
angle. Finally, unlike the current waveform method, the proposed method could possibly be applied
to high speeds. Only the assumption that it = il restricts proposed strategy to low speeds. If
the objective function, (3.9), could be altered so that this assumption was not required then the
resulting angles could theoretically be applied to both high and low speeds.
The proposed PSO strategy also has the advantage of being able to generate unique angles for
each phase. The other computationally intelligent methods assume that the machine is balanced
and generates a single set of firing angles or a single current waveform for each phase. However, as

42

MatlabSite.com
shown in Chapter 4 there can be a significant difference between the inductance of the phases, which
means that the phases will behave differently and will require unique angles or current waveforms.
The proposed method successfully generated unique off angles for maximum torque per ampere,
Figure E.2, mitigating the effect of the imbalance.

7.2 Future Work

The next stage for this algorithm would be to apply it to high speeds. As discussed, removing
the assumption that it = il would theoretically allow this approach to be applied at high speeds.


However, it could be possible to take it a step further. If the objective function could be rewritten


to take into account the back EMF, this method could generate angles that are based on speed as


well as current.


Another option would be to run the algorithm in real time. The algorithm would not need to


operate continuously but would only need to run whenever a trailing phase shifts to a leading phase
or whenever a phase turns off. This would reduce the necessary processing power, possibly making

om
the algorithm easier to implement in real time. The benefit would be that current could be fed to

e . c
the algorithm in real time and thus the algorithm could more accurately account for the current

S i t
changes. Also, if the algorithm could be extended to include speed, this would further improve the

l a b
performance of the algorithm in real time.

M a t
43

MatlabSite.com
APPENDIX A

THE PARTICLE SWARM OPTIMIZATION


ALGORITHM

function [ON, OFF] = TorquePSO(L0,L1,L2)


%Lee Griffin
%Torque PSO
%9/11/2013


%Given the fourier coefficients of the inductance function, this alorithm
%will determine optimal firing angles for a SRM for max torque per ampere


runs = 1; %total number of runs
total = 0; %Used to store sum of the values


angles = 0:pi/6000:pi/3;

m
dLoff = -L1(1)*6*sin(6*(angles))... %

co
-L2(1)*12*sin(12*(angles))... %

e .
-L1(2)*6*sin(6*(angles+(pi/12)))... %

i t
-L2(2)*12*cos(12*(angles+(pi/12))); %Find the upper constraint

b S
%

l a
indx_abv = find(dLoff > 0); %

a t
cross = max(indx_abv); %
maxAngle = angles(cross); %

M
for q = 1:runs %Run a number of times and average results

it = 20; %Number of iterations


p = 20; %Number of particles

theta = rand(p,2)*maxAngle; %Randonmly place particles


%Note: theta(:,1) are the theta OFF values
%for the leading phase and theta(:,2) are
%the theta ON values for trailing phase

Pb = zeros(p,3); %Vector of personal bests


V = zeros(p,2); %Vector of velocties
Gb = zeros(1,3); %Gb(1) is the global best values, Gb(2:3) are
%the two locations values (ie: theta(:,1)

44

MatlabSite.com
%and theta(:,2)

c1 = .5; %Coefficients used in calculating the


c2 = .5; %velocties

t = 1; %initialize iteration counter

w = (0.5+(rand()/2)); %inertia weight, used to calculate velocties


Vpeak = (1/2)*maxAngle; %Peak velocity

while t < it


Vmax = ((1-(t/it))^2)*Vpeak; %with each iteration, the maximum


%allowable velocity is decreased


for n = 1:p %for each particle...


%-----calculate the function value at the location -----%
Lloff = L0(1)... %
+L1(1)*cos(6*(theta(n,1)))... %
+L2(1)*cos(12*(theta(n,1))); %

om
%

. c
Ltoff = L0(2)... %

t e
+L1(2)*cos(6*(theta(n,1)+0.226892803))... %

S i
+L2(2)*cos(12*(theta(n,1)+0.226892803)); %

b
Lton = L0(2)... %

tl a
+L1(2)*cos(6*(theta(n,2)+0.226892803))... %

a
+L2(2)*cos(12*(theta(n,2)+0.226892803)); %

M
%
f = Lloff+(Ltoff -Lton); %
%-------------------------------------------------------%

%--Determine if new value is a personal best--%


if ( f > Pb(n,1) && theta(n,1) < maxAngle && theta(n,1) > 0 ...
&& theta(n,2) < maxAngle && theta(n,2) > 0)
Pb(n,1) = f; %
Pb(n,2) = theta(n,1); %
Pb(n,3) = theta(n,2); %
end %
%---------------------------------------------%

%-Determine if personal best is a global best-%


if ( Pb(n) > Gb(1) && theta(n,1) < maxAngle && theta(n,1) > 0 ...
&& theta(n,2) < maxAngle && theta(n,2) > 0)
Gb(1) = Pb(n,1); %

45

MatlabSite.com
Gb(2) = theta(n,1); %
Gb(3) = theta(n,2); %
end %
%---------------------------------------------%
end %end for loop

for k = 1:p %for each particle...

%-------------Calculate the new velocities--------------%


r1 = rand(1); %
r2 = rand(1); %
%


V(k,1) = w*V(k,1) + c1*r1*(Pb(k,2) - theta(k,1))... %


+ c2*r2*(Gb(1,2) - theta(k,1)); %


V(k,2) = w*V(k,2) + c1*r1*(Pb(k,3) - theta(k,2))... %


+ c2*r2*(Gb(1,3) - theta(k,2)); %


%-------------------------------------------------------%

%---------Update position---------%
theta(k,1) = theta(k,1) + V(k,1); %

om
theta(k,2) = theta(k,2) + V(k,2); %

. c
%---------------------------------%

S i t e
%-------Apply velocity and position constaints------%

b
if(theta(k,1) > maxAngle) %

tl a
theta(k,1) = rand()*maxAngle; %

a
end %

M
%
if(theta(k,2) > maxAngle) %
theta(k,2) = rand()*maxAngle; %
end %
%
if (V(k,1) > Vmax) % %
V(k,1) = Vmax; % %
end % %
%Clamp velocties %
if (V(k,2) > Vmax) % %
V(k,2) = Vmax; % %
end % %
%---------------------------------------------------%

end %End for Loop

best(t,:)=Gb; %Best solution is the Global best

46

MatlabSite.com
t = t+1; %go to next generation
end

ang = 180.*Gb(:,2:3)./pi; %Convert to Degrees


total = total+ang; %Add to total

end

average = total./runs; %Take the average, if run multiple times

OFF = average(1); %Off angle


ON = average(2)+15; %On angle


m
b S i t e . co
M a tl a
47

MatlabSite.com
APPENDIX B

SWITCHED RELUCTANCE MACHINE


SPECIFICATIONS

Table B.1: 4-phase 8/6 SRM specifications


Dimension Value


Rated Power 1 kW


Rated Speed 3600 rpm


Rated Voltage 48 Vdc


Stator outer diameter 130.2766 mm
Stator inner diameter 70.2564 mm
Rotor outer diameter 69.4944 mm

om
Air gap 0.381 mm

. c
Stack length 69.85 mm

i t e
Inertia constant 0.00084 N m s2

b S
Friction coefficient 0.00001 N m s

tl a
Coil material Copper

a
Phase winding resistance 71.34 m

M
Number turns per coil 24
Phase winding conductors 19.5 AW G (5 in parallel)
Stator and rotor material M19 29 Gauge Steel

48

MatlabSite.com
APPENDIX C

RESULTS OF FINITE ELEMENT ANALYSIS


m
b S i t e . co
Figure C.1: FEA analysis of the torque output at various rotor positions and various currents for

l a
the A phase

M a t
49

MatlabSite.com


Figure C.2: FEA analysis of the flux at various rotor positions and various currents for the A phase

S i t e . com
M a tl a b
Figure C.3: FEA analysis of the inductance at various rotor positions and various currents for the
A phase

50

MatlabSite.com
APPENDIX D

INDUCTANCE MEASUREMENT EXPERIMENT

Table D.1: Values used in experiment

Dimension Value
DC Voltage 45 V


Test Length 0.01 s


Series Resistance (Rs ) 1.16


S i t e . com
M a tl a b
Figure D.1: A phase flux linkage results from the inductance test

51

MatlabSite.com


Figure D.2: The inductance of the A phase as determined experimentally

S i t e . com
M a tl a b
Figure D.3: B phase flux linkage results from the inductance test

52

MatlabSite.com


Figure D.4: The inductance of the B phase as determined experimentally

S i t e . com
M a tl a b
Figure D.5: C phase flux linkage results from the inductance test

53

MatlabSite.com


Figure D.6: The inductance of the C phase as determined experimentally

S i t e . com
M a tl a b
Figure D.7: D phase flux linkage results from the inductance test

54

MatlabSite.com

m
b S i t e . co
M a tl a
Figure D.8: The inductance of the D phase as determined experimentally

55

MatlabSite.com
APPENDIX E

OPTIMAL ANGLES


m
co
Figure E.1: Optimal on angle as generated by the PSO in Appendix A

tl a b S i t e .
M a
Figure E.2: Optimal off angle as generated by the PSO in Appendix A

56

MatlabSite.com
BIBLIOGRAPHY

[1] Rahman, K.M. "Advantages of switched reluctance motor applications to EV and HEV: design
and control issues", IEEE Transactions on Industry Applications, Jan-Feb 2000, p.111-121

[2] Andrade, D.A. "Comparative study between a Single-phase and a Three-phase switched reluc-
tance machine", IEEE International Electric Machines and Drives Conference (IEMDC), 2011

[3] Akar, Furkan, "Computationally Intelligent Algorithms in Maximum Torque Per Ampere Strate-
gies in Switched Reluctance Machines at Low Speeds", Masters Thesis, Florida State University,
Tallahassee, FL, 2012


[4] Faiz, J., "Optimal Excitation Angles of a High Speed Switched Reluctance Generator by Ef-


ficiency Maximization", 12th International Power Electronics and Motion Control Conference,


2006


[5] Beno, M.M., "Improving power factor in switched reluctance motor drive system by optimising
the switching angles", IEEE Region 10 Conference, 2008

m
[6] Sungmin, Kim, "Maximum Torque per Ampere (MTPA) Control of an IPM Machine Based on

co
Signal Injection Considering Inductance Saturation", IEEE Transactions on Power Electronics,

e .
Vol. 28, Issue 1, Jan 2013

b S i t
[7] Wasynczuk, O., "A maximum torque per ampere control strategy for induction motor drives",

l a
IEEE Transactions on Energy Conversion, Vol. 13, Issue 2, Jun 1998

M a t
[8] Pathmanathan, M., "Maximum-Torque-per-Ampere Control of Phase Advance Modulation of
an SPM Wind Generator", IEEE Transactions on Industry Applications, Vol. 48, Issue 5, Sept.-
Oct. 2012

[9] Yangguang Fu, "Phase Angle-Encoded and Quantum-Behaved Particle Swarm Optimization
Applied to Three-Dimensional Route Planning for UAV", IEEE Transactions on Systems, Man
and Cybernetics, Part A: Systems and Humans, Vol. 42, Issue 2, July 2011

[10] Xinghua Wu, "A density adjustment based particle swarm optimization learning algorithm for
neural network design", 2011 International Conference on Electrical and Control Engineering
(ICECE), Sept. 2011

[11] Ki-Baek Lee, "Multiobjective Particle Swarm Optimization With Preference-Based Sort and Its
Application to Path Following Footstep Optimization for Humanoid Robots", IEEE Transactions
on Evolutionary Computation, Vol. 17, Issue 6, Dec. 2013

[12] Kit Yan Chan, "Enhancement of Speech Recognitions for Control Automation Using an Intel-

57

MatlabSite.com
ligent Particle Swarm Optimization", IEEE Transactions on Industrial Informatics, Vol. 8, Issue
4, Nov. 2012

[13] Vlachogiannis, J.G., "A Comparative Study on Particle Swarm Optimization for Optimal
Steady-State Performance of Power Systems", IEEE Transactions on Power Systems, Vol. 21,
Issue 4, Nov. 2006

[14] Sandeep, N., "Modeling and Control of Switched Reluctance Machines for Four-quadrant Op-
eration", Masters thesis , University of Akron, Akron, OH, Dec. 2010

[15] Murphy, A., "Design of a Switched Reluctance Machine Drive for Automotive Applications",
Masters thesis , Dublin City University, Dublin, Ireland, July 2008


[16] Wang, W., Fahimi B., "Maximum torque per ampere control of switched reluctance motors",


2012 IEEE Energy Conversion Congress and Exposition (ECCE) , Sept. 2012


[17] Fleming, F., Akar, F., and Edrington C., "An optimal maximum torque per ampere strategy
for switched reluctance machines", 2012 IEEE Transportation Electrification Conference and


Expo (ITEC) , June 2012

[18] Kioskeridis, I., "Maximum efficiency in single-pulse controlled switched reluctance motor

m
drives", IEEE Transactions on Energy Conversion , Vol. 20, Issue 4, Dec. 2005

e . co
[19] Rodrigues, M., Costa Branco P.J, Suemitsu, W., "Fuzzy logic torque ripple reduction by turn-off

i t
angle compensation for switched reluctance motors", IEEE Transactions on Industrial Electron-

b S
ics, Vol. 20, Issue 4, Dec. 2005

a tl a
[20] Fisch, J., et. All, "Pareto-optimal firing angles for switched reluctance motor control", Sec-

M
ond International Conference On Genetic Algorithms in Engineering Systems: Innovations and
Applications, Sep 1997

[21] Englebrecht A. P., Fundamentals of Computational Swarm Intelligence, John Wiley and Sons
Ltd., 2006.

[22] Razik, H., Correa, M. B. R., and Silva E. R. C., "The tracking of induction motors faulty lines
through particle swarm optimization using chaos", IEEE International Conference on Industrial
Technology, pp. 1245-1250, March 2010

[23] Miller T. J. E., Electronic Control of Switched Reluctance Machines, Newnes Press, 2001.

[24] Eberhart, R. C. and Kennedy, J. "A New optimizer using particle swarm theory", Proceedings
of the Sixth International Symposium on Micro Machine and Human Science. Nagoya, Japan,
1995

[25] Kennedy, J. and Eberhart R. C., "Particle swarm optimization", Proceedings of IEEE Inter-

58

MatlabSite.com
national Conference on Neural Networks, Piscataway, NJ, 1995

[26] Reynolds, C. W.m "Flocks, Herds, and Schools: A Distributed Behavioral Model", Computer
Graphics, 12(4):25-34, 1987

[27] Kennedy, J. and Mendes, R.C., "Population Structure and Particle Performance", IEEE
Congress on Evolutionary Computation, pages 1671-1676, 2002

[28] Kennedy, J. "Small Worlds and Mega-Minds: Effects of Neighborhood Topology on Particle
Swarm Performance", IEEE Congress on Evolutionary Computation, pages 1931-1938, July 1999

[29] Edrington, C. S. "An Autocalibrating Inductance Model for Switched Reluctance Motor


Drives", IEEE Transactions on Industrial Electronics, pages 2165-2173, July 2007


m
b S i t e . co
M a tl a
59

MatlabSite.com
BIOGRAPHICAL SKETCH

Lee Griffin is a Florida native, hailing from Panama City, FL. He was born on June 17, 1991. He
attended Florida State University at Panama City and received his B.S. in Electrical Engineering
from there. He graduated at the top of his class with a 4.0 GPA. He joined the Center for Advanced
Power Systems in Tallahassee, Florida in the Fall of 2013 and began to pursue his Masters degree
at Florida State University. He studied under Dr. Chris Edrington.


m
b S i t e . co
M a tl a
60

MatlabSite.com

Вам также может понравиться