摘要:詳細闡述了模糊邏輯控制系統(tǒng)中隸屬度函數(shù)與模糊規(guī)則的建立以及MATLAB模糊控制器的建模與仿真方法。另外,通過洗衣機控制實例介紹了MATLAB模糊控制器的實現(xiàn)方法與進行可視化操作和模糊控制器設(shè)計的流程。
關(guān)鍵詞:MATLAB;模糊控制;仿真
0? ? 引言
MATLAB軟件是一款廣泛應(yīng)用于工程設(shè)計、自動化控制、信號與圖像處理、金融財務(wù)分析建模等領(lǐng)域的數(shù)學計算建模軟件,使用更加貼近目前電腦用戶熟悉的Windows的標準界面與視窗環(huán)境,來實現(xiàn)函數(shù)運算數(shù)值分析、數(shù)據(jù)信號的界面可視化、非線性動態(tài)系統(tǒng)的建模仿真及其他編程軟件的接口等專業(yè)功能,為眾多的專業(yè)領(lǐng)域提供強大的工具箱與模塊集。
1? ? 模糊邏輯控制系統(tǒng)結(jié)構(gòu)
模糊控制系統(tǒng)是一種在模糊或非模糊推理規(guī)則中處理模糊信息的工具,其關(guān)鍵部分是“行為規(guī)則集”及“模糊推理算法”[1]。性能評價指標是用來衡量控制系統(tǒng)算法的好壞,因此,選擇一個客觀合理的系統(tǒng)性能評價指標對于判斷控制算法的效果比較重要。本文將利用洗衣機的模糊控制設(shè)計,進行模糊邏輯控制系統(tǒng)的整體研究。如圖1所示,在影響洗衣機性能的系統(tǒng)指標中,選取兩個基本參數(shù)“污泥含量”和“油脂含量”作為二維模糊控制器的輸入?yún)?shù),洗滌時間為輸出參數(shù)。
2? ? 模糊控制器設(shè)計
在MATLAB模糊邏輯工具箱中包含trapmf型、gaussmf型、trimf型等11種隸屬度函數(shù)類型,在工具箱給出的函數(shù)類型之外也可以自行設(shè)計能夠滿足用戶不同需求的函數(shù)類型。
2.1? ? 隸屬度函數(shù)建立
本文根據(jù)建立的洗衣機系統(tǒng)結(jié)構(gòu)定義相應(yīng)的控制器輸入/輸出參數(shù)模糊集和隸屬度函數(shù)。隸屬度函數(shù)的取值范圍必須滿足[0,1]的區(qū)間,函數(shù)方式可分為數(shù)值描述方式(論域為離散型)和函數(shù)描述方式(論域為連續(xù)型)。
(1)根據(jù)洗衣機洗滌衣物的輸入變量污泥x[0,100],將污泥模糊集細分為少、中、多三種類型,分別用SD、MD、LD表示。
U污泥=USD(x)=(50-x)/50? ? ? ?0≤x≤50UMD(x)=x/50? ? ? ? ? ? ? ? ?0≤x≤50UMD(x)=(100-x)/50? ? 50 (2)根據(jù)洗衣機洗滌衣物的輸入變量油脂y[0,100],將油脂模糊集細分為無、中、多三種類型,分別用NG、MG、LG表示。 U油脂=UNG(y)=(50-y)/50? ? ? ?0≤y≤50UMG(y)=y/50? ? ? ? ? ? ? ? ?0≤y≤50UMG(y)=(100-y)/50? ? 50 (3)根據(jù)洗衣機洗滌不同衣服所使用的輸出變量洗滌時間z[0,60],將變量z細分為時間很短、短、中、長、很長五種類型,分別用VS、S、M、L、VL表示。 U洗滌時間=UVS(z)=(10-z)/10? ? ?0≤z≤10US(z)=z/10? ? ? ? ? ? ? ? ?0≤z≤10US(z)=(25-z)/15? ? ? 10 2.2? ? 模糊控制規(guī)則建立 在MATLAB模糊邏輯工具箱中,模糊控制規(guī)則用if-then的形式來表示,比如為“if x is A then y is B”,這里A和B是模糊集合分別定義在某一范圍內(nèi)的語言值。 洗衣機洗滌衣服所使用的時間長短可以根據(jù)人們的生活常識與實際經(jīng)驗得出基本規(guī)律,我們可以總結(jié)出洗滌不同衣物時應(yīng)滿足的要求:污泥和油脂含量越多,洗滌時間越長;污泥和油脂含量適中,洗滌時間適中;污泥和油脂含量越少,洗滌時間越短[2]。根據(jù)這個規(guī)律,建立如表1所示模糊集的模糊控制規(guī)則。 2.3? ? 模糊控制器仿真 我們根據(jù)洗衣機的控制規(guī)則,在MATLAB中建立一個2Input-1Output類型的fuzzy模糊控制結(jié)構(gòu),其輸入、輸出變量分別為污泥x、油脂y、洗滌時間z。模糊控制器的輸出量洗滌時間z是根據(jù)我們設(shè)定的模糊控制規(guī)則得出的模糊集合,利用對洗滌時間z的反模糊化的重心法求出一個z變量的固定數(shù)值。 輸入/輸出采用trimf三角形隸屬度函數(shù)模糊化及推論規(guī)則輸入至MATLAB,并使用可視化仿真工具(Simulink)建立模糊控制仿真模型,根據(jù)不同情況生成仿真結(jié)果。以污泥和油脂為(50,50)為例,洗衣機的洗滌時間仿真結(jié)果輸出為25.2,我們也可以輸入不同的污泥與油脂含量進行驗證。 3? ? 結(jié)語 本文在MATLAB函數(shù)仿真中,針對影響洗衣機洗滌時間的兩個模糊輸入量污泥和油脂,選用模糊描述和模糊規(guī)則推理的方法建立了洗滌時間的模糊控制系統(tǒng),仿真求出的洗滌時間z數(shù)值基本吻合了人們的日常經(jīng)驗和習慣。這種模糊控制算法與傳統(tǒng)控制方法比較更具智能化和節(jié)能性的優(yōu)勢,表明模糊控制能夠使家用電器更加高效與節(jié)能。 [參考文獻] [1] 章衛(wèi)國,楊向忠.模糊控制理論與應(yīng)用[M].西安:西北工業(yè)大學出版社,2009. [2] 王學智.模糊控制在全自動洗衣機中的應(yīng)用[J].科技廣場,2017(2):68-70. 收稿日期:2020-01-09 作者簡介:李根(1990—),男,山東德州人,碩士,研究方向:電氣測量與控制。