AM263x Motor Control SDK  09.02.00

Introduction

Contains 64-bit PID controller with its related structures and functions.

Go to the source code of this file.

Data Structures

struct  DCL_PIDF64_SPS
 Defines DCL_PIDF64 shadow PID64 controller structure used for updating controller parameter. More...
 
struct  dcl_pidf64
 DCL_PIDF64 object for storing 64bit PID specific parameters. More...
 

Macros

#define PIDF64_SPS_DEFAULTS   { 1.0L, 0.0L, 0.0L, 1.0L, 1.0L, 0.0L, 1.0L, -1.0L }
 Defines default values to initialize the DCL_PIDF64 shadow structure. More...
 
#define PIDF64_DEFAULTS
 Defines default values to initialize the DCL_PID64 active structure. More...
 
#define PIDF64_INT_DEFAULTS
 Macro for internal default values to initialize DCL_PIDF64 Example: DCL_PIDF64 pid_ctrl = { .Kp = 1.0L, .Ki = 0.0L, ... .Umin = -1.0L, PIDF64_INT_DEFAULTS };. More...
 
#define DCL_initPIDF64()   &(DCL_PIDF64)PIDF64_DEFAULTS
 Initialize DCL_PIDF64 struct with default parameters Example: DCL_PIDF64* pid_ctrl = DCL_initPID();. More...
 
#define DCL_initPIDF64asParam(kp, ki, kd, kr, _c1, _c2, umax, umin)
 Initialize DCL_PIDF64 struct with input controller parameters Example: DCL_PIDF64* pid_ctrl = DCL_initPIDF64asParam(1.0L,0.0L,0.0L,1.0L,1.0L,0.0L,1.0L,-1.0L);. More...
 
#define DCL_initPIDF64asSPS(pid_ptr, sps_ptr)
 Initialize DCL_PIDF64 struct with sps parameters Example: DCL_PIDF64_SPS pid_sps = { .Kp = , .Ki = , ...}; //initial parameter DCL_PIDF64 pid_ctrl; DCL_initPIasSPS(&pid_ctrl,&pid_sps);. More...
 

Typedefs

typedef _DCL_VOLATILE struct dcl_pidf64 DCL_PIDF64
 

Functions

_DCL_CODE_ACCESS void DCL_resetPIDF64 (DCL_PIDF64 *pid)
 Resets PID64 internal storage data with interrupt protection. More...
 
_DCL_CODE_ACCESS void DCL_forceUpdatePIDF64 (DCL_PIDF64 *pid)
 Loads PIDF64 tuning parameter from its SPS parameter without interrupt protection. More...
 
_DCL_CODE_ACCESS void DCL_updatePIDF64NoCheck (DCL_PIDF64 *pid)
 Updates PID parameter from its SPS parameter with interrupt protection. More...
 
_DCL_CODE_ACCESS bool DCL_updatePIDF64 (DCL_PIDF64 *pid)
 A conditional update based on the update flag. If the update status is set, the function will update PIDF64 parameter from its SPS parameter and clear the status flag on completion. More...
 
_DCL_CODE_ACCESS void DCL_setPIDF64filterBW (DCL_PIDF64 *pid, float64_t fc)
 Loads the derivative path filter shadow coefficients. More...
 
_DCL_CODE_ACCESS void DCL_setActivePIDF64filterBW (DCL_PIDF64 *pid, float64_t fc, float64_t T)
 Loads the PID64 derivative path filter active coefficients. More...
 
_DCL_CODE_ACCESS float64_t DCL_getPIDF64filterBW (DCL_PIDF64 *pid)
 Returns the active derivative path filter bandwidth in Hz. More...
 
_DCL_CODE_ACCESS void DCL_loadSeriesPIDF64asZPK (DCL_PIDF64 *pid, DCL_ZPK3F64 *zpk)
 Configures a series PID controller parameter in ZPK form. More...
 
_DCL_CODE_ACCESS void DCL_loadParallelPIDF64asZPK (DCL_PIDF64 *pid, DCL_ZPK3 *zpk)
 Configures a parallel PID controller in ZPK form. More...
 
_DCL_CRIT_ACCESS float64_t DCL_runPIDF64Series (DCL_PIDF64 *pid, float64_t rk, float64_t yk, float64_t lk)
 Executes an ideal form PID64 controller. More...
 
_DCL_CRIT_ACCESS float64_t DCL_runPIDF64Parallel (DCL_PIDF64 *pid, float64_t rk, float64_t yk, float64_t lk)
 Executes an parallel form PID64 controller. More...