Contains 32-bit PID controller with its related structures and functions.
|
#define | PID_SPS_DEFAULTS { 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, -1.0f } |
| Defines default values to initialize DCL_PID_SPS. More...
|
|
#define | PID_DEFAULTS |
| Defines default values to initialize the DCL_PID structure. More...
|
|
#define | PID_INT_DEFAULTS |
| Macro for internal default values to initialize DCL_PID Example: DCL_PID pid_ctrl = { .Kp = 1.0f, .Ki = 0.0f, ... .Umin = -1.0f, PID_INT_DEFAULTS };. More...
|
|
#define | DCL_initPID() &(DCL_PID)PID_DEFAULTS |
| Initialize DCL_PID struct with default parameters Example: DCL_PID* pid_ctrl = DCL_initPID();. More...
|
|
#define | DCL_initPIDasParam(kp, ki, kd, kr, _c1, _c2, umax, umin) |
| Initialize DCL_PID struct with input controller parameters Example: DCL_PID* pid_ctrl = DCL_initPIDasParam(1.0f,0.0f,0.0f,1.0f,1.0f,0.0f,1.0f,-1.0f);. More...
|
|
#define | DCL_initPIDasSPS(pid_ptr, sps_ptr) |
| Initialize DCL_PID struct with SPS parameters Example: DCL_PID_SPS pid_sps = { .Kp = , .Ki = , ...}; //initial parameter DCL_PID pid_ctrl; DCL_initPIasSPS(&pid_ctrl,&pid_sps);. More...
|
|
|
_DCL_CODE_ACCESS void | DCL_resetPID (DCL_PID *pid) |
| Resets PID internal storage data with interrupt protection. More...
|
|
_DCL_CODE_ACCESS void | DCL_forceUpdatePID (DCL_PID *pid) |
| Loads PID tuning parameter from its SPS parameter without interrupt protection. More...
|
|
_DCL_CODE_ACCESS void | DCL_updatePIDNoCheck (DCL_PID *pid) |
| Loads PID tuning parameter from its SPS parameter with interrupt protection. More...
|
|
_DCL_CODE_ACCESS bool | DCL_updatePID (DCL_PID *pid) |
| A conditional update based on the update flag. If the update status is set, the function will update PID parameter from its SPS parameter and clear the status flag on completion. More...
|
|
_DCL_CODE_ACCESS void | DCL_setPIDfilterBW (DCL_PID *pid, float32_t fc) |
| Loads the derivative path filter shadow coefficients. More...
|
|
_DCL_CODE_ACCESS void | DCL_setActivePIDfilterBW (DCL_PID *pid, float32_t fc, float32_t T) |
| Loads the PID derivative path filter active coefficients. More...
|
|
_DCL_CODE_ACCESS float32_t | DCL_getPIDfilterBW (DCL_PID *pid) |
| Calculates the active derivative path filter bandwidth in Hz. More...
|
|
_DCL_CODE_ACCESS void | DCL_loadSeriesPIDasZPK (DCL_PID *pid, DCL_ZPK3 *zpk) |
| Configures a series PID controller parameter in ZPK form. More...
|
|
_DCL_CODE_ACCESS void | DCL_loadParallelPIDasZPK (DCL_PID *pid, DCL_ZPK3 *zpk) |
| Configures a parallel PID controller in ZPK form. More...
|
|
_DCL_CRIT_ACCESS float32_t | DCL_runPIDSeries (DCL_PID *pid, float32_t rk, float32_t yk, float32_t lk) |
| Executes an ideal form PID controller. More...
|
|
_DCL_CRIT_ACCESS float32_t | DCL_runPIDParallel (DCL_PID *pid, float32_t rk, float32_t yk, float32_t lk) |
| Executes a parallel form PID controller. More...
|
|