摘要:基于MATLAB/Simulink平臺,建立一種模糊自適應PID系統的仿真模型,應用于鍋爐汽包水位的控制過程,給出仿真的具體實現方法,并在系統運行過程中加入干擾信號,結果顯示出系統具有良好的動態性能和較強的抗干擾性能,證明了本文方法的有效性。
關鍵詞:PID 模糊 自適應 鍋爐水位 Simulink
[b][align=center]Application of Fuzzy self-tunning PID controller in the boiler drum level based onMATLAB/simulink
GEWei ZHUZhang-qing
(.Faculty of Engineering Department,Anhui Agriculture University,Hefei,230036,china)[/align][/b]
Abstract: Based on MATLAB/Simulink, a emulation model of Fuzzy self-tunning PID system is builded up and applied to control boiler drum level.The detailed method of emulation is given. The interference signal is added in the operation of system.The result shows good dynamic performance and stronger anti-interference function. It proves the approach proposed in this paper is effective.
Keywords: PID Fuzzy Self-tunning drum level Simulink
1 引言
PID控制堪稱控制領域的常青樹,至今仍占據工業過程控制中90%以上的回路,具有結構簡單、適應性強、魯棒性好等優點,但受其控制參數整定的限制,對于非線性、大滯后系統難以達到滿意的控制效果。智能控制中的模糊控制模擬人類邏輯思維能力,不依賴被控對象的精確數學模型,只需提供專業技術人員的經驗知識及操作數據,對復雜系統有著良好的控制效果。本文結合上述兩種控制方法,設計出一種模糊自適應PID系統,可實現對PID控制參數的在線調整,對復雜系統有較強的適應性,并借助MATLAB/Simulink直觀便捷的構建復雜系統模型的能力對鍋爐汽包水位的控制進行仿真實驗。
[b]2 模糊自適應PID控制系統的設計
2.1模糊自適應PID控制系統結構[/b]
模糊自適應PID控制系統的結構如圖1所示。由圖可見該系統由常規PID控制和模糊推理控制兩部分組成,以偏差e和偏差變化率ec(de/dt)作為模糊控制器的輸入,根據模糊控制規則對PID參數進行自適應調整,以滿足不同e和ec時對控制參數的要求。
該系統實現自調整PID參數的計算公式如下:
k[sub]p[/sub]=k′[sub]p[/sub]+△k[sub]p[/sub](2.1)
k[sub]i[/sub]=k′[sub]i[/sub]+△k[sub]i[/sub](2.2)
k[sub]d[/sub]=k′[sub]d[/sub]+△k[sub]d[/sub](2.3)
式中 k′[sub]p[/sub]、k′[sub]i[/sub] 、k′[sub]d[/sub]為PID參數的初始值,△k[sub]p[/sub]、△k[sub]i[/sub] 、△k[sub]d[/sub]為模糊控制器的輸出 k[sub]p[/sub]、k[sub]i[/sub] 、k[sub]d[/sub]為最終輸出的控制參數值。
2.2模糊控制器結構
在MATLAB的命令窗口中輸入fuzzy,出現FIS editor的界面,即可在此方便地編輯所需的模糊推理系統。
選擇控制器類型為Mamdani型,取And(與)的方法為min,Or(或)的方法為max,Implication(推理)的方法為min,Aggregation(合成)的方法為max,Defuzzification(去模糊化)的方法為centroid(重心平均法)[1]。由圖1可看出該模糊控制器有兩輸入(e、ec)、三輸出(k[sub]p[/sub]、k[sub]i[/sub]、k[sub]d[/sub]),打開FIS editor的下拉菜單edit,在Add Variable中選定輸入輸出變量數目。
2.2.1隸屬度函數
設輸入輸出變量均選用三角形隸屬度函數曲線,論域為[-6,+6],模糊子集為{負大,負中,負小,零,正大,正中,正大},分別對應{NB,NM,NS,O,PS,PM,PB}。雙擊各輸入輸出變量圖標,打開membership function editor(隸屬度函數編輯器)即可分別進行上述設定。
2.2.2模糊控制規則
根據相關文獻和經驗總結,歸納了針對不同的e和ec,參數k[sub]p[/sub]、k[sub]i[/sub]、k[sub]d[/sub]的整定原則:
A.當|e|較大時,為盡快消除偏差,提高響應速度,應取較大的k[sub]p[/sub],同時為防止超調過大產生振蕩,可取較小的k[sub]d[/sub],k[sub]i[/sub]取0。
B.當e·ec> 0,被控量朝著偏離給定值方向變化。若|e|較大,取較大的k[sub]p[/sub],較小的k[sub]i[/sub]和中等的k[sub]d[/sub];若|e|較小,可取中等大小的k[sub]p[/sub],較大的k[sub]i[/sub]和較小的k[sub]d[/sub],以提高系統的穩態性能,避免產生振蕩。
C.當e·ec< 0,被控量朝著接近給定值方向變化。若|e|較大,可取中等的k[sub]p[/sub],較小的k[sub]i[/sub]和中等的k[sub]d[/sub],以提高動態性能和穩態性能;若|e|較小,可取較小的k[sub]p[/sub],較大的k[sub]i[/sub]和較小的k[sub]d[/sub]。
D.ec的大小表明偏差變化的速率,ec越大,k[sub]p[/sub]取值越小,k[sub]i[/sub]取值越大,反之亦然。
由上述分析可得出模糊控制規則表,在edit下的Rules即可輸入模糊控制規則,形如:
If(e is NB) and(ec is NB) then(kp is PB)(ki is NB)(kd is PS)
If(e is NB) and(ec is NM) then(kp is PB)(ki is NB)(kd is NS)
If(e is NB) and(ec is NS) then(kp is PM)(ki is NM)(kd is NB)
If(e is NB) and(ec is ZO) then(kp is PM)(ki is NM)(kd is NB)
If(e is NB) and(ec is PS) then(kp is PS)(ki is NS)(kd is NB)
……
至此,建立起名為gw.fis的文件,完成了模糊控制器結構的整體設計。
[b]2.3 基于MATLAB/Simulink環境建立的系統仿真分析
2.3.1基于MATLAB/Simulink的系統模型[/b]
常規PID控制常采用的增量算式為:
△u(k)=k[sub]p[/sub]△e(k)+k[sub]i[/sub]e(k)+k[sub]d[/sub][△e(k)-△e(k-1)](2.4)
再結合式2.1,2.2,2.2,即可在MATLAB/Simulink環境下建立起如圖2所示的PID仿真模塊,并封裝成子系統PID Subsystem。

選取某供汽量為120t/h的鍋爐汽包為被控對象,其給水流量與水位的傳遞函數為:
G(s)=0.0529/8.5s[sup]2[/sup]+s

組建出模糊自適應PID控制系統的Simulink仿真模型如圖3所示。雙擊Fuzzy Logic Controller 模塊,在parameters中輸入上面所建立的gw.fis文件名,在MATLAB的命令窗口中輸入以下兩條命令:
readfis;
fismat=readfis(‘gw’)
把fis文件讀到workspace里面,實現Simulink與fis文件的連接,完成系統仿真。
2.3.2仿真結果分析
取量化因子ke=0.3,kec=0.1,取k[sub]p[/sub]、k[sub]i[/sub]、k[sub]d[/sub]的比例因子分別為k1=0.8,k2=0.005,k3=25,令PID參數的初始值k′[sub]p[/sub]=300、k′[sub]i[/sub]=0.3、k′[sub]d[/sub]=280,仿真時間設為40s,加單位階躍信號,并在第10s加5.0(500%)的干擾,最終得到的常規PID與模糊自適應PID響應曲線分別如圖4、圖5所示。
[align=center]

圖4:常規PID控制系統響應曲線[/align]
[align=center]

圖5:模糊自適應PID控制系統響應曲線[/align]
從曲線可看出模糊自適應PID控制的各項性能指標均優于常規PID控制,具有響應快,超調小,過渡時間快的特點,顯示出了良好的動態性能和穩態精度,且抗干擾能力較強。
3結束語
本文將模糊控制與常規PID控制相結合,構成具有參數自適應功能的智能控制系統,并在MATLAB/Simulink的環境下組建了系統仿真模型,選擇鍋爐汽包水位作為仿真對象,仿真結果表明該模糊自適應PID控制方法用于鍋爐汽包水位控制是可行的,這樣離線的仿真實驗減少了調試的人力物力,并為投入實際生產提供了理論依據。
參考文獻:
[1]劉冰,李文,丁鳴艷.基于MATLAB的模糊PID控制系統的設計及其仿真[J].儀器儀表用戶,2006,13(2).
[2]楊詠梅,陳寧.基于MATLAB的模糊自整定PID參數控制器的設計與仿真[J].微計算機信息,2005,21(12).*
[3]劉志遠,蔡肯,白雁力.基于Simulink的Fuzzy-pid控制器設計[J].韶關學院學報,2005,26(9).*
[4]宋子巍,陳思忠,楊林.模糊-PID控制的 MATLAB仿真分析.科技資訊[J],2006,3
[5]陳平,王永初,陳小云.一種基于模糊pid控制的鍋爐汽包水位控制方法[J].福建工程學院學報,2006,4(1).
郵箱:gewei0925@163.com
地址:安徽農業大學研究生院162信箱