AvrIO  1.4.5
Bibliothèque C modulaire pour ATMEL AVR
pid.h
1 
20 #ifndef _AVRIO_PID_H_
21 #define _AVRIO_PID_H_
22 
23 #include <avrio/defs.h>
24 
25 __BEGIN_C_DECLS
26 /* ========================================================================== */
34 /* constants ================================================================ */
35 #define SCALING_FACTOR 128
36 
37 /* structures =============================================================== */
52  typedef struct xPidData {
53 
55  int32_t iSumError;
56  float fKp;
57  float fKi;
58  float fKd;
59 } xPidData;
60 
61 /* internal public functions ================================================ */
70 void vPidInit (float fKp, float fKi, float fKd, xPidData * xPid);
71 
79 int32_t iPidProcess (int32_t iSetPoint, int32_t mesure, xPidData * xPid);
80 
85 
86 #if defined(__DOXYGEN__)
87 /*
88  * __DOXYGEN__ defined
89  * Partie documentation ne devant pas être compilée.
90  * =============================================================================
91  */
92 
97 #else
98 /*
99  * __DOXYGEN__ not defined
100  * Partie ne devant pas être documentée.
101  * =============================================================================
102  */
103 
104 #endif /* __DOXYGEN__ not defined */
105 /* ========================================================================== */
106 __END_C_DECLS
107 #endif /* _AVRIO_PID_H_ */
float fKi
Definition: pid.h:57
struct xPidData xPidData
Structure contenant l&#39;état du filtre PID.
void vPidResetIntegrator(xPidData *xPid)
Remise à zéro de la somme des erreurs.
Structure contenant l&#39;état du filtre PID.
Definition: pid.h:52
void vPidInit(float fKp, float fKi, float fKd, xPidData *xPid)
Initialise le filtre PID.
int32_t iSumError
Definition: pid.h:55
Un processus.
Definition: avrx.h:139
float fKd
Definition: pid.h:58
float fKp
Definition: pid.h:56
int32_t iLastProcessValue
Definition: pid.h:54
int32_t iPidProcess(int32_t iSetPoint, int32_t mesure, xPidData *xPid)
Calcul PID.