/* ================================================================================= File name: PID_REG3.H (IQ version) Originator: Digital Control Systems Group Texas Instruments Description: Header file containing constants, data type definitions, and function prototypes for the PIDREG3. ===================================================================================== History: ------------------------------------------------------------------------------------- 04-15-2005 Version 3.20 ------------------------------------------------------------------------------*/ #ifndef __PIDREG3_H__ #define __PIDREG3_H__ #include "IQmathLib.h" //#include "dmctype.h" typedef struct { _iq Ref; // Input: Reference input _iq Fdb; // Input: Feedback input _iq Err; // Variable: Error _iq Kp; // Parameter: Proportional gain _iq Up; // Variable: Proportional output _iq Ui; // Variable: Integral output _iq Ud; // Variable: Derivative output _iq OutPreSat; // Variable: Pre-saturated output _iq OutMax; // Parameter: Maximum output _iq OutMin; // Parameter: Minimum output _iq Out; // Output: PID output _iq SatErr; // Variable: Saturated difference _iq Ki; // Parameter: Integral gain _iq Kc; // Parameter: Integral correction gain _iq Kd; // Parameter: Derivative gain _iq Up1; // History: Previous proportional output void (*calc)(); // Pointer to calculation function } PIDREG3; typedef PIDREG3 *PIDREG3_handle; /*----------------------------------------------------------------------------- Default initalizer for the PIDREG3 object. -----------------------------------------------------------------------------*/ #define PIDREG3_DEFAULTS { 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ 0, \ (void (*)(PIDREG3_handle))pid_reg3_calc } /*------------------------------------------------------------------------------ Prototypes for the functions in PIDREG3.C ------------------------------------------------------------------------------*/ void pid_reg3_calc(PIDREG3_handle); #endif // __PIDREG3_H__