<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > PID算法學(xué)習筆記

PID算法學(xué)習筆記

作者: 時(shí)間:2012-09-15 來(lái)源:網(wǎng)絡(luò ) 收藏

1年前就有聽(tīng)說(shuō) 搖搖擺擺終于 可以來(lái) 詳細的 應用學(xué)習下

系統需求: 調壓器 恒壓恒流功能的使用

最基本的比例調節 U=P*Uk+U0

u 為控制信號輸出UK為 當前值 和 期望值的U0的偏差 P 為比例系數

這個(gè)很容易理解的

這種控制 只在 存在偏差 UK不等于0的時(shí)候 才起作用

也就是說(shuō) 這種控制一定會(huì )存在偏差,,偏差越小調節作用越弱

當然 如果增加K 可以使這個(gè)必然存在的偏差值 變小。。不過(guò) 增加K 會(huì )讓整個(gè)系統不穩定,,

(比如系統存在一個(gè)正偏差,,K很大,。。系統很容易就輸出到一個(gè) 傅偏差的值,,這樣系統很難穩定 或者說(shuō)K越大 系統波動(dòng) 的幅度也越大 增加K減小誤差 只適用與不存在超調的系統 也就是 輸出只會(huì )從一個(gè)方向逼近 理想值 不過(guò)這種系統 似乎不是很多 雖然也存在)

這樣這個(gè)不穩定的調節方式 是需要改進(jìn)的。

為了減小這個(gè)必然存在的誤差 除了增大K 還有什么別的辦法呢?

神奇的天才們給出了PID 控制的I部分

你不是始終存在誤差嘛? 我讓你誤差累加 以增加我獲得誤差 值

比如你的系統 誤差隨著(zhù)時(shí)間變化 我采樣到 0.1 0.08 0.02 -0.02 在T3 也就是采樣到0.2的時(shí)候 這個(gè)誤差相對于0.1 時(shí)候來(lái)說(shuō)已經(jīng)很小了。。使用Y=KX+u 的調節 很明顯已經(jīng)效果不咋樣了

不過(guò)我們 如果 在0.02 時(shí)刻 把誤差視為 0.1+0.08+0.02=0.2 那么是否 能獲得更好的調節效果呢?

于是 有了 積分環(huán)節 T/Ti ∑UK 對誤差求和

,明眼人一看就知道 你這雖然 讓系統必然存在的誤差變小了,,甚至無(wú)限逼近與0 不過(guò)依然解決不了系統震蕩,,甚至會(huì )讓系統震蕩的更嚴重

不要緊,,為了解決這個(gè)問(wèn)題 我們還有個(gè)微分環(huán)節

(Td/T)[U(K)-U(k-1)]

系統為什么震蕩?

不就是UK-U(K-1) 有點(diǎn)大么(如果UK>0 U(K-1)>0 正常情況下UK- U(K-1)0 系統越調 UK 應該越逼近0)

那么我把這個(gè)負值 加到你的系統中 讓你系統 越 逼近0的時(shí)候 輸出 越小或者說(shuō) 抑制輸出變化速度 免得你震蕩嘛

這個(gè)也就是微分的作用咯

最后 記得給這三個(gè)部分 分別乘以一個(gè)系數 以調整每一部分的作用效果

系數分別定為 P I D

當然還要加上一個(gè)系統初值U0

PID調節公式就成了:

S(K)=PU(k)+IT/Ti ∑UK+D (Td/T)[U(K)-U(k-1)])+ U0

不覺(jué)得 積分環(huán)節 T/Ti ∑UK 從0時(shí)刻積分到現在 很累么? 而且系統中 TX時(shí)刻出現的偶然情況(不屬于系統正常變化部分) 會(huì )一直影響著(zhù)現在的輸出。。咋辦呢?

用現在的S減去上一時(shí)刻的S 我只要 S的變化量加上一時(shí)刻的輸出 來(lái)確定現在的輸出 (S =s(T-1)+ds)

于是我們就有了增量

二:增量

DS=S(K)-S(K-1)

整個(gè)式子的化簡(jiǎn) 相信 。。。應該都會(huì )吧#01

DS=Pdu(k)+I t/ti(uk)+ D TD/T duk+du(k-1)

于是我們只剩下 三個(gè)是需要的 UK UK-1 UK-2

應為DU(K-1) 是UK-1- UK-2

QQ空間打公式太麻煩 所以比較懶的省了很多括號 還望大家見(jiàn)諒 相信 應該都能看明白

可能大家覺(jué)得這么著(zhù)已經(jīng)湊合著(zhù)了吧

不過(guò)想想。。又積分 又微分。。是否會(huì )讓系統響應 不是足夠快?

呵呵 偉大的神人們說(shuō)

我找一個(gè)門(mén)限值US

當S(K)>US 的時(shí)候 我不要微分 讓系統 很快的調 盡快的把SK 調下來(lái)

當SK US 的時(shí)候 我加入積分部分讓系統 慢慢調精確的調、

扯淡的理論 就寫(xiě)到這里了 接下來(lái) 就玩真格的

PID 在本中的應用

也就是C18 程序的具體實(shí)現

當然 我思路還很亂。。我去百度百度再來(lái)

還要說(shuō)一句 絕情才能成長(cháng) 多情的 多愁善感的人都是廢物



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>