資源描述:
《模糊邏輯實(shí)驗(yàn)手冊》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、實(shí)驗(yàn)指導(dǎo)書利用MATLAB模糊邏輯工具箱設(shè)計(jì)液位模糊控制器一、液位系統(tǒng)的模糊控制器設(shè)計(jì)為分析簡便,假設(shè)閥F2的開度不變,只通過閥F1的開度來調(diào)節(jié)液位的高低(即閥F1左右調(diào)節(jié)分別可以進(jìn)水出水)。1、選擇控制器的輸入、輸出為了調(diào)節(jié)液位的高度,將液位的偏差e及其偏差率de作為輸入量,將流入閥門的開度u作為輸出控制量,并使用模糊語言來描述,如“正大”,“負(fù)大”等。2、變量的預(yù)處理若設(shè)液位偏差的論域范圍為[-1,1],液位偏差率的論域范圍為[-0.1,0.1],如果實(shí)際參量不在相應(yīng)的范圍取值之內(nèi),則可以采取簡單的尺度
2、變換,將參量轉(zhuǎn)到論域范圍中來。同樣,設(shè)控制量的論域范圍為[-1,1],則實(shí)際的控制量將由此控制論域的范圍進(jìn)行變換輸出。3、模糊控制器設(shè)計(jì)在液位偏差的論域[-1,1]上,定義三個(gè)模糊子集“負(fù)大NL”、“零O”和“正大PL”。若偏差負(fù)大,則表明水位較高;若偏差正大,則表明水位較低;若偏差為零,則達(dá)到期望設(shè)定水位值,同樣,在液位偏差率論域[-0.1,0.1]上,定義三個(gè)模糊子集“負(fù)大NL”,“零O”和“正大PL”。若偏差率負(fù)大,表明液位有向低液位方向變化的趨勢;若偏差率正大,則表明液位有向高液位方向變化的趨勢;若
3、偏差率為零,則表明液位的變化趨勢不變。對每一個(gè)模糊子集NL,O,PL定義隸屬函數(shù),這里選用正態(tài)分布函數(shù)(Gauss)。對于流入閥門的控制變量,這里定義5個(gè)模糊子集,它們分別為負(fù)大NL,負(fù)中NM,零O,正中PM,正大PL,其隸屬函數(shù)分別選三角形函數(shù)(trimf)。在確定了輸入/輸出變量定義相應(yīng)的模糊子集之后,下一步需要建立模糊規(guī)則庫,根據(jù)人們通常的操作經(jīng)驗(yàn),可以建立如下規(guī)則:規(guī)則1:如果液位偏差為零(e=O),則閥門開度為零(u=O)規(guī)則2:如果液位偏差為正大(e=PL),則閥門開度為正大(u=PL)規(guī)則3:
4、如果液位偏差為負(fù)大(e=NL),則閥門開度為負(fù)大(u=NL)規(guī)則4:如果液位偏差為零(e=O),且偏差率正大(de=PL),則閥門開度為負(fù)中(u=NM)規(guī)則5:如果液位偏差為零(e=O),且偏差率負(fù)大(de=NL),則閥門為正中(u=PM)二、利用Matlab模糊邏輯工具箱設(shè)計(jì)模糊控制器1。模糊推理系統(tǒng)編輯器模糊推理系統(tǒng)編輯器用于設(shè)計(jì)和顯示模糊推理系統(tǒng)的一些基本信息,如推理系統(tǒng)的名稱,輸入、輸出變量的個(gè)數(shù)與名稱,模糊推理系統(tǒng)的類型、解模糊方法等。其中模糊推理系統(tǒng)可以采用Mandani或Sugeuo兩種類型,
5、解模糊方法有最大隸屬度法、重心法、加權(quán)平均等。打開模糊推理系統(tǒng)編輯器,在MATLAB的命令窗(commandwindow)內(nèi)鍵入:fuzzy命令,彈出模糊推理系統(tǒng)編輯器界面,如下圖所示。模糊推理系統(tǒng)默認(rèn)and運(yùn)算為min,or運(yùn)算為max,implication(蘊(yùn)含)運(yùn)算為min,aggregation(多規(guī)則的并)運(yùn)算為max,defuzzification(解模糊)運(yùn)算為centroid(面積重心法)。通過下拉菜單可以選擇其它方法。一般采用默認(rèn)即可。因?yàn)槲覀冇玫氖莾蓚€(gè)輸入,所以在Edit菜單中,選Ad
6、dvariable…->input,加入新的輸入input,如下圖所示。選擇input(選中為紅框),在界面右邊文字輸入處鍵入相應(yīng)的輸入名稱,例如,液位偏差輸入用e,液位偏差率輸入用de。2.隸屬度函數(shù)編輯器(Mfedit)該編輯器提供一個(gè)友好的人機(jī)圖形交互環(huán)境,用來設(shè)計(jì)和修改模糊推理系中各語言變量對應(yīng)的隸屬度函數(shù)的相關(guān)參數(shù),如隸屬度函數(shù)的形狀、范圍、論域大小等,系統(tǒng)提供的隸屬度函數(shù)有三角、梯形、高斯形、鐘形等,也可用戶自行定義。雙擊所選input,彈出一新界面,在左下Range處和DisplayRange
7、處,填入取值范圍,例如[-1,1]。在右邊文字文字輸入Name處,填寫隸屬函數(shù)的名稱,例如NL。在Type處選擇Gaussmf(意為:高斯函數(shù)隸屬函數(shù)曲線,Gaussmemberfunction),當(dāng)然也可選其它形狀。在Params(參數(shù))處,選擇高斯函數(shù)的兩個(gè)參數(shù)(均值和方差),這些值由設(shè)計(jì)者確定。輸入e的模糊子集的隸屬函數(shù)的確定見下圖。輸入de的模糊子集的隸屬函數(shù)的確定見下圖。用類似的方法設(shè)置輸出output的參數(shù)。這里,在Type處選擇trimf(意為:三角形隸屬函數(shù)曲線,trianglemember
8、function),當(dāng)然也可選其它形狀。在Params(參數(shù))處,選擇三角形涵蓋的區(qū)間,填寫三個(gè)值,分別為三角形底邊的左端點(diǎn)、中點(diǎn)和右端點(diǎn)在橫坐標(biāo)上的值。這些值由設(shè)計(jì)者確定注意:我們共有5個(gè)規(guī)則,所以相應(yīng)地有5個(gè)輸出隸屬函數(shù)。默認(rèn)3個(gè)隸屬函數(shù),剩下2個(gè)由設(shè)計(jì)者加入。點(diǎn)擊Edit菜單,選AddCustomMS…->繼續(xù)填入相應(yīng)參數(shù)即可。見下圖3、用命令行函數(shù)實(shí)現(xiàn)模糊邏輯系統(tǒng)通過隸屬度函數(shù)編輯器來設(shè)計(jì)和修改“IF..