模糊控制器设计实验

模糊控制器设计

一、定义

模糊控制是模仿人的思维方式和人的控制经验来实现的一种控制。把模糊集合的理论应用于控制就可以把人的经验形式化,在控制过程中实现模糊推理与决策

二、步骤

1.确定输入输出变量
2.设计控制规则
3.确立模糊化和非模糊化方法
4.选择输入输出变量的论域并确定参数
5.编程

三、实验过程
1.改变输入变量e、ec的模糊隶属形态
2.制定规则
3.输出结果

四、代码

%模糊控制器设计
a=newfis('fuzzf');                   %创建新的模糊推理系统

%输入1
f1=1; 
a=addvar(a,'input','e',[-5*f1,5*f1]);                   
 %添加 e 的模糊语言变量
a=addmf(a,'input',1,'NB','zmf',[-3*f1,-1*f1]);          
 %添加 e 的模糊语言变量的隶属度函数(z型)
a=addmf(a,'input',1,'NM','trimf',[-3*f1,-2*f1,0]);      
  %隶属度函数为三角形
a=addmf(a,'input',1,'NS','trimf',[-3*f1,-1*f1,1*f1]); 
a=addmf(a,'input',1,'Z','trimf',[-2*f1,0,2*f1]); 
a=addmf(a,'input',1,'PS','trimf',[-1*f1,1*f1,3*f1]);
a=addmf(a,'input',1,'PM','trimf',[0,2*f1,3*f1]);
a=addmf(a,'input',1,'PB','smf',[1*f1,3*f1]); 

%输入2
f2=1;
a=addvar(a,'input','ec',[-5*f2,5*f2]);                   
 %添加 ec 的模糊语言变量
a=addmf(a,'input',2,'NB','zmf',[-3*f2,-1*f2]); 
a=addmf(a,'input',2,'NM','trimf',[-3*f2,-2*f2,0]);
a=addmf(a,'input',2,'NS','trimf',[-3*f2,-1*f2,1*f2]);
a=addmf(a,'input',2,'Z','trimf',[-2*f2,0,2*f2]);
a=addmf(a,'input',2,'PS','trimf',[-1*f2,1*f2,3*f2]);
a=addmf(a,'input',2,'PM','trimf',[0,2*f2,3*f2]);
a=addmf(a,'input',2,'PB','smf',[1*f2,3*f2]); 

%输出
f3&#
  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值