欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 零基礎制作平衡小車【連載】7---模擬PID到離散型PID的轉換 [打印本頁]

作者: 自動化工程師    時間: 2020-12-2 17:16
標題: 零基礎制作平衡小車【連載】7---模擬PID到離散型PID的轉換

粘貼過來的代碼都亂了,貼個原文鏈接吧:

https://blog.csdn.net/D_SEngineer?spm=1011.2124.3001.5113

不定時發送福利,歡迎小伙伴們交流學習。



上一節對PID三個參數進行了分析,知道了三個參數各自的優缺點,這節我們將三個參數整合到一起,通過他們之間優缺點互補,真正形成一個穩定的系統。

PID雛形

將上一小節的公式相加:

        OUT = OUTp + OUTi + OUTd                = K*Ek + K*Sk + K*Dk + 3*OUT0                = K*(Ek +Sk +Dk)+ OUTx

式子中3*OUT0為常數,用常數OUTx代替。

模擬PID到離散型PID的轉換

這是模擬PID公式,對于這個公式,你要知道:
Kp :放大系數
e(t):誤差(t代表第t時刻采樣得到的誤差)
Ti :積分時間常數
Td:微分時間常數

另外一點就是,我們使用單片機進行PID運算,是不能采用模擬型PID的,因為單片機本身就是一個數字系統,里面只有0和1,因此不能處理模擬信號,只能將模擬信號轉換成數字信號,才能被單片機所用。
因此上面的公式不能使用,需要稍稍變動。

那么怎么轉換呢?

1. 比例項:

比例項就不同看了,很簡單,誤差乘上系數就行了,主要是積分項和微分項、

2. 積分項:


高數中是不是有一張和這個圖很像的一張圖,應該在微積分那一章中,是讓求不規則圖形面積的。上圖紅色框內,黑色曲線的面積是怎么求的?是不是將黑線拆分成很多個矩形,把這些矩形面積相加就行了。這個理念和離散型PID很像,我們定時去采樣,之后把采樣值進行PID計算,這個時間越小,離散型的結果就越接近模擬型結果。

那么積分項就可以寫成下面的公式:

Sk:是積分輸出項
Ek:表示誤差(第k次采樣的誤差)
T:采樣時間
Ti:積分常數

公式可以這樣理解:
將誤差看做坐標軸的Y軸(長),T看做X軸(寬),當k=1時,表示第一次采樣的誤差E1×采樣時間T是不是相當于求矩形的面積(長×寬),之后將所有的矩形面積都累加起來,就可以近似求出曲線的面積。

3. 微分項

積分是無限累加,微分是無限分割,Ek和Ek-1還看做Y軸,T是X軸。斜率 =(y2-y1)/(x2-x1),(y2-y1)就是Ek - Ek-1,(x2-x1)就是T。當采樣時間T足夠小時,上面這個公式是不是可以看成曲線上每個點(甚至更小)的效率了。

最終離散型公式:

離散型PID公式中的幾個參數總結PID注意事項

假設是溫控系統,我們設定目標值為100℃,當第一次采樣到第一到達目標值時,誤差Ek=Sv-Pk,該段時間內的誤差都為正數,積分項是將所有誤差都累加起來的,因此在第一次到達目標值時,會累積很大一個誤差,該誤差會造成即便溫度達到目標值100℃,此時P項沒有作用了,但系統還是會繼續加熱,為什么?就是因為此時積分項經過計算,會輸出一個很大的值。這就造成系統產生過沖,最直觀的表現就是下圖中,第一次超過目標值產生的過沖現象。

解決辦法就是一開始不加入積分項,當溫度到達一定值,比如80℃時,在加入積分項。

這種情況一般會出現在系統啟動、結束或大幅度增減設定值時,短時間內會造成系統輸出很大的偏差,這種情況可以采用上述方法(積分分離)來解決。







歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1