Matlab simulink建模与仿真 第十五章(信号源库)
参考视频:simulink1.1simulink简介_哔哩哔哩_bilibili
一、信号源库中的模块概览

注:部分模块在第二章中有介绍,本章不再赘述。
二、from输入源模块
1、From Workspace模块
(1)该模块可从MATLAB工作区、模型工作区或掩码工作区中读取以时间序列、矩阵或结构体格式指定的数据值并输出之,它的作用以及使用方法可认为与To Workspace模块“相反”,To Workspace模块以何种格式在工作区中生成数据,那么From Workspace模块就可以从工作区中读取何种格式的数据并根据其中的时间序列将数据逐一输出(一般使用最多的情形就是从工作区中读取一个N行2列的矩阵,第1列是单调递增的仿真时刻,第2列是各个仿真时刻对应的信号值)。

(2)MATLAB时序格式可用于任何数据类型、复杂度或固定维度。如需加载总线信号的数据,要使用与总线层次结构相匹配的MATLAB结构,并为每个信号指定时间序列。
(3)将上一章生成的两个MAT文件拖拽到命令窗口,其中的变量会添加进工作区,这时在From Workspace模块的对话框中配置变量名即可将工作区中的变量读取并输出。


2、From File模块
(1)该模块可从MAT文件的变量中读取以时间序列或矩阵格式指定的数据值并输出之,它的作用以及使用方法可认为与To File模块“相反”,To File模块以何种格式在文件中生成数据,那么From File模块就可以从文件中读取何种格式的数据并根据其中的时间序列将数据逐一输出(一般情况下都是先把MAT文件导入工作区,然后再用From Workspace模块读取数据,所以From File模块作为备选即可)。

(2)MATLAB时序格式可用于任何数据类型、复杂度或固定维度。如需加载总线信号的数据,要使用与总线层次结构相匹配的MATLAB结构,并为每个信号指定时间序列。
(3)将上一章生成的两个MAT文件分别配置给两个From File模块,文件变量中的数据会被分别读取并输出。

三、发生器模块
1、Signal Generator信号发生器
(1)信号发生器只能在连续模式下仿真,它可以产生4种连续波形,分别为正弦波(sine)、方波(square)、锯齿波(sawtooth)和随机波(random,这个建议用随机数生成器替代),如下图所示。

(2)仿真波形的频率单位可以选择Hz或者rad/s,并设置幅值和频率。

(3)下图中的三个信号发生器,其信号幅值均为1,频率均为1,它们的频率单位为rad/s。

2、Pulse Generator脉冲发生器
(1)脉冲发生器可生成方波信号,在对话框中可对波形属性进行设置,如下图所示,波形形式(Pulse type)可分为基于仿真时间和采样时间两种,分别对应连续方波信号和离散方波信号,离散方波信号的属性配置依赖仿真步长。

(2)波形的产生依赖时间信号,这个时间信号可由仿真时间提供,也可由外部输入提供,如果选择由外部输入提供,则该模块会提供一个输入端口输入时间信号,连续波形的时间信号要由连续时间信号提供,离散波形的时间信号要由离散时间信号提供。


3、Ramp斜坡信号发生器
(1)该模块只能生成连续的信号,可对其配置初始输出值,仿真开始后该模块会按照该值进行输出,直到达到斜率开始作用的时间(Start time),输出值根据斜率随仿真时间的推进线性变化。

(2)下图中Ramp2模块的斜率为-2,斜率开始作用时间为3,初始输出值为1,Ramp1的配置如上图所示。

4、Step阶跃信号发生器
(1)该模块能生成阶跃信号,可对其配置阶跃产生的时间(从仿真开始时刻开始计算)以及信号阶跃前后的信号值。

(2)下图中Step的配置如上图所示。

5、Chirp Signal线性调频模块
(1)该模块生成的波形与正弦波相似,但其波形频率随仿真时间的推进线性增长,可通过配置下图所示的三个参数间接配置信号频率的变化率。

(2)下图中Chirp Signal模块的配置如上图所示。

6、Repeating Sequence重复序列模块
(1)该模块可产生一个锯齿波,在该模块的对话框中可对其任一一个周期的锯齿波进行配置,如下图所示,有这些配置以后,模块能自动计算出锯齿波的周期、相位等属性。

(2)下图所示Repeating Sequence模块的配置如上图所示,周期为2s,周期内的信号起止值分别为0和2。

(3)实际上,该模块不仅可用于生成锯齿波,它可基于锯齿波的生成规则生成出更多周期性变化的波形,首先它将Time values向量的元素作为时间点,将Output values向量的作为各时间点对应的信号值,根据这两个向量可以得出一个周期内的信号形式,也就得出了其它周期的信号形式。


7、Sine正弦波发生器
(1)正弦波发生器可生成方波信号,在对话框中可对波形属性进行设置,如下图所示,波形形式(Sine type)可分为基于仿真时间和采样时间两种,分别对应连续正弦波信号和离散正弦波信号,离散正弦波信号的属性配置依赖仿真步长。

(2)波形的产生依赖时间信号,这个时间信号可由仿真时间提供,也可由外部输入提供,如果选择由外部输入提供,则该模块会提供一个输入端口输入时间信号,连续波形的时间信号要由连续时间信号提供,离散波形的时间信号要由离散时间信号提供。


四、信号构造器及随机数模块
1、Signal Builder信号构造器模块
(1)双击该模块可对输出信号进行编辑。
①双击信号中的“节点”,可按住鼠标左键对其进行纵向拖拽,也可按住鼠标滚轮或按住鼠标左键+Shift键对其进行横向拖拽,也可直接通过修改对话框下方的配置参数以修改所选“节点”的位置。
②如果想增加信号中的“节点”,可以选择一段左右斜率不均为无穷大(也就是不垂直于时间轴)的波形,按住鼠标左键纵向拖动,这样就会自动生成新的“节点”。
③当横向拖动“节点”导致波形不符合实际规则(一个时间点只能对应一个信号值)时,模块会给出警告并自动停靠在极限处,此时信号阶跃跳变。

(2)该模块可同时输出多个信号,添加信号的方法如下图所示(不一定必须添加方波,脉冲信号、阶跃信号等都可选择);要想移除某个信号,选中后按下Delete键即可。


(3)当窗口显示过于拥挤时,可双击暂时不需要编辑或者观察的信号,以隐藏之。

(4)要想调整信号的持续时间,可按下图所示操作。(当仿真时间超过信号持续时间时,输出将按照信号持续时间结束一刻的值和变化趋势随仿真时间推进继续变化)


(5)使用示例如下图所示。

2、Random Number随机数发生器(服从正态分布)
该模块生成的随机数服从正态分布,双击该模块,可设置其平均值、方差、随机数种子及采样时间。


3、随机数发生器(服从均匀分布)
该模块生成的随机数服从均匀分布,双击该模块,可设置其最大值、最小值、随机数种子及采样时间。


五、带限白噪声模块
1、白噪声概述
(1)白噪声具有常量功率谱,这意味着白噪声在所有频率上出现的强度相同,不随着频率的增加而衰减,白噪声的这一特性使其在功率谱上趋近为常值,即在整个频谱上都有成分,从低频到高频都有分布。
(2)白噪声的理想状态是具有无限带宽,因此其能量是无限大的。然而,在实际应用中,白噪声通常是在一定频率范围内具有均匀功率谱密度的噪声。

2、Band-Limited White Noise带限白噪声模块
该模块可将带限的白噪声(功率谱如上右图所示)等效为经过零阶保持器处理的理想的白噪声(功率谱如上左图所示)并输出之。


六、其余两个重复序列模块
1、Repeating Sequence Stair重复序列阶梯模块
(1)该模块的功能和Repeating Sequence模块相似,不过该模块输出的信号是跳变的,呈楼梯状而不是锯齿状。
(2)配置该模块时仅需配置输出值列表和采样时间。在一个信号周期内,每到一个采样时间点,该模块都会从输出值列表中按顺序选取元素作为输出值,并将该输出值维持到下一采样时间点,以此往复,当所有元素均被选取过后,一个信号周期完成。


2、Repeating Sequence Interpolated重复序列插值模块
(1)该模块的功能也和Repeating Sequence模块相似,不过该模块输出的信号是离散的。
(2)配置该模块时需配置输出值列表、时间点列表和采样时间,时间点列表中的各时间点间隔应大于采样时间间隔(而且不应该仅大于一点)。在一个信号周期内,每当仿真时刻来到时间点列表中的一个时间点,该模块都会从输出值列表中选取对应元素作为输出值,两个时间点之间应该会有若干个采样时间点(取决于Sample time),这些采样时间点的输出值可通过插值算法计算,每个采样时间点的输出值都会维持到下一采样时间点。


(3)上例中选择的差值算法为线性差值,其它可选的差值算法有使用最近点差值、使用上方最近点差值、使用下方最近点差值。

七、计数器模块
1、Counter Limited带限计数器模块
带限计数器从0开始计数(每个采样时间点计数加一),它会持续将计数值输出,在计数达到指定上限后会返回零,重新开始下一轮计数,这个计数上限用十进制数指定即可。


2、Counter Free-Running自由运行计数器模块
自由运行计数器也是从0开始计数(每个采样时间点计数加一),它会持续将计数值输出,在计数达到指定上限后会返回零,重新开始下一轮计数,这个计数上限通过指定二进制上限位数间接指定,比如指定上限位数为n,那么计数上限为。


八、时钟模块
1、Clock模拟时钟模块
该模块会将当前仿真时间输出,且时间信号是连续的。

2、Digital Clock数字时钟模块
该模块会将当前仿真时间输出,不过时间信号是离散的,在下一个采样时间点到来前,输出将维持在上一个采样时间点的状态。


相关文章:
Matlab simulink建模与仿真 第十五章(信号源库)
参考视频:simulink1.1simulink简介_哔哩哔哩_bilibili 一、信号源库中的模块概览 注:部分模块在第二章中有介绍,本章不再赘述。 二、from输入源模块 1、From Workspace模块 (1)该模块可从MATLAB工作区、模型工作区…...
Java笔记 2 java概述和基础知识
第2章 Java概述与基础知识 Java 历史 Java技术体系平台 Java 重要特点 Java 虚拟机[JVM] JDK,JRE JDK 基本介绍 JRE 基本介绍 JDK、JRE 和JVM 的包含关系 Java 快速入门 注意细节 Java 转义字符 Java 常用的转义字符 注释(comment) Java 中的注释类型 关于文档注释 …...
在使用ST-Link下载程序时出现“Error: Flash Download failed - Cortex-”
使用ST-Llink下载程序出现这种错误的本质是下载地址不正确 下面是一个STM32 F103C6T6A芯片的Memory map,注意RAM和flash的起始地址 解决办法:把keil中的debug设置成和自己芯片一直的下载起始地址...
长沙自闭症青少年学校:实现孩子的全面成长
在长沙自闭症青少年学校的选择中,星贝育园以其独特的教育理念、专业的师资力量和全面的康复服务脱颖而出,为自闭症青少年及其家庭提供了重要的支持和帮助。以下是对星贝育园的一些详细评价: 教育理念与承诺 星贝育园秉承“实现孩子的全面成…...
系统 IO
"裸奔"层次:不带操作系统的编程 APP(应用程序) -------------------------------- Hardware(硬件) 特点:简单,应用程序直接操作硬件(寄存器) 缺点: 1. 搞应用开发的必须要了解硬件的实现细节,能够看懂原理图…...
Mysql InnoDB 存储引擎简介
InnoDB 存储引擎是 Mysql 的默认存储引擎,它是由 Innobase Oy 公司开发的 Mysql 为什么默认使用 InnoDB 存储引擎 InnoDB 是一款兼顾高可靠性和高性能的通用存储引擎 在 Mysql 5.5 版本之前,默认是使用 MyISAM 存储引擎,在 5.5 及其之后版…...
驾校预约学习系统的设计与实现
摘 要 伴随着信息技术与互联网技术的不断发展,人们进到了一个新的信息化时代,传统管理技术性没法高效率、容易地管理信息内容。为了实现时代的发展必须,提升管理高效率,各种各样管理管理体系应时而生,各个领域陆续进到…...
Python--读取文件时出现的报错
在使用 Python 读取文件时,尤其是涉及到文件编码的场景,常常会遇到编码解码问题。常见的编码问题主要发生在尝试解码不同编码格式的文件时,比如将使用 GBK 编码的文件按 UTF-8 解码,或者相反。 常见编码错误及其原因:…...
基于http请求的一种安全校验认证方案记录
目录 需求简述 设计方案 参考代码 可优化点 需求简述 日常的开发对接过程中,经常会遇到需要给其他合作伙伴或者其他系统通过接口的方式提供数据,或者有些接口是需要提供通用能力出去的。 从安全的角度考虑,我们往往需要给接口加一些安全校…...
链动321模式开发系统解析源码
链动321模式是一种结合了区块链技术、动态激励机制与“321”运营模式的新型电商架构。该模式通过激励用户分享和推广,实现用户、企业和平台的共赢,具有独特的商业逻辑和高效的运营机制。以下是对链动321模式的详细解析: 系统特点 裂变迅速&am…...
TypeScript 快速上⼿ (3:装饰器)
目录 一、简介 二、类装饰器 基本语法 应用举例 关于返回值 关于构造类型 替换被装饰的类 三、装饰器工厂 四、装饰器组合 五、属性装饰器 基本语法 关于属性遮蔽 应用举例 六、方法装饰器 基本语法 应用举例 七、访问器装饰器 基本语法 应用举例 八、参数装…...
el-input设置后缀显示单位并阻止滚轮微调
项目中收集form表单信息时,有时会需要在el-input后面显示单位,效果如图: 当然,我们可以直接在输入框后面加上单位,但直接给输入框上加单位不管是视图上还是用户体验上看起来都要好一点 element-plus / element-ui给我…...
Redis Key的过期策略
Redis 的过期策略主要是指管理和删除那些设定了过期时间的键,以确保内存的有效使用和数据的及时清理。 具体来说,Redis 有三种主要的过期策略:定期删除(Scheduled Deletion)、惰性删除(Lazy Deletion&#…...
数据结构:时间复杂度与空间复杂度
目录 算法效率时间复杂度大O渐进表示法时间复杂度计算案例 空间复杂度空间复杂度案例 复杂度算法题 算法效率 算法在编写成可执行程序后,运⾏时需要耗费时间资源和空间(内存)资源 。因此衡量⼀个算法的好坏,⼀般是从时间和空间两个维度来衡量的…...
C语言实现贪吃蛇小游戏
✅博客主页:爆打维c-CSDN博客 🐾 🔹分享c语言知识及代码 🐾 目录 游戏展示视频 一、项目准备工作 二、功能实现分析 1.游戏开始 a.设置本地化、创建窗口、标题 b.隐藏光标,封装定位光标的函数 c.打印欢迎界面及提示信息 …...
深入解析包裹信息管理系统:关系型数据库逻辑数据模型设计、超类实体与派生属性探讨
目录 案例 【题目】 【问题 1】(14分) 【问题 2】(6分) 【问题 3】(5分) 【答案】 【问题 1】解析 【问题 2】解析 【问题 3】解析 案例 阅读下列说明,回答问题 1 至问题 3。 【题目】 某企业委托软件公司开发包裹信息管理系统,以便于对该企业…...
Cyber Weekly #24
赛博新闻 1、OpenAI发布最强模型o1 本周四(9月12日),OpenAI宣布推出OpenAIo1系列模型,标志着AI推理能力的新高度。o1系列包括性能强大的o1以及经济高效的o1-mini,适用于不同复杂度的推理任务。新模型在科学、编码、数…...
Java多线程面试精讲:源于技术书籍的深度解读
写在前面 ⭐️在无数次的复习巩固中,我逐渐意识到一个问题:面对同样的面试题目,不同的资料来源往往给出了五花八门的解释,这不仅增加了学习的难度,还容易导致概念上的混淆。特别是当这些信息来自不同博主的文章或是视…...
【Elasticsearch系列七】索引 crud
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...
快速生成服务器响应json-server的安装和使用
json-server介绍地址:https://www.geeksforgeeks.org/json-server-setup-and-introduction/ 1.json-server是什么? 基于自定义的json文件,快速生成服务端响应,可用于前端调试接口 2.安装和卸载json-server 2.1 安装: 使用npm命令: npm install -g json-server 2.2 卸载 npm …...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
