基于matlab的洗衣机模糊控制器的设计及仿真
智能控制实验-模糊控制
实验一 洗衣机的模糊控制仿真一、实验目的本实验要求在学生掌握模糊控制器基本工作原理和设计方法基础上,熟悉MALAB 中的模糊控制工具箱,能针对实际问题设计模糊控制器,建立模糊控制系统,训练学生综合运用计算机来解决一些实际问题的能力。
二、实验设备计算机一台、MATLAB 软件三、实验要求设计一个模糊控制器,根据衣物的泥污和油污程度,输出衣物的洗涤时间,通过改变控制参数的大小,观察模糊控制的性能。
四、实验步骤1.确定模糊控制器的结构选用两输入单输出模糊控制器,控制器的输入为衣物的泥污和油污,输出为洗涤时间。
2. 定义输入、输出模糊集 将泥污分为三个模糊集:泥污少SD 、泥污中MD 、泥污大LD ;油污分为三个模糊集:油污少SG 、油污中MG 、油污大LG ;将洗涤时间分为五个模糊集:很短VS 、短S 、中等M 、长L 、很长VL 。
3. 定义隶属度函数选用三角形隶属度函数实现泥污、油污和洗涤时间的模糊化:(50)/50050/50050(100)/505010050100(50)/50x x x x x x x x μμμμ=-⎧≤≤⎪≤≤⎧⎪==⎨⎨-<≤⎩⎪⎪<≤=-⎩SD MD 泥污LD (50)/50050/50050(100)/505010050100(50)/50x x x x x x x x μμμμ=-⎧≤≤⎪≤≤⎧⎪==⎨⎨-<≤⎩⎪⎪<≤=-⎩SG MG 油污LG(50)/50010/50010(100)/501025/501025(100)/5025402540/504060(100)/504060(50)/50x z x z x z x z x z z x z x z x μμμμμμ=-⎧≤≤⎪⎧≤≤⎪=⎨⎪-<≤⎩⎪≤≤⎧⎪==⎨⎨-<≤⎩⎪⎪≤≤⎧⎪=⎨<≤-⎪⎩⎪≤≤=-⎩SG MG MG 洗涤时间MG LG实验结果:实验分析:6.模糊推理因模糊控制规则表对称,所以上图为input1 和input2分别为50时input2和input1与洗涤时间的关系。
基于MATLAB的洗衣机模糊控制设计
基于MATLAB的洗衣机模糊控制设计MATLAB是一种功能强大的数学软件,可以用于模糊控制设计。
在本文中,我们将介绍如何使用MATLAB来设计一个基于模糊控制的洗衣机控制系统。
首先,我们需要定义洗衣机模糊控制系统的输入和输出变量。
在一个简单的洗衣机系统中,输入变量可以是衣物的脏度和水位,而输出变量可以是洗衣机的清洗时间和水温。
接下来,我们需要建立一个模糊控制器模型。
模糊控制器是一个基于模糊逻辑的控制器,能够处理模糊输入和输出变量。
在MATLAB中,我们可以使用Fuzzy Logic Toolbox来建立一个模糊控制器模型。
我们首先需要定义模糊输入变量的隶属函数。
在这个例子中,我们可以定义脏度变量的隶属函数为"低","中"和"高",水位变量的隶属函数为"低","中"和"高"。
然后,我们需要定义模糊输出变量的隶属函数。
在这个例子中,我们可以定义清洗时间变量的隶属函数为"短","适中"和"长",水温变量的隶属函数为"低","中"和"高"。
接下来,我们需要定义输入和输出变量之间的模糊规则。
在这个例子中,我们可以定义以下规则:规则1:如果脏度是低和水位是低,那么清洗时间是短和水温是低。
规则2:如果脏度是低和水位是中,那么清洗时间是适中和水温是中。
规则3:如果脏度是低和水位是高,那么清洗时间是长和水温是中。
规则4:如果脏度是中和水位是低,那么清洗时间是适中和水温是中。
规则5:如果脏度是中和水位是中,那么清洗时间是适中和水温是中。
规则6:如果脏度是中和水位是高,那么清洗时间是长和水温是高。
规则7:如果脏度是高和水位是低,那么清洗时间是长和水温是中。
规则8:如果脏度是高和水位是中,那么清洗时间是长和水温是高。
基于MATLAB的洗衣机模糊控制设计毕业设计
毕业设计基于MATLAB的洗衣机模糊控制设计摘要模糊控制洗衣机不仅实现了洗衣机的全面自动化,也提高了洗衣的质量,具有很强的实用性和较好的发展前景。
本设计的主要目的是设计一个比较合理的洗衣机模糊控制器,这种采用模糊控制的洗衣机能够通过洗衣桶内水的脏污程度和污渍性质(油污或者泥污)来自动预选水位和洗涤时间,以达到最佳的洗涤效果。
本文主要研究了基于MATLAB的洗衣机模糊控制。
首先介绍了模糊控制的基本原理,明确本设计中所要控制的变量,即水位和洗涤时间。
其次,定义了输入、输出模糊集,结合实际情况定义了隶属函数,然后建立模糊控制规则,给出模糊控制表,进行了模糊推理。
最后采用Simulink对该系统进行仿真,通过仿真曲线可以看出,文中采用的模糊控制方法是正确而有效的。
关键词:模糊控制;模糊集;隶属函数;控制规则;模糊推理AbstractFuzzy control of washing machine does not only achieve a fully automated washing machine, but also improve the quality of laundry; it has a strong practicality and a good development prospect.The main purpose of this design is to design a more reasonable washing machine fuzzy controller, fuzzy control of washing machine can automatically detect the dirty level of laundry bucket and the nature of stain (oil or sediment); it also can automatically pre-selected water level and washing time to achieve the best water quality.This paper mainly studies what based on the MATLAB fuzzy control of washing machines. First, it introduces the basic principles of fuzzy control, clearly the variables of this design to control, those are water level and washing time; Second, define the input and output fuzzy sets, and define the membership function combined the actual conditions, and then create the fuzzy control rules, give the fuzzy control table, then use these to the fuzzy reasoning. Finally, Simulink simulates the system; the simulation curves show that the text used in fuzzy control method is correct and effective.Key words:fuzzy control; fuzzy sets; the membership function; control rules; the fuzzy reasoning目录第1章前言 (1)1.1 选题的目的及意义 (1)1.2 国内外发展情况 (1)1.3 MATLAB简介 (2)1.4 模糊控制简介 (4)1.5 论文的主要内容 (4)第2章模糊控制器原理及设计 (6)2.1 模糊控制原理 (6)2.2 模糊控制系统的分类 (17)2.3 模糊控制器的设计 (18)第3章洗衣机的模糊控制 (21)3.1 洗衣机的时间控制 (21)3.2 洗衣机的水位控制 (28)3.3 本章小结 (31)结论 (32)参考文献 (33)致谢 (34)附录1 (35)附录2 (36)附录3 (37)附录4 (38)附录5 (40)第1章前言1.1 选题的目的及意义随着现代社会生活节奏的不断加快和人们生活水平的不断提高,人们对各种方便、快捷的家用电器需求量越来越大,为了提高人们的生活效率,全自动洗衣机应运而生。
基于MATLAB的模糊PID控制器设计与仿真研究
35
万方数据
机 车 电 传 动 2002年
2002 年第 5期 2002 年9 月10 日
机车电传动 ELECTRIC DRIVE FOR LOCOMOTIVES
基于M A T L A B 的模糊P I D 控制器
研 究
设计与仿真研究
开
发
常满波 胡鹏飞
西南交通大学 电气工程学院 四川 成都 610031
摘 要 针对在复杂系统中实现自组织参数的 P I D 控制问题 介绍了一种基于模糊控制原 理的 P I D 参数自组织控制器的设计方案 同时利用 M A T L A B 中的 S I M U L I N K 和 F U Z Z Y 工具箱 进行了仿真研究 仿真结果表明 参数自组织模糊控制系统比参数固定的系统的控制效果好
关键词 P I D 控制器 M A T L A B 模糊控制 仿真 中图分类号 TP391.9 文献标识码 A 文章编号 1000-128X(2002)05-0034-03
5 ,2002 Sep. 10,2002
作者简介 常满波 1976- 男 西南交通大学电气工 程学院硕士研究生 主要 从事计算机应用技术的研 究
图8 G1(s)仿真结果
图9 G2(s)仿真结果
过程 G1(s)
G2(s)
表2 仿真结果分析
常规PID控制
Kp=2.81 Ki=1.64 Kd=0.41
YOS=18.7% TS=4.38 s
Kp=0.95 Ki=1.03 Kd=0.26
YOS=33.2% TS=7.33 s
设被控对象的数学模型为
图 4 Kp K i D d 的隶属函数
根据以上分析和语言变量的设定 可以总结出 Kp K i 和 K d 的自调整控制规则 见表 1
基于matlab的模糊控制器的设计与仿真
基于MATLAB的模糊控制器的设计与仿真摘要:本文对模糊控制器进行了主要介绍。
提出了一种模糊控制器的设计与仿真的实现方法,该方法利用MA TLB模糊控制工具箱中模糊控制器的控制规则和隶属度函数,建立模型,并进行模糊控制器设计与仿真。
关键词:模糊控制,隶属度函数,仿真,MA TLAB1 引言模糊控制是一种特别适用于模拟专家对数学模型未知的较复杂系统的控制,是一种对模型要求不高但又有良好控制效果的控制新策略。
与经典控制和现代控制相比,模糊控制器的主要优点是它不需要建立精确的数学模型。
因此,对一些无法建立数学模型或难以建立精确数学模型的被控对象,采用模糊控制方法,往往能获得较满意的控制效果。
模糊控制器的设计比一般的经典控制器如PID控制器要复杂,但如果借助MATLAB则系统动态特性良好并有较高的稳态控制精度,可提高模糊控制器的设计效率。
本文在MATLAB环境下针对某个控制环节对模糊控制系统进行了设计与仿真。
2 模糊控制器简介模糊控制器是一种以模糊集合论,模糊语言变量以及模糊推理为数学基础的新型计算机控制方法。
显然,模糊控制的基础是模糊数学,模糊控制的实现手段是计算机。
本章着重介绍模糊控制的基本思想,模糊控制的基本原理,模糊控制器的基本设计原理和模糊控制系统的性能分析。
随着科学技术的飞速发展,在那些复杂的,多因素影响的严重非线性、不确定性、多变性的大系统中,传统的控制理论和控制方法越来越显示出局限性。
长期以来,人们期望以人类思维的控制方案为基础,创造出一种能反映人类经验的控制过程知识,并可以达到控制目的,能够利用某种形式表现出来。
而且这种形式既能够取代那种精密、反复、有错误倾向的模型建造过程,又能避免精密的估计模型方程中各种方程的过程。
同时还很容易被实现的,简单而灵活的控制方式。
于是模糊控制理论极其技术应运而生。
3 模糊控制的特点模糊控制是以模仿人类人工控制特点而提出的,虽然带有一定的模糊性和主观性,但往往是简单易行,而且是行之有效的。
基于matlab的洗衣机模糊控制器的设计及仿真
基于matlab 的洗衣机模糊控制器的设计及仿真以洗衣机洗涤时间的模糊控制系统设计为例,其控制原理是根据衣物上污泥和油脂的程度,调节洗涤时间,该控制是一个开环的模糊决策过程,模糊控制按以下步骤进行:1. 确定模糊控制器的结构选用两输入单输出的模糊控制器。
控制器的输入为衣物的污泥和油脂,输出 为洗涤时间。
2. 定义输入、输出的模糊集将污泥分为3个模糊集:SD (污泥少),MD (污泥中),LD (污泥多),取 值为[0,100];将油脂分为3个模糊集:NG (油脂少),MG (油脂中),LG (油脂多),取值为[0,100];将洗涤时间分为5个模糊集:VS (很短),S (短),M (中等),L (长),VL (很长),取值为[0,60]。
3. 定义输入、输出隶属函数选用如下三角形隶属函数可实现污泥的模糊化。
采用Matlab 进行仿真,污泥隶属函数仿真结果如图1所示。
选用如下三角形隶属函数实现油脂的模糊化,如图2所示。
⎪⎪⎩⎪⎪⎨⎧≤<-=⎩⎨⎧≤<-≤≤=≤≤-==1005050/)50()(1005050/)100(50050/)(50050/)50()(x x x x x x x x x x x LDMD SD μμμμ污泥⎪⎪⎩⎪⎪⎨⎧≤≤-=⎩⎨⎧≤<-≤≤=≤≤-==1005050/)50()(1005050/)100(50050/)(50050/)50()(y y y y y y y y y y y LGMG NG μμμμ油脂图1污泥隶属函数图2油脂隶属函数选用如下三角形隶属函数实现洗涤时间的模糊化,如图3所示。
图3 洗涤时间隶属函数4. 建立模糊控制规则根据人的操作经验设计模糊规则,模糊规则设计的标准为:“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”。
根据前面定义的隶属度函数并且结合以往专家们所取得的经验,定义该模糊控制系统的模糊控制规则,如表1示。
基于Matlab的洗衣机模糊控制 - 副本
基于MATLAB的洗衣机模型模糊设计控制一、问题描述随着现代社会生活节奏的不断加快和人们生活水平的不断提高,人们对各种方便、快捷的家用电器需求量越来越大,为了提高人们的生活效率,全自动洗衣机应运而生。
洗衣机的技术发展日新月异,产品类型众多,但是从总体来看,人们对洗衣机的基本要求应该是:省时、省电、省水、磨损率小、操作方便、功能完善等。
模糊控制洗衣机不仅实现了洗衣机的全面自动化,也提高了洗衣的质量,具有很强的实用性和较好的发展前景。
本设计就是围绕着智能洗衣机进行研究。
本课题的主要目的就是设计一个比较合理的洗衣机模糊控制器,这种采用模糊控制的洗衣机能够自动检测洗衣桶内水的脏污程度和污渍性质(油污或者泥污);能自动预选洗涤时间,并适时调整这些运行参数,以达到最佳的洗涤效果。
二、解决方案本课题的主要是通过模糊控制来对洗衣机进行控制,通过MATLAB对其仿真。
课题的主要目的是设计一个比较合理的洗衣机模糊控制器,这种采用模糊控制的洗衣机能够自动检测洗衣桶内水的脏污程度和污渍性质(油污或者泥污);能自动预选水位和洗涤时间,并能够进行整个洗涤过程中实施监控,并适时调整这些运行参数,以达到最佳的洗涤效果。
模糊控制器的组成框图如图1所示图1三、实现步骤本设计选用两输入单输出模糊控制器。
控制器的输入为衣物的污泥和油脂,输出为洗涤时间。
将污泥分为3个模糊集:SD(污泥少),MD (污泥中),LD (污泥多);将油脂分为3个模糊集:NG (油脂少),MG (油脂中),LG (油脂多);将输出的洗涤时间分为5个模糊集:VS (很短),S (短),M (中等),L (长),VL (很长)。
1、定义隶属函数污泥含量选用如下隶属函数:()()()()()()⎪⎪⎩⎪⎪⎨⎧-=⎩⎨⎧-=-==50/5050/10050/50/50x x x x x x x μLDMD SD μμμ污泥1005010050500500≤<≤<≤≤≤≤x x x x采用三角隶属函数可实现污泥的模糊化采用Matlab 仿真,如图2所示。
洗衣机的神经网络模糊控制器的设计研究实验使用说明
mbhsyc.m 目标样本和样本的差值比较仿真
实验使用说明
实验——洗衣机的神经网络模糊控制器的设计研究,具体实验环境描技术Ghost XP
版本 SP3简体中文版
软件环境
实验所应用的软件是MATLAB R2007a。MATLAB是美国Mathworks公司1982年推出的数学软件,它具有强大的数值计算能力和优秀的数据可视化能力。MATLAB软件针对各种学科相继推出了功能各异的工具箱,本实验主要应用它开发的神经网络工具箱。MATLAB中的神经网络工具箱编写完备、简单易用,因此是神经网络领域内人员的重要工具。实验中的软件版本号为MATLAB R2007a。
程序编写及运行
编写:
实验中的程序都在M文件中编写。单击MATLAB R2007a 中的File―New―M-File 即可进入文本编辑窗口,输入实验中的程序。输完程序后,单击保存按钮,在对话框中输入文件名,文件名开头必须是字母。把编写好的M文件放入到MATLAB安装文件夹下的work文档中。
运行:
打开MATLAB软件,单击File—Open—文件名。打开该文件编辑窗口,再单击Debug—Run即可运行该文件。即可清晰地看到对应网络训练的过程以及函数逼近曲线和误差曲线图。
文件功能说明:
syyb.m 实验样本的仿真
mbyb.m 目标样本的仿真
洗衣机模糊控制建模
智能控制课程作业模糊控制理论实验报告题目洗衣机系统模糊控制建模与仿真班级姓名学号2014年3月13日一.实验目的通过设计洗衣机洗涤时间的模糊控制系统,理解模糊控制的基本原理。
掌握模糊控制系统MATLAB建模与仿真的方法。
二.实验原理洗衣机洗涤时间的模糊控制是一个开环模糊决策过程,其基本原理框图如图1-1所示。
它的核心部分是模糊控制器,模糊控制器的控制律由计算机程序来实现。
图1-1 系统原理框图系统选用两输入单输出的模糊控制器。
控制器的输入为衣物的污泥量x和油脂量y,输出为洗涤时间z。
将污泥分为3个模糊集:SD(污泥少),MD(污泥中),LD(污泥多);将油脂分为3个模糊集:NG(油脂少),MG(油脂中),LG(油脂多);将洗涤时间分为5个模糊集:VS(很短),S(短),M(中等),L(长),VL很长。
首先,定义输入x,y变量,输出z变量的隶属函数。
根据“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”的规律建立洗衣机模糊规则表。
然后,根据模糊规则进行模糊推理并得到洗涤时间的模糊集合。
最终,利用重心法对模糊系统反模糊化,将洗涤时间的推理结果转化成精确值z输出。
三.实验内容利用MATLAB软件实现上述洗衣机系统模糊控制的建模与仿真。
1.建立x,y,z的隶属函数洗衣机系统变量x,y,z的隶属函数分段表达式,如式1-1所示。
()()()()()()()()()()()()()()()()SD MD LD NG MG LGVS 50/50050/50050100/505010050/505010050/50050/5005011100/505010050/505010010/10010Sx x x x x x x x x x x y y y y y y y y y y y z z z z μμμμμμμμμμμ=-≤≤⎧⎪≤≤⎧⎪⎪==⎨⎨-<≤⎪⎩⎪⎪=-<≤⎩=-≤≤⎧⎪≤≤⎧⎪⎪==-⎨⎨-<≤⎪⎩⎪⎪=-<≤⎩=-≤≤=污泥油脂洗涤时间()()()()()()()()()VL /1001025/15102510/15102540/15254025/15254060/20406040/204060M L z z z z z z z z z z z z z z z z z μμμ⎧⎪≤≤⎪⎧⎪=⎨⎪-<≤⎪⎩⎪⎪-≤≤⎧⎪⎪=⎨⎨-<≤⎪⎪⎩⎪-≤≤⎧⎪⎪=⎨⎪-<≤⎪⎩⎪⎪=-≤≤⎩在MATLAB 中,定义本系统为一个Mamdani (普通)型模糊控制系统,命名为a 。
基于MATLAB的洗衣机模糊控制设计
基于MATLAB的洗衣机模糊控制设计摘要:模糊洗衣机是一种智能型的洗衣机,它和传统的洗衣机相比,是一种全新的家用电器。
传统的全自动化洗衣机有两种,一种是机械控制式,一种是单片机控制式。
无论采用什么方式,它们都需要进行人为的洗涤程序选择,衣质和衣量选择,然后才能投入工作。
在本质上讲,这种洗衣机还称不上是全自动的,最多只能称为半自动的。
用单片机控制的模糊洗衣机和传统的洗衣机有很大的区别,它能自动化识别衣质、衣量、自动识别肮脏程度、自动化决定水量、自动投入恰当的洗涤剂,从而全部自动地完成整个洗染过程。
由于洗涤程序是通过模糊推理而决定的,有着极高的洗涤效能,从而不但大大提高洗衣机的全自动化程度,也大大提高了洗衣的质量。
用单片机控制的模糊洗衣机可以说是真正的全自动洗衣机。
在整个控制过程中,单片机和模糊控制软件起了决定作用。
关键词:洗衣机、智能型、模糊控制、自动化1 课题背景及意义洗衣机自问世以来,经过一个多世纪的发展,现正呈现出全自动、多功能、大容量、高智能、省时节能的发展趋势。
近年来,电子技术、控制技术、信息技术的不断完善、成熟,为上述发展趋势提供了坚强的技术保障。
L·A·Zadeh教授最早提出了模糊集合理论,由此产生了模糊控制技术,其突出的优点是:不需要对被控对象建立精确的数学模型。
对于复杂的、非线性的、大滞后的、时变的系统来说,建立数学模型是非常困难的。
全自动滚筒洗衣干衣机的自动化、智能化控制正是一种难以建立精确数学模型的控制问题,采用模糊控制技术,可以很方便的控制洗衣干衣过程。
模糊控制全自动滚筒洗衣干衣机是通过模糊推理找出最佳洗涤烘干方案,以优化洗涤烘干时间、洗净程度、烘干效果,最终达到提高效率,简化操作,节水节电省时的效果。
模糊控制全自动滚筒洗衣干衣机属于创新项目,填补国内空白,达到国际先进水平。
它的研制成功,必将大大推动我国乃至世界洗衣机行业的发展。
模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,它是从行为上模仿人的模糊推理和决策过程的一种智能控制方法。
基于matlab的神经模糊控制洗衣机仿真设计
本科毕业论文(设计、创作)题目:基于matlab的神经模糊控制洗衣机仿真设计学生姓名:学号:023*******所在院系:信息与通信技术系专业:电子信息工程入学时间:2010 年9 月导师姓名:职称/学位:讲师/博士导师所在单位:完成时间:2014 年 5 月安徽三联学院教务处制基于matlab的神经模糊控制洗衣机仿真设计摘要:本论文的首要设计目的是设计一个洗衣机模糊控制器,根据洗衣机桶内水的状况,来调节洗涤过程中水位和时间的控制,以达到洗涤成功的目的。
本文着重研究了MATLAB模糊控制。
开始,介绍了模糊控制基本原理,提出要控制的变量因素,水位、洗涤时间。
而后,定义输入、输出的模糊集,结合实际情形定义隶属函数,再以后创建模糊控制的规则,给出控制表,进行推理。
最后,对系统进行仿真,此处利用了Simulink。
关键词:模糊控制;模糊集;隶属函数;控制规则;模糊推理Design and implementation of the washing machinebased on MATLABAbstract:The primary design objective of this thesis is to design a fuzzy controller based on the washing machine, water washing machine barrel, control to adjust the water level and time in the washing process, in order to achieve the purpose of washing success. This paper focuses on the MATLAB fuzzy control. Start, introduces the basic principle of fuzzy control, the variable factors to control, water, washing time. Then, the definition of fuzzy input, output set, combined with the actual situation of definition of membership function, then create a fuzzy control rules, gives the control table, reasoning. Finally, the system simulation, the use of Simulink.Keywords: f uzzy control; fuzzy set; membership function; control rules; fuzzy reasoning目录第一章引言 (1)1.1 选题的目的和意义 (1)1.2 国内外发展形势 (1)1.3 MATLAB (1)1.4 模糊控制 (3)1.5 论文要容 (3)第二章模糊控制器原理及设计 (5)2.1 模糊控制原理 (5)2.1.1 模糊集合 (5)2.1.2 模糊控制器的组成 (6)2.1.3 模糊控制系统的工作原理 (8)2.1.4 模糊控制器的结构 (13)2.2 模糊控制系统 (14)2.2.1 按信号的时变特性分类 (14)2.2.2按模糊控制的线性特性分类 (14)2.2.3 按静态误差是否存在分类 (14)2.2.4 按系统输入变量分类 (14)2.3 模糊控制器的设计 (14)第三章洗衣机的模糊控制 (17)3.1时间控制 (17)3.1.1 确定模糊控制器的结构 (17)3.1.2定义输入、输出模糊集 (17)3.1.3定义隶属函数 (17)3.1.4创建模糊控制规则 (19)3.1.5创建模糊控制表 (19)3.1.6模糊推理 (20)3.2水位控制 (23)3.2.1 创建模糊控制系统 (23)3.2.2 模糊控制的Simulink仿真 (24)3.3 本章小结 (25)结论 (26)参考文献 (28)附录1 (29)附录2 (30)附录3 (31)附录4 (32)致谢 (27)第一章引言1.1 选题的目的和意义当代社会,人们生活水平不停提高,生活节奏不停加快,人们对种种方便、快捷的家用电器需求量愈来愈大,为提高人们的生活效率和质量,全自动洗衣机应运而生。
模糊控制器的MATLAB仿真
实验一模糊控制器的MATLAB仿真一、实验目的本实验要求利用MATLAB/SIMULINK与FUZZYTOOLBOX对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则;比较其与常规控制器的控制效果;研究改变模糊控制器参数时,系统响应的变化情况;掌握用 MATLAB 实现模糊控制系统仿真的方法。
二、实验原理模糊控制器它包含有模糊化接口、知识库(规则库、数据库)、模糊推理机、解模糊接口等部分。
输人变量e(t)是过程实测变量y(t)与系统设定值s(t)之差值。
输出变量y(t)是系统的实时控制修正变量。
模糊控制的核心部分是包含语言规则的规则库和模糊推理机。
而模糊推理就是一种模糊变换,它将输入变量模糊集变换为输出变量的模糊集,实现论域的转换。
工程上为了便于微机实现,通常采用“或”运算处理这种较为简单的推理方法。
Mamdani推理方法是一种广泛采用的方法。
它包含三个过程:隶属度聚集、规则激活和输出总合。
模糊控制器的组成框图如图2.1所示。
图2.1 模糊控制器的组成框图三、模糊推理系统的建立一个模糊推理系统的建立分为三个步骤:首先,对测量数据进行模糊化;其次,建立规则控制表;最后,输出信息的模糊判决,即对模糊量进行反模糊化,得到精确输出量。
模糊推理系统的建立,往往是设计一个模糊控制系统的基础。
建立一个模糊推理系统有两类方法:一种是利用GUI建立模糊推理系统;另一种是利用MATLAB命令建立。
下面根据实验内容,利用GUI建立模糊推理系统。
例:对循环流化床锅炉床温,对象模型为()()1140130120++s s采用simulink 图库,实现常规PID 和模糊自整定PID 。
模糊自整定PID 为2输入3输出的模糊控制器。
1、 进入FIS 编辑器在MATLAB 的命令窗口中键入fuzzy 即可打开FIS 编辑器,其界面如下图所示。
此时编辑器里面还没有FIS 系统,其文件名为Untitled ,且被默认为Mandani 型系统。
基于MATLAB模糊洗衣机设计
模糊控制洗衣机设计1模糊控制结构本次设计的控制对象是应用范围广泛的家用洗衣机,这里简化了模糊自动洗衣机的输入和输出个数。
选用双输入单输出的模糊控制,其中,把负载(衣物量)和污浊度作为输入条件、洗衣机工作时间作为输出结果。
2输入隶属度函数确定1)对于负载(衣物量)(x)而言建立了四个模糊子集,分别为:很少(HS)、少(S)、多(D)、很多(HD)。
其中HS和HD模糊子集选用梯形隶属度函数;S、D选用三角形隶属度函数。
输入1隶属度分布如图1所示。
图1 负载隶属度函数分布2)对于污浊度(y)而言,同样建立了四个模糊子集,分别为:轻脏(QZ)、较脏(JZ)、脏(Z)、很脏(HZ)。
其中QZ和HZ模糊子集选用梯形隶属度函数;JZ、Z选用三角形隶属度函数。
输入2隶属度分布如图2所示。
图2 污浊度隶属度函数分布3输出隶属度函数确定对于洗衣机工作时间(t)来说,建立了五个模糊子集,分别为很短(HD)、短(D)、中等(Z)、长(C)、很长(HC)。
为了保证洗衣机的最低工作时间,其中HD选用梯形隶属度函数,其余则为三角形隶属度函数,输出1的隶属度分布如图3所示。
图3 工作时间的隶属度函数分布4模糊规则建立根据经验(衣服越多,越污浊,则洗涤时间越长。
反之则相反)可以归纳总结出如下16条规则,如表1所示。
表1 模糊控制规则表5输出模糊量清晰化本次选用的清晰化方法为最大隶属度平均值法(mom)6测试分别随机选取三组输入测试1)x=1、y=22)x=5、y=63)x=8、y=97模糊控制程序%模糊控制程序clcclear all;close all;a=newfis('xiyiji');%新建模糊控制f1=1;a=addvar(a,'input','x',[0,10*f1]); %建立模糊输入负载的隶属度函数a=addmf(a,'input',1,'HS','trapmf',[0,0,2*f1,4*f1]);a=addmf(a,'input',1,'S','trimf',[2*f1,4*f1,6*f1]);a=addmf(a,'input',1,'D','trimf',[4*f1,6*f1,8*f1]);a=addmf(a,'input',1,'HD','trapmf',[6*f1,8*f1,10*f1,10*f1]);f2=1;a=addvar(a,'input','y',[0,10*f2]); %建立模糊输入污浊度的隶属度函数a=addmf(a,'input',2,'QZ','trapmf',[0,0,2*f2,4*f2]);a=addmf(a,'input',2,'JZ','trimf',[2*f2,4*f2,6*f2]);a=addmf(a,'input',2,'Z','trimf',[4*f2,6*f2,8*f2]);a=addmf(a,'input',2,'HZ','trapmf',[6*f2,8*f2,10*f2,10*f2]);f3=1;a=addvar(a,'output','t',[0,60*f3]); %建立模糊输时间的隶属度函数a=addmf(a,'output',1,'HD','trapmf',[0,0,10*f3,20*f3]);a=addmf(a,'output',1,'D','trimf',[10*f3,20*f3,30*f3]);a=addmf(a,'output',1,'Z','trimf',[20*f3,30*f3,45*f3]);a=addmf(a,'output',1,'C','trimf',[30*f3,45*f3,60*f3]);a=addmf(a,'output',1,'HC','trimf',[45*f3,60*f3,60*f3]);%建立模糊规则库,共16条规则rulelist = [1 1 1 1 1;1 2 1 1 1;1 32 1 1;1 4 3 1 1;2 1 1 1 1;2 2 2 1 1;2 3 3 1 1;2 4 4 1 1;3 1 2 1 1;3 2 3 1 1;3 34 1 1;3 4 5 1 1;4 1 3 1 1;4 2 4 1 1;4 35 1 1;4 45 1 1];a=addrule(a,rulelist);%showrule(a) % 显示模糊规则a1=setfis(a,'DefuzzMethod','mom'); % 设置清晰化函数为mom writefis(a1,'xiyiji'); % 储存模糊文件a2=readfis('xiyiji'); % 读取模糊文件disp('负载x范围:[0,10],污浊度y范围:[0,10]');x=input('负载:'); %输入负载y=input('污浊度:'); %输入污浊度t=evalfis([x,y],a2); %调用模糊控制函数t=ceil(t); %取整fprintf('工作时间t为%d分钟\n',t); %输出工作时间figure(1); %显示模糊控制器plotfis(a2);figure(2); %显示输入1的隶属度plotmf(a,'input',1);figure(3); %显示输入2的隶属度plotmf(a,'input',2);figure(4); %显示输出1的隶属度plotmf(a,'output',1);。
洗衣机模糊控制matlab仿真
洗衣机模糊控制仿真1.模糊控制背景1980年,Sugeno 开创了日本的首次模糊应用——控制一家富士电子水净化厂。
1983年他又开始研究模糊机器人。
随着模糊控制技术的不断发展,模糊控制逐渐被应用到日用家电产品的控制,例如电饭锅﹑照相机﹑吸尘器﹑洗衣机等。
2.仿真目的本次仿真的主要目的是设计一个比较合理的洗衣机模糊控制器,它能够根据被洗涤衣物的污泥多少和油脂多少,综合得到洗涤时间,从而达到最佳的洗涤效果。
3.仿真方法本次仿真借助matlab 中集成的模糊控制工具箱,使用图形界面进行模糊控制器的设计。
最后随意给定几组输入,得到输出并作出简单分析。
4.模糊控制器的设计4.1模糊控制器理论设计方法①选择合适的模糊控制器类型;②确定输入输出变量的实际论域;③确定e ,e ∆,u ∆的模糊集个数及各模糊集的隶属度函数;④输出隶属度函数选为单点,可使解模糊简单;⑤设计模糊控制规则集;⑥选择模糊推理方法;⑦解模糊方法。
4.2实际设计过程①模糊控制器类型:选用两输入单输出模糊控制器,控制器输入为衣物的污泥和油脂,输出为洗涤时间。
②确定输入输出变量的实际论域:输入为Mud(污泥)和Grease (油脂),设置Range=[0 100](输入变化范围为[0,100]);输出为Time(洗涤时间),Range=[0 60](输出变化范围为[0,60])。
对应matlab 中模糊控制模块:③确定模糊集个数及各模糊集的隶属度函数:将污泥分为3个模糊集:SD (污泥少)MD (污泥中)LD(污泥多);将油脂分为三个模糊集:NG (油脂少)MG (油脂中)LG (油脂多);将洗涤时间非为5个模糊集:VS (很短)S (短)M (中等)L (长)VL (很长)。
输入﹑输出隶属度函数都定为三角形隶属函数。
结合④输出隶属度函数选为单点,可使解模糊简单;定义污泥隶属函数如下50)50()(x x SD -=μ 0≤x ≤5050x 0≤x ≤5050)100(x - 50<x ≤100 50)50()(-=x x LD μ 50<x ≤100对应matlab 中隶属度函数仿真图如下:由隶属函数设置污泥的3个模糊集参数为[Input1]Name='Mud'NumMFs=3MF1='SD':'trimf',[-50 0 50]MF2='MD':'trimf',[0 50 100]MF3='LD':'trimf',[50 100 150]定义油脂隶属函数如下:50)50()(y x SG -=μ 0≤y ≤5050y 0≤y ≤5050)100(y - 50<y ≤100 50)50()(-=y x LG μ 50<y ≤100对应matlab 中隶属度函数仿真图如下:由隶属函数设置油脂3个模糊集参数为[Input2]Name='Grease'NumMFs=3MF1='SG':'trimf',[-50 0 50]MF2='MG':'trimf',[0 50 100]MF3='LG':'trimf',[50 100 150]定义输出时间隶属函数如下:μVS (Z )=(10-Z )/10 0≤Z ≤10Z /10 0≤Z ≤10μS (Z )=(25-Z )/15 10≤Z ≤25(Z -10)/15 10≤Z ≤25μM (Z )= μ洗涤时间= (40-Z )/15 25≤Z ≤40 (Z -25)/15 25≤Z ≤40μL (Z )=(60-Z )/20 40≤Z ≤60 μVL (Z )=(Z -40)/20 40≤Z ≤60对应matlab 中隶属度函数仿真图如下:由隶属函数设置输出洗涤时间5个模糊集参数为[Output1]Name='Time'NumMFs=5MF1='S':'trimf',[0 10 25]MF2='L':'trimf',[25 40 60]MF3='VS':'trimf',[-10 0 10]MF4='M':'trimf',[10 25 40]MF5='VL':'trimf',[40 60 80]⑤设计模糊控制规则:设计标准为污泥越多,油脂越多,洗涤时间越长;污泥适中,油脂适中,洗涤时间适中;污泥越少,油脂越少,洗涤时间越短。
模糊控制的Matlab仿真实例分析
.
18
在Simulink编辑窗口左边的模块浏览区可以看 到在水箱仿真系统中包括水箱子模型、阀门子 模型及 PID 控制子模型。直接在浏览区中点 击或右键点击它们,并在弹出菜单中选择 [ look under mask 】 ,可以看到这些模块实 现的细节结构,如图 所示。
.
19
.
20
.
21
这里暂时不讨论具体的系统模型的构造问题,我们可 以先在这个已经建立好的系统模型上进行修改,体验 模糊逻辑与仿真环境结合使用的优势。
字分别代表服务和食
物的质量( 10 表示
非常好, 0 表示非常
差),这时小费与它
.
们之间的关系又应4当8
如何反映呢?
假设是二元线性关系 用下列 MATLAB 语句可绘出下图 。
.
49
.
50
可以看到,如果不考虑服务质量因素比食物质量因素对 于小费的支付占有更大的比重,上面的关系图形已经能 够反映一些实际的情况了。假如希望服务质量占小费的 80 % , 而食物仅占 20 %。这里可以设定权重因子:
注意将鼠标箭头放置图内,移动鼠标可得到不同 角度的视图,如下图所示。
.
15
Matlab模糊控制仿真演示例子
模型sltank.mdl ——使用模糊控制器对水箱水位进 行控制。
假定水箱有一个进水口和一个出水口,可以通过控 制一个阀门来控制流入的水量(即水位高度),但 是流出的速度取决于出水口的半径(定值)和水箱 底部的压力(随水箱中的水位高度变化)。系统有 许多非线性特性。
真。
.
31
学习 MATLAB 仿真工具的一个快速有效的方法就 是学习示例模型,通过看懂这些模型和模块的功
能以及搭建过程,可以很快熟悉和掌握如何使用 MATLAB 仿真工具来设计和搭建自己独特的模型。
模糊液位控制器的设计与仿真
东北石油大学华瑞学院毕业设计(论文)任务书题目模糊液位控制器的设计与仿真专业自动化学号姓名主要内容、基本要求、主要参考资料等:主要内容:1、研究模糊控制理论和PID基本理论,并把两者进行结合,得到模糊自整定PID 控制器,并将其以用于洗衣机的模糊液位水位控制中。
2、应用MATLAB仿真软件对洗衣机的液位、进水量、出水量等进行了细致的仿真,得出一系列关于采用模糊液位控制器的全自动洗衣机的仿真数据与图文。
基本要求:1、充分调研,充分利用网络资源查阅文献。
2、完成方案设计。
3、完成功能设计。
4、完成软件系统设计。
5、完成硬件系统设计。
6、按学校有关毕业设计规范完成毕业论文工作。
主要参考资料:1、闻新,周露,李东江.MATLAB模糊逻辑工具箱的分析与应用[M].北京科学出版社,2002:141—207.2、易继锴,侯媛彬.智能控制技术[M].北京工业大学出版社,2003.4.3、诸静.模糊控制原理与应用[M].北京:机械工业出版社,2002.4、YKang,JD Lavers.Transient analysis of electric power system refomulation andtheoretical basis[J].JEEE Tram on Power Systems.2003,11(2):754~760.5、J Mahseredjian,F Alvarado.Creating an electromagnetic transients program inMATLAB[J].IEEE Tram on Power Delivery.2004(12):380~388.完成期限:指导教师签章:专业负责人签章:年月日。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于matlab 的洗衣机模糊控制器的设计及仿真
以洗衣机洗涤时间的模糊控制系统设计为例,其控制原理是根据衣物上污泥和油脂的程度,调节洗涤时间,该控制是一个开环的模糊决策过程,模糊控制按以下步骤进行:
1. 确定模糊控制器的结构
选用两输入单输出的模糊控制器。
控制器的输入为衣物的污泥和油脂,输出 为洗涤时间。
2. 定义输入、输出的模糊集
将污泥分为3个模糊集:SD (污泥少),MD (污泥中),LD (污泥多),取 值为[0,100];将油脂分为3个模糊集:NG (油脂少),MG (油脂中),LG (油脂多),取值为[0,100];将洗涤时间分为5个模糊集:VS (很短),S (短),M (中等),L (长),VL (很长),取值为[0,60]。
3. 定义输入、输出隶属函数
选用如下三角形隶属函数可实现污泥的模糊化。
采用Matlab 进行仿真,污泥隶属函数仿真结果如图1所示。
选用如下三角形隶属函数实现油脂的模糊化,如图2所示。
⎪⎪
⎩⎪
⎪
⎨⎧≤<-=⎩⎨
⎧≤<-≤≤=≤≤-==100
5050/)50()(1005050/)100(50050/)(50050/)50()(x x x x x x x x x x x LD
MD SD μμμμ污泥
⎪⎪
⎩⎪
⎪
⎨⎧≤≤-=⎩⎨
⎧≤<-≤≤=≤≤-==100
5050/)50()(1005050/)100(50050/)(50050/)50()(y y y y y y y y y y y LG
MG NG μμμμ油脂
图1污泥隶属函数
图2油脂隶属函数
选用如下三角形隶属函数实现洗涤时间的模糊化,如图3所示。
图3 洗涤时间隶属函数
4. 建立模糊控制规则
根据人的操作经验设计模糊规则,模糊规则设计的标准为:“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”。
根据前面定义的隶属度函数并且结合以往专家们所取得的经验,定义该模糊控制系统的模糊控制规则,如表1示。
⎪
⎪⎪⎪⎪
⎩⎪
⎪
⎪⎪⎪
⎨⎧≤≤-=⎩⎨⎧≤<-≤≤-=⎩⎨
⎧≤<-≤≤-=⎩⎨⎧≤<-≤≤=≤≤-==604020
/)40()(604020/)60(402515/)25()(402515/)40(251015/)10()(251015
/)25(10010
/)(10010/)10()(z z z z z z z z z z z z z x z z z z z z z VL L M S
VS μμμμμμ洗涤时间
表1洗衣机的模糊规则表
规则设置为如下9条:
1. If (x is SD) and (y is NG) then (z is VS)
2. If (x is MD) and (y is NG) then (z is S)
3. If (x is LD) and (y is NG) then (z is M)
4. If (x is SD) and (y is MG) then (z is M)
5. If (x is MD) and (y is MG) then (z is M)
6. If (x is LD) and (y is MG) then (z is L)
7. If (x is SD) and (y is LG) then (z is L)
8. If (x is MD) and (y is LG) then (z is L)
9. If (x is LD) and (y is LG) then (z is VL)
5. 仿真结果分析
当取x=60,y=70时,反模糊采用重心法,模糊推理的结果为33.7。
利用模糊命令view--rules可实现模糊控制的动态仿真如下。