前言
模糊控制提出至今已有半个世纪,但在控制领域至今仍未工程上广泛应用。但学习了解还是很有必要的,matlab/simulink有专门的模糊控制的库,足以说明其重要性,本文通过简单的simulink模糊PID控制为例,对matlab模糊控制进行介绍。
模糊控制
之所以称为模糊,意思就是你的输入或对应的输出并不具体,具有模糊性。模糊控制器的构成主要包括输入模糊化,模糊推理,去模糊化三个主要环节。
模糊控制系统结构
模糊化
模糊化主要将数字形式的输入转化为模糊语言标识的值,该过程一般隶属函数作为模糊化函数,函数由三角形、梯形、高斯型等等,在matlab命令窗口输入’fuzzy‘命令可打开模糊设计器界面。
模糊设计器
输入模糊化
模糊推理(知识库)
该部分主要根据输入的信号,建立相应的输出规则,模糊规则主要为‘if...then...’的条件语句形式,常用的模糊规则以表的形式表示出来如下(E和EC为输入):
模糊规则表
常用的模糊语言变量符号意义如下:
负大 NB(Negative Big)
负中 NM(Negative Medium)
负小 NS(Negative Small)
零 ZE(Zero)
正小 PS(Positive Small)
正中 PM(Positive Medium)
正大 PB(Positive Big)
去模糊化
该过程主要是反模糊的过程,即在前两步基础上,选择合适的输出值,一般有三种方法确定具体输出值:最大隶属度函数法、重心法、加权平均法。
模糊PID
模糊PID控制,即利用模糊逻辑并根据一定的模糊规则对PID的参数进行实时的优化,以克服传统PID参数无法实时调整PID参数的缺点,当然参数合适的情况下。
模糊PID控制框图
simulink模型实现
根据控制原理框图,搭建传统PID和模糊PID控制模型并进对比,模型如下:
整体模型
模糊控制部分
模糊控制部分
FIS Edit界面
模糊规则
仿真结果
从图中(红色:原始信号,黄色:PID,蓝色:fuzzy PID)可以看出模糊PID控制的优势明显。
最后,为方便初学者对模糊控制学习,matlab也提控了相应的例子,在matlab命令窗口输出sllookuptable便可打开,赶紧尝试起来:
matlab模糊pid demo
结语
当然,限于篇幅及时间,作者仅仅,只能粗略地介绍一下模糊控制。另外还有模糊规则观察器、模糊曲面观察器、输入输出变量曲线,当然还可以通过查询表、m语言等方式实现模糊控制器,在此不作一一介绍。
推荐阅读
MMC最近电平逼近(NLM)算法及子模块均压算法仿真
MMC环流抑制及子模块均压算法(一)
[模型]基于Simulink的MMC仿真模型(二)
一种定功率控制的光伏并网方法仿真
基于级联H桥拓扑的SVG仿真
整流器的直接功率控制(DPC)Simulink仿真
AC-DC及AC-DC-AC变换电路仿真
双级式储能并网仿真
单级式三相光伏并网仿真
基于simulink的静止无功发生器(SVG)仿真
分布式光储互补系统建模与仿真介绍
三相并联型有源滤波器(APF)控制仿真
基于Simulink的单相有源滤波器(APF)仿真
基于Simulink的三相逆变并网仿真
三相光伏并网Simulink仿真介绍
基于Simulink的光伏单相并网控制仿真
基于Simulink的三电平VSC-HVDC仿真
分布式光储互补系统建模与仿真介绍(2)
电力电子变压器(PET)简单模型(一)
基于Simulink的LCL型并网逆变器控制仿真
天青色等烟雨,而我在等你,等你轻轻点右下的 好看