Simulink 最基础教程(三)常用模块

news2025/1/13 10:10:05

3.1源模块

在这里插入图片描述
1)clock
这个模块的输出是 y(t)=t。很多信号都是和时间 t 相关的,例如正弦波信号,可以写成 sin(w*t) 的形式。虽然软件也提供了正弦波模块,但如果用 clock 模块+三角运算模块,对初学者而言,也是很好的做法,至少减轻了很多负担:基于几个模块就可以建立大部分信号源。

2)constant
模块的输出是 y(t)=value,其中value的默认值是1。这里引出一个“模块参数”的概念。双击模块后,弹出的对话框里,所有可以设定的量,就称为模块参数,比如 constant 模块最重要的模块参数,就是 value。需要注意的是,这个value可以写1*1的标量,也可以写向量或者矩阵。在 signal attributes 标签下,还有其他的模块参数,比如之前一直强调的 data type,就可以设定后续信号线上的数据类型。
在这里插入图片描述
3)repeating sequence
只看模块图片,一般人会以为这是“锯齿波”,但其实这个模块的功能远不止如此。双击模块可以看到 time 和 output 两个 value,填入两个等长的向量即可。效果上,相当于输出一个信号 plot(time,output) 的周期延拓。和 plot 的思路一样,只要能用描点法描述的函数波形,都能用这个模块实现。
在这里插入图片描述

3.2运算模块

1)连续传函
自动控制原理里,会大量用到线性时不变系统,这些模块都在这个库里,用状态方程描述的state-space,用传递函数描述的 transfer Fcn,以及其中的特例,积分模块。
在这里插入图片描述
2)离散传函
与连续传函对应的,是离散传函。特别的,unit delay模块。这里对应1.4.2求解常微分方程组的例子,如果是求解离散系统的迭代方程 x(k+1)=f(x(k),u(k),t(k)),那么这个过程就是拖拽一堆unit delay模块,将他们的输出定义为 x(k),搭建函数 f 后,再将结果交给 unit delay 的输入。
在这里插入图片描述
3)比较和逻辑运算
主要是两个模块,Logical Operator用来实现与或非的运算,双击之后,除了 operator 这个模块参数外,还有一个 icon shape,用来调整模块的外观,可以让模块看起来更像逻辑门。Relational Operator是比较模块,一般使用时,先将信号线连到比较模块,然后再交给与或非运算,用来实现 MATLAB 中的 if 逻辑表达式。
在这里插入图片描述
4)数学运算
这个库涵盖了加减乘除、三角、指数等常用数学符号,基本上初等函数都在这里了。Add模块双击后,会有模块参数 list of signs,用于控制输入的个数和其运算的规则。例如三个加号,那么输出信号就是三个信号相加的结果。同样的逻辑也适用于divide模块。对乘除法模块有一些额外说明,就是multiplication这个模块参数,可以选择点乘,也可以选叉乘。这两种乘法与 MATLAB 中的定义一样。剩下的几个模块,都是双击后能有多种选择,都是初等函数。
在这里插入图片描述

3.3终点模块

暂时只需要知道 scope 就足够日常使用了。双击 scope后,有几个需要注意的地方
1)小齿轮按钮,可以调节输入个数,从而一个模块观察多个输入。
2)工具栏上有缩放,用来观察特定区域的信号
3)有个logging限制,可以只显示信号线 y(t) t=最后一段时间,的时域波形。
在这里插入图片描述

3.4流程控制模块

MATLAB里说的流程控制,一般是指for,while,if,switch这些,Simulink里要实现 for 和 while 比较少见,但实现 if 的情况还是很多的,这时,需要 switch 模块。这个模块的原理是根据第二个信号的值,来判断输出第一个信号还是第三个信号,相当于MATLAB的代码
if u2>th
Out=u1
else
Out=u3
end
在这里插入图片描述

3.5 信号线属性模块

在 2.3 中有讲,信号线的基本属性是采样时间、维度、数据类型,这里有两个模块可以强制信号线的采样时间和数据类型,当遇到关于信号线属性不匹配的报错时,可以用这两个模块解决。例如图中,假设左边模块输出 int8 数据类型,而右边模块希望输入是 int16 数据类型,这样直接连线会造成报错,说数据类型不匹配。此时加入一个 convert,将左边的 int8 输出,转成 int16,就满足了右边模块的要求。
在这里插入图片描述
在这里插入图片描述

3.6小结

Simulink提供了如此众多的模块,就如同 MATLAB提供了如此众多的函数一般,这里只是介绍了一些我自认为常用的模块,更多模块还是要边用边学。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1112089.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QT_day3

完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到新的界面中 如果账号和密码不匹配&#…

科技资讯|2023全球智能手表预估出货1.3亿块,智能穿戴提升AI功能

根据集邦咨询公布的最新报告,受全球经济低迷影响,2023 年全球智能手表出货量预估为 1.3 亿块。苹果以超过 30% 的份额领先,其次是三星(接近 10%)、华为、Garmin、Fitbit 等。 报告认为苹果、三星和华为等主要智能手表…

智能新零售管理系统哪个好?亿发数字化收银系统提供商,可定制

在数字化时代的背景下,传统收银系统已经无法满足商家不断增加的业务需求。因此,出现了智能门店收银系统,该系统旨在为商家提供更加智能、高效的解决方案,满足商家的个性化需求,帮助中小型商家提高数字化运营能力。 1、…

运筹优化 | Python调用Gurobi求解线性规划 | 代码解析

需要求解的线性规划 from gurobipy import *定义了一个线性松弛问题,并用Gurobi求解 initial_LP Model(initial LP) # 定义变量initial_LP,调用Gurobi的Model,选择Initial Programming(整数规划)模型 x {} # 创建一个…

TCP/IP模型五层协议

TCP/IP模型五层协议 认识协议 约定双方进行的一种约定 协议分层 降低了学习和维护的成本(封装)灵活的针对这里的某一层协议进行替换 四/五层协议 五层协议的作用 应用层 应用层常见协议 应用层常见协议概览 基于TCP的协议 HTTP(超…

【C++】命名空间和using namespace std的注意事项

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …

2022年下半年 软件设计师 上午试卷(22题—40题)

对高级语言源程序进行编译或解释的过程中需要进行语法分析,递归子程序分析属于 (22) 的分析法。 (22) A. 自上而下 B. 自下而上 C. 从左至右 D. 从右至左 注意字眼”递归“,自上而下的语法分析方法是一种自…

深入理解 Netty FastThreadLocal

作者:vivo 互联网服务器团队- Jiang Zhu 本文以线上诡异问题为切入点,通过对比JDK ThreadLocal和Netty FastThreadLocal实现逻辑以及优缺点,并深入解读源码,由浅入深理解Netty FastThreadLocal。 一、前言 最近在学习Netty相关的…

【C++面向对象】1. 类、对象

文章目录 【 1. 类 & 对象的定义 】1.1 类的定义1.2 对象的定义 【 2. 类的成员 】2.1 数据成员2.2 成员函数类的内部定义成员函数类的外部定义成员函数成员函数的访问实例 【 3. 类的访问修饰符 】3.1 public 公有成员3.2 private 私有成员3.3 protected 保护成员3.4 继承…

【Excel】WPS单元格快速转换表格字母大小写

使用WPS Office打开表格,选择需要处理的单元格或单元格区域。 依次点击「会员专享」选项卡 —>「智能工具箱」。 再点击「格式」—>「大小写」,选择一种大小写转换方式即可。

测试开发之自动化篇 —— 使用Selenium IDE录制脚本!

今天,我们开始介绍基于开源Selenium工具的Web网站自动化测试。 Selenium包含了3大组件,分别为:1. Selenium IDE 基于Chrome和Firefox扩展的集成开发环境,可以录制、回放和导出不同语言的测试脚本。 2. WebDriver 包括一组为不同…

AI智能视频监控系统解锁新场景:大型音乐节活动视频监控方案

随着近日音乐节的大火,越来越多的人喜欢参加音乐节进行放松娱乐。音乐节通常都会聚集大量人群,为了确保参与者的安全,在音乐节期间设置智能视频监控系统可以帮助管理人员及时发现和应对任何潜在危险或紧急情况,可以保障参与者的生…

重磅升级!官网全新改版上线啦~

新布局、新风格 新体验、新服务 棱镜七彩新版官网 正式上线啦! 各版块功能全新升级 为广大用户提供更优质的服务体验! 重构版块信息,用户需求一键直达 新官网结构大焕新,升级后的官网根据用户需求进行了更合理的设置与规划…

IJCAI2023【基于双曲空间探索的非独立同分布联邦学习】

1、介绍汇报的主题及汇报者 2、粗略介绍面临的挑战及出发点 3、介绍一下预备知识 4、解决方案 5、总览 6、实验设置 7、实验 8、结论

代码检查的方式有哪几种?

代码检查是软件开发过程中的关键环节,可以帮助发现和纠正潜在的错误和问题。以下是几种常见的代码检查方式: 1. 人工代码检查: 这是最基本和常见的方式,由开发人员手动检查代码。这种方式依赖于开发人员的经验和专业知识&#xf…

Linux远程管理协议

(RFB、RDP、Telnet和SSH)是Linux的远程管理协议。提到远程管理,通常指的是远程管理服务器,而非个人计算机。个人计算机可以随时拿来用,服务器通常放置在机房中,用户无法直接接触到服务器硬件,只…

JavaScript 操作浏览器和HTML文档/JavaScript 操作对象

JavaScript 操作浏览器和HTML文档 框架 浏览器对象模型(BOM) windownavigatorscreenlocation 文档对象模型(DOM) document 操作对象间的关系 window对象是浏览器的顶层对象,它包含了浏览器窗口的各种属性和方法。w…

数据库表设计及优化初步——项目中的数据库表究竟怎么设计?如何提高查询效率?

前言 我们都知道数据库设计有以下三大范式,但实际应用中真的是按照这三大范式来设计吗? 本篇博客尝试阐述项目中数据库表的设计,以及查询优化的方法。 第一范式: 原子,列信息不可再分; 第二范式&#…

培训机构招生电子传单制作教程:突出核心竞争力的方法

随着科技的不断发展,现在的招生宣传也变得越来越电子化。其中,电子传单就是一种非常有效的宣传方式。下面就让我们来学习如何制作具有吸引力的培训机构招生电子传单。 首先,我们需要进入乔拓云后台,并登录。在登录后,我…

Python武器库开发-基础篇(四)

基础篇(四) Open 文件 Python open() 方法用于打开一个文件,并返回文件对象。 在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。 注意:使用 open() 方法一定要保证关闭文件对象,即…