Summary for: SpaceVectors < handle
Class summary
SpaceVectors Class for handling generalized Park-Clarke and inverse transformations, almost following the methodology in ‘A generalized transformation methodology for polyphase electric machines and networks’, 10.1109/IEMDC.2015.7409032.
Properties
Methods
Class methods are listed below. Inherited methods are not included.
.Cmatrix Matrix for transforming to the alpha-beta frame.
C = ParkClarke.Cmatrix()
C = ParkClarke.Cmatrix(phases)
Matrix for transforming phase quantities to the non-rotating alpha-beta frame. In this frame, the first 2 component correspond to the traditional ab-frame. The next two components represent the third harmonic, the next two the fifth, and so on. For odd phase numbers, the last component is the zero-sequence component.
.SpaceVectors.Pmatrix is a function.
P = SpaceVectors.Pmatrix(varargin)
.SpaceVectors.derivate_phase_values is a function.
dv = SpaceVectors.derivate_phase_values(x, angles, ts, varargin)
.dq Transformation from phase to synchronous frame.
v = ParkClarke.dq(x, angles)
Transfrom the array x, of size m x numel(angles), into the generalized dq0 frame. Here:
-
m : the number of phases = size(x,1)
-
angles : a 1D array of the electrical radians considered.
For 3-phase systems, v(1:2,:) contains the d- and q-components, while the third row is the 0-sequence component.
For systems with more than three phases, the first two rows are as described earlier. The following rows then represent the synchronous frames for the higher harmonics:
-
Any frequency components in x rotating at 3x the synchronous speed appear as dc-components in v(3:4, :)
-
Any frequency components in x rotating at 5x the synchronous speed appear as dc-components in v(5:6, :)
-
…
-
For systems with an odd number of phases, v(end, :) is the zero-sequence component.
v = ParkClarke.dq(x, angles, bias)
Apply additional rotation, in total angles + bias.
v = ParkClarke.dq(x, angles, obj)
Parse bias angle from obj, being either a
-
MagneticsProblem object.
-
MotorModelBase object.
.xy Transformation from dq frame to synchronous frame (non-rotor
coordinates).
v = ParkClarke.xy(x, angles)
Transform phase quantities to the frames rotating at 1x (components 1-2), 3x (components 3-4), 5x (components 5-6) the frame defined by input angles.
v = ParkClarke.xy(x, angles, bias)
Apply additional rotation, in total angles + bias.
v = ParkClarke.xy(x, angles, obj)
Parse bias angle from obj, being either a
-
MagneticsProblem object.
-
MotorModel object.
.inverse_transform Transform alpha-beta frame signal to phase quantities.
v = inverse_transform(x)
See ParkClarke.Cmatrix for details on the transformation.
.TODO split 4-multiple-phase angles more evenly
.transform Transform phase signal to the alpha-beta frame.
v = transform(x)
See ParkClarke.Cmatrix for details on the transformation.
.SpaceVectors.uvectors is a function.
u = SpaceVectors.uvectors(varargin)
.xy Transformation from synchronous frame to phase quantities.
See SpaceVectors.dq for more details.