基于pid控制方法的操控遙控飛機實例
2023/8/11 11:30:19 點擊:
做控制時,大家經常會有這樣的感受“代碼很豐滿,現實很骨感”,這是因為將計算機指令轉移到實際硬件時,由于物體的慣性以及各種非理想化的因素影響,往往會出現實際與預期不符合的情況。
這篇文章將以“操控遙控飛機從地面飛到10米高度并懸停”為例子,用最通俗易懂的方式,讓你理解PID。在這個問題中,我們假設加速度是可以直接調控的(實際生活中往往也是這樣),因此,我們輸入的量為加速度的大小和方向(正負),而我們最終想要得到的結果就是高度穩定在10米。
首先我們來講控制方法:
控制方法主要分為“開環控制”和“閉環控制”,這兩種控制方法的簡單理解為:
開環控制:計算出飛機從地面到10米高度所需要的加速度以及作用時間,然后將其編寫為一條固定的指令,“一次執行,全過程受益”。
閉環控制:在飛機飛行的過程中,系統時刻關注飛機的狀態,并做出相應的調整。而PID控制就是最常用的閉環控制。
PID原理
一講到原理,很多人都會搬出PID公式,數學較好或者學過自控的人還好,要是遇見一個半路轉行做控制的,看見“微分”和“積分”,頭都大了。其實,由于生活中信號采樣具有一定的間隔,因此我們經常遇見的都是離散信號的控制,只需要讀懂下圖即可:
實驗與參數理解
PID的控制經常會涉及到KP、KI、KD三個參數的調節,如果盲目調節則會花較長時間,接下來我們將用直觀實驗來理解以下幾個參數的具體含義。
4.1 比例環節
計算公式為KP × 誤差,具體的含義即為誤差越大,值越大。這一點是非常直觀的,誤差越大則說明偏離預期值越遠,我們要加大“油門”,快速調整!以下是當KI、KD為0,只有KP=5的測試結果
從圖中我們可以看到雖然慢慢的想10收斂,但由于誤差越大,其“油門”越大,就像是一個“莽夫”,盡管每次都在調整,但總是用力過猛!
4.2 微分環節
計算公式為KD × (本次誤差 - 上次誤差),對于這個公式,我們可以理解為用來中和“用力過猛”。以下是當KP=5、KD=10、KI=0的測試結果:
因此,要想消除這個干擾,就需要積分環節的加入。
4.3 積分環節
積分環節的公式為KI × 誤差累計和,用官方的語言來說,用來調整“穩態誤差”,其實,所謂的穩態誤差就可以理解為“一直存在的誤差”,也就是在本次實驗中加入的持續干擾!以下是當KP=5、KD=10、KI=0.1的測試結果:
從這次的測試中,我們看出,得到了幾乎完美的結果!
總結
對于PID參數調節,認準3個點:
P:大力出奇跡
I:消除持續存在的誤差
D:“中和”用力過猛,減少波動
- 上一篇:沒有啦
- 下一篇:制冷系統堵塞的方法有幾種 制冷系統堵塞的原因及解決方法 2023/8/3