Data Structures | Macros | Typedefs | Functions
esmo.h File Reference
#include <math.h>
#include "userParams.h"

Go to the source code of this file.

Data Structures

struct  _ESMO_Obj_
 Defines the ESMO controller object. More...
 

Macros

#define ESMO_inline_run   ESMO_run
 Runs the ESMO controller. More...
 

Typedefs

typedef struct _ESMO_Obj_ ESMO_Obj
 Defines the ESMO controller object. More...
 
typedef struct _ESMO_Obj_ESMO_Handle
 Defines the ESMO handle. More...
 

Functions

ESMO_Handle ESMO_init (void *pMemory, const size_t numBytes)
 Initializes the ESMO controller. More...
 
void ESMO_resetParams (ESMO_Handle handle)
 Reset the ESMO controller. More...
 
void ESMO_setParams (ESMO_Handle handle, const USER_Params *pUserParams)
 Set the ESMO controller. More...
 
void ESMO_setPLLParams (ESMO_Handle handle, const float32_t pll_KpMax, const float32_t pll_KpMin, const float32_t pll_KpSF)
 Set PLL parameters for the ESMO controller. More...
 
void ESMO_setPLLKi (ESMO_Handle handle, const float32_t pll_Ki)
 Set PLL parameters for the ESMO controller. More...
 
static void ESMO_setBEMFThreshold (ESMO_Handle handle, const float32_t bemfThreshold)
 Set kp of the pll for the ESMO controller. More...
 
static void ESMO_setPLLKpSF (ESMO_Handle handle, const float32_t pll_KpSF)
 Set kp of the pll for the ESMO controller. More...
 
void ESMO_setKslideParams (ESMO_Handle handle, const float32_t KslideMax, const float32_t KslideMin)
 Set PLL parameters for the ESMO controller. More...
 
static void ESMO_setKslide (ESMO_Handle handle, const float32_t Kslide)
 Sets Kslide for the ESMO controller. More...
 
void ESMO_updateFilterParams (ESMO_Handle handle)
 Reset the ESMO controller. More...
 
void ESMO_updatePLLParams (ESMO_Handle handle)
 Reset the ESMO controller. More...
 
void ESMO_full_run (ESMO_Handle handle, float32_t Vdcbus, MATH_vec3 *pVabc_pu, MATH_vec2 *pIabVec)
 Runs the ESMO controller. More...
 
static void ESMO_resetPLL (ESMO_Handle handle)
 Resets PLL integration for the ESMO controller. More...
 
static void ESMO_setOffsetCoef (ESMO_Handle handle, const float32_t offsetSF)
 Sets angle offset coefficient for the ESMO controller. More...
 
static void ESMO_setBEMFKslfFreq (ESMO_Handle handle, const float32_t filterFc_Hz)
 Sets speed filter cut off frequency for the ESMO controller. More...
 
static void ESMO_setSpeedFilterFreq (ESMO_Handle handle, const float32_t lpfFc_Hz)
 Sets speed filter cut off frequency for the ESMO controller. More...
 
static void ESMO_setPLLKp (ESMO_Handle handle, const float32_t pll_Kp)
 Runs the ESMO controller. More...
 
static void ESMO_setAnglePu (ESMO_Handle handle, const float32_t theta_rad)
 Set Angle to the ESMO controller. More...
 
static void ESMO_setPLLSpeedPu (ESMO_Handle handle, const float32_t speed_Hz)
 Set Angle to the ESMO controller. More...
 
static void ESMO_setSpeedRef (ESMO_Handle handle, const float32_t speedRef_Hz)
 Set reference speed to the ESMO controller. More...
 
static float32_t ESMO_getSpeed_Hz (ESMO_Handle handle)
 Gets the speed from the ESMO controller. More...
 
static float32_t ESMO_getSpeedPLL_Hz (ESMO_Handle handle)
 Gets the PLL speed from the ESMO controller. More...
 
static float32_t ESMO_getAnglePLL (ESMO_Handle handle)
 Gets the PLL angle from the ESMO controller. More...
 
static float32_t ESMO_getAngleElec (ESMO_Handle handle)
 Gets the angle from the ESMO controller. More...
 
static void ESMO_updateKslide (ESMO_Handle handle)
 Update Kslide for the ESMO controller. More...
 
static void ESMO_run (ESMO_Handle handle, float32_t Vdcbus, MATH_vec3 *pVabc_pu, MATH_vec2 *pIabVec)
 

Copyright 2023, Texas Instruments Incorporated