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