53 lines
854 B
C++
53 lines
854 B
C++
|
#ifndef _pid_
|
|||
|
#define _pid_
|
|||
|
//#include "stm32f10x_conf.h"
|
|||
|
#include "main.h"
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
float curr; //<2F><>ǰ<EFBFBD>¶<EFBFBD>
|
|||
|
float set; //<2F>趨<EFBFBD>¶<EFBFBD>
|
|||
|
|
|||
|
|
|||
|
// float pid_P; //P
|
|||
|
// float pid_I; //I
|
|||
|
// float pid_D; //D
|
|||
|
|
|||
|
|
|||
|
// short Ek;//
|
|||
|
// short Ek_1;//
|
|||
|
// short Ek_2;//
|
|||
|
//int PID_OUT;//
|
|||
|
|
|||
|
float En;
|
|||
|
float En_1;
|
|||
|
float En_2;
|
|||
|
|
|||
|
float last_En;
|
|||
|
float Sen;
|
|||
|
|
|||
|
float Sen_max;
|
|||
|
float Sen_min;
|
|||
|
|
|||
|
|
|||
|
|
|||
|
float Kp; //<2F><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
|
|||
|
float Tsam; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>---<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>ÿ<EFBFBD><C3BF>Tsam<61><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>PID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
float Ti;//<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD>䳣<EFBFBD><E4B3A3>
|
|||
|
float Td;//<><CEA2>ʱ<EFBFBD>䳣<EFBFBD><E4B3A3>
|
|||
|
|
|||
|
float Dout;//<2F><><EFBFBD><EFBFBD>PID<49><44><EFBFBD>㱾<EFBFBD><E3B1BE>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ--<2D><><EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>
|
|||
|
|
|||
|
u16 calc_cycle;
|
|||
|
short currpwm; //<2F><>ǰ<EFBFBD><C7B0>pwm<77><6D><EFBFBD><EFBFBD>
|
|||
|
u16 pwm_cycle;//pwm<77><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
}PID;
|
|||
|
|
|||
|
u8 pid_our_control( u16 currentTemp );
|
|||
|
extern u8 STATUS;
|
|||
|
extern PID pid;
|
|||
|
void PIDParament_Init(void); //
|
|||
|
void pid_calc(void); //pid??
|
|||
|
|
|||
|
#endif
|
|||
|
|