李紅蓮,劉 沖,楊桂梅,孔祥杰,劉青松
(1. 河北大學(xué) 質(zhì)量技術(shù)監(jiān)督學(xué)院,保定 071002;2. 河北大學(xué) 研究生學(xué)院,保定 071002;3. 河北大學(xué) 科學(xué)技術(shù)處,保定 071002)
比例積分微分(PID)控制的應(yīng)用非常的普遍[1]。它以其結(jié)構(gòu)簡單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。雖然它的原理簡單,但是設(shè)計和調(diào)整PID控制器在實際操作中是非常麻煩和費時的。如果每改變一次參數(shù)做一次實驗,工作量會很大,對于任何一種控制系統(tǒng)而言,提高控制效率是重要的目標(biāo),所以在對控制系統(tǒng)設(shè)置PID參數(shù)前,設(shè)計模擬仿真器,進行系統(tǒng)仿真,必將為儀器實際操作提供有益參考[2]。傳統(tǒng)的模擬仿真器僅是對系統(tǒng)進行模擬,應(yīng)用范圍有限。本設(shè)計是基于Matlab軟件,將Simulink便于仿真和Gui界面視覺效果好、便于操作的優(yōu)點結(jié)合起來[3,4],用Simulink模擬系統(tǒng),用Gui制作界面,用界面控制仿真系統(tǒng)變量。并且設(shè)有PID校正環(huán)節(jié),可以對系統(tǒng)進行校正,校正前后輸出相應(yīng)可以對比,進而提高系統(tǒng)的性能。對實際工程中模擬、校對有很好指導(dǎo)作用。
此模擬仿真器是基于Matlab平臺,針對于工程系統(tǒng)設(shè)計,對設(shè)計的系統(tǒng)進行模擬仿真。設(shè)計的系統(tǒng)有時不能達到理想的效果,可以對系統(tǒng)進行PID校正,校正前后的輸出相應(yīng)可以進行對比,找出能夠達到理想效果的PID參數(shù),進而提高系統(tǒng)性能。對于教學(xué)或工程中系統(tǒng)的設(shè)計具有很好的指導(dǎo)作用。
本次模擬仿真器的設(shè)計是基于Matlab,利用Simulink仿真系統(tǒng)建立模型,利用Gui設(shè)計界面。Simulink建立的模型包括兩個主要部分:多階傳遞函數(shù)部分和PID控制部分。在界面生成的.M文件內(nèi)利用函數(shù)命令可以改變傳遞函數(shù)和PID參數(shù),通過界面控制實現(xiàn)。
在Matlab 命令窗口運行Simulink 命令,打開Simulink Library Browser,點擊工具欄新建按鈕(NEW )來新建一個模塊。從Simulink 下的Ports&Subsystems 下面拖一個Subsystem 模塊到新建的模塊中。雙擊Subsytem 模塊,來進行編輯。編輯結(jié)果如圖1所示。 關(guān)閉此窗口。在Subsystem模塊上點擊右鍵,選擇“Mask Subsystem” 點擊“Parameters”頁,對PID各參數(shù)對應(yīng)的控件中的變量進行定義,這樣就可以用界面控制按鈕對PID參數(shù)進行控制。
在Matlab界面點擊“file”,選取NEW中的Gui點擊后,再點確定,將生成一個figure窗體,可以從工具欄選擇合適按鈕在窗體中繪制。繪制結(jié)果如圖2所示。
圖1 PID控制電路模塊
圖2 仿真器界面設(shè)計
對應(yīng)所設(shè)計的Gui界面將生成相應(yīng)的.M文件,可以在各控件下編寫相應(yīng)的控制程序。在編寫程序前要確定各控制按鈕的tag屬性,方便程序調(diào)用。
設(shè)計基本思路:按鈕“輸入傳函參數(shù)”可以改變lunwen_s.mdl 中Transfer Fcn 函數(shù)中的分子向量和分母向量,確定傳遞函數(shù),KP、 KI和KD所對應(yīng)的文本框可以改變lunwen_s.mdl中的PID Controller模塊中的KP、KI和KD的值。輸入時間下的文本框可以確定仿真結(jié)束時間。點擊按鈕“開始仿真”即開始lunwen_s.mdl來仿真。未經(jīng)過PID校正的在axes1中顯示,校正后的在axes2中顯示,對比按鈕可以使校正前后輸出響應(yīng)進行對比?!跋吕颉敝邪瑃ime、bode、nyquist等,可以選擇仿真不同的圖形類型。
以人造衛(wèi)星姿態(tài)控制系統(tǒng)為例,系統(tǒng)的傳遞函數(shù)為,點擊“輸入傳函參數(shù)”按鈕輸入各階次系數(shù)。暫時不設(shè)定KP,KI及KD對應(yīng)的值,輸入仿真時間,點擊“開始仿真”按鈕,效果如圖3所示。
系統(tǒng)穩(wěn)定時間不太理想,現(xiàn)在利用PID進行校正,設(shè)置PID參數(shù),設(shè)置參數(shù)經(jīng)驗方法:
比例系數(shù)P參數(shù)設(shè)置最初可先設(shè)置大些,避免出現(xiàn)超調(diào)和振蕩,運行后視響應(yīng)情況再逐步調(diào)小,以加強比例作用的效果,提高系統(tǒng)響應(yīng)的快速性,以既能快速響應(yīng),又不出現(xiàn)超調(diào)或振蕩為最佳。
圖3 對人造衛(wèi)星控制器的仿真演示
微分時間參數(shù)D參數(shù)設(shè)置時可先把D參數(shù)設(shè)置為0,即去除微分作用,系統(tǒng)模擬后先調(diào)好P參數(shù)和I參數(shù),P、I確定后,再逐步增加D參數(shù),加微分作用,以改善系統(tǒng)響應(yīng)的快速性,系統(tǒng)不出現(xiàn)振蕩為最佳(多數(shù)系統(tǒng)可不加微分作用)。
現(xiàn)在取KP=10;KI=60;KD=0;效果如下:
圖4 對人造衛(wèi)星控制器的校正演示
可以看出系統(tǒng)快速性有明顯提高,穩(wěn)定性顯著。但有穩(wěn)態(tài)誤差,只要對系統(tǒng)輸出比例系數(shù)進行調(diào)節(jié)就可以達到更好的性能。
利用Matlab軟件設(shè)計并制作了PID控制的多階傳遞函數(shù)模擬仿真器,此模擬仿真器可以對多階傳遞系統(tǒng)進行模擬,在傳統(tǒng)模擬仿真器基礎(chǔ)上有很大改進,不僅可以對多階傳遞系統(tǒng)進行模擬,
并且可以進行PID校正,對實際工程中的模擬、校正有很好的指導(dǎo)作用。
[1] 魏克新,王云亮.MATLAB語言與自動控制系統(tǒng)設(shè)計[M].機械工業(yè)出版社,2002:60-96.
[2] 李勝,肖兵,李坤穎.基于TDLAS氣體測量系統(tǒng)的仿真與分析[J].現(xiàn)代科學(xué)儀器,2007,17(2):52-55.
[3] 顧建雄,雷正紅.MATLAB/SIMULINK在自動控制原理教學(xué)中的應(yīng)用[J].河西學(xué)院學(xué)報,2006,22(5):32-33.
[4] 丁鋒.基于MATLAB/SIMULINK的自動控制系統(tǒng)仿真實驗[J].天津冶金職業(yè)技術(shù)學(xué)院學(xué)報,2005,6:57-59.