3.3.10 mcFoc_InverseParkTransformation

C


/* Floating point Inverse Park Transformation */
void mcFoc_InverseParkTransformation( const tmcTypes_DQ_s * const pDQ, const float32_t sine, const float32_t cosine,
                                                                             tmcTypes_AlphaBeta_s * const pAlphaBeta )


/* Fixed point Inverse Park Transformation */
void mcFoc_InverseParkTransformation(const tmcTypes_DQ_s * const pDQ, const int16_t sine, const int16_t cosine,
                                                                              tmcTypes_AlphaBeta_s * const pAlphaBeta)
	

Summary

Inverse Park Transformation.

Description

This function performs the inverse Park transformation to convert rotating reference frame (D-Q) currents into stationary reference frame (alpha-beta) currents . When the d-axis is aligned with the rotor flux, the following mathematical equations illustrate the current vector and the relationship between the two reference frames.

Xα=XdcosθeXqsinθe
Xβ=Xdsinθe+Xqcosθe

where Xα and Xβ are the stationary reference frame components, Xd and Xq are rotating reference frame components and cosθe and sinθe are the cosine and sine values of theta (rotor flux position angle)

Precondition

None..

Parameters

ParamDescription
pAlphaBeta A pointer to the structure holding alpha-beta currents.
sineSine value of the electrical angle. Refer the generated header for the exact data type.
cosineCosine value of the electrical angle. Refer the generated header for the exact data type.
pDQA pointer to the structure holding DQ currents.

Returns

None. The results of the transformation are stored in the structure pointed to by alphaBetaCurrents.

Example

// Define the parameters for floating point Inverse Park Transformation
tmcTypes_DQ_s dqCurrents = { .d = 1.0f, .q = 0.5f };
float32_t sineValue = sin(electricalAngle);
float32_t cosineValue = cos(electricalAngle);
tmcTypes_AlphaBeta_s alphaBetaCurrents;


// Define the parameters for floating point Inverse Park Transformation

tmcTypes_DQ_s dqCurrents = { .d = 1, .q = 2 };
int16_t sineValue = sin(electricalAngle);
int16_t cosineValue = cos(electricalAngle);
tmcTypes_AlphaBeta_s alphaBetaCurrents;

mcFoc_InverseParkTransformation( &dqCurrents, sine, cosine, &alphaBetaCurrents );
    

Remarks

Refer the generated header file for the exact function signature.