fuzzy_control模糊控制算法
- 格式:doc
- 大小:320.00 KB
- 文档页数:2
模糊逻辑跟踪控制
模糊控制的基本原理框图如下:
图1 模糊控制的基本原理框图
模糊控制器是模糊控制系统的核心,一个模糊控制系统的性能优劣主要取决于模糊控制器的结构、所采用的模糊控制规则、合成推理算法,以及模糊决策的方法等因素。
文本对应的程序,采用单变量二维模糊控制器,输入分别是 误差和误差的倒数,输出为控制量。
其中基模糊控制器结构如图2所示,模糊规则表如表1所示。
de dt
图2模糊控制器结构
表1 模糊规则表
在本仿真程序中,被控对象为:5
3245.235*10()+87.35 1.047*10G s s s s
=+
采样时间为1ms ,采用z 变换进行离散化,经过z 变换后的离散化对象为:
()(2)(1)(3)(2)(4)(3)(2)(1) (3)(2)(4)(3)
yout k den yout k den yout k den yout k num u k num u k num u k =------+-+-+-
其中,反模糊化采用“Centroid”方法,方波响应及控制器输出结果如图3和图4所示:。
第六章 模糊控制算法§6.1 §6.2 §6.3 §6.4 §6.5 §6.6 §6.7 模糊数学基础知识 模糊控制概述 精确量的Fuzzy化 模糊控制算法的设计 输出信息的Fuzzy判决 Fuzzy控制器查询表的建立 Fuzzy控制器实例1§6.1 模糊数学基础知识6.1.1 普通集合及其运算规则 6.1.2 Fuzzy集合 6.1.3 Fuzzy关系矩阵的运算26.1.1 普通集合及其运算规则:1.基本概念:UAB①论域:指在考虑一个具体问题时,先将议题局限在 一定范围内,这个范围称为论域,常用U表示; ②元素: 指论域中的每个对象,常用小写字母 a、b、c表示; ③ 集合:指对于一个给定论域,其中具有某种相同 属性的、确定的、可以彼此区别的元素的 全体,常用A、B、C、X、Y、Z等表示。
例:论域为U = { 1,2,3,4,5,6 } 偶数集合A = { 2,4,6 },奇数集合B = { 1,3,5 }32.普通集合的表示法:① 列举法(枚举法):当集合的元素数目有限时,可将其中的元素一 一列出,并用大括号括起,以表示集合。
例:论域为U = { 1,2,3,4,5,6 },则用列举法表示 偶数集合A = { 2,4,6 },奇数集合B = { 1,3,5 }② 描述法(定义法):当集合的元素数目无限时,可通过元素的定义来 描述 , 即A={x | p(x)}, 其中x为集合A的元素(x∈A), p(x)是x应满足的条件。
例:A = {x | 25 ≤ x ≤ 50 } ,U ={ x |x≥ 0的实数 }4③ 特征函数法:由于元素a与集合A的关系只能有a∈A和a∈A 两种情况,故集合A可以通过函数 1, a∈A CA(a)= 来表示。
0, a∈A CA(a)称为集合A的特征函数,它只能取0,1两个值。
模糊控制理论 Fuzzy Control在传统的控制领域里,控制系统动态模式的精确与否是影响控制优劣的最主要关键, 系统动态的信息越详细,则越能达到精确控制的目的。
然而,对于复杂的系统,由于 变量太多,往往难以正确的描述系统的动态,于是工程师便利用各种方法来简化系统 动态,以达成控制的目的,但却不尽理想。
换言之,传统的控制理论对于明确系统有 强而有力的控制能力,但对于过于复杂或难以精确描述的系统,则显得无能为力了。
因此便尝试着以 模糊数学 来处理这些控制问题。
自从Zadeh 发展出模糊数学之后,对于不明确系统的控制有极大的贡献,自七 年代以后,便有一些实用的模糊控制器相继的完成,使得我们在控制领域中又向前迈 进了一大步,在此将对模糊控制理论做一番浅介。
[编辑本段]概述3.1概念图3.1为一般控制系统的架构,此架构包含了五个主要部分,即 :定义变量、模糊化、知识库、逻辑判断及反模糊化,底下将就每一部分做简单的说明:(1) 定义变量:也就是决定程序被观察的状况及考虑控制的动作,例如在一般控 制问题上,输入变量有输出误差 E 与输出误差之变化率 CE ,而控制变量则为下一个状态之输入 U 。
其中E 、CE 、U 统称为模糊变量。
xn JftfHZItwj? * }D7MMnstM^r I »?R |pane*n ・R ・M |JTI 于■•|| ----------------------------- ------ - ----模糊控制(2) 模糊化(fuzzify ):将输入值以适当的比例转换到论域的数值,利用口语化变量来描述测量物理量的过程,依适合的语言值( linguisitc value )求该值相对之隶属度,此口语化变量我们称之为模糊子集合( fuzzy subsets )。
(3) 知识库:包括数据库( data base )与规则库(rule base )两部分,其中数据库是提供处理模糊数据之相关定义;而规则库则藉由一群语言控制规则描述控制目标和策略。
不同PID控制算法的温控器在温度控制中的应用仪表制造有限公司工程师在本文介绍各种PID控制算法的温控器的控制特性、功能及主要应用场合,对大家合理选用用于温度控制的温控器具有很强实用性。
常用温控器控制算法包括常规PID、模糊控制、神经网络、Fuzzy-PID、神经网络PID、模糊神经网络、遗传PID及广义预测等PID算法。
常规PID控制易于建立线性温度控制系统被控对象模型;模糊控制基于规则库,并以绝对或增量形式给出控制决策;神经网络控制采用数理模型模拟生物神经细胞结构,并用简单处理单元连接成复杂网络;Puzzy-PID为线性控制,且结合模糊与PID控制优点。
1、引言温度控制系统是变参数、有时滞和随机干扰的动态系统,为达到满意的控制效果,具有许多控制方法。
故对几种常见的控制方法及其优缺点进行了分析与比较。
2、常见温度控制方法2.1 常规经典PID控制算法的PID控制PID控制即比例、积分、微分控制,其结构简单实用,常用于工业生产领域。
原理如图1。
图1 常见PID控制系统的原理框图明显缺点是现场PID参数整定麻烦,易受外界干扰,对于滞后大的过程控制,调节时间过长。
其控制算法需要预先建立模型,对系统动态特性的影响很难归并到模型中。
在我国大多数PID调节器厂家生产的温控器均为常规经典PID控制算法。
2.2 模糊PID控制算法的PID控制模糊控制(Fuzzy Control)是以模糊集合论、模糊语言变量及模糊逻辑推理为基础的计算机控制。
原理如图2。
昌晖仪表YR-GFD系列傻瓜式PID调节器使用的就是模糊控制PID控制算法。
图2 模糊控制系统原理框图2.3 神经网络PID控制算法的PID控制神经网络控制采用数理模型的方法模拟生物神经细胞结构,用简单处理单元连接形成各种复杂网络,并采用误差反向传播算法(BP)。
原理如图3:图3 神经网络控制系统的原理框图2.4 Fuzzy-PID控制算法的PID控制模糊控制不需知道被控对象的精确模型,易于控制不确定对象和非线性对象。
模糊pid控制 python实现模糊PID控制(Fuzzy PID control)是一种基于模糊逻辑的控制方法,它结合了模糊控制和经典PID控制的优点,可以在复杂和不确定的环境中实现精确的控制。
本文将介绍模糊PID控制的原理、实现方法以及在Python中的应用。
一、模糊PID控制的原理PID控制是一种经典的控制方法,它通过比较实际输出与期望输出之间的误差,根据比例、积分和微分三个参数进行调节,使系统输出逐渐趋近于期望值。
然而,传统的PID控制方法在面对非线性、时变和不确定性系统时表现不佳。
模糊PID控制通过引入模糊逻辑来解决传统PID控制的问题。
模糊逻辑是一种能够处理模糊信息的数学方法,它可以将模糊的输入映射到模糊的输出。
模糊PID控制器通过将误差、误差变化率和误差积分三个输入量模糊化,然后根据一组模糊规则进行推理,得到模糊输出。
最后,通过解模糊化的方法将模糊输出转化为具体的控制量。
二、模糊PID控制的实现方法1. 模糊化模糊化是将具体的输入量映射到模糊集合上的过程。
常用的模糊化方法有三角隶属函数、梯形隶属函数和高斯隶属函数等。
根据具体的问题和经验,选择合适的隶属函数进行模糊化。
2. 规则库规则库是模糊PID控制的核心。
它包含了一组模糊规则,用于根据输入量的模糊值推理出输出量的模糊值。
模糊规则一般采用IF-THEN的形式,例如“IF 误差是A1 AND 误差变化率是B2 THEN 输出是C3”。
规则库的设计需要根据具体问题进行,可以基于经验或者专家知识。
3. 推理机制推理机制是根据模糊规则进行推理的过程。
常用的推理方法有最大最小合成、模糊推理和模糊推理和等。
推理机制将模糊输入与规则库进行匹配,然后根据匹配的程度计算出模糊输出的隶属度。
4. 解模糊化解模糊化是将模糊输出转化为具体的控制量的过程。
常用的解模糊化方法有最大隶属度法、面积法和重心法等。
解模糊化方法根据模糊输出的隶属度分布,计算出具体的控制量。
模糊控制算法研究——实验报告一、实验目的1、通过本次综合设计,进一步了解模糊控制的基本原理、模糊模型的建立和模糊控制的设计过程。
2提高学生有关控制系统的程序设计能力。
3熟悉MATLAB语言以及在智能控制设计中的应用。
二、实验内容1、用MATLAB中的SIMULINK工具箱,组成一个模糊控制系统。
如图:2、采用模糊控制算法,设计出能跟踪给定输入的模糊控制器,对被控系统进行仿真,绘制出系统的阶跃响应曲线。
3、改变模糊控制器中模糊变量的隶属度函数,分析隶属度函数和模糊控制规则对模糊控制效果的影响。
三、实验步骤1、启动SIMULINK。
打开MATLAB程序,并在该窗口键入SIMULINK来运行SIMULINK,或单击工具栏上SIMULINK按钮,这时SIMULINK就显示其所包含的子模块库。
2、创建一个新模型。
在FILE菜单中选择NEW-MODEL,SIMULINK就创建一个新的窗口。
3、向窗口复制模块。
例如,复制阶跃输入Step模块,具体操作为:在SIMULINK 窗口中用鼠标单击Source图标,这样就打开了Source Library中所有的模块;要从Source Library中复制Step模块,可以用鼠标单击该模块,然后拖动鼠标把它移到自己的模型窗口中,并在所需要放的位置松开鼠标,这时Step模块就出现在自己的模型窗口中。
其他需要复制的模块可参考上图,这些模块分别在Math库、Continuous库、Discontinuous库、Signal Routing库以及Sink库中找到,方法同Step模块。
在MATLAB的命令窗口输入命令Fuzzy,进入图形用户界面(GUI)窗口。
根据控制规则和所选择的隶属度函数,利用模糊推理系统(FIS)编辑器可以建立一个FIS文件,取名为fuzzycontrol.fis。
在Fuzzy Logic Toolbox中将Fuzzy Logic Controller模块找到,用鼠标将相应模块拖入窗口中即可。
模糊逻辑跟踪控制
模糊控制的基本原理框图如下:
图1 模糊控制的基本原理框图
模糊控制器是模糊控制系统的核心,一个模糊控制系统的性能优劣主要取决于模糊控制器的结构、所采用的模糊控制规则、合成推理算法,以及模糊决策的方法等因素。
文本对应的程序,采用单变量二维模糊控制器,输入分别是 误差和误差的倒数,输出为控制量。
其中基模糊控制器结构如图2所示,模糊规则表如表1所示。
de dt
图2模糊控制器结构
表1 模糊规则表
在本仿真程序中,被控对象为:5
3245.235*10()+87.35 1.047*10G s s s s
=+
采样时间为1ms ,采用z 变换进行离散化,经过z 变换后的离散化对象为:
()(2)(1)(3)(2)(4)(3)(2)(1) (3)(2)(4)(3)
yout k den yout k den yout k den yout k num u k num u k num u k =------+-+-+-
其中,反模糊化采用“Centroid”方法,方波响应及控制器输出结果如图3和图4所示:。