2-Ph Park Transform
Click here to load reader
-
Upload
dinesh-dhungana -
Category
Documents
-
view
32 -
download
0
Transcript of 2-Ph Park Transform
AN706-00032-1v0-E
32-BIT MICROCONTROLLER
MB9B100A/MB9B300A/MB9B400A/MB9B500A Series
Coordinate transform
TM
ARM and Cortex-M3 are the trademarks of ARM Limited in the EU and other countries.
AN706-00032-1v0-E
All Rights Reserved.
The contents of this document are subject to change without notice. Customers are advised to consult with
FUJITSU sales representatives before ordering.
The information, such as descriptions of function and application circuit examples, in this document are
presented solely for the purpose of reference to show examples of operations and uses of Fujitsu
semiconductor device; Fujitsu does not warrant proper operation of the device with respect to use based on
such information. When you develop equipment incorporating the device based on such information, you
must assume any responsibility arising out of such use of the information. Fujitsu assumes no liability for
any damages whatsoever arising out of the use of the information.
Any information in this document, including descriptions of function and schematic diagrams, shall not be
construed as license of the use or exercise of any intellectual property right, such as patent right or
copyright, or any other right of Fujitsu or any third party or does Fujitsu warrant non-infringement of any
third-party’s intellectual property right or other right by using such information. Fujitsu assumes no liability
for any infringement of the intellectual property rights or other rights of third parties which would result from
the use of information contained herein.
The products described in this document are designed, developed and manufactured as contemplated for
general use, including without limitation, ordinary industrial use, general office use, personal use, and
household use, but are not designed, developed and manufactured as contemplated (1) for use
accompanying fatal risks or dangers that, unless extremely high safety is secured, could have a serious
effect to the public, and could lead directly to death, personal injury, severe physical damage or other loss
(i.e., nuclear reaction control in nuclear facility, aircraft flight control, air traffic control, mass transport
control, medical life support system, missile launch control in weapon system), or (2) for use requiring
extremely high reliability (i.e., submersible repeater and artificial satellite).
Please note that Fujitsu will not be liable against you and/or any third party for any claims or damages
arising in connection with above-mentioned uses of the products.
Any semiconductor devices have an inherent chance of failure. You must protect against injury, damage or
loss from such failures by incorporating safety design measures into your facility and equipment such as
redundancy, fire protection, and prevention of over-current levels and other abnormal operating conditions.
If any products described in this document represent goods or technologies subject to certain restrictions on
export under the Foreign Exchange and Foreign Trade Law of Japan, the prior authorization by Japanese
government will be required for export of those products from Japan.
The company names and brand names herein are the trademarks or registered trademarks of their
respective owners.
Copyright© 2011 FUJITSU SEMICONDUCTOR LIMITED all rights reserved
1
AN706-00032-1v0-E
Revision History
Rev Date Remark
1.0 Jul. 04, 2011 First Edition
2
AN706-00032-1v0-E
Table of Contents
Revision History....................................................................................................................2
Table of Contents..................................................................................................................3
1 Introduction....................................................................................................................4
2 Technical Background ...................................................................................................4
2.1 Overview ................................................................................................................4
3 Clarke transform ............................................................................................................5
3.1 Theory ....................................................................................................................5
3.1.1 Clarke transform theory...................................................................................5
3.1.2 Inverted Clarke transform theory .....................................................................8
3.2 Application..............................................................................................................9
4 Park transform .............................................................................................................10
4.1 Theory ..................................................................................................................10
4.1.1 Park Transform theory...................................................................................10
4.1.2 Inverted Park Transform theory .....................................................................13
4.2 Application............................................................................................................14
3
AN706-00032-1v0-E
1 Introduction
This application note describes the coordinate transform which with the Clarke, Park,
Inverse Clarke and Inverse Park transformation.
This application note describes the coordinate transform’s Theory, Block, Function, Flow,
Sample and Parameter in the ARM Inverter Platform.
.
2 Technical Background
Why need use coordinate transform?
2.1 Overview
In motor control, the motor’s start, stop, and speed and so on, all of them need to change
the motor magnetic torque, the motor torque with armature current is described in the
formulae:
DC motor: (1) ΦI
AC motor: (2) ΦI cosφ
Where Te is magnetic torque, CT is torque modulus, I is armature current, Φ is flux, φ is
rotor power factor.
As DC motor, indirectly determine and control Φ and I to control motor torque. The flux and
the current have direct proportion with motor torque. Changes the current will change the
motor torque. It’s very simply.
But as AC motor, the motor torque control not only need I and Φ, the φ is also important.
The φ will change with the rotor current frequency. The Φ come from stator current and
rotor current, it will change along with the motor load change, so AC motor in dynamic
running, it’s controlled more difficult than DC motor.
AC motor should have the parameter relation like the DC motor.
Transvector Control could simulate AC motor into DC motor, and simply the control.
The base theory: Use the 3-phase AC motor rotating magnetic field transform into like DC
motor 2-phase rotating magnetic field, then control the 2-phase current to control the torque.
4
AN706-00032-1v0-E
3 Clarke transform
Clarke transform ‘s theory
3.1 Theory
3.1.1 Clarke transform theory
In motor theory, balanced 3-phase AC motor has 3 fixed windings. Through 3-phase
balanced AC current ia,ib,ic will bring a rotating magnetic field Φ with the speed ω.
Figure 3-1
.
ω
α
β
F
iα
iβ
Figure 3-2
ω
A
B
C
F
ia ib
ic
Figure 3-1
Not only balanced 3-phase fixed windings could bring rotating magnetic field, 2-phase
symmetry windings ( phase=90°) through 2-phase balance AC current iα,iβ, also could
bring rotating magnetic field. Figure 3-2
When balanced 3-phase fixed windings and 2-phase symmetry windings bring rotating
magnetic field Φ value and speed are equality, the 3-phase windings equivalent with
2-phase windings.
Clarke transform is converts balanced 3-phase (ia,ib,ic) into balanced 2-phase
(iα,iβ).Figure3-3
βClarke
α
c b
a
Figure 3-3
5
AN706-00032-1v0-E
Clarke transform must keep the power fixedness, in Figure3-4,
iα k1 ia ibcos 60° iccos 60° k1 ia12ib
12ic
iβ k1 ibsin 60° icsin60° k1√32ib
√32ic
(3)
Where is the 3-phase current is 2-phase current, is the balanced
coefficient.
ia , ib , ic iα , iβ k1
Add a zero-axis value: (4) i0 k1k2 ia ib ic
Change the math formulae into motor ap , h e the matrix formulae plication av
iαiβi0
k1
112
12
0√32
√32
k2 k2 k2
iaibic
CTiaibic
(5)
Where
CT k1
112
12
0√32
√32
k2 k2 k2
(6)
If the power fixedness, the formulae transf ro m:
CT1 k1
1 0 k212
√32
k2
12
√32
k2
(7)
CT1CT k1
2
1 0 k212
√32
k2
12
√32
k2
112
12
0√32
√32
k2 k2 k2
1 0 00 1 00 0 1
(8)
β
Iα
IsIβb
αa
c
Figure 3-4
6
AN706-00032-1v0-E
Then k2
1
√2,k1
23
Take into the k2, k1 CT1
,
CT23
112
12
0√32
√32
1
√2
1
√2
1
√2 (9)
This formula is the Clarke transform matrix.
If take into the k2, k1 CT1
CT1 2
3
1 012
12
√32
1
√212
√32
1
√2
(10)
This formula is the Inverted Clarke transform matrix.
In motor theory, the balanced 3-phas r current have: e AC moto
sinsin 2 /3sin 2 /3
(11)
Take k2
1
√2,k1
23
and formula (11) into formula (5)
iαiβi0
23
112
12
0√32
√32
1
√2
1
√2
1
√2
sinsin 2 /3sin 2 /3
Here, if defined ; iα ia
The formula can transformed to
iα ia sin
iβ√3ia3
2√3ib3
sin /2
(12)
This transformation course use wave shown in Figure 3-5 below:
7
AN706-00032-1v0-E
iβ iα ic ib ia
Clarke β
α
bc
a
Figure 3-5
3.1.2 Inverted Clarke transform theory
In motor theory, when have two current component vectors in the stationary α-β axis,
through complementary inverse transforms to get back to the 3-phase stationary A,B,C
axis. This transformation uses the Inverse Clarke transformation, Figure 3-6.
a
Through the Inverted Park matrix and the Figure 3-4, the Inverted Clarke transform
formula:
CT1
β
β √3 α /2
β √3 α /2
(13)
α
βbInverted
cClarke
Figure 3-6
8
AN706-00032-1v0-E
3.2 Application
Function Name: ClarkAmplitude
C file name: ClarkAmplitude.C, ClarkAmplitude.H
<Function interface> void ClarkAmplitude ( volatile _stDataInThreeAxis *stDataInThreeAxis, //Inputs: 3-axis system
volatile _stDataInFixAxis *stDataInFixAxis //Outputs: fixed 2-axis system ) typedef struct { Q15_VAL32 a_Q15;// phase-a variable Q15_VAL32 b_Q15;// phase-b variable Q15_VAL32 c_Q15;// phase-c variable }_stDataInThreeAxis; _stDataInThreeAxis *stDataInThreeAxis typedef struct { Q15_VAL32 alpha_Q15;// stationary d-axis variable Q15_VAL32 beta_Q15;// stationary d-axis variable }_stDataInFixAxis;
_stDataInFixAxis *stDataInFixAxis
Table 1
Item Name Description Format
a phase-a of balanced 3- phase Q15_VAL32
b phase-b of balanced 3- phase Q15_VAL32 Inputs
c phase-c of balanced 3- phase Q15_VAL32
alpha alpha - alpha of fixed 2- phase Q15_VAL32 Outputs
beta alpha - beta of fixed 2- phase Q15_VAL32
Intput handle: stDataInThreeAxis, Output handle: stDataInFixAxis.
The following code is example for this module. Main() { } void example_Clarke() { stDataInThreeAxis.a_Q15=INa;//input phase-a stDataInThreeAxis.b_Q15=INb;// input phase-b ClarkAmplitude(&stDataInThreeAxis, pCurrentInFixAxis);// calculate clarke OUTa=CurrentInFixAxis. alpha_Q15;//Output alpha OUTb=CurrentInFixAxis. beta_Q15;//Output beta }
9
AN706-00032-1v0-E
4 Park transform
Park transform‘s theory
4.1 Theory
4.1.1 Park Transform theory
2-phase symmetry windings ( phase=90°) through 2-phase balance AC current iα,iβ, and
keep the windings stop, will bring rotating magnetic EMF F1 with speed ω. Figure 4-1.
2-phase symmetry windings ( phase=90°) through 2-phase balance DC current id,iq, and
rotate windings at speed ω, will bring rotating magnetic EMF F2, Figure 4-2.
If EMF F1=F2, stationary system 2-phase through AC current equivalent with rotating
system 2-phase through DC current.
The Park transformation convert the stationary 2-phase (iα,iβ) system into rotating 2-phase
(id,iq) system. Figure 4-3
Where the iα,iβ come from Clarke transform; and the θ come from the rotor is displaced
from the direct axis of the stator reference frame by the rotor angle θ. Because it can be
ω
α
F
iα
iβ
β
Figure 4-1
ω F
id
iq
q
d
Figure 4-2
α dβ
Park qθ
Figure 4-3
10
AN706-00032-1v0-E
seen that the angle between the real axis (x) of the general reference frame and the real
axis of the reference frame rotating with the rotor is θ,
Figure 4-4
id iαcos θ iβsin θiq iαsin θ iβcos θ (14)
As shown in Figure 4-4,
Where is the rotating 2-phase current, is stationary 2-phase current, is
the angle between iα and iβ.
id , iq iα , iβ θ
Change the math f r t mo r l n, ve the matrix formulae: o mulae in o to app icatio ha
idiq
cos θ sin θsinθ cos θ
iαiβ
CPiαiβ
(15)
CPcos θ sin θsin θ cos θ (16)
Where:
This matrix convert the stationary 2-phase(α, β) system into rotating 2-phase(d, q) system,
it’s called Park transform.
If the power fixedness, the formulae transform:
CP1 cos θ sin θ
sinθ cos θ
(17)
This matrix convert rotating 2-phase(d, q) system into stationary 2-phase(α, β) system, it’s
called Inverted Park transform. This transform course use wave shown in Figure 4-1 below:
11
AN706-00032-1v0-E
iα iβ id
iq
α
β
θ
d
qPark
Figure 4-5
4.1.2 Inverted Park Transform theory
In motor theory, these are two current component vectors in the rotating d-q axis, through
the complementary inverse transformation to get back to the 2-phase stationary α-β axis.
This transformation uses the Inverse Park Transform, Figure 4-5.
Through the Inverted Park matrix 4-2, the Inverted Park formula: CP1
and the Figure
(20)
iα idcoiβ idsin
s θ iqsinθθ iqcos θ
Figure 4-6
dα
q
θ
Inverted
Park β
12
AN706-00032-1v0-E
4.2 Application
Function Name: Park`
C file name: Park.C, Park.H Function interface: void Park(_stDataInFixAxis *stDataInFixAxis, //fixed 2-axis system _stDataInRotAxis *stDataInRotAxis //rotational 2-axis system) typedef struct { Q15_VAL32 alpha_Q15; Q15_VAL32 beta_Q15; }_stDataInFixAxis; _stDataInFixAxis *stDataInFixAxis typedef struct { Q15_VAL32 d_Q15; Q15_VAL32 q_Q15; Q15_VAL32 theta_Q15; }_stDataInRotAxis; _stDataInRotAxis *stDataInRotAxis
Table 2 Item Name Description Format
alpha phase- alpha of fixed 2- phase Q15_VAL32 beta phase- beta of fixed 2- phase Q15_VAL32 Inputs
Theta Phase angle between stationary and rotating frame Q15_VAL32
d alpha - alpha of rotational 2-axis system Q15_VAL32 Outputs q alpha - beta of rotational 2-axis system Q15_VAL32
The following code is example for this module. Main() { } void example_Park() { CurrentInFixAxis. alpha_Q15= INa;//Input alpha CurrentInFixAxis. beta_Q15= INb;//Input beta stDataInRotAxis. theta_Q15=Intheta;//input Phase angle Park(&CurrentInFixAxis, stDataInRotAxis); OUTa= stDataInRotAxis. d_Q15; OUTb= stDataInRotAxis. q_Q15; }
13
AN706-00032-1v0-E
14
Function Name: ParkInv
C file name: ParkInv.C, Park.H
Function interface: void InvPark(_stDataInRotAxis *stDataInRotAxis, // rotating 2- phase system
_stDataInFixAxis *stDataInFixAxis // fixed 2- phase system) typedef struct { Q15_VAL32 d_Q15; Q15_VAL32 q_Q15; Q15_VAL32 theta_Q15; }_stDataInRotAxis; _ stDataInRotAxis * stDataInRotAxis typedef struct { Q15_VAL32 alpha_Q15; Q15_VAL32 beta_Q15; }_stDataInFixAxis; _stDataInFixAxis *stDataInFixAxis
Table 3 Item Name Description Format
d alpha - d of rotating 2- phase Q15_VAL32 q alpha - q of rotating 2- phase Q15_VAL32
Inputs θ
Phase angle between stationary and rotating frame
Q15_VAL32
alpha alpha - alpha of fixed 2- phase Q15_VAL32 Outputs beta alpha - beta of fixed 2- phase Q15_VAL32 Intput handle: stDataInRotAxis, Output handle: stDataInFixAxis.
The following code is example for this module. Main() { } void example_ParkInv() { stDataInRotAxis.d_Q15=INd;//input phase-d stDataInRotAxis.q_Q15=INq;// input phase-q stDataInRotAxis.theta_Q15=Intheta;//input Phase angle InvPark (&stDataInRotAxis, pCurrentInFixAxis);// calculate Inverte Park OUTa=CurrentInFixAxis. alpha_Q15;//Output alpha OUTb=CurrentInFixAxis. beta_Q15;//Output beta }
- End of File -