久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

外置式與增量式PID模板程序(51單片機c語言)

作者:huqin   來源:本站原創   點擊數:  更新時間:2014年11月11日   【字體:

外置式PID模板

#define MuBiaoCS 0 //目標常數
#define CHang_aCS 0 //比例常數
#define CHang_bCS 0 //積分常數
#define CHang_cCS 0 //微分常數
/*******************************************************************************************/
struct P_I_D {
int MuBiao; //設定目標 Desired Value
double CHang_a; //比例常數 Proportional Const
double CHang_b; //積分常數 Integral Const
double CHang_c; //微分常數 Derivative Const
int Error1; //Error[-1]
int Error2; //Error[-2]
}Pidn;
struct P_I_D *PID=&Pidn;
/********************************************************************************************/
void Pidinit(void) //pid初始化
{
PID->MuBiao=MuBiaoCS;
PID->CHang_a=CHang_aCS;
PID->CHang_b=CHang_bCS;
PID->CHang_c=CHang_cCS;
PID->Error1=0;
PID->Error2=0;
}

int PID_WZ(int SRuu) //位置式PID
{
int Error0,SCuu;
Error0 = PID->MuBiao - SRuu;
PID->Error1+=Error0;
SCuu = PID->CHang_a*Error0 //比例項
+ PID->CHang_b*PID->Error1 //積分項
+ PID->CHang_c*(Error0-PID->Error2);//微分項
PID->Error2=Error0;
return SCuu;
}
void main(void)
{
Pidinit();
}

增量式PID模板

#define MuBiaoCS 0 //目標常數
#define CHang_aCS 0 //比例常數
#define CHang_bCS 0 //積分常數
#define CHang_cCS 0 //微分常數
/*******************************************************************************************/
struct P_I_D {
int MuBiao; //設定目標 Desired Value
double CHang_a; //比例常數 Proportional Const
double CHang_b; //積分常數 Integral Const
double CHang_c; //微分常數 Derivative Const
int Error1; //Error[-1]
int Error2; //Error[-2]
}Pidn;
struct P_I_D *PID=&Pidn;
/********************************************************************************************/
void Pidinit(void) //pid初始化
{
PID->MuBiao=MuBiaoCS;
PID->CHang_a=CHang_aCS;
PID->CHang_b=CHang_bCS;
PID->CHang_c=CHang_cCS;
PID->Error1=0;
PID->Error2=0;
}

int PID_WC(int SRuu) //增量式PID
{
int Error0,SCuu;
Error0 = PID->MuBiao - SRuu; //偏差
SCuu = PID->CHang_a*Error0 //Error項
- PID->CHang_b*PID->Error1 //Error1項
+ PID->CHang_c*PID->Error2; //Error2項
PID->Error2=PID->Error1; //將上次偏差存PID->Error2
PID->Error1=Error0; //將這次偏差存PID->Error1
return SCuu;
}

void main(void)
{
Pidinit();
}
 

 

關閉窗口

相關文章

主站蜘蛛池模板: 毛片免费看 | 欧美成人一区二区 | 日韩成人一区 | 国产精品一区二区三区在线播放 | 一区二区三区四区在线视频 | 欧美日韩高清在线一区 | 日韩色在线 | 久久毛片 | 久久精品国内 | 亚洲精品久久嫩草网站秘色 | 国产高清视频一区 | 在线观看www高清视频 | 日韩在线欧美 | 久久久精品一区 | 久久国产视频一区 | 三级视频在线观看 | 成人福利在线 | 亚洲综合网站 | 羞羞免费网站 | 成人二区三区 | 亚洲区视频| 久久成人免费视频 | 久久精品中文字幕 | 亚洲精品一区中文字幕乱码 | 91久久精品日日躁夜夜躁欧美 | 91成人精品视频 | 国产免费a视频 | 国产伦一区二区三区四区 | 久久99网 | 在线免费视频一区 | 国产91色在线 | 亚洲 | 欧美日韩成人一区二区 | 欧美精品一区二区三区在线 | 亚洲国产一区二区在线 | 久久精品99久久 | 国产亚洲网站 | 欧美精品久久久久久久久久 | 中文福利视频 | 日韩成人一区二区 | 日韩精品一区二区三区在线观看 | 久久久久久中文字幕 |