matlab實現pid模擬

來源:酷知科普網 1.29W

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的輸入訊號效果會更明顯些。

熱門標籤