基于模糊控制的Simulink仿真详解

Simulink的介绍

Simulink是一个模块图环境,用于多域仿真以及基于模型的设计。它支持系统设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证。 Simulink提供图形编辑器、可自定义的模块库以及求解器,能够进行动态系统建模和仿真。
SIMULINK模块库按功能进行分类,包括以下8类子库:
Continuous(连续模块)
Discrete(离散模块)
Function&Tables(函数和平台模块)
Math(数学模块)
Nonlinear(非线性模块)
Signals&Systems(信号和系统模块)
Sinks(接收器模块)
Sources(输入源模块)
连续模块(Continuous) continuous.mdl
Integrator:输入信号积分
Derivative:输入信号微分
State-Space:线性状态空间系统模型
Transfer-Fcn:线性传递函数模型
Zero-Pole:以零极点表示的传递函数模型
Memory:存储上一时刻的状态值
Transport Delay:输入信号延时一个固定时间再输出
Variable Transport Delay:输入信号延时一个可变时间再输出
离散模块(Discrete) discrete.mdl
Discrete-time Integrator:离散时间积分器
Discrete Filter:IIR与FIR滤波器
Discrete State-Space:离散状态空间系统模型
Discrete Transfer-Fcn:离散传递函数模型
Discrete Zero-Pole:以零极点表示的离散传递函数模型
First-Order Hold:一阶采样和保持器
Zero-Order Hold:零阶采样和保持器
Unit Delay:一个采样周期的延时
Function&Tables(函数和平台模块) function.mdl
Fcn:用用户自定义的函数(表达式)进行运算
MATLAB Fcn:利用matlab的现有函数进行运算
S-Function:调用自编的S函数的程序进行运算
Look-Up Table:建立输入信号的查询表(线性峰值匹配)
Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配)
Math(数学模块) math.mdl
Sum:加减运算
Product:乘运算
Dot Product:点乘运算
Gain:比例增益运算
Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数
Trigonometric Function:三角函数,包括正弦、余弦、正切等
MinMax:最值运算
Abs:取绝对值
Sign:符号函数
Logical Operator:逻辑运算
Relational Operator:关系运算
Complex to Magnitude-Angle:由复数输入转为幅值和相角输出
Magnitude-Angle to Complex:由幅值和相角输入合成复数输出
Complex to Real-Imag:由复数输入转为实部和虚部输出
Real-Imag to Complex:由实部和虚部输入合成复数输出
Nonlinear(非线性模块) nonlinear.mdl
Saturation:饱和输出,让输出超过某一值时能够饱和。
Relay:滞环比较器,限制输出值在某一范围内变化。
Switch:开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否则输出由第三个输入端而来。
Manual Switch:手动选择开关
Signal&Systems(信号和系统模块) sigsys.mdl
In1:输入端。
Out1:输出端。
Mux:将多个单一输入转化为一个复合输出。
Demux:将一个复合输入转化为多个单一输出。
Ground:连接到没有连接到的输入端。
Terminator:连接到没有连接到的输出端。
SubSystem:建立新的封装(Mask)功能模块
Sinks(接收器模块) sinks.mdl
Scope:示波器。
XY Graph:显示二维图形。
To Workspace:将输出写入MATLAB的工作空间。
To File(.mat):将输出写入数据文件。
Sources(输入源模块) sources.mdl
Constant:常数信号。
Clock:时钟信号。
From Workspace:来自MATLAB的工作空间。
From File(.mat):来自数据文件。
Pulse Generator:脉冲发生器。
Repeating Sequence:重复信号。
Signal Generator:信号发生器,可以产生正弦、方波、锯齿波及随意波。
Sine Wave:正弦波信号。
Step:阶跃波信号。
Ramp: 斜坡信号。

Simulink界面

打开MATLAB,点击图中Simulink标识进入界面
选择第一个,新建一个Simulink

建立Simulink

根据如图所示要求建立相应的Simulink

1.根据图中所示找到对应的图标
方法一:直接查找

方法二:在搜索框输入名称进行查找
2.设置参数
将对应图标拖动到命令框后,双击该图标根据图中数据设置参数
如Mux的参数设置如下

Simulink的详解

根据图中信息可知我们建立的是一个双输入单输出的模糊控制系统。
首先是建立设立一个位置指令,其取正弦信号即

然后将该信号通过一个SUM器分为两部分信号

两部分信号中有一部分通过求导处理再与另一部分信号进行混合

进行模糊化和模糊控制算法

设置被控对象

设置输出变量y。

我们将仿真时间设置为3s,然后利用Clock进行链接仿真
clock中的时间就是按照仿真时间变化的,所以clock发出的是变量值,而且是递增的。

将仿真结果保存在t中。

最终当Clock中数字为3时完成仿真。

基于模糊控制的Simulink仿真详解相关推荐

  1. SVPWM控制技术+Matlab/Simulink仿真详解

    文章目录 前言 一.SVPWM的控制原理 二.空间矢量的概念 三.电压与磁链空间矢量的关系 四.三相逆变器的基本电压空间矢量 五.SVPWM 算法的合成原理 六.SVPWM 算法推导 6.1.七段式S ...

  2. PWM控制技术+Simulink仿真详解

    想要理解SVPWM控制技术,首先要了解PWM控制技术. PWM控制技术就是对脉冲宽度进行调制的技术,通过对一系列脉冲宽度进行调制来等效获得所需要的波形(包括形状和幅值). PWM控制的基本原理:冲量( ...

  3. ncverilog脚本_NC-Verilog仿真详解

    ncverilog仿真详解 发表在ASIC/FPGA/汇编, 学习笔记, 编程开发 | 由阿布 | 十一月26, 2011 | 0标签: ncverilog, 仿真 数位IC工具简介--Simulat ...

  4. 基于php下载文件的详解

    基于php下载文件的详解 本篇文章是对php下载文件进行了详细的分析介绍,需要的朋友参考下 php下载文件,比如txt文件. 出现的效果就是,弹出浏览器自带的下载框,出现另存为操作.有时候会出现内存溢 ...

  5. 分布式锁(基于redis和zookeeper)详解

    分布式锁(基于redis和zookeeper)详解 https://blog.csdn.net/a15835774652/article/details/81775044 为什么写这篇文章? 目前网上 ...

  6. python的图书管理项目教程_基于python图书馆管理系统设计实例详解

    写完这个项目后,导师说这个你完全可以当作毕业项目使用了,写的很全,很多的都设计考虑周全,但我的脚步绝不止于现在,我想要的是星辰大海!与君共勉! 这个项目不是我的作业, 只是无意中被拉进来了,然后就承担 ...

  7. python中exchange函数使用_python基于exchange函数发送邮件过程详解

    python基于exchange函数发送邮件过程详解 作者: shuzihua 更新时间:2020-11-06 10:40:35 原文链接 1.Python hasattr() 函数 描述 hasat ...

  8. ThinkPHP的RBAC(基于角色权限控制)详解

    ThinkPHP的RBAC(基于角色权限控制)详解 一.什么是RBAC 基于角色的访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到 ...

  9. python是基于什么原理_Python基于class()实现面向对象原理详解

    首先,类是一个集合,包含了数据,操作描述的一个抽象集合 你可以首先只把类当做一个容器来使用 class Cycle: def __init__(self,r): self.pi=3.14 self.r ...

最新文章

  1. 单片机音频节奏灯_用C51写的单片机音乐彩灯程序
  2. 安卓饼状图设置软件_话单及银行卡交易智能分析软件
  3. 行将消失的烧瓦匠人:“仿古”热潮下迎新生曙光
  4. matlab 变参数 方程组,解带参数方程组 运行结果竟然自己带了新参数z
  5. python跳转到新页面、如何等待页面加载完_python urllib2 – 在抓取之前等待页面完成加载/重定向?...
  6. PhpMyAdmin后台getshell
  7. oracle 修改子分区,Oracle子分区(sub partition)操作
  8. HTML CSS整理笔记
  9. oracle里面asm的作用,深入了解Oracle ASM(一):基础概念
  10. 静态网页HTML知识点归纳
  11. nyoj248 BUYING FEED(贪心orDP)
  12. Selenium自动化测试:如何使用cookie跳过验证码登录
  13. NLP-准确率、精确率、召回率和F1值
  14. Git 学习笔记:6 GitHub
  15. 黑客:iPhone的这些脑残功能逼我去越狱 苹果:乖,招安是我强项!
  16. 巧借“中国制造2025”东风占领“智”高点
  17. 防抖和节流的理解与实现
  18. Python第八课(函数1)
  19. JSOI2019 Round1(十二省联考)游记
  20. 项目过程发生变更的处理流程

热门文章

  1. Java常用类之String(超详细+大量代码)
  2. 开源/免费的视频会议:openmeetings的详细安装步骤
  3. Ollydbg查看内存数据并修改
  4. 怎样恢复手机oracle默认窗口,EBS登陆后的第一页面恢复成默认都显示WorkList
  5. python安装you—get_解决you-get安装中的一些小问题(升级pip,安装报错怎么办)...
  6. Python IDE开发环境
  7. 华为手机怎么隐藏按键图标_原来华为手机右上角隐藏扫描仪!纸质档一键电子化,真的涨知识了...
  8. Python编程实现数字图像的网络爬虫
  9. 国内有什么好的前端学习网站推荐?
  10. (centos7-x86)编译安装zabbix6.0LTS+Mariadb10.5+Apache+php7.4【安装完整版】