基于MATLAB模糊逻辑工具箱的模糊控制系统仿真
发布时间:2008/6/3 0:00:00 访问次数:2199
基于matlab模糊逻辑工具箱的模糊控制系统仿真
摘 要: 介绍了用matlab5.1模糊逻辑工具箱设计模糊控制器,并用simulink进行仿真的一般方法。该方法具有简便、直观、高效的特点。最后给出仿真结果。
关键词: matlab软件 模糊控制 计算机仿真
1964年美国的l.a.zadeh教授创立了模糊集合理论,1974年英国的e.hmamdani研制出第一个模糊控制器。模糊控制不需要了解对象的精确数学模型,根据专家知识进行控制,近十年来得到了广泛的应用。
模糊控制器的设计参数主要有:各输入、输出变量模糊子集的隶属度函数,模糊控制规则,输入输出变量的比例变换因子等。要依据设计者的经验和反复调试才能设计出一个比较好的模糊控制器。预先采用计算机仿真方法可尽快了解模糊控制的特性,可缩短设计周期。
二维模糊控制器应用较为广泛。偏差和偏差变化作为模糊控制器的两个输入量。先对它们进行模糊量化处理,得到模糊变量e和ec,按模糊控制规则进行模糊决策得到模糊控制量u,再经过解模糊和比例变换得到实际控制量输出。如图1。
matlab软件提供自动控制、信号处理、神经网络、模糊逻辑、小波分析、图象处理等诸多工具箱,功能强大应用广泛。本文介绍用matlab5.1的模糊逻辑工具箱(fuzzy logic)设计模糊控制器,并用matlab的simulink进行仿真的方法。
1 用matlab模糊逻辑工具箱设计模糊控制器
1.1 隶属度函数的建立
若取e、ec、u的论域均为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},其模糊子集都为{nb,nm,ns,zo,ps,pm.pb}。共有49条模糊控制规则。
在matlab中键入命令fuzzy,进入模糊逻辑编辑窗口fis editor。建立e、ec、u的隶属度函数,有三角形、高斯形、梯形等11种可供选择,在此选常用的三角形(trimf)隶属度函数。图2为e的隶属度函数。
1.2 模糊控制规则及决策方法
控制规则是对专家的理论知识与实践经验的总结。共有49条规则,如表1所示。
在rules editor窗口中输入这49条控制规则。例如:
if e is nb and ec is ps then u is pm
模糊决策一般采用mamdani`s(min-max)决策法。解模糊有重心法、等分法、最大隶属度平均法等5种可供选择,在此采用重心法(centroid)。
如此设计的模糊控制器的输出与输入的关系曲面图如图3所示。显然模糊控制是一种非线性控制。
2 simulink仿真及参数的调整
matlab提供的simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持连续、离散及两者混合的线性和非线性系统。simulink包含多个子模型库,每个子模型库中又包含多个功能模块。利用鼠标可直观地“画”出系统模型,然后直接进行仿真。仿真时可选择各种数值算法、仿真步长等重要参数,并可用模拟示波器将仿真动态结果予以显示,直观高效。
图4为在simulnk环境下,模糊控制器与一阶滞后被控对象组成的采样控制系统的仿真结构图。
如果仿真的控制效果不满意,一般首先调整比例变换因子ke、kec及ku再调整模糊控制规则和隶属度函数。
3 仿真结果
被控对象为
作者:石家庄铁道学院电子工程系050043 亢海伟
杨庆芬 王硕禾 来 源:《电子技术应用》
基于matlab模糊逻辑工具箱的模糊控制系统仿真
摘 要: 介绍了用matlab5.1模糊逻辑工具箱设计模糊控制器,并用simulink进行仿真的一般方法。该方法具有简便、直观、高效的特点。最后给出仿真结果。
关键词: matlab软件 模糊控制 计算机仿真
1964年美国的l.a.zadeh教授创立了模糊集合理论,1974年英国的e.hmamdani研制出第一个模糊控制器。模糊控制不需要了解对象的精确数学模型,根据专家知识进行控制,近十年来得到了广泛的应用。
模糊控制器的设计参数主要有:各输入、输出变量模糊子集的隶属度函数,模糊控制规则,输入输出变量的比例变换因子等。要依据设计者的经验和反复调试才能设计出一个比较好的模糊控制器。预先采用计算机仿真方法可尽快了解模糊控制的特性,可缩短设计周期。
二维模糊控制器应用较为广泛。偏差和偏差变化作为模糊控制器的两个输入量。先对它们进行模糊量化处理,得到模糊变量e和ec,按模糊控制规则进行模糊决策得到模糊控制量u,再经过解模糊和比例变换得到实际控制量输出。如图1。
matlab软件提供自动控制、信号处理、神经网络、模糊逻辑、小波分析、图象处理等诸多工具箱,功能强大应用广泛。本文介绍用matlab5.1的模糊逻辑工具箱(fuzzy logic)设计模糊控制器,并用matlab的simulink进行仿真的方法。
1 用matlab模糊逻辑工具箱设计模糊控制器
1.1 隶属度函数的建立
若取e、ec、u的论域均为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},其模糊子集都为{nb,nm,ns,zo,ps,pm.pb}。共有49条模糊控制规则。
在matlab中键入命令fuzzy,进入模糊逻辑编辑窗口fis editor。建立e、ec、u的隶属度函数,有三角形、高斯形、梯形等11种可供选择,在此选常用的三角形(trimf)隶属度函数。图2为e的隶属度函数。
1.2 模糊控制规则及决策方法
控制规则是对专家的理论知识与实践经验的总结。共有49条规则,如表1所示。
在rules editor窗口中输入这49条控制规则。例如:
if e is nb and ec is ps then u is pm
模糊决策一般采用mamdani`s(min-max)决策法。解模糊有重心法、等分法、最大隶属度平均法等5种可供选择,在此采用重心法(centroid)。
如此设计的模糊控制器的输出与输入的关系曲面图如图3所示。显然模糊控制是一种非线性控制。
2 simulink仿真及参数的调整
matlab提供的simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持连续、离散及两者混合的线性和非线性系统。simulink包含多个子模型库,每个子模型库中又包含多个功能模块。利用鼠标可直观地“画”出系统模型,然后直接进行仿真。仿真时可选择各种数值算法、仿真步长等重要参数,并可用模拟示波器将仿真动态结果予以显示,直观高效。
图4为在simulnk环境下,模糊控制器与一阶滞后被控对象组成的采样控制系统的仿真结构图。
如果仿真的控制效果不满意,一般首先调整比例变换因子ke、kec及ku再调整模糊控制规则和隶属度函数。
3 仿真结果
被控对象为
上一篇:简单而有效的压力控制电路