李紅蓮,劉 沖,楊桂梅,孔祥杰,劉青松
(1. 河北大學 質量技術監督學院,保定 071002;2. 河北大學 研究生學院,保定 071002;3. 河北大學 科學技術處,保定 071002)
比例積分微分(PID)控制的應用非常的普遍[1]。它以其結構簡單、穩定性好、工作可靠、調整方便而成為工業控制的主要技術之一。雖然它的原理簡單,但是設計和調整PID控制器在實際操作中是非常麻煩和費時的。如果每改變一次參數做一次實驗,工作量會很大,對于任何一種控制系統而言,提高控制效率是重要的目標,所以在對控制系統設置PID參數前,設計模擬仿真器,進行系統仿真,必將為儀器實際操作提供有益參考[2]。傳統的模擬仿真器僅是對系統進行模擬,應用范圍有限。本設計是基于Matlab軟件,將Simulink便于仿真和Gui界面視覺效果好、便于操作的優點結合起來[3,4],用Simulink模擬系統,用Gui制作界面,用界面控制仿真系統變量。并且設有PID校正環節,可以對系統進行校正,校正前后輸出相應可以對比,進而提高系統的性能。對實際工程中模擬、校對有很好指導作用。
此模擬仿真器是基于Matlab平臺,針對于工程系統設計,對設計的系統進行模擬仿真。設計的系統有時不能達到理想的效果,可以對系統進行PID校正,校正前后的輸出相應可以進行對比,找出能夠達到理想效果的PID參數,進而提高系統性能。對于教學或工程中系統的設計具有很好的指導作用。
本次模擬仿真器的設計是基于Matlab,利用Simulink仿真系統建立模型,利用Gui設計界面。Simulink建立的模型包括兩個主要部分:多階傳遞函數部分和PID控制部分。在界面生成的.M文件內利用函數命令可以改變傳遞函數和PID參數,通過界面控制實現。
在Matlab 命令窗口運行Simulink 命令,打開Simulink Library Browser,點擊工具欄新建按鈕(NEW )來新建一個模塊。從Simulink 下的Ports&Subsystems 下面拖一個Subsystem 模塊到新建的模塊中。雙擊Subsytem 模塊,來進行編輯。編輯結果如圖1所示。 關閉此窗口。在Subsystem模塊上點擊右鍵,選擇“Mask Subsystem” 點擊“Parameters”頁,對PID各參數對應的控件中的變量進行定義,這樣就可以用界面控制按鈕對PID參數進行控制。
在Matlab界面點擊“file”,選取NEW中的Gui點擊后,再點確定,將生成一個figure窗體,可以從工具欄選擇合適按鈕在窗體中繪制。繪制結果如圖2所示。

圖1 PID控制電路模塊

圖2 仿真器界面設計
對應所設計的Gui界面將生成相應的.M文件,可以在各控件下編寫相應的控制程序。在編寫程序前要確定各控制按鈕的tag屬性,方便程序調用。
設計基本思路:按鈕“輸入傳函參數”可以改變lunwen_s.mdl 中Transfer Fcn 函數中的分子向量和分母向量,確定傳遞函數,KP、 KI和KD所對應的文本框可以改變lunwen_s.mdl中的PID Controller模塊中的KP、KI和KD的值。輸入時間下的文本框可以確定仿真結束時間。點擊按鈕“開始仿真”即開始lunwen_s.mdl來仿真。未經過PID校正的在axes1中顯示,校正后的在axes2中顯示,對比按鈕可以使校正前后輸出響應進行對比。“下拉框”中包含time、bode、nyquist等,可以選擇仿真不同的圖形類型。
以人造衛星姿態控制系統為例,系統的傳遞函數為,點擊“輸入傳函參數”按鈕輸入各階次系數。暫時不設定KP,KI及KD對應的值,輸入仿真時間,點擊“開始仿真”按鈕,效果如圖3所示。
系統穩定時間不太理想,現在利用PID進行校正,設置PID參數,設置參數經驗方法:
比例系數P參數設置最初可先設置大些,避免出現超調和振蕩,運行后視響應情況再逐步調小,以加強比例作用的效果,提高系統響應的快速性,以既能快速響應,又不出現超調或振蕩為最佳。

圖3 對人造衛星控制器的仿真演示
微分時間參數D參數設置時可先把D參數設置為0,即去除微分作用,系統模擬后先調好P參數和I參數,P、I確定后,再逐步增加D參數,加微分作用,以改善系統響應的快速性,系統不出現振蕩為最佳(多數系統可不加微分作用)。
現在取KP=10;KI=60;KD=0;效果如下:

圖4 對人造衛星控制器的校正演示
可以看出系統快速性有明顯提高,穩定性顯著。但有穩態誤差,只要對系統輸出比例系數進行調節就可以達到更好的性能。
利用Matlab軟件設計并制作了PID控制的多階傳遞函數模擬仿真器,此模擬仿真器可以對多階傳遞系統進行模擬,在傳統模擬仿真器基礎上有很大改進,不僅可以對多階傳遞系統進行模擬,
并且可以進行PID校正,對實際工程中的模擬、校正有很好的指導作用。
[1] 魏克新,王云亮.MATLAB語言與自動控制系統設計[M].機械工業出版社,2002:60-96.
[2] 李勝,肖兵,李坤穎.基于TDLAS氣體測量系統的仿真與分析[J].現代科學儀器,2007,17(2):52-55.
[3] 顧建雄,雷正紅.MATLAB/SIMULINK在自動控制原理教學中的應用[J].河西學院學報,2006,22(5):32-33.
[4] 丁鋒.基于MATLAB/SIMULINK的自動控制系統仿真實驗[J].天津冶金職業技術學院學報,2005,6:57-59.