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
c
= C
I
ΦI

AC motor: (2)
I
c
= C
I
ΦI cos φ

Where Te is magnetic torque, C
T
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


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 (zphase=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,
`
1
1
1
1
i
α
= k
1
(i
a
-i
b
cos 6u
°
-i
c
cos 6u
°
) = k
1
_i
a
-
1
2
i
b
-
1
2
i
c
]
i
β
= k
1
(i
b
sin 6u
°
-i
c
sin6u
°
) = k
1
_
√S
2
i
b
-
√S
2
i
c
_
(3)

Where is the 3-phase current is 2-phase current, is the balanced
coefficient.
i
a
, i
b
, i
c

i
α
, i
β k
1








Add a zero-axis value: (4)
i
u
= k
1
k
2
(i
a
+i
b
+i
c
)
Change the math formulae into motor ap , h e the matrix formulae plication av
_
i
α
i
β
i
u
_ = k
1
l
l
l
l
l 1 -
1
2
-
1
2
u
√S
2
-
√S
2
k
2
k
2
k
2
1
1
1
1
1
_
i
a
i
b
i
c
_ = C
T
_
i
a
i
b
i
c
_
(5)
Where
C
T
= k
1
l
l
l
l
l 1 -
1
2
-
1
2
u
√S
2
-
√S
2
k
2
k
2
k
2
1
1
1
1
1

(6)
If the power fixedness, the formulae transf r o m:

C
T
-1
= k
1
l
l
l
l
l
l
1 u k
2
-
1
2
√S
2
k
2
-
1
2
-
√S
2
k
2
1
1
1
1
1
1

(7)
C
T
-1
C
T
= k
1
2
l
l
l
l
l
l
1 u k
2
-
1
2
√S
2
k
2
-
1
2
-
√S
2
k
2
1
1
1
1
1
1
l
l
l
l
l 1 -
1
2
-
1
2
u
√S
2
-
√S
2
k
2
k
2
k
2
1
1
1
1
1
= _
1 u u
u 1 u
u u 1
_
(8)
β

Is

b
α a
c
Figure 3-4
6
AN706-00032-1v0-E
Then
k
2
=
1
√2
,k
1
=
_
2
S


Take into the


k
2
, k
1
C
T
-1
,
C
T
=
_
2
S
l
l
l
l
l
l
l 1 -
1
2
-
1
2
u
√S
2
-
√S
2
1
√2
1
√2
1
√2
1
1
1
1
1
1
1
(9)
This formula is the Clarke transform matrix.

If take into the
k
2
, k
1
C
T
-1

C
T
-1
=
_
2
S
l
l
l
l
l
l
l 1 u -
1
2
-
1
2
√S
2
1
√2
-
1
2
-
√S
2
1
√2
1
1
1
1
1
1
1

(10)
This formula is the Inverted Clarke transform matrix.
In motor theory, the balanced 3-phas r current have: e AC moto
_
i
o
= I sin(æt)
i
b
= I sin(æt + 2n¡S)
i
c
= I sin(æt -2n¡S)

(11)
Take
k
2
=
1
√2
,k
1
=
_
2
S

and formula (11) into formula (5)
_
i
α
i
β
i
u
_ =
_
2
S
l
l
l
l
l
l
l 1 -
1
2
-
1
2
u
√S
2
-
√S
2
1
√2
1
√2
1
√2
1
1
1
1
1
1
1
_
I sin(æt)
I sin(æt +2n¡S)
I sin(æt -2n¡S)
_

Here, if defined ;
i
α
= i
a

The formula can transformed to
_
i
α
= i
a
= I sin(æt)
i
β
=
√Si
a
S
+
2√Si
b
S
= I sin(æt +n¡2)

(12)
This transformation course use wave shown in Figure 3-5 below:
7
AN706-00032-1v0-E
iβ iα
ic ib ia

Clarke β
α
b
c
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:
C
T
-1
_
i
o
= i
β
i
b
= (-i
β
+ √Si
α
)¡2
i
c
= (-i
β
-√Si
α
)¡2

(13)


α
β
b Inverted
c
Clarke
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 (zphase=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 (zphase=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


β
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

_
i
u
= i
α
cos θ + i
β
sinθ
i
q
= -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β.
i
u
, i
q
i
α
, i
β θ

Change the math f r t mo r l n, ve the matrix formulae: o mulae in o to app icatio ha
_
i
u
i
q
_ = j
cos θ sin θ
-sinθ cos θ
[ _
i
α
i
β
_ = C
P
_
i
α
i
β
_
(15)
C
P
= j
cos θ 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:
C
P
-1
= j
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
q
Park
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:
C
P
-1
and the Figure
(20)
_
i
α
= i
u
co
i
β
= i
u
sin
s θ - i
q
sinθ
θ +i
q
cos θ

Figure 4-6


d
α
q
θ
Inverted
Park
β
1
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 -

fire protection.e. severe physical damage or other loss (i. damage or loss from such failures by incorporating safety design measures into your facility and equipment such as redundancy. 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 information. and could lead directly to death. Fujitsu does not warrant proper operation of the device with respect to use based on such information. but are not designed. mass transport control.e. and prevention of over-current levels and other abnormal operating conditions. including descriptions of function and schematic diagrams. submersible repeater and artificial satellite). personal injury. general office use. 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. When you develop equipment incorporating the device based on such information. The contents of this document are subject to change without notice. The products described in this document are designed. or (2) for use requiring extremely high reliability (i. unless extremely high safety is secured. Customers are advised to consult with FUJITSU sales representatives before ordering. Fujitsu assumes no liability for any damages whatsoever arising out of the use of the information. shall not be construed as license of the use or exercise of any intellectual property right. aircraft flight control. the prior authorization by Japanese government will be required for export of those products from Japan. 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. developed and manufactured as contemplated (1) for use accompanying fatal risks or dangers that. in this document are presented solely for the purpose of reference to show examples of operations and uses of Fujitsu semiconductor device. and household use. developed and manufactured as contemplated for general use. including without limitation. ordinary industrial use. medical life support system. nuclear reaction control in nuclear facility. such as descriptions of function and application circuit examples. air traffic control. could have a serious effect to the public. Copyright© 2011 FUJITSU SEMICONDUCTOR LIMITED all rights reserved 1 . missile launch control in weapon system).. personal use.AN706-00032-1v0-E All Rights Reserved.. Any semiconductor devices have an inherent chance of failure. You must protect against injury. such as patent right or copyright. you must assume any responsibility arising out of such use of the information. The company names and brand names herein are the trademarks or registered trademarks of their respective owners. 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. Any information in this document.

0 Date Jul. 2011 Remark First Edition 2 . 04.AN706-00032-1v0-E Revision History Rev 1.

........................... 4 Technical Background ................................ 4 2....................................1...................................................... 4 Theory ....................................................................................... 3 1 2 3 Introduction........................................................ 5 Inverted Clarke transform theory .............................................................................................................1........................................................................................... 10 Park Transform theory.2 4 4........................................................................................................... 14 3 .... 10 4............................................................................. 8 Clarke transform .................................................................................................................................. 2 Table of Contents..............................................................1............................... 5 3.........................1 3......................1 Overview ...................... 10 Inverted Park Transform theory .................................................................................. 9 Theory .............................................1 3...........................1 Application....................................2 4.......................................................................... 13 Park transform ............................................................... 5 Clarke transform theory..............................................2 Application.......1..........1 4.................................AN706-00032-1v0-E Table of Contents Revision History................................................................................................2 3................................................

Flow. it will change along with the motor load change. the motor torque with armature current is described in the formulae: DC motor: AC motor: ΦI ΦI cos φ (1) (2) Where Te is magnetic torque. the motor torque control not only need I and Φ. But as AC motor. 2 Technical Background Why need use coordinate transform? 2. Sample and Parameter in the ARM Inverter Platform. then control the 2-phase current to control the torque. the φ is also important. I  is armature current. Transvector Control could simulate AC motor into DC motor. As DC motor. The Φ come from stator current and rotor current. . AC motor should have the parameter relation like the DC motor. indirectly determine and control Φ and I to control motor torque. The flux and the current have direct proportion with motor torque. and simply the control. Φ is flux. all of them need to change the motor magnetic torque. Changes the current will change the motor torque. The φ will change with the rotor current frequency.1 Overview In motor control. This application note describes the coordinate transform’s Theory. it’s controlled more difficult than DC motor. CT    is torque modulus. the motor’s start. Block. Function.AN706-00032-1v0-E 1 Introduction This application note describes the coordinate transform which with the Clarke. The base theory: Use the 3-phase AC motor rotating magnetic field transform into like DC motor 2-phase rotating magnetic field. and speed and so on. It’s very simply. Park. φ  is rotor power factor. Inverse Clarke and Inverse Park transformation. 4 . so AC motor in dynamic running. stop.

B ib ia A ω F β ω iβ iα α F ic C Figure 3-1 Figure 3-2 Not only balanced 3-phase fixed windings could bring rotating magnetic field.1 Theory 3.ib.iβ). the 3-phase windings equivalent with 2-phase windings.1.ib. 2-phase symmetry windings ( phase=90°) through 2-phase balance AC current iα. Through 3-phase balanced AC current ia.ic) into balanced 2-phase (iα.1 Clarke transform theory In motor theory. Figure 3-1 .Figure3-3 a b c α Clarke β Figure 3-3 5 . balanced 3-phase AC motor has 3 fixed windings. also could bring rotating magnetic field.AN706-00032-1v0-E 3 Clarke transform Clarke transform ‘s theory 3.iβ.ic will bring a rotating magnetic field Φ with the speed ω. Figure 3-2 When balanced 3-phase fixed windings and 2-phase symmetry windings bring rotating magnetic field Φ value and speed are equality. Clarke transform is converts balanced 3-phase (ia.

iβ is 2-phase current. ic is the 3-phase current iα . iα k1 ia iβ ib cos 60° ic cos 60° k1 ib sin 60° ic sin 60° k1 ia k1 1 i 2 b √3 i 2 b 1 i 2 c √3 i 2 c          (3) Where ia . ib . β b Iβ Is k1 is the balanced coefficient. the formulae transform: 1 0 k2 1 √3 k2 CT 1 k 1 2 2 1 √3 k2 2 2 1 0 k2 1 1 1 1 √3 2 2 1 0 0 k2 2 CT 1 CT k1 2 0 1 0 √3 √3 2 0 0 0 1 1 √3 2 2 k2 k k2 k2 2 2 2 (7) (8) 6 .AN706-00032-1v0-E Clarke transform must keep the power fixedness. a α c Iα Figure 3-4 i0   k1 k 2 ia ib ic Add a zero-axis value: Change the math formulae into motor application. have the matrix formulae (4) iα iβ i0 1 k1 0 k2 1 1 2 √3 2 k2 1 2 √3 2 k2 1 2 ia √3 ib 2 ic k2 1 2 √3 2 k2 ia CT ib ic (5) CT Where k1 0 k2 (6) If the power fixedness. in Figure3-4.

the balanced 3-phase AC motor current have: sin sin sin 1 √2 2 3 2 /3 2 /3 (11) Take k2 ,k1 and formula (11) into formula (5) 1 iα iβ i0 2 0 3 1 √2 Here. k1 into the CT 1 1 CT 1 0 √3 2 √3 2 2 3 1 2 1 2 1 2 1 √2 1 √2 (10) This formula is the Inverted Clarke transform matrix. 1 √2 ,k1 2 3 1 CT 2 0 3 1 √2 1 2 √3 2 1 √2 1 2 √3 2 1 √2 (9) This formula is the Clarke transform matrix.AN706-00032-1v0-E Then Take k 2 . In motor theory. If take k 2 . k1 into the CT 1 k2 . The formula can transformed to iα iβ √3ia 3 ia 2√3ib 3 sin sin /2 (12) This transformation course use wave shown in Figure 3-5 below: 7 . if defined 1 2 √3 2 1 √2 1 2 √3 2 1 √2 sin sin sin 2 /3 2 /3 iα ia .

Figure 3-6. This transformation uses the Inverse Clarke transformation.1. when have two current component vectors in the stationary α-β axis.C axis. α β Clarke a Inverted b c Figure 3-6 Through the Inverted Park matrix formula: β β β CT 1 and the Figure 3-4.B.AN706-00032-1v0-E ia ib ic iβ iα a b c α Clarke β Figure 3-5 3.2 Inverted Clarke transform theory In motor theory. the Inverted Clarke transform √3 √3 α α /2 /2 (13) 8 . through complementary inverse transforms to get back to the 3-phase stationary A.

alpha_Q15.// phase-c variable }_stDataInThreeAxis.// stationary d-axis variable }_stDataInFixAxis. Main() { } void example_Clarke() { stDataInThreeAxis.a_Q15=INa.phase alpha .alpha of fixed 2.AN706-00032-1v0-E 3.//Output alpha OUTb=CurrentInFixAxis.//input phase-a stDataInThreeAxis. _stDataInFixAxis *stDataInFixAxis Table 1 Item Name a Inputs b c Outputs alpha beta Description phase-a of balanced 3.phase alpha . ClarkAmplitude. pCurrentInFixAxis).//Output beta } 9 .C.// phase-b variable Q15_VAL32 c_Q15.// phase-a variable Q15_VAL32 b_Q15. Output handle: stDataInFixAxis.H Function Name: ClarkAmplitude C file name: <Function interface> void ClarkAmplitude ( volatile _stDataInThreeAxis *stDataInThreeAxis. The following code is example for this module.// calculate clarke OUTa=CurrentInFixAxis.// stationary d-axis variable Q15_VAL32 beta_Q15.phase phase-b of balanced 3. beta_Q15. //Inputs: 3-axis system volatile _stDataInFixAxis *stDataInFixAxis //Outputs: fixed 2-axis system ) typedef struct { Q15_VAL32 a_Q15.beta of fixed 2.b_Q15=INb. _stDataInThreeAxis *stDataInThreeAxis typedef struct { Q15_VAL32 alpha_Q15.phase phase-c of balanced 3.2 Application ClarkAmplitude.phase Format Q15_VAL32 Q15_VAL32 Q15_VAL32 Q15_VAL32 Q15_VAL32 Intput handle: stDataInThreeAxis.// input phase-b ClarkAmplitude(&stDataInThreeAxis.

and keep the windings stop. Because it can be 10 . stationary system 2-phase through AC current equivalent with rotating system 2-phase through DC current.1 Park Transform theory 2-phase symmetry windings ( phase=90°) through 2-phase balance AC current iα.iq. 2-phase symmetry windings ( phase=90°) through 2-phase balance DC current id.1. will bring rotating magnetic EMF F2. will bring rotating magnetic EMF F1 with speed ω. Figure 4-2. β ω iβ iα α F iq id q ω F d Figure 4-1 Figure 4-2 The Park transformation convert the stationary 2-phase (iα. Figure 4-3 α β θ Park d q Figure 4-3 Where the iα.AN706-00032-1v0-E 4 Park transform Park transform‘s theory 4. and the θ come from the rotor is displaced from the direct axis of the stator reference frame by the rotor angle θ. If EMF F1=F2. and rotate windings at speed ω.iβ come from Clarke transform.iβ) system into rotating 2-phase (id. Figure 4-1.iβ.1 Theory 4.iq) system.

Figure 4-4 As shown in Figure 4-4. If the power fixedness. iα . iq is the rotating 2-phase current. q) system into stationary 2-phase(α. q) system. This transform course use wave shown in Figure 4-1 below: 11 . the formulae transform: CP 1 cos θ sin θ sin θ cos θ (17) This matrix convert rotating 2-phase(d. θ is the angle between iα and iβ. iβ is stationary 2-phase current. β) system into rotating 2-phase(d. it’s called Inverted Park transform. it’s called Park transform. id iq iα cos θ iβ sin θ iα sin θ iβ cos θ (14) Where id . Change the math formulae into motor application. β) system.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 θ. have the matrix formulae: id iq Where: cos θ sin θ sin θ iα cos θ iβ iα CP i β (15) CP cos θ sin θ sin θ cos θ (16) This matrix convert the stationary 2-phase(α.

Figure 4-5. the Inverted Park formula: iα iβ id cos θ id sin θ iq sin θ iq cos θ (20) 1 . d q θ Inverted Park α β Figure 4-6 Through the Inverted Park matrix CP 1 and the Figure 4-2.1. 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.2 Inverted Park Transform theory In motor theory. This transformation uses the Inverse Park Transform.AN706-00032-1v0-E iβ iα id α β θ Park d q iq Figure 4-5 4.

Q15_VAL32 theta_Q15.AN706-00032-1v0-E 4. Q15_VAL32 beta_Q15. OUTa= stDataInRotAxis. _stDataInFixAxis *stDataInFixAxis typedef struct { Q15_VAL32 d_Q15. stDataInRotAxis). theta_Q15=Intheta.phase Phase angle between stationary and rotating frame alpha . } 13 .alpha of fixed 2.//Input beta stDataInRotAxis. }_stDataInFixAxis. }_stDataInRotAxis.//Input alpha CurrentInFixAxis.H Function interface: void Park(_stDataInFixAxis *stDataInFixAxis. OUTb= stDataInRotAxis. beta_Q15= INb.phase phase. //fixed 2-axis system _stDataInRotAxis *stDataInRotAxis //rotational 2-axis system) typedef struct { Q15_VAL32 alpha_Q15.beta of fixed 2. Q15_VAL32 q_Q15.beta of rotational 2-axis system Item Inputs Outputs Name alpha beta Theta d q Format Q15_VAL32 Q15_VAL32 Q15_VAL32 Q15_VAL32 Q15_VAL32 The following code is example for this module. Main() { } void example_Park() { CurrentInFixAxis.2 Application Park` Function Name: C file name: Park. d_Q15.alpha of rotational 2-axis system alpha . alpha_Q15= INa. _stDataInRotAxis *stDataInRotAxis Table 2 Description phase. Park. q_Q15.C.//input Phase angle Park(&CurrentInFixAxis.

// calculate Inverte Park OUTa=CurrentInFixAxis. Q15_VAL32 theta_Q15. Q15_VAL32 beta_Q15.theta_Q15=Intheta. Output handle: stDataInFixAxis.alpha of fixed 2. The following code is example for this module.q of rotating 2. Park.C.d_Q15=INd. _ stDataInRotAxis * stDataInRotAxis typedef struct { Q15_VAL32 alpha_Q15.AN706-00032-1v0-E Function Name: C file name: ParkInv ParkInv.d of rotating 2.H Function interface: void InvPark(_stDataInRotAxis *stDataInRotAxis.phase system) typedef struct { Q15_VAL32 d_Q15.q_Q15=INq.phase system _stDataInFixAxis *stDataInFixAxis // fixed 2.phase alpha .End of File - 14 . }_stDataInRotAxis.phase alpha . alpha_Q15. beta_Q15.// input phase-q stDataInRotAxis.//Output beta } . // rotating 2.//input Phase angle InvPark (&stDataInRotAxis. _stDataInFixAxis *stDataInFixAxis Item Inputs Outputs Name d q θ alpha beta Table 3 Description alpha . }_stDataInFixAxis. Q15_VAL32 q_Q15.phase Format Q15_VAL32 Q15_VAL32 Q15_VAL32 Q15_VAL32 Q15_VAL32 Intput handle: stDataInRotAxis.phase Phase angle between stationary and rotating frame alpha .//Output alpha OUTb=CurrentInFixAxis.//input phase-d stDataInRotAxis.beta of fixed 2. pCurrentInFixAxis). Main() { } void example_ParkInv() { stDataInRotAxis.

Sign up to vote on this title
UsefulNot useful