0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Matlab利用M文件产生模糊控制器

冬至子 来源:算法工程师的学习日志 作者:搬砖工程师domi 2023-07-19 16:22 次阅读

有位朋友咨询了一个问题,想要通过粒子群优化模糊控制的论域范围,在这种情况下,就无法直接通过matlab的fuzzy工具箱来自动生成fis模糊文件,需要通过M文件生成模糊控制器,并写成函数方便调用,

给出一个样例如下:

%%
clc
close all
clear
FIS = newfis('FIS','sugeno');
%%
% 定义输入E:
FIS = addvar(FIS,'input','E',[-10 10]);


FIS = addmf(FIS,'input',1,'Negative','gaussmf',[7 -10]);


FIS = addmf(FIS,'input',1,'Positive','gaussmf',[7 10]);


%%
% 定义输入CE:


FIS = addvar(FIS,'input','CE',[-10 10]);


FIS = addmf(FIS,'input',2,'Negative','gaussmf',[7 -10]);


FIS = addmf(FIS,'input',2,'Positive','gaussmf',[7 10]);


%%
% 定义输出u:


FIS = addvar(FIS,'output','u',[-20 20]);


FIS = addmf(FIS,'output',1,'Min','constant',-20);


FIS = addmf(FIS,'output',1,'Zero','constant',0);


FIS = addmf(FIS,'output',1,'Max','constant',20);


%%
% 定义规则:
% 格式:输入1~ 输入2~ 输出~ 权重(默认为:1)逻辑关系(1=and;2=or)
ruleList = [1 1 1 1 1;...   % Rule 1


       1 2 2 1 1;...   % Rule 2


       2 1 2 1 1;...   % Rule 3


       2 2 3 1 1];    
    
 FIS = addrule(FIS,ruleList);

图片

图片

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15223

    浏览量

    171189
  • MATLAB仿真
    +关注

    关注

    4

    文章

    174

    浏览量

    19638
  • 模糊控制器
    +关注

    关注

    0

    文章

    27

    浏览量

    11480
收藏 人收藏

    评论

    相关推荐

    通过LabVIEW与MATLAB设计模糊参数自整定PID

    PID参数的虚拟控制器。将此控制器用于时控系统,控制效果理想,鲁棒性强。关键词:模糊参数自整定PID MATLAB Simulink 基于L
    发表于 04-03 09:40

    MATLAB环境下的模糊参数自整定PID控制

    的灵活、适应性强的优点,又具有PID控制精度高的特点。模糊控制器是当前控制领域的研发热点之一,其研发的方法不尽相同。本文阐述了利用LabVI
    发表于 04-17 09:40

    MATLAB模糊控制器的设计

    MATLAB设计模糊控制器并用simulink仿真
    发表于 08-12 14:15

    如何使用matlab function生成.m文件

    有大佬知道模糊控制的模型如何使用matlab function生成.m文件吗?
    发表于 03-15 16:22

    labview模糊控制器和pid

    本帖最后由 夜魄Y 于 2020-3-24 07:41 编辑 如何将labview中的模糊控制器和pid结合在一起,利用模糊化后自动调整pid的三个参数Kp、KI、Kd,希望有简
    发表于 03-17 08:41

    模糊控制器进行直流电动机的速度控制Matlab代码​相关资料分享

    下载使用模糊控制器进行直流电动机的速度控制Matlab代码,模糊控制器进行直流电动机的速度
    发表于 06-28 08:03

    利用Matlab工具箱设计模糊控制器步骤

    方便。下面将根据模糊控制器设计步骤,一步步利用Matlab工具箱设计模糊控制器。1、
    发表于 09-07 07:19

    基于Matlab模糊PID控制器的设计和仿真

    本文以误差和误差变化率为输入,利用模糊推理的方法实现了对PID参数的在线自动整定,并且在MATLAB环境下对该控制器进行了设计和仿真。从仿真结果可以看出,参数自整定
    发表于 08-07 08:31 169次下载

    基于MATLAB模糊逻辑工具箱的模糊控制系统仿真

    介绍了用MATLAB模糊逻辑工具箱设计模糊控制器! 并用SIMULANK进行仿真的一般方法" 该方法具有简便# 直观# 高效的特点" 最后给出仿真结果"
    发表于 07-19 17:03 45次下载

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

    针对温度控制系统的时变、滞后等非线性特性及控制比较复杂的问题,提出了一种模糊控制方案以改善系统的控制性能. 该方案采用mamdani推理型
    发表于 09-13 10:59 131次下载
    <b class='flag-5'>模糊</b>温度<b class='flag-5'>控制器</b>的设计与<b class='flag-5'>Matlab</b>仿真

    模糊温度控制器的设计及其Matlab仿真

    针对温度控制系统的时变、滞后等非线性特性及控制比较复杂的问题提出了一种模糊控制方案以改善系统的控制性能. 该方案采用mamdani推理型
    发表于 09-14 15:30 56次下载
    <b class='flag-5'>模糊</b>温度<b class='flag-5'>控制器</b>的设计及其<b class='flag-5'>Matlab</b>仿真

    基于Matlab模糊控制器HDL代码的自动生成

    该方法分4个步骤:(1)利用Matlab的Fuzzy Logic工具箱设计模糊控制器。(2)将模糊控制器
    发表于 01-11 10:27 30次下载
    基于<b class='flag-5'>Matlab</b><b class='flag-5'>模糊</b><b class='flag-5'>控制器</b>HDL代码的自动生成

    matlab模糊控制工具箱的使用

    matlab模糊控制工具箱的使用matlab模糊控制工具箱的使用。
    发表于 05-04 14:09 17次下载

    使用Matlab进行模糊自整定PID控制器系统的仿真分析

    模糊控制与PID控制结合,利用模糊推理方法实现对PID参数的在线自整定。使用MATLAB对系统
    发表于 11-13 15:16 41次下载
    使用<b class='flag-5'>Matlab</b>进行<b class='flag-5'>模糊</b>自整定PID<b class='flag-5'>控制器</b>系统的仿真分析

    使用Matlab实现模糊控制的详细资料说明

    Matlab模糊控制工具箱为模糊控制器的设计提供了一种非常便捷的途径,通过它我们不需要进行复杂的模糊
    发表于 01-17 08:00 5次下载
    使用<b class='flag-5'>Matlab</b>实现<b class='flag-5'>模糊</b><b class='flag-5'>控制</b>的详细资料说明