當前位置:妙知谷 >

母嬰教育 >學習交流 >

matlab實現pid仿真

matlab實現pid仿真

pid是最基礎的控制算法,對於剛接觸的朋友,如果利用實物一個參數一個參數地去體驗,不僅耗時長,而且也未必能夠理解透,利用matlab進行一下軟件仿真可以在比較快的時間內看到參數調整的效果,加深對PID三個基本常量的理解。下面是一個非常簡單的matlab的pid仿真操作。

操作方法

(01)打開matlab2009,新建一個模型文件,點擊“開始”->"simulink"->“Library Browser”,打開simulink庫。

matlab實現pid仿真
matlab實現pid仿真 第2張

(02)在“Simulink Library Browser”的庫列表中找到“Simulink Extras”,點擊右側的“Additional Linear”。

matlab實現pid仿真 第3張

(03)將Additional Linear的“PID Controller”和“TransferFon”添加到模型編輯區域。

matlab實現pid仿真 第4張
matlab實現pid仿真 第5張

(04)在“Simulink Library Browser”庫列表中找到“Simulink”->“Commonly Used Blocks”,將Scope和Sum模型添加到編輯區域。

matlab實現pid仿真 第6張

(05)在“Simulink”->“Sources”找到Step模型,這是一個階躍信號發生器。

matlab實現pid仿真 第7張

(06)將所有模型按圖中方式連接,注意只有連接的線是實心黑線才表示連接成功,如果是紅色的虛線,那麼最粗暴的方式是刪掉它重新連。

matlab實現pid仿真 第8張

(07)這裏的sum反饋的符號是一個+,也就是説這是一個正反饋,但是我們pid一般都是負反饋,所以需要改一下反饋的符號。雙擊sum切換到sum的屬性對話框,將List of signs由++改為--,則下面的+會變成減。

matlab實現pid仿真 第9張
matlab實現pid仿真 第10張

(08)sum的下面的符號變成了-,反饋回來的信號相減,系統變成負反饋。

matlab實現pid仿真 第11張

(09)點擊執行按鈕,然後雙擊Scope,切換到顯示界面,出現熟悉的pid輸出波形。

matlab實現pid仿真 第12張

(10)雙擊pid控件可以調整PID的三個基本參數,Proportional(比例常數),Integral(積分常數),Derivative(微分常數)。

matlab實現pid仿真 第13張

(11)我們試試將積分常數改為100,然後再次運行,在Scope中點擊“Autoscale”,可以看到輸出由平滑變得震盪起來了。

matlab實現pid仿真 第14張
matlab實現pid仿真 第15張

(12)可以試着自己調整下PID的各個參數,看看效果,加深理解。

matlab實現pid仿真 第16張

特別提示

用step信號做pid的輸入信號效果會更明顯些。

標籤: MATLAB PID 仿真
  • 文章版權屬於文章作者所有,轉載請註明 https://miaozhigu.com/jy/jiaoliu/xvel18.html