/*************定義全局變量*****************/
uchar Kp,TI,Td
int Set_speed;
/*************PID初始化函數***************/
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;
//對占空比進行限幅處理
if(result《10)
{result=0;} else
if(result》1000)
{result=1000;}
return result;
}
-
單片機
+關注
關注
6032文章
44525瀏覽量
633259 -
PID
+關注
關注
35文章
1471瀏覽量
85306
原文標題:最簡單的單片機PID控制算法程序
文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論