国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Matlab的模糊查詢表生成方法探討

2014-05-16 09:54:46葉伊莎
實驗室研究與探索 2014年5期
關(guān)鍵詞:模糊控制偏差向量

葉伊莎, 任 佳

(浙江理工大學(xué)自動化系,浙江杭州 310018)

基于Matlab的模糊查詢表生成方法探討

葉伊莎, 任 佳

(浙江理工大學(xué)自動化系,浙江杭州 310018)

模糊查詢表是模糊控制器的一種離線對等表格,該表描述了輸入的偏差、偏差變化量與控制的輸出之間一一對應(yīng)的關(guān)系。為便于相關(guān)專業(yè)的本科生深入了解模糊查詢表,進一步學(xué)習(xí)掌握模糊查詢表并進行拓展應(yīng)用,本文對基于Matlab的模糊查詢表三種生成方法進行了探討。本文以簡單的單回路控制系統(tǒng)為例,分別闡述了逐個代入計算法、TOOL測試向量生成法和M文件編譯法這三種模糊查詢表的生成方法。通過探討與仿真,對三者的優(yōu)缺點進行了簡單的總結(jié)。

Matlab;模糊查詢表生成;探討;仿真

0 引言

模糊控制[1-2]是基于模糊推理的智能控制的簡稱,它借助于模糊數(shù)學(xué)模擬人的思維方法,將操作員的經(jīng)驗加以總結(jié),運用語言變量和模糊邏輯理論進行推理和決策,實現(xiàn)對復(fù)雜對象的控制。模糊查詢表是模糊控制器的一種離線對等表格,該表描述了輸入的偏差、偏差變化量與控制的輸出之間一一對應(yīng)的關(guān)系。它通過事先將模糊論域內(nèi)的輸入值遍歷而得到的相應(yīng)輸出值制作成表,從而可以在實際運行時代替實際的模糊控制器,能夠大大節(jié)省運算的時間。利用模糊查詢表可以方便地實現(xiàn)模糊控制在各種控制平臺的應(yīng)用[3],如單片機,可編程邏輯控制器(PLC),集散控制系統(tǒng)(DCS)等,因此,深刻理解模糊查詢表的作用,并能熟練獲取模糊控制器對應(yīng)的模糊查詢表對模糊控制器的實際應(yīng)用和推廣至關(guān)重要。

為便于相關(guān)專業(yè)的本科生在在學(xué)習(xí)模糊控制時能夠更加清晰深入地了解模糊查詢表,進而拓展模糊控制在各種控制平臺中的應(yīng)用,本文對基于Matlab的模糊查詢表生成方法進行詳細的探討與闡述,便于大家在日后應(yīng)用中進行參考。

基于Matlab[4-6]的模糊查詢表的生成方式有三種:逐個代入計算法[1]、TOOL測試向量生成法[7]和 M 文件編譯法[8-9]。本文將就這三種模糊查詢表生成法作詳細介紹。

以簡單的單回路控制系統(tǒng)為例[10-12],其被控對象為2/(5s+1)。設(shè)模糊控制輸入的偏差E和偏差的變化EC的模糊論域為[-3 3],輸出U的模糊論域為[-1 1]。現(xiàn)已利用Simulink搭建并定義運行完成該模糊控制系統(tǒng)仿真圖,如圖1所示。

圖1 單回路模糊控制仿真圖

1 逐個代入計算法

逐個代入計算法顧名思義就是將輸入值逐個代入模塊從而得到對應(yīng)輸出的一種方法。該方法是三個方法中最簡單的一種。只需利用圖1中定義好的模塊(復(fù)制Fuzzy Logic Controller模塊),對應(yīng)連接輸入輸出如圖2所示。

輸入X和Y的定義域均為[-3 3],將X={-3,-2,-1,0,1,2,3}和Y={-3,-2,-1,0,1,2,3}分別取值,代入Constant模塊,設(shè)定仿真終止時間為0.02,運行該Simulink模型,同時記錄Display模塊中的數(shù)值,將得到的值制作成表格,即為模糊查詢表。本次運行生成的表格如表1所示。

圖2 逐個代入計算法圖

表1 逐個代入計算法得到的模糊查詢表

2 TOOL測試向量生成法

TOOL測試向量生成法同樣是利用了圖1中所定義好的模塊(復(fù)制Fuzzy Logic Controller模塊),對應(yīng)的輸入輸出連接如圖3所示,命名為Test。兩個輸入模塊Constant的值可以定義為A=0,B=0。

圖3 TOOL測試向量生成法圖(Test文件)

在Test文件的菜單欄選擇Tools→System Test...之后會跳出 SystemTest界面,命名為 T.test。選中Main Test在菜單欄選擇 Insert→Test Element→Simulink,再在出現(xiàn)界。Open a model選擇 Test.mdl文件作為Simulink model。

在 Test Vectors新建 TestVector1[-3∶1∶3].TestVector2[-3∶1∶3],當然,為了使模糊曲線更加光滑,步長可以縮短。在Test Variables新建的命名為Out。

在如圖4所示界面Define Model Overrides選擇New Mapping→Select Block to add...之后,會跳出Test.mdl文件界面,鼠標左鍵 Constant,分別選擇Simulink Data和System Test Data相應(yīng)的選項。同理新建Constant1。Map Simulink Data to Test Variables選擇 New Mapping→Outport Signal,同樣分別選擇Simulink Data和System Test Data相應(yīng)的選項(設(shè)置后的界面如圖4所示)。

圖4 Properties-sinmulink設(shè)置

選擇Save Results→New Mapping,設(shè)置相應(yīng)選項。如圖5所示。

圖5 Properties-Save Results設(shè)置

設(shè)置完畢后Run,需要等待一定的時間。運行結(jié)束Tools→Test Results Viewer繪制圖像。在如圖6所示界面設(shè)置XAxis和YAxis→Plot。繪制后的的圖像如圖7所示。保存圖像,命名為Plot.mat。

圖6 設(shè)置X Axis和Y Axis

圖7 Plot圖像

返回Matlab主界面,打開Plot.mat。在Workspace中選擇stresults<1*1 struct>→variable→Out就可以看到如圖8所示矩陣。

圖8 Workspace中Out的輸出矩陣

再次利用了圖1中所定義好的模塊(復(fù)制Fuzzy Logic Controller模塊),新建文件對應(yīng)的輸入輸出連接如圖9所示。鼠標左鍵雙擊Lookup Table(2-D)模塊,在出現(xiàn)的界面中輸入如圖10所示數(shù)據(jù),點擊Edit,立刻出現(xiàn)如圖11所示Lookup Tables(2-D)模糊查詢表。

圖9 Lookup Table(2-D)圖

圖10 Lookup Table(2-D)編輯

圖11 Lookup Table(2-D)生成模糊查詢表

3 M文件編譯法

M文件編譯法是相對來說比較深入的一種,它需要對模糊規(guī)則[13-14]、模糊關(guān)系[15]以及模糊輸入輸出有一定的知識儲備。

首先要定義輸入的偏差和輸入的偏差的變化量,分別為A、B,它們分別為13×13的矩陣,矩陣值由圖1中Fuzzy Logic Controller內(nèi)所定義的模糊規(guī)則而定。關(guān)系矩陣根據(jù)事先定義的模糊控制規(guī)則得出。

下述為通過M文件生成模糊查詢表的具體程序與部分解析:

由上述M語言程序運行后所得出的查詢表如表2所示。為便于與逐個代入計算法和Tool工具生成法得到的查詢表相對比,經(jīng)整理,提取后得出如表3所示的簡易查詢表。

表2 M文件編譯法得到的模糊查詢表

表3 整理后M文件編譯法得到的模糊查詢表

4 結(jié)語

上述為基于Matlab的三種生成模糊查詢表的方法:逐個代入計算法、TOOL測試向量生成法和M文件編譯法的簡單探討。其中,逐個代入計算法設(shè)計簡單,但數(shù)值需要一個個手動輸入,且得到的數(shù)值須人工填入預(yù)先設(shè)計的表格,從而得到模糊查詢表,其實現(xiàn)效率低下。TOOL測試向量生成法直接利用Matlab現(xiàn)有的推理系統(tǒng),在Lookup Table(2-D)得到模糊查詢表。但是該操作有一定的軟件版本要求(如本文在Matlab2007版操作),版本過高的Matlab中無法通過Test Results Viewer繪制圖像,導(dǎo)致無法得出相應(yīng)的查詢表。M文件編譯法是從最基本的模糊查詢原理出發(fā),進行語言編譯的一種方法。該方法要求應(yīng)用者具備一定的編程基礎(chǔ)。從三種方法得出的模糊查詢表來對比分析,逐個代入計算法和TOOL測試向量生成法得出的模糊查詢表結(jié)果一致,但與M文件編譯法得出的模糊查詢表有一定的偏差。這是因為逐個代入計算法和TOOL測試向量生成法得到的查詢表都和測試向量的維數(shù)有關(guān),當進一步細分輸入論域的語言值,增加模糊控制規(guī)則,例如從原來的7*7矩陣增加到9*9矩陣后,用逐個代入計算法和TOOL測試向量生成法得出的模糊查詢表便會更加接近于M文件編譯法生成的模糊查詢表。如果輸入語言值繼續(xù)細分、模糊控制規(guī)則數(shù)量繼續(xù)增加,三種方法得出的模糊查詢表之間的誤差將不斷減小直至趨近于零。

[1] 鞏敦衛(wèi),孫曉燕.智能控制技術(shù)簡明教程[M].北京:國防工業(yè)出版社,2010.

[2] 崔 濤,趙 莉.模糊控制理論和應(yīng)用的發(fā)展概況[J].自動化儀表,2002,23(7):1-3.

CUI Tao,ZHAO Li.The Developing Survey of the Theory and Application of Fuzzy Control[J].Automation Instrumentation,2002,23(7):1-3.

[3] 李友善,李 軍.模糊控制理論及其在過程控制中的應(yīng)用[M].北京:國防教育出版社,1993.

[4] 李祖欣.MATLAB在模糊控制系統(tǒng)設(shè)計和仿真的應(yīng)用[J].系統(tǒng)仿真學(xué)報,2003(1):132-143.

LI Zu-xin.Application of MATLAB in the Design and Simulation of Fuzzy Control System[J].Journal of System Simulation,2003(1):132-134.

[5] 劉革輝,單杰峰,鄭楚光.Matlab軟件中的Fuzzy Logic工具箱在模糊控制系統(tǒng)仿真中的應(yīng)用[J].計算機仿真,2000,17(5):69-72.

LIU Ge-jun,SHAN Jie-feng,ZHENG Chu-guang.The Application of Matlab’s Fuzzy Logic Toolbox on Simulation of Fuzzy Control System[J].Computer Simulation,2000,17(5):69-72.

[6] 孫 亮.MATLAB與控制系統(tǒng)仿真[M].北京:北京工業(yè)大學(xué)出版社,2001.

[7] 鯤鵬展翅.如何在MATLAB下把模糊推理系統(tǒng)轉(zhuǎn)化為查詢表(原 創(chuàng) ). http://brhwww. blog. 163. com/blog/static/618178852010625105559476/

[8] 葉高文.模糊控制查詢表的MATLAB實現(xiàn)[J].工業(yè)控制計算機,2010,23(11):64-66.

YE Gao-wen.MATLAB realization of Fuzzy Control Query Table[J].Industrial Control Computer,2010,23(11):64-66.

[9] 劉天龍,寧 利,沈文浩.模糊控制查詢表的快速獲取及在造紙污水過程中的應(yīng)用[J].造紙科學(xué)與技術(shù),2011,30(04):78-82.

LIU Tian-long,Ning Li,SHEN Wen-hao.A Quick Way to Get Fuzzy Control Query Table and Its Application in Papermarking Wastewater Treatment Process[J].Paper Science & Technology,2011,30(04):78-82.

[10] 李 博,龔曉宏.基于MATLAB的模糊控制系統(tǒng)的優(yōu)化設(shè)計與仿真[J].機械工程與自動化,2005,4(02):78-83.

LI Bo,GONG Xiao-hong.Optimization Design and Simulation of Fuzzy ControlSystem Based on MATLAB[J].Mechanical Engineering & Automation,2005,4(02):78-83.

[11] 何致遠.模糊控制技術(shù)在溫度控制實驗中的應(yīng)用[J].實驗室研究與探索,1999(6):50-51.

HE Zhi-yuan.Application ofFuzzy-ControlTechnology in an Experiment of Temperature Control[J].Research and Exploration in Laboratory,1999(6):50-51.

[12] 秦緒平,谷善茂.基于模糊PI控制的通風(fēng)機風(fēng)量控制[J].電氣應(yīng)用,2008,27(16):34-37.

QIN Xu-ping,GU Shan-mao.Fan’s Wind Rate Control Methods Based on Fuzzy-PI Control[J].Electrotechnical Application,2008,27(16):34-37.

[13] 高宏巖,王建輝,孫盛騏.一種建立模糊控制查詢表的簡單方法和程序[J].電腦與信息技術(shù),2003(4):47-49.

GAO Hong-yan,WANG Jian-jun,SUN Sheng-qi.A Simple Method and Program of Building the Fuzzy Control Query[J].Computer and Information Technology,2003(4):47-49.

[14] 羅艷蕾.一種模糊控制系統(tǒng)算法模型及查詢表的設(shè)計[J].現(xiàn)代機械,2003(2):21-23.

LUO Yan-lei.Designing the Model of Calculation and the Figure of Rule for Fuzzy Control System[J].Modern Machinery,2003(2):21-23.

[15] 谷敏強.一類模糊關(guān)系方程的求解問題[J].汕頭大學(xué)學(xué)報,2009,23(1):13-21.

GU Min-qiang.Resolution ofSpecialType ofFuzzy Relation Equations[J].Journal of Shantou University,2009,23(1):13-21.

The Discussion of Creating a Fuzzy Lookup Table Based on the Matlab

YE Yi-sha,REN Jia
(Department of Automation,Zhejiang Sci-Tech University,Hangzhou 310018,China)

A fuzzy lookup table is an off-line equivalent form of a fuzzy controller.This table describes one-to-one relationship between the input deviation,the deviation of variation and the output of the control.In order to help undergraduates to understand the Fuzzy Lookup Table deeply,and further expand its application,three methods for obtaining Fuzzy Lookup Table based on Matlab software are introduced based on Matlab software.Taken Taking a single loop control system as an example,successive substitution calculation method,TOOL test vector generation method and m file compiling method are discussed.By means of discussion and simulation,the advantages and disadvantage of each method disadvantages are also summarized.

Matlab;fuzzy lookup table creation;discussion;simulation

TP 273

A

1006-7167(2014)05-0101-06

2013-07-04

浙江理工大學(xué)《集散控制系統(tǒng)》系列課程

葉伊莎(1991-),女,本科在讀。

任 佳(1977-),女,山西晉中人,博士,副教授。主要研究方向:智能控制,智能優(yōu)化算法及其應(yīng)用。

E-mail:jren@zstu.edu.cn

猜你喜歡
模糊控制偏差向量
向量的分解
聚焦“向量與三角”創(chuàng)新題
如何走出文章立意偏差的誤區(qū)
兩矩形上的全偏差
T-S模糊控制綜述與展望
基于模糊控制的PLC在溫度控制中的應(yīng)用
電子制作(2016年21期)2016-05-17 03:53:01
向量垂直在解析幾何中的應(yīng)用
基于模糊控制的恒壓供水系統(tǒng)的研究
關(guān)于均數(shù)與偏差
向量五種“變身” 玩轉(zhuǎn)圓錐曲線
香港| 泰和县| 乌审旗| 灵山县| 乳山市| 辽阳县| 克什克腾旗| 西丰县| 嘉禾县| 绥棱县| 利辛县| 陇川县| 大同市| 茌平县| 宁明县| 广灵县| 平邑县| 咸丰县| 辽阳市| 元朗区| 昌黎县| 屯留县| 金塔县| 乌恰县| 佛山市| 华安县| 临城县| 花莲市| 巧家县| 石城县| 东乡| 舟山市| 井研县| 杭锦后旗| 弥勒县| 阿拉善盟| 阳东县| 色达县| 德庆县| 桐乡市| 高尔夫|