Main Content

abc to dq0, dq0 to abc

Perform transformation from three-phase (abc) signal to dq0 rotating reference frame or the inverse

  • abc to dq0, dq0 to abc block

Libraries:
Simscape / Electrical / Specialized Power Systems / Control

Description

The abc to dq0 block uses a Park transformation to transform a three-phase (abc) signal to a dq0 rotating reference frame. The angular position of the rotating frame is given by the input wt, in rad.

The dq0 to abc block uses an inverse Park transformation to transform a dq0 rotating reference frame to a three-phase (abc) signal. The angular position of the rotating frame is given by the input wt, in rad.

When the rotating frame alignment at wt=0 is 90 degrees behind the phase A axis, a positive-sequence signal with Mag=1 and Phase=0 degrees yields the following dq values: d=1, q=0.

Vd=23(Vasin(ωt)+Vbsin(ωt2π/3)+Vcsin(ωt+2π/3))Vq=23(Vacos(ωt)+Vbcos(ωt2π/3)+Vccos(ωt+2π/3))V0=13(Va+Vb+Vc)

Va=Vdsin(ωt)+Vqcos(ωt)+V0Vb=Vdsin(ωt2π/3)+Vqcos(ωt2π/3)+V0Vc=Vdsin(ωt+2π/3)+Vqcos(ωt+2π/3)+V0

The block supports the two conventions used for the Park transformation:

  • When the rotating frame is aligned with the phase A axis at t = 0, that is, at t = 0, the d-axis is aligned with the a-axis. This type of Park transformation is also known as the cosine-based Park transformation.

  • When the rotating frame is aligned 90 degrees behind the phase A axis, that is, at t = 0, the q-axis is aligned with the a-axis. This type of Park transformation is also known as the sine-based Park transformation. Use this transformation in Simscape™ Electrical™ Specialized Power Systems models with three-phase synchronous and asynchronous machines.

Deduce the dq0 components from the abc signals by performing an abc to αβ0 Clarke transformation in a fixed reference frame. Then perform an αβ0 to dq0 transformation in a rotating reference frame, that is, by performing a −(ω.t) rotation on the space vector Us = uα + j· uβ.

The abc-to-dq0 transformation depends on the dq frame alignment at t = 0. The position of the rotating frame is given by ω.t, where ω represents the dq frame rotation speed.

When the rotating frame is aligned with the phase A axis, the following relations are obtained:

Us=ud+juq=(ua+juβ)ejωt=23(ua+ubej2π3+ucej2π3)ejωtu0=13(ua+ub+uc)[uduqu0]=23[cos(ωt)cos(ωt2π3)cos(ωt+2π3)sin(ωt)sin(ωt2π3)sin(ωt+2π3)121212][uaubuc]

The inverse transformation is given by:

[uaubuc]=[cos(ωt)sin(ωt)1cos(ωt2π3)sin(ωt2π3)1cos(ωt+2π3)sin(ωt+2π3)1][uduqu0]

When the rotating frame is aligned 90 degrees behind the phase A axis, the following relations are obtained:

Us=ud+juq=(uα+juβ)ej(ωtπ2)[uduqu0]=23[sin(ωt)sin(ωt2π3)sin(ωt+2π3)cos(ωt)cos(ωt2π3)cos(ωt+2π3)121212][uaubuc]

The inverse transformation is given by:

[uaubuc]=[sin(ωt)cos(ωt)1sin(ωt2π3)cos(ωt2π3)1sin(ωt+2π3)cos(ωt+2π3)1][uduqu0]

Examples

expand all

The power_Transformations example shows various ways to use blocks to perform Clarke and Park transformations.

Ports

Input

expand all

abc signal, specified as a vector.

dq0 signal, specified as a vector.

Angular position of the dq rotating frame, in radians, specified as a positive scalar.

Output

expand all

dq0 signal, returned as a vector.

abc signal, returned as a vector.

Parameters

expand all

Alignment of the rotating frame at t = 0 of the dq0 components of a three-phase balanced signal:

ua=sin(ωt); ub=sin(ωt2π3); uc=sin(ωt+2π3)

The positive-sequence magnitude equals 1.0 pu, and the phase angle equals 0 degrees.

When you select Aligned with phase A axis, the dq0 components are d = 0, q = −1, and zero = 0.

When you select 90 degrees behind phase A axis, the dq0 components are d = 1, q = 0, and zero = 0.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2013a