LIBML
Version 3.2.4
LIBML DSP Software Library
|
Functions | |
static void | tpt_clarke_f32 (f32_t *pIalpha, f32_t *pIbeta, f32_t Ia, f32_t Ib) |
Floating-point Clarke transform. More... | |
static void | tpt_clarke_q31 (q31_t *pIalpha, q31_t *pIbeta, q31_t Ia, q31_t Ib) |
Clarke transform for Q31 version. More... | |
Forward Clarke transform converts the instantaneous stator phases into a two-coordinate time invariant vector. Generally the Clarke transform uses three-phase currents Ia, Ib and Ic
to calculate currents in the two-phase orthogonal stator axis Ialpha
and Ibeta
. When Ialpha
is superposed with Ia
as shown in the figure below
Stator current space vector and its components in (a,b). and Ia + Ib + Ic = 0
, in this condition Ialpha
and Ibeta
can be calculated using only Ia
and Ib
.
The function operates on a single sample of data and each call to the function returns the processed output. The library provides separate functions for Q31 and floating-point data types.
Ia
and Ib
are the instantaneous stator phases and pIalpha
and pIbeta
are the two coordinates of time invariant vector.Floating-point Clarke transform.
[out] | pIalpha | points to output two-phase orthogonal vector axis alpha. |
[out] | pIbeta | points to output two-phase orthogonal vector axis beta. |
[in] | Ia | input three-phase coordinate a |
[in] | Ib | input three-phase coordinate b |
Clarke transform for Q31 version.
[out] | pIalpha | points to output two-phase orthogonal vector axis alpha. |
[out] | pIbeta | points to output two-phase orthogonal vector axis beta. |
[in] | Ia | input three-phase coordinate a |
[in] | Ib | input three-phase coordinate b |