湯先馳
(上海電器科學(xué)研究所,上海 200063)
在現(xiàn)代工業(yè)控制系統(tǒng)中,PLC因其可靠性高、抗干擾能力強(qiáng)、指令豐富、維護(hù)方便等優(yōu)點(diǎn),在進(jìn)行邏輯控制方面的應(yīng)用十分廣泛。將PLC豐富的指令功能與模糊控制算法相結(jié)合,對(duì)一些復(fù)雜的非線性系統(tǒng)進(jìn)行模糊控制,能達(dá)到較好的控制效果。本文著重介紹了模糊控制器的設(shè)計(jì)步驟,以及不同模糊控制器的應(yīng)用場(chǎng)合。以隧道風(fēng)機(jī)控制系統(tǒng)作為應(yīng)用實(shí)例,通過在PLC上編程來實(shí)現(xiàn)模糊控制算法。一方面利用PLC的穩(wěn)定性和高速計(jì)算能力,不用單獨(dú)使用模糊控制芯片,這樣降低了模糊控制系統(tǒng)的成本;另一方面可以用模糊控制技術(shù)來優(yōu)化風(fēng)機(jī)控制系統(tǒng),使得風(fēng)機(jī)開啟和關(guān)閉更加智能化以此來提高通風(fēng)效率,降低運(yùn)營(yíng)成本。
結(jié)構(gòu)設(shè)計(jì)是模糊控制系統(tǒng)的核心,它的好壞直接影響到模糊控制系統(tǒng)的精度。一般來說模糊控制器的結(jié)構(gòu)由五個(gè)部分組成,分別是模糊化接口、數(shù)據(jù)庫、規(guī)則庫、推理算法和解模糊接口[1],如圖1所示。
圖1 結(jié)構(gòu)組成
模糊控制系統(tǒng)參數(shù)主要包括模糊語言集的選擇、模糊等級(jí)選擇以及隸屬函數(shù)的選擇。模糊控制也可以說是一種語言控制,正是因?yàn)檫@些模糊語言所能包含的信息量更大、更靈活,所以對(duì)一些不能用二義性(是或不是)的詞匯來描述的變量來說,用模糊語言更能夠表達(dá)準(zhǔn)確的意思。通過模糊語言將一個(gè)確定量輸入轉(zhuǎn)換成一個(gè)模糊矢量[2]。隸屬函數(shù)反映了某個(gè)模糊語言子集在其相應(yīng)論域中對(duì)所取值的隸屬程度。針對(duì)不同的系統(tǒng)需選擇不同的隸屬函數(shù),這樣才能正確反映模糊語言子集的隸屬程度關(guān)系。但就大多數(shù)系統(tǒng)而言,三角形和梯形隸屬函數(shù)適用最為廣泛。如圖2 所示,左邊為三角形隸屬函數(shù),右邊為梯形隸屬函數(shù)。
圖2 隸屬函數(shù)圖
有了模糊語言集、模糊量化等級(jí)和隸屬度函數(shù)之后就可以建立模糊規(guī)則,進(jìn)行模糊推理。模糊規(guī)則的建立也被稱為專家經(jīng)驗(yàn)規(guī)則,是通過設(shè)計(jì)者在對(duì)該控制系統(tǒng)進(jìn)行充分了解之后,為了系統(tǒng)滿足想要得控制效果而給出的一系列控制規(guī)則[3]。可以說控制規(guī)則建立的好壞將直接影響到整個(gè)模糊控制系統(tǒng)控制效果的好壞。由于模糊規(guī)則是設(shè)計(jì)者通過自己的經(jīng)驗(yàn)以及主觀判斷進(jìn)行設(shè)計(jì)的,所以在設(shè)計(jì)的時(shí)候難免會(huì)由于自己的某種經(jīng)驗(yàn)習(xí)慣,對(duì)規(guī)則的建立帶來一定的主觀傾向性,從而會(huì)影響整個(gè)規(guī)則的建立。所以在進(jìn)行模糊規(guī)則設(shè)計(jì)是應(yīng)盡量減少人為影響,遵守基本的設(shè)計(jì)原則[4]。模糊規(guī)則通常是由一系列的關(guān)系詞連接而成,例如if-then、else、or、also等,如if E is NB and EC is NB then U is PB。
模糊推理是模糊輸入量根據(jù)一定的推理算法來求解模糊關(guān)系方程從而得到模糊輸出的過程。在模糊推理中尚未建立一致的理論去指導(dǎo)模糊關(guān)系的構(gòu)造。這就意味著存在多種構(gòu)造模糊關(guān)系的推理方法。一般來說常用的模糊推理方法主要有Mamdani、Lason、Takagi-Sugeno。在這里只介紹Mamdani模糊推理算法。
這種模糊推理算法是根據(jù)Zadeh[5]關(guān)于模糊算法在復(fù)雜系統(tǒng)和決策處理應(yīng)用中的思想,采用極小運(yùn)算規(guī)則定義模糊蘊(yùn)含表達(dá)的模糊關(guān)系。例如模糊集合A 和A*是論域?yàn)閁 的模糊子集,模糊集合B和B*是論域?yàn)閂的模糊子集,A→B 看作是從論域U到論域V的一個(gè)模糊關(guān)系R。應(yīng)該存在一種算法使得A*與R 合成推理出B*。按照Mamdani模糊推理法:
其中x,y分別為模糊集合A和B在論域U和V上的元素變量。
按照該模糊關(guān)系可以推理出B*:
其中〇表示為合成算子的符號(hào),以上為了舉例簡(jiǎn)單只是根據(jù)一組規(guī)則來說明Mamdani 模糊推理算法的思想,實(shí)際時(shí)候需把所有規(guī)則的推理結(jié)果在進(jìn)行合成才是最終的模糊關(guān)系。
在應(yīng)用Mamdani 型的模糊推理時(shí),每一條規(guī)則推理后得到的輸出是變量的分布隸屬度函數(shù)或離散的模糊集合,也就是說還是一個(gè)模糊量,需對(duì)每一個(gè)模糊集合的輸出變量進(jìn)行解模糊化處理,以得到精確的輸出。
由于通過模糊推理獲得的控制輸出是模糊語言變量論域上的模糊子集,也就是說還是一個(gè)模糊的量,需通過解模糊方法將模糊量變換成精確量然后再進(jìn)行控制。解模糊方法通常有最大隸屬度法、中心法、加權(quán)平均法[6]。
公路隧道是交通隧道的一種,隨著城市交通負(fù)擔(dān)日益增重,為了減少占地面的,盡量少破壞城市植被,修建公路隧道是解決上訴問題的一種好方法。公路隧道由于其特殊的結(jié)構(gòu),自然風(fēng)和交通風(fēng)對(duì)隧道內(nèi)空氣置換作用相對(duì)較少,隧道內(nèi)粉塵、車輛尾氣、煙霧濃度等將對(duì)行車安全、駕駛員特別是隧道內(nèi)施工維護(hù)人員的人身安全帶來危險(xiǎn)。必須采取適當(dāng)?shù)臋C(jī)械通風(fēng),將隧道內(nèi)的有害氣體及粉塵濃度控制在容許的限度之內(nèi)。目前國(guó)內(nèi)外在隧道通風(fēng)控制系統(tǒng)中采用的主要方法有手動(dòng)控制、時(shí)序控制和實(shí)時(shí)控制[7]。而國(guó)內(nèi)最常用的控制方式是實(shí)時(shí)控制。其控制方法是通過布設(shè)在隧道內(nèi)的CO 檢測(cè)器的CO(一氧化碳)值和煙霧透過率檢測(cè)器的VI(能見度)值,將隧道內(nèi)當(dāng)前的值與控制目標(biāo)相比較,以不超過目標(biāo)值作為原則,經(jīng)過計(jì)算處理后給出控制方案,實(shí)施通風(fēng)控制。但是由于檢測(cè)數(shù)據(jù)的滯后性,以及閥值控制的缺點(diǎn),控制效果并不好。采用PLC對(duì)風(fēng)機(jī)進(jìn)行模糊控制,利用模糊控制具有語詞計(jì)算和處理不確定性、不精確性和模糊信息的能力,改善風(fēng)機(jī)控制效果,使之能夠用最適合的控制方式使隧道通風(fēng)系統(tǒng)達(dá)到良好的效果,既節(jié)約能源又有利于設(shè)備維護(hù)。
隧道風(fēng)機(jī)控制系統(tǒng)如圖3所示。
圖3 隧道風(fēng)機(jī)框圖
根據(jù)影響風(fēng)機(jī)啟停的關(guān)鍵因素,建立兩個(gè)相互獨(dú)立的模糊控制器,分別是一氧化碳模糊控制器和能見度模糊控制器。兩個(gè)控制器均為二維模糊控制器,輸入為一氧化碳和能見度的偏差量e及偏差變化ec,輸出為開啟風(fēng)機(jī)的臺(tái)數(shù)。對(duì)于兩個(gè)控制器輸出不一致時(shí),為保證隧道安全性應(yīng)取兩者輸出的較大者作為輸出。風(fēng)機(jī)模糊控制系統(tǒng)結(jié)構(gòu)如圖4所示。
圖4 風(fēng)機(jī)模糊控制器結(jié)構(gòu)
表1 CO偏差論域變換
表2 CO偏差隸屬度表
表3 模糊控制規(guī)則表
有了模糊化之后的論域,就可以根據(jù)實(shí)際操作經(jīng)驗(yàn),建立模糊化論域的離散值與各語言變量的隸屬程度了,即輸入和輸出語言變量的隸屬度賦值表,現(xiàn)只將CO 偏差的隸屬度表建立如表2,其它變量的隸屬度表[8]也根據(jù)實(shí)際操作經(jīng)驗(yàn)寫出。
最后在根據(jù)實(shí)際控制經(jīng)驗(yàn),可建立如表3 的模糊控制規(guī)則。
Matlab模糊控制工具箱[9]為模糊控制器的設(shè)計(jì)提供了一種非常便捷的途徑,通過它只需要設(shè)定相應(yīng)參數(shù),就可以很快得到所需要的模糊控制器,而且修改起來也非常方便。
對(duì)于本案例選擇Mamdani 型模糊推理算法,選擇重心法作為解模糊的方法,根據(jù)前面已經(jīng)設(shè)計(jì)好的隸屬度函數(shù)值,模糊語言集、模糊等級(jí)可建立如圖5和圖6所示的隸屬度函數(shù)圖。
圖5 CO偏差隸屬度函數(shù)圖
圖6 風(fēng)機(jī)開啟臺(tái)數(shù)隸屬度函數(shù)圖
根據(jù)表3 建立的模糊規(guī)則以及按照前面描述的Mamdani 模糊推理算法,可得模糊控制查詢表,按照四舍五入列表如表4。
表4 模糊控制查詢表
在實(shí)際應(yīng)用中,用來實(shí)現(xiàn)模糊控制的方式一般有硬件實(shí)現(xiàn)和軟件實(shí)現(xiàn)兩種。硬件實(shí)現(xiàn)是利用專用的模糊控制芯片來實(shí)現(xiàn)模糊控制。主要產(chǎn)品有美國(guó)TIL公司的FC110和FCA,日本歐姆龍公司的FP-3000 和FB-30AT 等。采用硬件來實(shí)現(xiàn)模糊控制優(yōu)點(diǎn)是推理速度快,控制精度高,缺點(diǎn)是成本高,使用范圍有限制。另一種方式是用軟件來實(shí)現(xiàn),就是利用編程的方式來實(shí)現(xiàn)模糊控制算法,本案例中就是利用羅克韋爾MicroLogix1400作為硬件平臺(tái)[10],利用軟件編程來實(shí)現(xiàn)模糊控制算法。在用PLC進(jìn)行模糊控制算法實(shí)現(xiàn)的過程中,關(guān)鍵步驟是輸入精確量的模糊化以及模糊控制查詢表的查詢,解模糊化只用將輸出乘以比例因子然后在加上9 即為實(shí)際風(fēng)機(jī)開啟臺(tái)數(shù)。對(duì)于輸入精確量的模糊化程序可根據(jù)表1 的數(shù)據(jù),通過比較指令將輸入精確值與論域離散值進(jìn)行一一比較,就可將精確值變換到模糊論域中。對(duì)于模糊控制查詢表功能的實(shí)現(xiàn)相對(duì)比較復(fù)雜,對(duì)于本例模糊控制查詢表為13×13 的矩陣,按照從上到下,從左到右的順序依次將169個(gè)數(shù)據(jù)放入到N7:0 到N7:168 寄存器中。然后建立查詢關(guān)系式,為了編程方便可先將模糊控制查詢表輸入的論域偏移6,即e和ec的取值論域?yàn)閇0,12],通過觀察可知μ=13ei+ecj,其中i,j=0~12,這樣就建立了輸入與輸出的對(duì)應(yīng)關(guān)系。例如當(dāng)輸入偏差為3,偏差變化為6時(shí),按照查詢關(guān)系式可知輸出為第45 個(gè)寄存器內(nèi)的值,即N7:45,然后在用MOV指令將相應(yīng)的值移動(dòng)到輸出寄存器內(nèi)就完成了模糊控制查詢表的功能。部分程序如圖7、8、9 所示。
圖7 輸入量模糊化部分程序
圖8 模糊控制查詢表部分程序
圖9 解模糊程序
用PLC來實(shí)現(xiàn)隧道風(fēng)機(jī)的模糊控制,一方面利用PLC可靠性高、抗干擾能力強(qiáng)的特點(diǎn),另一方面對(duì)隧道風(fēng)機(jī)進(jìn)行更為智能的控制,有效避免了風(fēng)機(jī)頻繁啟動(dòng),在一定程度上降低了隧道運(yùn)營(yíng)成本,具有很高的推廣價(jià)值。
[1]諸靜.模糊控制原理與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,1995.
[2]丁永生.智能技術(shù)及其應(yīng)用[M].北京:北京科學(xué)出版社,2009.
[3]章衛(wèi)國(guó),楊向忠.模糊控制理論與應(yīng)用[M].西安:西北工業(yè)大學(xué)出版社,1999.
[4]易繼鍇,侯媛彬.智能控制技術(shù)[M].北京:北京工業(yè)大學(xué)出版社,2002.
[5]L.A.Zadeh.Fuzzy Sets [J].Information and control,1965(8):338-353.
[6]李士勇,夏承光.模糊控制和智能控制理論與應(yīng)用[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1991.
[7]趙忠杰.公路隧道機(jī)電工程[M].北京:人民交通出版社,2007.
[8]廉小親.模糊控制技術(shù)[M].北京:中國(guó)電力出版社,2003.
[9]徐昕.MatLab工具箱應(yīng)用指南:控制工程篇[M].北京:電子工業(yè)出版社,2000.
[10]MicroLogix 1400可編程控制器[Z].2008.