我是靠谱客的博主 专一小海豚,最近开发中收集的这篇文章主要介绍雷达模糊函数 matlab_模糊PID控制与Simulink仿真(二),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  42048bd21b2c5fd4660be4d0d5e64263.png

本文将带领大家在Matlab中使用fuzzy工具箱搭建一个PID模糊控制器。在阅读本文之前,请确保你已经安装:

1.  Matlab

2.  Fuzzy Logic Toolbox

相关的安装教程网络上已经有很多了,在这里就不多赘述。

创建PID模糊控制器

◾ 新建一个模糊控制器

    (滑动查看具体步骤)

启动Matlab,在命令行窗口输入fuzzy以启动Fuzzy Logic Designer。

55cb1387585204ede5201c8eb7ed675a.png

创建输入输出量

我们创建两个输入量,三个输出量,分别对应误差E,误差变化率Ec,Kp,Ki,KD。

431b2f88c04a1ba5a9524a94a31ded89.png 7268f1dbe4d1088196da207432cb418d.png

编辑输入/输出量

以输入量误差E为例,双击(黄色方块)打开Memebership Function Editor。

12c8d5a4bf7649ffa6219ecfe44fa4c9.png

修改论域

在上一篇文章中我们假定了E的论域是(-3,3),那现在我们就以此数据为例来修改它。

61093933e7fc3a775c748db9b0d7101e.png

◾划分模糊等级

    (滑动查看具体步骤)

点击Remove All MFs,删除现有的所有模糊等级

0647ad952e97f9f4502c8cabe706cd0f.png

再点击Add MFs,添加7个模糊等级

f856f63fba97a34847368a5bf7330f98.png

编辑每一个模糊等级对应的隶属度函数。用户可以自由指定隶属度函数的类型以及隶属度函数的函数图像。      

注意别忘了修改名字哦!

8716ddad5a1fadecc1597c656391e321.png

重复1-3步,编辑剩余的输入/输出量

◾ 创建模糊规则表

    (滑动查看具体步骤)

找到上一篇文章中提供的PID模糊规则表

3bc28a3e4de370b43622d71501b3cfc2.png

回到Fuzzy Logic Designer的主界面,点击Edit-Rules

7c5aecd51a8734184db03cc52ab48b26.png

照上面的模糊规则表,把总计49的数据录入到软件中。

举个例子,拿第一条规则来说,当E是NB,EC是NB时,KP是PB,KI是ZO,KD是PS。同时我们还需要注意,if条件的连接是and关系。

81d9631ebe6b2cd04c50804650d9e2bf.png

到这里,我们就已经成功地在Matlab中创建了一个PID模糊控制器了,注意最后不要忘记保存哦,保存好的fis文件在下一篇文章中会应用在Simulink中。

2046741986af6d87975842da5aa44b6c.gif

简单测试PID模糊控制器

当所有规则全部录入完成时,我们可以使用软件进行简单的测试验证这个模糊控制器。   还是在刚刚的窗口,我们点击View-Rules,打开Rules Viewer。

当我们在下方Input栏给误差E赋值为-1,误差变化率Ec赋值为0,按回车键,便可看到程序计算出来的KP,KI,KD的数值。不仅如此,我们同时还可以清晰的看到匹配的规则和应用的隶属度函数,十分方便快捷。

0a886c5b436598da823932150dee464b.png 86a3d8dc4911fe3cb32b7fa7c162d805.gif

引用

杨益兴, 崔大连, 周爱军. 模糊自适应 PID 控制器及 Simulink 仿真实现[ J]. 舰船电子工程, 2010 (4): 127-130. [online] Available at: 

https://wenku.baidu.com/view/3e0f8ae9856a561252d36f2d.html

Ekkone. 模糊PID基本原理及matlab仿真实现(新手!新手!新手!) [online] Available at: 

https://blog.csdn.net/qq_41913616/article/details/82020685

作者:李昱昊

编辑/校订:崔乐怡

排版:黎馨泽

长按扫码关注我们

77071fae291362217a89332575f2ab45.png

最后

以上就是专一小海豚为你收集整理的雷达模糊函数 matlab_模糊PID控制与Simulink仿真(二)的全部内容,希望文章能够帮你解决雷达模糊函数 matlab_模糊PID控制与Simulink仿真(二)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部