在matlab中用代码绘制模糊控制器里面的隶属度函数

a=readfis(‘模糊系统名称’);
plotmf(a,‘input’,1) 绘制输入到模糊系统的第一个变量的隶属度函数
plotmf(a,‘input’,2) 绘制输入到模糊系统的第二个变量的隶属度函数
plotmf(a,‘output’,1) 绘制输入到模糊系统输出的第一变量的隶属度函数
gensurf(a)
绘制模糊系统输入和输出的三维mapp图。
再在Figure编辑器中对图片的属性进行设置,出图。

  • 7
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在MATLAB中用命令行搭建模糊逻辑控制,可以按照以下步骤操作: 1. 定义输入变量和输出变量。例如,假设我们要设计一个温度控制,输入变量为温度误差(e)和温度变化率(ec),输出变量为加热功率(p)。 2. 定义模糊集和隶属函数。例如,可以定义三个模糊集:负大(NL)、零(ZL)和正大(PL),分别表示输入变量的值比较小、适中和比较大。对于每个模糊集,需要定义隶属函数。可以选择三角形隶属函数或高斯隶属函数等。 3. 构建模糊规则。根据经验或专家知识,可以构建一组模糊规则,将输入变量的值与输出变量的值联系起来。例如,可以定义如下规则: 如果 e 是 NL 和 ec 是 NL,则 p 是 PL。 如果 e 是 NL 和 ec 是 ZL,则 p 是 PL。 如果 e 是 NL 和 ec 是 PL,则 p 是 ZL。 如果 e 是 ZL 和 ec 是 NL,则 p 是 PL。 如果 e 是 ZL 和 ec 是 ZL,则 p 是 ZL。 如果 e 是 ZL 和 ec 是 PL,则 p 是 NL。 如果 e 是 PL 和 ec 是 NL,则 p 是 ZL。 如果 e 是 PL 和 ec 是 ZL,则 p 是 NL。 如果 e 是 PL 和 ec 是 PL,则 p 是 NL。 4. 创建模糊控制对象。使用命令fuzzylogic.controller创建一个模糊控制对象,并设置输入变量、输出变量、模糊集和模糊规则等属性。例如,可以使用如下命令创建一个模糊控制对象: controller = fuzzylogic.controller; controller.input('error', [-10 10]); controller.input('error_change', [-5 5]); controller.output('power', [0 100]); controller.input('error').membershipfunction('trimf', [-10 -5 0]); controller.input('error').membershipfunction('trimf', [-5 0 5]); controller.input('error').membershipfunction('trimf', [0 5 10]); controller.input('error_change').membershipfunction('trimf', [-5 -2 0]); controller.input('error_change').membershipfunction('trimf', [-2 0 2]); controller.input('error_change').membershipfunction('trimf', [0 2 5]); controller.rule([1 1], 3); controller.rule([1 2], 3); controller.rule([1 3], 2); controller.rule([2 1], 3); controller.rule([2 2], 2); controller.rule([2 3], 1); controller.rule([3 1], 2); controller.rule([3 2], 1); controller.rule([3 3], 1); 5. 输入变量值,获取输出变量值。使用命令fuzzylogic.eval计算输出变量值。例如,可以使用如下命令输入温度误差为-2,温度变化率为1,并获取加热功率的推荐值: input = [ -2 1 ]; output = fuzzylogic.eval(controller, input); 以上就是在MATLAB中用命令行搭建模糊逻辑控制的步骤。需要注意的是,以上示例仅供参考,实际应用中需要根据具体问题进行调整和优化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值