PLC知識問答
這個程序應(yīng)用在51單片機(jī)上的
/*************定義全局變量*****************/
uchar Kp,TI,Td
int Set_speed;
/*************PID初始化函數(shù)***************/
void PID_init(void){
Serror=0;
FError=0;
Kp=30;
TI=500;
Td=10;
}
int PID_control(int Now_speed)
{
int Error,Serror,result;
Error=Now_speed-Set_speed;
Serror=Serror+Error;
result=(Kp*Error+Kp*0.05/TI*Serror+Kp*Td/0.05*(Error-FError));
FError=Error;
//對占空比進(jìn)行限幅處理
if(result《10)
{result=0;} else
if(result》1000)
{result=1000;}
return result;
}