PID控制器開(kāi)發(fā)筆記之八:帶死區(qū)的PID控制器的實(shí)現(xiàn)
出處:維庫(kù)電子市場(chǎng)網(wǎng) 發(fā)布于:2022-12-06 16:41:50
1、帶死區(qū)PID的基本思想
帶死區(qū)的PID控制算法就是檢測(cè)偏差值,若是偏差值達(dá)到一定程度,就進(jìn)行調(diào)節(jié)。若是偏差值較小,就認(rèn)為沒(méi)有偏差。用公式表示如下:

帶死區(qū)的PID算法,對(duì)無(wú)論位置型還是增量型的表達(dá)式?jīng)]有影響,不過(guò)它是一個(gè)非線(xiàn)性系統(tǒng)。
除以上描述之外還有一個(gè)問(wèn)題,在零點(diǎn)附近時(shí),若偏差很小,進(jìn)入死去后,偏差置0會(huì)造成積分消失,如是系統(tǒng)存在靜差將不能消除,所以需要人為處理這一點(diǎn)。
2、算法實(shí)現(xiàn)
前面我們描述了帶死區(qū)的PID控制的基本思想。在接下來(lái)我們來(lái)實(shí)現(xiàn)這一思想,同樣是按位置型和增量型來(lái)分別實(shí)現(xiàn)。
(1)位置型PID算法實(shí)現(xiàn)
前面我們對(duì)微分項(xiàng)、積分項(xiàng)采用的不同的優(yōu)化算法,他們都可以與死區(qū)一起作用于PID控制。這一節(jié)我們就來(lái)實(shí)現(xiàn)一個(gè)采用抗積分飽和、梯形積分、變積分算法以及不完全微分算法和死區(qū)控制的PID算法。首先依然是定義一個(gè)PID結(jié)構(gòu)體
接下來(lái)我們實(shí)現(xiàn)帶死區(qū)、抗積分飽和、梯形積分、變積分算法以及不完全微分算法的增量型PID控制器。/*定義結(jié)構(gòu)體和公用體*/
typedef struct
{
float setpoint; /*設(shè)定值*/
float kp; /*比例系數(shù)*/
float ki; /*積分系數(shù)*/
float kd; /*微分系數(shù)*/
float lasterror; /*前一拍偏差*/
float preerror; /*前兩拍偏差*/
float deadband; /*死區(qū)*/
float result; /*PID控制器計(jì)算結(jié)果*/
float output; /*輸出值0-100%*/
float maximum; /*輸出值上限*/
float minimum; /*輸出值下限*/
float errorabsmax; /*偏差值*/
float errorabsmin; /*偏差值*/
float alpha; /*不完全微分系數(shù)*/
float derivative; /*微分項(xiàng)*/
float integralValue; /*積分累計(jì)量*/
}CLASSICPID;
接下來(lái)我們實(shí)現(xiàn)帶死區(qū)、抗積分飽和、梯形積分、變積分算法以及不完全微分算法的增量型PID控制器。
void PIDRegulator(CLASSICPID vPID,float pv)
{
float thisError;
float result;
float factor;
thisError=vPID->setpoint-pv; //得到偏差值
result=vPID->result;
if (fabs(thisError)>vPID->deadband)
{
vPID-> integralValue= vPID-> integralValue+ thisError;
//變積分系數(shù)獲取
factor=VariableIntegralCoefficient(thisError,vPID->errorabsmax,vPID->errorabsmin);
//計(jì)算微分項(xiàng)增量帶不完全微分
vPID-> derivative =kd*(1-vPID->alpha)* (thisError-vPID->lasterror +vPID->alpha*vPID-> derivative;
result=vPID->kp*thisError+vPID->ki*vPID-> integralValue +vPID-> derivative;
}
else
{
if((abs(vPID->setpoint-vPID->minimum)deadband)&&(abs(pv-vPID->minimum)deadband))
{
result=vPID->minimum;
}
}
/*對(duì)輸出限值,避免超調(diào)和積分飽和問(wèn)題*/
if(result>=vPID->maximum)
{
result=vPID->maximum;
}
if(result<=vPID->minimum)
{
result=vPID->minimum;
}
vPID->preerror=vPID->lasterror; //存放偏差用于下次運(yùn)算
vPID->lasterror=thisError;
vPID->result=result;
vPID->output=((result-vPID->minimum)/(vPID->maximum-vPID->minimum))*100.0;
}
3、總結(jié)
引入死區(qū)的主要目的是消除穩(wěn)定點(diǎn)附近的波動(dòng),由于測(cè)量值的測(cè)量精度和干擾的影響,實(shí)際系統(tǒng)中測(cè)量值不會(huì)真正穩(wěn)定在某一個(gè)具體的值,而與設(shè)定值之間總會(huì)存在偏差,而這一偏差并不是系統(tǒng)真實(shí)控制過(guò)程的反應(yīng),所以引入死區(qū)就能較好的消除這一點(diǎn)。
當(dāng)然,死區(qū)的大小對(duì)系統(tǒng)的影響是不同的。太小可能達(dá)不到預(yù)期的效果,而太大則可能對(duì)系統(tǒng)的正常變化造成嚴(yán)重滯后,需要根據(jù)具體的系統(tǒng)對(duì)象來(lái)設(shè)定。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 電磁頻譜管控系統(tǒng)由什么組成的呢2025/9/5 17:11:49
- 深入解析:LDO 的 ADJ 引腳串電容到地的用途2025/8/7 15:33:42
- 一文詳解AUTOSARMCAL模塊2025/7/22 17:09:59
- 什么是閉環(huán)控制系統(tǒng),閉環(huán)控制系統(tǒng)的知識(shí)介紹2025/6/25 11:49:39
- 伺服系統(tǒng)由哪幾個(gè)部分組成伺服系統(tǒng)是如何分類(lèi)的2025/5/7 16:02:21
- 編碼器的工作原理及作用1
- 超強(qiáng)整理!PCB設(shè)計(jì)之電流與線(xiàn)寬的關(guān)系2
- 三星(SAMSUNG)貼片電容規(guī)格對(duì)照表3
- 電腦藍(lán)屏代碼大全4
- 國(guó)標(biāo)委發(fā)布《電動(dòng)汽車(chē)安全要求第3部分:人員觸電防護(hù)》第1號(hào)修改單5
- 通俗易懂談上拉電阻與下拉電阻6
- 繼電器的工作原理以及驅(qū)動(dòng)電路7
- 電容單位8
- 跟我學(xué)51單片機(jī)(三):?jiǎn)纹瑱C(jī)串口通信實(shí)例9
- 一種三極管開(kāi)關(guān)電路設(shè)計(jì)10
- PCB電源完整性(PI)設(shè)計(jì)核心實(shí)操規(guī)范
- 多層PCB疊層設(shè)計(jì)核心實(shí)操規(guī)范
- 提高M(jìn)OSFET效率的電路優(yōu)化方法
- 電源管理IC在智能家居中的應(yīng)用
- 差分信號(hào)連接器設(shè)計(jì)要點(diǎn)
- PCB焊盤(pán)與過(guò)孔設(shè)計(jì)核心實(shí)操規(guī)范(含可焊性與可靠性保障)
- 汽車(chē)電子常用電子元器件選型指南
- MOSFET驅(qū)動(dòng)與隔離方案設(shè)計(jì)
- 高溫環(huán)境下電源IC選型建議
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析









