67 #define SVGEN_SQRT3_OVER_2 ((float_t)(0.8660254038))
106 extern SVGEN_Handle
SVGEN_init(
void *pMemory,
const size_t numBytes);
115 float_t Vmax_pu=0,Vmin_pu=0,Vcom_pu;
126 float_t Vb_pu = Va_tmp + Vb_tmp;
127 float_t Vc_pu = Va_tmp - Vb_tmp;
146 else if(Vc_pu < Vmin_pu)
157 Vcom_pu = (
float_t)0.5 * (Vmax_pu + Vmin_pu);
161 pVabc_pu->
value[0] = (Va_pu - Vcom_pu);
162 pVabc_pu->
value[1] = (Vb_pu - Vcom_pu);
163 pVabc_pu->
value[2] = (Vc_pu - Vcom_pu);
199 #endif // end of _SVGEN_H_ definition
Contains the public interface to the types definitions.
Contains the public interface to the math (MATH) module routines.
Defines a two element vector.
static void SVGEN_setup(SVGEN_Handle handle, const float_t oneOverDcBus_invV)
Sets up the space vector generator (SVGEN) module.
Defines the Space Vector Generator object.
struct _SVGEN_Obj_ SVGEN_Obj
Defines the Space Vector Generator (SVGEN) object.
float_t oneOverDcBus_invV
The inverse DC bus voltage value, 1/V.
static void SVGEN_setOneOverDcBus_invV(SVGEN_Handle handle, const float_t oneOverDcBus_invV)
Sets the one over DC bus voltage value.
#define SVGEN_SQRT3_OVER_2
Defines sqrt(3)/2.
Defines a three element vector.
struct _SVGEN_Obj_ * SVGEN_Handle
Defines the SVGEN handle.
static float_t SVGEN_getOneOverDcBus_invV(SVGEN_Handle handle)
Gets the one over DC bus voltage value.
SVGEN_Handle SVGEN_init(void *pMemory, const size_t numBytes)
Initializes the space vector generator module.
static void SVGEN_run(SVGEN_Handle handle, const MATH_vec2 *pVab_V, MATH_vec3 *pVabc_pu)
Implements a SVM that saturates at the level of MaxModulation.
float float_t
Defines the portable data type for 32 bit, signed floating-point data.