当前位置:文档之家› 模糊控制系统设计及MATLAB仿真研究

模糊控制系统设计及MATLAB仿真研究

模糊控制系统设计及MATLAB仿真研究
模糊控制系统设计及MATLAB仿真研究

昆明理工大学信息工程与自动化学院学生实验报告

(20—20学年第学期)

课程名称:智能控制导论开课实验室:自动化系机房年月日

年级、专业、班学号姓名成绩

实验项目名称

模糊控制系统设计及MATLAB仿真研究指导教师李俊丽

语教师签名:

年月日

一、实验目的

1、通过上机实习,熟悉MATLAB的基本操作命令、simulink和模糊控制

工具箱的使用。

2、掌握利用MATLAB设计模糊控制器的基本方法,为以后利用计算机进

行模糊控制系统分析与设计打下良好的基础。

二、实验原理及基本技术路线图(方框原理图)

三、所用仪器、材料(设备名称、型号、规格等)

装有M ATLAB的电脑或者个人计算机

四、实验方法、步骤

1、方法一:

1)Simulink环境下建立控制框图。

2)利用MATLAB模糊控制工具箱建立模糊控制系统保存在a2中。

3)采用Simulink进行仿真。

2、方法二:

1)Simulink环境下建立控制框图。

2)编写M文件建立模糊控制系统保存在a2中,运行M文件。

3)采用Simulink进行仿真。

起初看着方法二步骤比较少,就采用方法二进行实验,但是在编写M文件时候总是出错,后来放弃了改用方法一,虽然麻烦,但是只要认真总会成功的。

五、实验过程原始记录(数据、图表、计算等)

1、Simulink环境下建立控制框图:

2、建立模糊控制系统及设定e、ec和u的模糊集及其隶属函数

1)输入值e设定:

2)输入值ec设定:

3)输出值u设定:

3、建立模糊控制规则及模糊推理

建立模糊控制规则:

这里模糊规则根据模糊规则表设定,共有49条,对照着一条一条的输入,过程中一定要仔细认真,当时自己实验的时候就是输了三次,第一次规则错了,第二次少了2条,后来从新开始。

(附模糊规则表)

4、开始仿真

1)输出规则:

2)输出曲面:

3)输出结果:

六、实验结果、分析和结论(误差分析与数据处理、成果

总结等)

实验结果如上开始仿真的结果

通过本次试验,我对MATLAB的理解更加深刻,利用MATLAB来实现模糊控制器的仿真分析非常简便,为研究模糊控制理论、涉及模糊控制器提供了有力的工具。

Simulink构造模糊控制系统结构框图进行仿真大大减少了编程工作量,而且形象直观,容易对输入输出量化论域、语言变量、隶属度函数和控制规则进行修改。也可以通过存贮在workspace的数据进行分析和处理。

另外通过编写S函数,将MATLAB与SIMULINK有机地结合起来,实现参数调整的模糊控制系统的设计和仿真,该方法也可以设计多个模糊控制器,通过S函数

来实时选择不同的控制器,提高系统的控制性能。

模糊控制系统及其MATLAB实现

1. 模糊控制的相关理论和概念 1.1 模糊控制的发展 模糊控制理论是在美国加州伯克利大学的L.A.Zadeh 教授于1965 年建立的模糊集合论的数学基础上发展起来的。之后的几年间Zadeh 又提出了模糊算法、模糊决策、模糊排序、语言变量和模糊IF-THEN 规则等理论,为模糊理论的发展奠定了基础。 1975年,Mamdani 和Assilian 创立了模糊控制器的基本框架,并用于控制蒸汽机。 1978年,Holmblad 和Ostergaard 为整个工业过程开发出了第一个模糊控制器——模糊水泥窑控制器。 20世纪80年代,模糊控制开始在工业中得到比较广泛的应用,日本仙台地铁模糊控制系统的成功应用引起了模糊领域的一场巨变。到20世纪90年代初,市场上已经出现了大量的模糊消费产品。 近30 年来, 因其不依赖于控制对象的数学模型、鲁棒性好、简单实用等优点, 模糊控制已广泛地应用到图像识别、语言处理、自动控制、故障诊断、信息检索、地震研究、环境预测、楼宇自动化等学科和领域, 并且渗透到社会科学和自然科学许多分支中去, 在理论和实际运用上都取得了引人注目的成果。 1.2模糊控制的一些相关概念 用隶属度法来定义论域U 中的集合A ,引入了集合A 的0-1隶属度函数,用()A x μ表示,它满足: 1 ()0A x μ?=?? x A x A ∈? 用0-1之间的数来表示x 属于集合A 的程度,集合A 等价与它的隶属度函数()A x μ 模糊系统是一种基于知识或基于规则的系统。它的核心就是由所谓的 IF-THEN 规则所组成的知识库。一个模糊的IF-THEN 规则就是一个用连续隶属度函数对所描述的某些句子所做的IF-THEN 形式的陈述。例如: 如果一辆汽车的速度快,则施加给油门的力较小。 这里的“快”和“较小”分别用隶属度函数加以描述。模糊系统就是通过组合IF-THEN 规则构成的。 构造一个模糊系统的出发点就是要得到一组来自于专家或基于该领域知识的模糊IF-THEN 规则,然后将这些规则组合到单一系统中。不同的模糊系统可采用不用的组合原则。 用隶属度函数表征一个模糊描述后,实质上就将模糊描述的模糊消除了。 模糊控制系统设计的关键在于模糊控制器的设计。模糊控制器的设计主要有三个部分: (1) 输入量的模糊化 所谓模糊化(Fuzzification) 就是先将某个输入测量量的测量值作标准化处理,把该输入测量量的变化范围映射到相应论域中,再将论域中的各输入数据以相应

基于模糊控制的速度跟踪控制问题(C语言以及MATLAB仿真实现)

基于模糊控制的速度控制 ——地面智能移动车辆速度控制系统问题描述 利用模糊控制的方法解决速度跟踪问题,即已知期望速度(desire speed),控制油门(throttle output)和刹车(brake output)来跟踪该速度。已知输入:车速和发动机转速(值可观测)。欲控制刹车和油门电压(同一时刻只有一个量起作用)。 算法思想 模糊控制器是一语言控制器,使得操作人员易于使用自然语言进行人机对话。模糊控制器是一种容易控制、掌握的较理想的非线性控制器,具有较佳的适应性及强健性(Robustness)、较佳的容错性(Fault Tolerance)。利用控制法则来描述系统变量间的关系。不用数值而用语言式的模糊变量来描述系统,模糊控制器不必对被控制对象建立完整的数学模式。 Figure 1模糊控制器的结构图 模糊控制的优点: (1)模糊控制是一种基于规则的控制,它直接采用语言型控制规则,出发点是现场操作人员的控制经验或相关专家的知识,在设计中不需要建立被控对象的精确的数学模型,因而使得控制机理和策略易于接受与理解,设计简单,便于应用。 (2)由工业过程的定性认识出发,比较容易建立语言控制规则,因而模糊控制对那些数学模型难以获取,动态特性不易掌握或变化非常显著的对象非常适用。 (3)基于模型的控制算法及系统设计方法,由于出发点和性能指标的不同,容易导致较大差异;但一个系统语言控制规则却具有相对的独立性,利用这些控制规律间的模糊连接,容易找到折中的选择,使控制效果优于常规控制器。 (4)模糊控制是基于启发性的知识及语言决策规则设计的,这有利于模拟人工控制的过程和方法,增强控制系统的适应能力,使之具有一定的智能水平。 简化系统设计的复杂性,特别适用于非线性、时变、模型不完全的系统上。 模糊控制的缺点

实验一--模糊控制器的MATLAB仿真

实验一 模糊控制器的MATLAB 仿真 一、实验目的 本实验要求利用MATLAB/SIMULINK 与FUZZYTOOLBOX 对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则;比较其与常规控制器的控制效果;研究改变模糊控制器参数时,系统响应的变化情况;掌握用 MATLAB 实现模糊控制系统仿真的方法。 实验时数:3学时。 二、实验设备:计算机系统、Matlab 仿真软件 三、实验原理 模糊控制器它包含有模糊化接口、规则库、模糊推理、清晰化接口等部分,输人变量是过程实测变量与系统设定值之差值。输出变量是系统的实时控制修正变量。模糊控制的核心部分是包含语言规则的规则库和模糊推理。模糊推理就是一种模糊变换,它将输入变量模糊集变换为输出变量的模糊集,实现论域的转换。工程上为了便于微机实现,通常采用“或”运算处理这种较为简单的推理方法。Mamdani 推理方法是一种广泛采用的方法。它包含三个过程:隶属度聚集、规则激活和输出总合。模糊控制器的体系结构如图1所示。 图1 模糊控制器的体系结构 四、实验步骤 (1)对循环流化床锅炉床温,对象模型为 ()()1140130120 ++s s 采用simulink 图库,实现常规PID 和模糊自整定PID 。 (2)确定模糊语言变量及其论域:模糊自整定PID 为2输入3输出的模糊控制器。该模糊控制器是以|e|和|ec|为输入语言变量,Kp 、Ki 、Kd 为输出语言变量,其各语言变量的论域如下:

误差绝对值:e={0,3,6,10}; 误差变化率绝对值:ec={0,2,4,6}; 输出Kp:Up={0,0.5,1.0,1.5}; 输出Ki:Ui={0,0.002,0.004,0.006}; 输出Kd:Ud={0,3,6,9}。 (3)语言变量值域的选取:输入语言变量|e|和|ec|的值域取值“大”(B)、“中”(M)、“小”(s)和“零”(Z) 4种;输出语言变量Kp、Ki、Kd的值域取值为“很大”(VB)、“大”(B)、“中”(M)、“小”(s) 4种。 (4)规则的制定:根据PID参数整定原则及运行经验,可列出输出变量Kp、Ki、Kd 的控制规则表。 (5)推理方法的确定 隐含采用“mamdani”方法:max-min; 推理方法,即“min”方法; 去模糊方法:面积中心法; 选择隶属函数的形式:三角型。

简易模糊控制器设计及MATLAB仿真

简易模糊控制器的设计及仿真 摘要:模糊控制(Fuzzy Control )是以模糊集理论、模糊语言和模糊逻辑推理为基础的一种控制方法,它从行为上模仿人的模糊推理和决策过程。本文利用MATLAB/SIMULINK 与FUZZY TOOLBOX 对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则,比较其与常规控制器的控制效果,用MATLAB 实现模糊控制的仿真。 关键词:模糊控制 参数整定 MATLAB 仿真 二阶动态系统模型: ()()1140130120 ++s s 采用simulink 图库,实现常规PID 和模糊自整定PID 。 一.确定模糊控制器结构 模糊自整定PID 为2输入3输出的模糊控制器。在MATLAB 的命令窗口中键入fuzzy 即可打开FIS 编辑器,其界面如下图所示。此时编辑器里面还没有FIS 系统,其文件名为Untitled ,且被默认为Mandani 型系统。默认的有一个输入,一个输出,还有中间的规则处理器。在FIS 编辑器界面上需要做一下几步工作。 首先,模糊自整定PID 为2输入3输出的模糊控制器,因此需要增加一个输入两个输出,进行的操作为:选择Edit 菜单下的Add Variable/Input 菜单项。

如下图。 其次,给输入输出变量命名。单击各个输入和输出框,在Current Variable 选项区域的Name文本框中修改变量名。如下图 最后,保存系统。单击File菜单,选择Export下的To Disk项。这里将创建的系统命名为PID_auot.fi。 二.定义输入、输出模糊集及隶属函数

基于matlab的模糊控制器的设计与仿真

基于MATLAB的模糊控制器的设计与仿真 摘要:本文对模糊控制器进行了主要介绍。提出了一种模糊控制器的设计与仿真的实现方法,该方法利用MA TLB模糊控制工具箱中模糊控制器的控制规则和隶属度函数,建立模型,并进行模糊控制器设计与仿真。 关键词:模糊控制,隶属度函数,仿真,MA TLAB 1 引言 模糊控制是一种特别适用于模拟专家对数学模型未知的较复杂系统的控制,是一种对模型要求不高但又有良好控制效果的控制新策略。与经典控制和现代控制相比,模糊控制器的主要优点是它不需要建立精确的数学模型。因此,对一些无法建立数学模型或难以建立精确数学模型的被控对象,采用模糊控制方法,往往能获得较满意的控制效果。 模糊控制器的设计比一般的经典控制器如PID控制器要复杂,但如果借助MATLAB则系统动态特性良好并有较高的稳态控制精度,可提高模糊控制器的设计效率。本文在MATLAB环境下针对某个控制环节对模糊控制系统进行了设计与仿真。 2 模糊控制器简介 模糊控制器是一种以模糊集合论,模糊语言变量以及模糊推理为数学基础的新型计算机控制方法。显然,模糊控制的基础是模糊数学,模糊控制的实现手段是计算机。本章着重介绍模糊控制的基本思想,模糊控制的基本原理,模糊控制器的基本设计原理和模糊控制系统的性能分析。 随着科学技术的飞速发展,在那些复杂的,多因素影响的严重非线性、不确定性、多变性的大系统中,传统的控制理论和控制方法越来越显示出局限性。长期以来,人们期望以人类思维的控制方案为基础,创造出一种能反映人类经验的控制过程知识,并可以达到控制目的,能够利用某种形式表现出来。而且这种形式既能够取代那种精密、反复、有错误倾向的模型建造过程,又能避免精密的估计模型方程中各种方程的过程。同时还很容易被实现的,简单而灵活的控制方式。于是模糊控制理论极其技术应运而生。 3 模糊控制的特点 模糊控制是以模仿人类人工控制特点而提出的,虽然带有一定的模糊性和主观性,但往往是简单易行,而且是行之有效的。模糊控制的任务正是要用计算机来模拟这种人的思维和决策方式,对这些复杂的生产过程进行控制和操作。所以,模糊控制有以下特点: 1)模糊控制的计算方法虽然是运用模糊集理论进行的模糊算法,但最后得到的控制规律是确定

洗衣机模糊控制matlab仿真

洗衣机模糊控制仿真 1.模糊控制背景 美国教授查徳(L.A.Zandeh)在1965年首先提出模糊集合的概念,由此打开了模糊数学及其应用的大门。 1974年英国教授马丹尼(E.H.Mamdani)首先将模糊集合理论应用于加热器的控制,创造了模糊控制的基本框架。 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 ≤50 50 x 0≤x ≤50 =Mad μ =)(x MD μ 50 ) 100(x - 50<x ≤100 50)50()(-=x x LD μ 50<x ≤100 对应matlab 中隶属度函数仿真图如下:

模糊控制系统及其MATLAB实现

模糊控制系统及其MATLAB实现 1. 模糊控制的相关理论和概念 1.1 模糊控制的发展 模糊控制理论是在美国加州伯克利大学的L.A.Zadeh教授于1965 年建立的模 糊集合论的数学基础上发展起来的。之后的几年间Zadeh又提出了模糊算法、模糊 决策、模糊排序、语言变量和模糊IF-THEN规则等理论,为模糊理论的发展奠定了 基础。 1975年,Mamdani和Assilian创立了模糊控制器的基本框架,并用于控制蒸 汽机。 1978年,Holmblad和Ostergaard为整个工业过程开发出了第一个模糊控制器——模糊水泥窑控制器。 20世纪80年代,模糊控制开始在工业中得到比较广泛的应用,日本仙台地铁 模糊控制系统的成功应用引起了模糊领域的一场巨变。到20世纪90年代初,市场 上已经出现了大量的模糊消费产品。 近30 年来, 因其不依赖于控制对象的数学模型、鲁棒性好、简单实用等优点, 模糊控制已广泛地应用到图像识别、语言处理、自动控制、故障诊断、信息并且渗透到社会科学和检索、地震研究、环境预测、楼宇自动化等学科和领域, 自然科学许多分支中去, 在理论和实际运用上都取得了引人注目的成果。 1.2 模糊控制的一些相关概念 用隶属度法来定义论域U中的集合A,引入了集合A的0-1隶属度函数, 用,()x表示,它满足: A xA,1, ,x(),,AxA,0,

用0-1之间的数来表示x属于集合A的程度,集合A等价与它的隶属度函 数,()x A 模糊系统是一种基于知识或基于规则的系统。它的核心就是由所谓的IF-THEN 规则所组成的知识库。一个模糊的IF-THEN规则就是一个用连续隶属度函数对所描述的某些句子所做的IF-THEN形式的陈述。例如: 如果一辆汽车的速度快,则施加给油门的力较小。 这里的“快”和“较小”分别用隶属度函数加以描述。模糊系统就是通过组合IF-THEN规则构成的。 构造一个模糊系统的出发点就是要得到一组来自于专家或基于该领域知识的模糊IF-THEN规则,然后将这些规则组合到单一系统中。不同的模糊系统可采用不用的组合原则。 用隶属度函数表征一个模糊描述后,实质上就将模糊描述的模糊消除了。 模糊控制系统设计的关键在于模糊控制器的设计。模糊控制器的设计主要有三个部分: (1) 输入量的模糊化 所谓模糊化(Fuzzification) 就是先将某个输入测量量的测量值作标准化处理,把该输入测量量的变化范围映射到相应论域中,再将论域中的各输入数据以相应的模糊语言值的形式表示,并构成模糊集合。这样就把输入的测量量转换为用 隶属度函数表示的某一模糊语言变量。 (2) 模糊逻辑推理 根据事先已定制好的一组模糊条件语句构成模糊规则库,运用模糊数学理论对 模糊控制规则进行推理计算,从而根据模糊控制规则对输入的一系列条件进行综合评估,以得到一个定性的用语言表示的量,即模糊输出量。完成这部分功能的过程就是模糊逻辑推理过程。

基于MATLAB的模糊控制洗衣机的设与仿真(谷风软件)

基于MATLAB的模糊控制洗衣机的设计与 仿真 卫瑶瑶,王胜红 (南京农业大学工学院,210031) 摘要:根据模糊控制的原理对传统洗衣机进行改造,设计了模糊控制系统。通过MA TLAB仿真,采用取最大隶属度法得到清晰化结果,所得结果与理论计算结果一致。 关键词:模糊控制;洗衣机;MA TLAB Design and Simulation of Fuzzy Control System of Washing Machine Based on MATLAB Wei yaoyao, Wang Shenghong (College of Engineering,Nanjing Agricultural University,210031) Abstract: This paper designed a fuzzy control system for washing machine based on the theory of fuzzy control. This paper conducted the simulation of MATLAB, and took maximum membership degree method to get the results of clarity. Finally, it’s proved that the simulation results is the same with theory calculation. Keywords: fuzzy control; washing machine; MATLAB 自动控制从最早的开环控制起步,然后是反馈控制、最优控制、随机控制,再到自适应控制、自学习控制、自组织控制,一直发展到自动控制的最新阶段——智能控制。智能控制的几个重要分支有:专家系统、模糊控制、神经网络控制等。作为人类思维外壳的自然语言,本身就带有模糊性,这是计算机所不能理解的。模糊控制是以模糊集合理论和模糊逻辑推理为基础,把专家用自然语言表述的知识和控制经验,通过模糊理论转换成数学函数,再用计算机进行处理。传统控制方法对一个系统进行控制时,首先要建立控制系统的数学模型,即描述系统内部物理量(或变量)之间关系的数学表达式,必须得知道系统模型的结构、阶次、参数等。然而在工程实践中人们发现,有些复杂的控制系统,虽然不能建立起数学模型,无法用传统控制方法进行控制,但是凭借丰富的实际操作经验,技术工人却能够通过相应操作得到满意的控制效果【1】。 模糊控制之所以被人们广泛接受,是因为其有以下优点:(1)模糊控制器的设计不依赖于被控对象的精确数学模型;(2)模糊控制易于被操作人员接受;(3)便于用计算机软件实现;(4)鲁棒性和适应性好。 1 洗衣机模糊控制系统的原理 传统洗衣机从控制角度看,实际上是一台按事先设定好的参数进行顺序控制的机器,它不能根据情况和条件的变化来改变参数。而模糊逻辑控制的智能洗衣机,它能够完成除开启电源、放取衣物之外的全部功能,智能洗衣机的核心是单片机控制板,它具有检测和控制

模糊控制在倒立摆中的MATLAB仿真应用

TAIYUAN UNIVERSITY OF SCIENCE & TECHNOLOGY 题目: 院(系): 专业: 学生姓名: 学号:

模糊控制在倒立摆中的仿真应用 1、倒立摆系统 简介 倒立摆有许多类型,例如图1-1的a和b所示的分别是轮轨式一级倒立摆系统和二级倒立摆系统的模型。倒立摆是一个典型的快速、多变量、非线性、本质不稳定系统,它对倒置系统的研究在理论上和方法论上具有深远的意义。对倒立摆的研究可归结为对非线性多变量本质不稳定系统的研究,其控制方法和思路在处理一般工业过程中也有广泛的用途。近些年来国内外不少专家学者对一级、二级、三级、甚至四级等倒立摆进行了大量的研究,人们试图寻找不同的控制方法实现对倒立摆的控制,以便检查或说明该方法的严重非线性和本质不稳定系统的控制能力。2002年8月11日,我国的李洪兴教授在国际上首次成功实现了四级倒立摆实物控制,也标志着我国学者采用自己提出的控制理论完成的一项具有原创性的世界领先水平的重大科研成果。 图1-1 倒立摆模型 (a)一级倒立摆模型(b)二级倒立摆模型 倒立摆系统可以简单地描述为小车自由地在限定的轨道上左右移动。小车上的倒立摆一端用铰链安装在小车顶部,另一端可以在小车轨道所在的垂直平面内自由转动,通过电机和皮带传动使小车运动,让倒立摆保持平衡并保持小车不和轨道两端相撞。在此基础上在摆杆的另一端铰链其它摆杆,可以组成二级、三级倒立摆系统。该系统是一个多用途的综合性试验装置,它和火箭的飞行及步行机器人的关节运动有许多相似之处,其原理可以用于控制火箭稳定发射、机器人控制等诸多领域。 倒立摆系统控制原理

单级倒立摆系统的硬件包括下面几个部分:计算机、运动控制卡、伺服系统、倒立摆和测量元件,由它们组成的一个闭环系统,如图1-2所示,就是单级倒立摆系统的硬件结构图。 图1-2 单级倒立摆硬件结构图 通过角度传感器可以测量摆杆的角度,通过位移传感器可以得到小车的位置,然后反馈给运动控制卡,运动控制卡与计算机双向通信。计算机获得实时数据,确定控制策略,发送到运动控制卡,运动控制卡执行计算机确定的控制策略,产生相应的控制量,由伺服电机转动来带动小车在水平轨道往复的运动,使摆杆保持倒立。 倒立摆系统状态方程 θ f 图1-3 单级倒立摆模型图 θ为杆与垂线的夹角,f为作用力,杆的质量m=,杆和小车的总重量m=,半杆长l=,重力加速度g=s2,采样周期T=.倒立摆的数学模型为:

模糊控制器的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 型系统。默认的有一个输入,一个输出,还有中间的规则处理器。在FIS 编辑器界面上需要做一下几步工作。 首先,模糊自整定PID 为2输入3输出的模糊控制器,因此需要增加一个输入两个输出,进行的操作为:选择Edit 菜单下的Add Variable/Input 菜单项。如下图。

模糊温度控制器的设计与Matlab仿真(DOC)

模糊温度控制器的设计与Matlab仿真 徐鹏 201403026 摘要:针对温度控制系统的时变、滞后等非线性特性及控制比较复杂的问题,提出了一种模糊控制方案以改善系统的控制性能.该方案采用mamdani推理型模糊控制器代替传统的PID控制器,依据模糊控制规则由SCR移相调控晶闸管控制电阻炉电热功率,实现对温度的控制. Matlab仿真结果表明,模糊控制的引入有效地克服了系统的扰动,改善了控制性能,提高了控制质量. 关键词:温度控制器;模糊控制;仿真分析 中图分类号: TP272 文献标志码:A Abstract:For the temperature controlsystem with the nonlinear characters of time-varying and lag and the comp lexity in control,a fuzzy control algorithm is p resented. Thealgorithm adop tsmamdani reasoning fuzzyPID controller to rep lace the traditional PID controller and use the SCR phase-shift thyristor to control the e-lectric resistance furnace power based on the fuzzy control rules to imp lement the temperature control. Matlabsimulation results show that the fuzzy control can effectively overcome the disturbance and imp rove the con-trol performance. Key words: temperature controller; fuzzy control; simulation analysis 0 引言 在工业生产过程中,温度控制是重要环节,控制精度直接影响系统的运行和产品质量. 在传统的温度控制方法中,一般采取双向可控硅装置,并结合简单控制算法(如PID算法) ,使温度控制实现自动调节. 但由于温度控制具有升温单向性、大惯性、大滞后等特点,很难用数学方法建立精确的模型,因此用传统的控制理论和方法很难达到好的控制效果. 鉴于此,本文拟以模糊控制为基础的温度智能控制系统,采用人工智能中的模糊控制技术,用模糊控制器代替传统的PID 控制器,以闭环控制方式实现对温度的自动控制. 1温度控制系统的硬件组成 在该温度控制装置中,由SCR移相调控晶闸管控制电阻炉来实现对温度的控制. 在温控系统中,通过CAN总线将控制站、操作站和通信处理单元连为一体. 温度控制系统的结构简图如图1所示.

基于MATLAB的模糊控制系统设计

实验一基于MATLAB的模糊控制系统设计 1.1实验内容 (1)基于MATLAB图形模糊推理系统设计,小费模糊推理系统; (2)飞机下降速度模糊推理系统设计; (3)水箱液位模糊控制系统设计及仿真运行。 1.2实验步骤 1小费模糊推理系统设计 (1)在MATLAB的命令窗口输入fuzzy命令,打开模糊逻辑工具箱的图形用户界面窗口,新建一个Madmdani模糊推理系统。 (2)增加一个输入变量,将输入变量命名为service、food,输出变量为tip,这样建立了一个两输入单输出模糊推理系统框架。 (3)设计模糊化模块:双击变量图标打开Membership Fgunction Editor窗口,分别将两个输入变量的论域均设为[0,10],输出论域为[0,30]。 通过增加隶属度函数来进行模糊空间划分。 输入变量service划分为三个模糊集:poor、good和excellent,隶属度函数均为高斯函数,参数分别为[1.5 0]、[1,5 5]和[1.5 10]; 输入变量food划分为两个模糊集:rancid和delicious,隶属度函数均为梯形函数,参数分别为[0 0 1 3]和[7 9 10 10]; 输出变量tip划分为三个模糊集:cheap、average和generous,隶属度函数均为三角形函数,参数分别为[0 5 10]、[10 15 20]和[20 25 30]。

(4)设置模糊规则:打开Rule Editor窗口,通过选择添加三条模糊规则: ①if (service is poor) or (food is rancid) then (tip is cheap) ②if (service is good) then (tip is average) ③if (service is excellent) or (food is delicious) then (tip is generous) 三条规则的权重均为 1. (5)模糊推理参数均使用默认值,通过曲面观察器(Surface Viewer)查看

单级倒立摆的模糊控制以及在MATLAB中的仿真

单级倒立摆的模糊控制以及在MATLAB中的仿真 摘要 倒立摆系统是一个典型的多变量、非线性、强藕合和快速运动的自然不稳定系统。因此倒立摆在研究双足机器人直立行走、火箭发射过程的姿态调整和直升机飞行控制领域中有重要的现实意义,相关的科研成果己经应用到航天科技和机器人学等诸多领域。 本文围绕一级倒立摆系统,采用模糊控制理论研究倒立摆的控制系统仿真问题。仿真的成功证明了本文设计的模糊控制器有很好的稳定性。主要研究工作如下: (1)使用了牛顿力学和Lagrange方程对倒立摆进行数学建模,推导出倒立摆系统传递函数和状态空间方程。 (2)分析了模糊控制理论的数学基础,对模糊控制的方法进行了研究:介绍了模糊子集、模糊关系和模糊推理等相关知识。 (3)介绍了如何利用Simulink建立倒立摆系统模型,特别是利用Mask封装功能,使模型更具灵活性,给仿真带来很大方便。 (4)进行一级倒立摆系统的控制器设计与仿真。通过matlab的Simulink实现倒立摆模糊控制系统的仿真。说明仿真结果的趋向。 关键词:倒立摆模糊控制仿真MATLAB 第一章绪论 1.1 倒立摆系统的重要意义 倒立摆系统是研究控制理论的一种典型实验装置,具有成本低廉,结构简单,物理参数和结构易于调整的优点,是一个具有高阶次、不稳定、多变量、非线性和强藕合特性的不

稳定系统。在控制过程中,它能有效地反映诸如可镇定性、鲁棒性、随动性以及跟踪等许多控制中的关键问题,是检验各种控制理论的理想模型。迄今人们已经利用经典控制理论、现代控制理论以及各种智能控制理论实现了多种倒立摆系统的控制稳定。倒立摆主要有:有悬挂式倒立摆、平行倒立摆、环形倒立摆、平面倒立摆;倒立摆的级数有一级、二级、三级、四级乃至多级;倒立摆的运动轨道可以是水平的,也可以是倾斜的:倒立摆系统己成为控制领域中不可或缺的研究设备和验证各种控制策略有效性的实验平台。同时倒立摆研究也具有重要的工程背景:如机器人的站立与行走类似双倒立摆系统;火箭等飞行器的飞行过程中,其姿态的调整类似于倒立摆的平衡等等。因此对倒立摆控制机理的研究具有重要的理论和实践意义。 1.2 倒立摆系统的控制方法 自从倒立摆产生以后,国内外的专家学者就不断对它进行研究,其研究主要集中在下面两个方面: (1)倒立摆系统的稳定控制的研究 (2)倒立摆系统的自起摆控制研究 而就这两方面而言,从目前的研究情况来看,大部分研究成果又都集中在第一方面即倒 立摆系统的稳定控制的研究。目前,倒立摆的控制方法可分如下几类: (1)线性理论控制方法 将倒立摆系统的非线性模型进行近似线性化处理获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法得到期望的控制器。如1976年Mori etc的把倒立摆系统在平衡点附近线性化利用状念空间的方法设计比例微分控制器。1980年,Furuta etc基于线性化方法,实现了二级倒立摆的控制。1984年,Furuta首次实现双电机三级倒立摆实物控制。1984年,wattes研究了LQR(Linear Quadratic Regulator)方法控制倒立摆。这类方

基于MATLAB的温度模糊控制系统的设计

智能控制》课程论文 基于MATLAB的温度模糊控制系统的设计 成绩:任课教师:田志波班级:测控09-2 作者:胡 兵上交时间:2012.11.05 一、温度模糊控制 在工业生产过程中,温度控制是重要环节,控制精度直接影响系统的运行和产品质量。在传统的温度控制方法中,一般采取双向可控硅装置,并结合简单控制算法(如PID算法),使温度控制实现自动调节。但由于温度控制具有升温单向性、大惯性、大滞后等特点,很难用数学方法建立精确的模型,因此用传统的控制理论和方法很难达到好的控制效果。鉴于此,本文拟以模糊控制为基础的温度智能控制系统,采用人工智能中的模糊控制技术,用 模糊控制器代替传统的PID控制器,以闭环控制方式实现对温度的自动控制。 二、方案设计 利用MATLA的模糊控制箱及Simulink内含的功能元件,建立温度箱温度模糊控制器及其系统的模型。 1. 建立模糊控制器 采用温度偏差,即实际测量温度与给定温度之差e及偏差变化率ed作为模糊控制器的输 入变量,输出p为“PW波(脉冲宽度调制)”控制发热电阻的功率,来调节温度箱内温度的升降,形成典型的双输入单输出二维模糊控制器。

运用MATLA中的FIS编辑器,建立温度箱的Mamdan型模糊控制器,如图1所示。温度偏差e、温度偏差变化率ed和输出变量IZ的语言变量E, Ed, P都选择为{NB, NM NS Z, PS, PM PB},其中P和N分别表示正与负,B, M s分别表示大、中、小,z表示0。 图1模糊控制器模型 2. 建立控制决策及隶属函数 模糊控制决策及解模糊方法采用系统默认值,即极大极小合成运算与重心法解模糊。由模糊控制决策公式可求得输出变量的模糊集合为P =(E X Ed ) X R 本文都采用三角隶属函数,各变量的隶属函数如图2所示。其中,图2(a)为E和Ed,隶属 函数图,E和Ed的量化论域为[-6 , 6];图2(b)为P隶属函数图,EQ的量化论域为[-6 , 6]。不同的系统,其模糊集的隶属函数是不同的,要根据实际情况和实践经验而定。

MATLAB模糊控制仿真程序

clear all; close all; ts=20; sys1=tf([1],[60,1],'inputdelay',80); %生成或转换传递函数模型 dsys1=c2d(sys1,ts,'zoh'); %将连续系统离散化 [num1,den1]=tfdata(dsys1,'v'); %传统PID算法 u_1=0;u_2=0;u_3=0;u_4=0;u_5=0; y_1=0;y_2=0;y_3=0; error_1=0;ei=0; for k=1:1:300 time(k)=k*ts; rin(k)=40; yout(k)=-den1(2)*y_1+num1(2)*u_5; error(k)=rin(k)-yout(k); ei=ei+error(k)*ts; kp=0.8;ki=0.005;kd=3.0; u(k)=kp*error(k)+kd*(error(k)-error_1)/ts+ki*ei; if u(k)>=110 u(k)=110; end if u(k)<=-110 u(k)=-110; end %返回PID参数 u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k); y_3=y_2;y_2=y_1;y_1=yout(k); error_1=error(k); end %获得传递函数模型数据

%模糊PID控制系统 a=newfis('fuzzf'); %创建新的模糊推理系统 f1=1; a=addvar(a,'input','e',[-5*f1,5*f1]); %添加e 的模糊语言变量 a=addmf(a,'input',1,'NB','trimf',[ -7.5 -5 -2.5]); %添加e 的模糊语言变量的隶属度函数(z型) a=addmf(a,'input',1,'NS','trimf', [-5 -2.5 0]); a=addmf(a,'input',1,'ZE','trimf',[-2.5 0 2.5]); a=addmf(a,'input',1,'PS','trimf',[0 2.5 5]); a=addmf(a,'input',1,'PB','smf',[2.5 5 7.5]); f2=1; a=addvar(a,'input','ec',[-10*f2,10*f2]); %添加ec 的模糊语言变量 a=addmf(a,'input',2,'NB','trimf',[-15 -10 -5]); a=addmf(a,'input',2,'NS','trimf',[-10 -5 0]); a=addmf(a,'input',2,'Z','trimf', [-5 -5.551e-017 5]); a=addmf(a,'input',2,'PS','trimf', [0 5 10]); a=addmf(a,'input',2,'PB','smf', [5 10 15]); f3=1.5; a=addvar(a,'output','u',[0*f3,220*f3]); %添加u 的模糊语言变量 a=addmf(a,'output',1,'NB','trimf', [-55 -4.441e-016 55]); a=addmf(a,'output',1,'NS','trimf', [0 55 110]); a=addmf(a,'output',1,'Z','trimf', [55 110 165]); a=addmf(a,'output',1,'PS','trimf', [110 165 220]); a=addmf(a,'output',1,'PB','smf',[165 220 275]); rulelist=[1 1 5 1 1; %编辑模糊规则 1 2 5 1 1; 1 3 5 1 1; 1 4 5 1 1; 1 5 5 1 1; 2 1 5 1 1; 2 2 4 1 1; 2 3 4 1 1; 2 4 3 1 1; 2 5 2 1 1; 3 1 5 1 1; 3 2 4 1 1;

matlab模糊控制实现教学内容

模糊控制作业 一介绍 模糊控制是指基于模糊逻辑描述一个过程的控制算法,是以模糊集合论、模糊语言变量及模糊逻辑推理为基础的,基于被控系统的物理特性,模拟人的思维方式和人的控制经验来实现的一种计算机智能控制。模糊控制器主要嵌有操作人员的经验和直觉知识,是模糊语言形式的控制方法,不需要预先知道被控对象结构、参数,不需要建立被控对象的精确数学模型,并能克服非线性因素、大惯性因素的影响,对调节对象的参数变化不敏感,对对象时变及纯滞后有一定的适应性,即具有较强的鲁棒性。模糊控制器的设计参数容易选择调整。模糊控制系统如图1-1所示 图1-1 模糊控制系统框图 二本作业介绍 1、选定模糊控制器的输入输出变量,并进行量程转换 输入语言变量选为实际浓度与给定值之间的偏差(纸浆浓度偏差)e及纸浆浓度偏差变化率ec,输出语言变量选为阀门开度增量u。首先确定e、ec和u 的基本论域分别为[-1.2%~1.2%]、[-0.6%~0.6%]和[-12~12],选定e、u的模糊集合的论域为[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],ec的模糊集合的论域为[-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7] 2、确定模糊控制器的结构 根据系统输入变量个数可知,应采用采用双输入单输出模糊控制器。(如图2所示)模糊控制器主要包含三个功能环节:用于输入信号处理的模糊量化和模糊化环节,模糊控制算法功能单元,以及用于输出解模糊化的模糊判决环节。

e d/dt 图2 双输入单输出模糊控制器 3、确定各变量的模糊语言取值及相应的隶属函数,即进行模糊化 模糊化是将模糊控制器输入量的确定值转换为相应模糊语言变量值的过程,此相应语言变量均由对应的隶属度函数来定义。 对纸浆浓度偏差e 、纸浆浓度偏差变化率ec 、阀门开度的增量u 进行模糊化,分别用模糊语言变量X 、Y 、Z 进行表示,语言值集合均为{负大,负中,负小,零,正小,正中,正大},用英文缩写进行表示分别为: X={NBe,NMe,NSe,ZOe,PSe,PMe,PBe} Y={ NBec,NMec,NSec,ZOec,PSec,PMec,PBec } Z={ NBu,NMu,NSu,ZOu,PSu,PMu,PBu } 模糊化包括两个任务:第一个任务是进行论域变换,过程参数的实际范围称为基本论域,可以通过变换系数(量化因子)实现由基本论域到量化论域的变换;第二个任务是求得输入对应于语言变量的隶属度。取三角形隶属函数,并取为均非均匀间隔。 a.任务一:求量化因子 e 、ec 和u 的基本论域分别为[-1.2%~1.2%]、[-0.6%~0.6%]和[-12~12],量化论域分别为[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],[-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6],[-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7] 。 纸浆浓度偏差e 的量化因子Ke=6/0.012=500,纸浆浓度偏差变化率ec 的量化因子Kec=6/0.006=1000,通过量化因子即可实现由基本论域到量化论域的变换。 b.任务二:取隶属度函数 选用三角形隶属度函数,如图所示: 图2-1 纸浆浓度偏差e 的隶属度函数 二维 模糊 控制器

基于matlab的洗衣机模糊控制器的设计及仿真

基于matlab的洗衣机模糊控制器的设计及仿真

————————————————————————————————作者:————————————————————————————————日期: ?

基于ma tla b的洗衣机模糊控制器的设计及仿真 以洗衣机洗涤时间的模糊控制系统设计为例,其控制原理是根据衣物上污泥和油脂的程度,调节洗涤时间,该控制是一个开环的模糊决策过程,模糊控制按以下步骤进行: 1. 确定模糊控制器的结构 选用两输入单输出的模糊控制器。控制器的输入为衣物的污泥和油脂,输出 为洗涤时间。 2. 定义输入、输出的模糊集 将污泥分为3个模糊集:SD (污泥少),MD (污泥中),L D(污泥多),取 值为[0,100];将油脂分为3个模糊集:NG (油脂少),MG (油脂中),LG (油脂多),取值为[0,100];将洗涤时间分为5个模糊集:VS (很短),S(短),M(中等),L(长),V L(很长),取值为[0,60]。 3. 定义输入、输出隶属函数 选用如下三角形隶属函数可实现污泥的模糊化。 ? 采用Ma tlab进行仿真,污泥隶属函数仿真结果如图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 μμμμ油脂

相关主题
文本预览
相关文档 最新文档