一、 引言
對于具有延遲的一階線性系統(tǒng)的階躍響應(yīng),在工業(yè)控制中具有相當(dāng)廣泛的應(yīng)用。其特性就是在初始時(shí)有相當(dāng)一段時(shí)間的滯后,然后單調(diào)上升,最后達(dá)到穩(wěn)態(tài)。而工業(yè)生產(chǎn)中的動(dòng)態(tài)控制不僅要求系統(tǒng)具有一定的穩(wěn)定性,還要求系統(tǒng)達(dá)到穩(wěn)態(tài)具有一定的快速性。因此,對于一階線性時(shí)滯系統(tǒng)來說,有時(shí)就達(dá)不到快速性的要求。用模糊控制器來實(shí)現(xiàn)對一階線性時(shí)滯系統(tǒng)的控制就大大改進(jìn)了原系統(tǒng)的控制效果,在一定程度上完全滿足了系統(tǒng)的快速性的要求。用Matlab仿真的結(jié)果則更清楚的顯示出改進(jìn)的控制效果。
二、模糊控制器的基本結(jié)構(gòu)和組成
圖1
模糊控制器主要由以下四部分組成:模糊化、模糊推理、清晰化和知識庫。模糊化的作用是將輸入的精確量轉(zhuǎn)換成模糊化量,并用相應(yīng)的模糊集合來表示。模糊推理是模糊控制器的核心,它具有模擬人的基于模糊概念的推理能力。該推理過程是基于模糊邏輯中的蘊(yùn)涵關(guān)系及推理規(guī)則來進(jìn)行的。清晰化的作用是將模糊推理得到的控制量變換為實(shí)際用于控制的清晰量。知識庫中包含了具體應(yīng)用領(lǐng)域的知識和要求的控制目標(biāo)。它通常由數(shù)據(jù)庫和模糊控制規(guī)則庫兩部分組成。在模糊控制中,一般通過用一組語言描述的規(guī)則來表示專家的知識,專家知識通常具有如下的形式:IF(滿族一組條件)THEN(可以推出一組結(jié)論)。
當(dāng)論域?yàn)殡x散量時(shí),經(jīng)過量化后的輸入量個(gè)數(shù)是有限的??梢葬槍斎肭闆r的不同組合離線計(jì)算出相應(yīng)的控制量,從而組成一張控制表,能夠減少在線的運(yùn)算量。這種模糊控制方法很容易滿足實(shí)時(shí)控制的要求。在這種模糊控制結(jié)構(gòu)中,通常用誤差e和誤差的導(dǎo)數(shù)de/dt作為模糊控制器的輸入量。如圖2所示:
三、模糊控制器的設(shè)計(jì)
設(shè)控制系統(tǒng)的輸入為單位階躍信號r,輸出為y,誤差為e,誤差導(dǎo)數(shù)為de;被控對象的輸入為u;模糊控制器與e,de對應(yīng)的輸入分別為e1,de1,與u對應(yīng)的輸出為u1。e1,de1,u1的論域取[-6,+6],語言值取5個(gè),分別為“負(fù)大NB”,“負(fù)小NS”,“零ZR”,“正小PS”和“正大PB”。NB,NS,PS,PB取梯形隸屬度函數(shù),ZR取三角形隸屬度函數(shù)。el ,del ,u1 的隸屬度函數(shù)如圖3所示。
圖3
根據(jù)經(jīng)驗(yàn),可以得到用“if 。。。。 then 。。。。 "形式表達(dá)的模糊控制規(guī)則:
1. If (e l is NB) and (de l is NB) then (u l is NB)
2. If (e l is NB) and (de l is NS) then (u l is NS)
3. If (e l is NB) and (de l is ZR) then (u l is NS)
........................
23. If (e l is PB) and (de l is ZR) then (u l is PS)
24. If (e l is PB) and (de l is PS) then (u l is PB)
25. If (e l is PB) and (de l is PB) then (u l is PB)
以上模糊控制規(guī)則共計(jì)25條,這些控制規(guī)則可以總結(jié)歸納成表。
表1
四、模糊控制器的仿真模型
這里取被控對象為:
取T=3秒,τ=0.5秒
在MATLAB的命令窗口輸入命令Fuzzy,進(jìn)入圖形用戶界面(GUI)窗口。根據(jù)上述隸屬度函數(shù)和控制規(guī)則,利用模糊推理系統(tǒng)(FIS )編輯器可以建立一個(gè)FIS文件,取名為flc.fis。這里模糊推理及其非模糊化方法采用MIN-MAX一重心法,即有名的Mamdani推理法在SIMULINK環(huán)境中,用鼠標(biāo)將相應(yīng)模塊拖入窗口中,連接好便得到圖5所示的模糊控制系統(tǒng)仿真模型(見最后頁)。
這里模糊控制器的結(jié)構(gòu)變量取flc,誤差的量化因子Ke取6,誤差變化的量化因子Kc取0.5,控制輸出的比例因子Ku取0.4。限幅器1和限幅器2的限幅范圍是[-6, 6],其作用是把控制系統(tǒng)的誤差及誤差導(dǎo)數(shù)由基本論域變換到模糊控制器輸入變量的論域。假設(shè)被控對象允許的最大輸入是士20,因而在被控對象的前面設(shè)置了限幅器3,其限幅范圍是[-20, 20]。利用仿真參數(shù)對話框,可以設(shè)置相關(guān)的仿真參數(shù)。這里仿真時(shí)間設(shè)置為15秒,采樣周期設(shè)置為0.01秒。
五、系統(tǒng)的仿真
整個(gè)系統(tǒng)在Simulink環(huán)境下所搭建的結(jié)構(gòu)圖4如下:
在MATLAB的命令窗口中輸入指令:flc=readfis(‘flc.fis’)這樣就在基本工作空間中建立起了模糊推理系統(tǒng)的結(jié)構(gòu)變量flc。,然后再輸入指令:start,仿真即開始。這時(shí)可以利用模擬
示波器來觀察系統(tǒng)的動(dòng)態(tài)響應(yīng)情況。仿真結(jié)束后,可以利用plot(t ,y)指令將響應(yīng)曲線繪出,如圖5所示。
圖5中,u為控制量(黃色),f1為原來未加模糊控制器控制的曲線(綠色),f2為加了模糊控制器以后的響應(yīng)曲線(紫色)。
六、結(jié)論
由圖5可以看出,原系統(tǒng)調(diào)節(jié)時(shí)間大約為14秒,而用模糊控制器控制后調(diào)節(jié)時(shí)間為大約6秒??梢?,雖然用模糊控制器控制后系統(tǒng)略有超調(diào),但它所存在的這種微小超調(diào)是在系統(tǒng)穩(wěn)定所允許范圍之內(nèi)的,而用模糊控制器控制卻大大縮短了調(diào)節(jié)時(shí)間,從而提高了系統(tǒng)的特性。