/*************定義全局變量*****************/
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;
}
-
單片機
+關注
關注
6043文章
44623瀏覽量
638676 -
PID
+關注
關注
35文章
1473瀏覽量
85834
原文標題:最簡單的單片機PID控制算法程序
文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
單片機的PID控制算法
基于單片機的水溫控制系統設計的合集包括程序PID控制算法和參數整定
![基于<b class='flag-5'>單片機</b>的水溫<b class='flag-5'>控制</b>系統設計的合集包括<b class='flag-5'>程序</b><b class='flag-5'>PID</b><b class='flag-5'>控制</b><b class='flag-5'>算法</b>和參數整定](https://file.elecfans.com/web1/M00/52/E7/o4YBAFsZ3hOAHWUPAAF_T-bLVc0643.png)
使用單片機和Arduino實現增量式PID位置式PID算法和PID庫免費下載
![使用<b class='flag-5'>單片機</b>和Arduino實現增量式<b class='flag-5'>PID</b>位置式<b class='flag-5'>PID</b><b class='flag-5'>算法</b>和<b class='flag-5'>PID</b>庫免費下載](https://file.elecfans.com/web1/M00/BD/44/o4YBAF7PdrSAAzF0AADyssdYXMw792.png)
評論