找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3284|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

Arduino通用PID函數(shù)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:891812 發(fā)表于 2021-9-11 17:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
void setup() {




}


void loop() {




}
/********************************************************************
  函 數(shù) 名:void Init_PID_uint(PID_uint *p)
  功    能:初始化PID參數(shù)
  說    明:調(diào)用本函數(shù)之前,應(yīng)該先對Kp,Ti,Td做設(shè)置        ,簡化了公式
  入口參數(shù):PID單元的參數(shù)結(jié)構(gòu)體 地址
  返 回 值:無
***********************************************************************/
void Init_PID_uint(PID_Uint *p)
{
  p->k1 = (p->Kp) + (p->Kp) * 1024 / (p->Ti) + (p->Kp) * (p->Td) / 1024;
  p->k2 = (p->Kp) + 2 * (p->Kp) * (p->Td) / 1024;
  p->k3 = (p->Kp) * (p->Td) / 1024;
}
/********************************************************************
  函 數(shù) 名:void reset_Uk(PID_Uint *p)
  功    能:初始化U_kk,ekk,ekkk
  說    明:在初始化時調(diào)用,改變PID參數(shù)時有可能需要調(diào)用
  入口參數(shù):PID單元的參數(shù)結(jié)構(gòu)體 地址
  返 回 值:無
***********************************************************************/
void reset_Uk(PID_Uint *p)
{
  p->U_kk = 0;
  p->ekk = 0;
  p->ekkk = 0;
}
/********************************************************************
  函 數(shù) 名:int PID_commen(int set,int jiance,PID_Uint *p)
  功    能:通用PID函數(shù)
  說    明:求任意單個PID的控制量
  入口參數(shù):期望值,實測值,PID單元結(jié)構(gòu)體
  返 回 值:PID控制量
***********************************************************************/
int PID_common(int set, int jiance, PID_Uint *p)
{
  int ek, U_k = 0;
  ek = jiance - set;
  if ((ek > (p->Un)) || (ek < -(p->Un)))         //積分不靈敏區(qū)
    U_k = (p->U_kk) + (p->k1) * ek -
          (p->k2) * (p->ekk) + (p->k3) * (p->ekkk);
  p->U_kk = U_k;
  p->ekkk = p->ekk;
  p->ekk = ek;
  if (U_k > (p->Ur))                 //限制最大輸出量,
    U_k = p->Ur;
  if (U_k < -(p->Ur))
    U_k = -(p->Ur);
  return U_k / 1024;
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:141072 發(fā)表于 2021-10-25 10:54 | 只看該作者
這個不錯,可用于小車
回復(fù)

使用道具 舉報

板凳
ID:979200 發(fā)表于 2021-11-8 17:35 | 只看該作者
有自整定函數(shù)嗎?
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表