当前位置: 首页 > news >正文

Matlab simulink建模与仿真 第十四章(信号输出库)

参考视频:simulink1.1simulink简介_哔哩哔哩_bilibili

一、信号输出库中的模块概览

        注:部分模块在第二章中有介绍,本章不再赘述。

二、文件及工作空间模块

1、To File文件模块

(1)在MATLAB中可用MAT文件对工作区的变量进行保存(通常用来存储矩阵),而该模块则是可以将一个矩阵存储到一个MAT文件中。

(2)变量可以创建为MATLAB时间序列(Timeseries)或数组(Array)。

①若选择生成的形式为时间序列,输入信号的形式可以多种多样(可用于任何数据类型、复杂程度或维度),该模块将simulink中的仿真采用时间点序列作为一个列向量(成员名为Time),每个仿真采用时间点的输入信号作为也作为一个列向量(成员名为Data),二者组成一个结构体,该结构体存储在File name指定的MAT文件中,并将结构体赋给其中指定的变量(如果输入信号为标量或者向量,那么两个成员直接合并成矩阵,而不是存储为结构体)。

②若选择生成的形式为数组格式,则输入信号只能是矢量、浮点数或者非复数,数组的每一列第一行都有一个时间戳,其后各行都有一个包含相应数据样本的矢量。

(3)下例中To File1模块将数据存储为时间序列(仿真时长为10s,仿真步长为0.1s,共101个采样时间点),变量名为ans1,To File2模块将数据存储为数组格式,变量名为ans2。

2、To Workspace工作空间模块

(1)该模块和To File模块的使用方法类似,不同的是该模块是将数据导入工作空间中,而且不论选择哪种数据形式,输入信号都可以是矩阵(当输入信号为向量时,输入信号集是一个二维矩阵,不带时间戳,而当输入信号为矩阵时,输入信号集是一个三维矩阵,其中第三维用于记录各组数据的采样时刻排序,它并不能算作是时间戳)。

(2)下例中仿真时长为10s,仿真步长为0.1s,共101个采样时间点。To Workspace1模块将数据存储为带时间戳的结构体,变量名为simout1;To Workspace2模块将数据存储为不带时间戳的结构体,变量名为simout2;To Workspace3模块将数据存储为数组格式,变量名为simout3;To Workspace4模块将数据存储为时间序列,变量名为simout4。(需要说明的是,配置和输入信号类型的排列组合多种多样,本例不会一一演示)

①带时间戳的结构体:

②不带时间戳的结构体(默认选择“二维输入存储为3-D array”):

③数组格式(默认选择“二维输入存储为3-D array”):

④时间序列:

三、数据观察模块

1、Scope示波器模块

(1)Scope模块在第二章中已有介绍,这里对先前未做介绍的功能进行补充介绍。

(2)示波器模块检测到的数据可以导入工作区中,不过这个功能可以用To Workspace模块实现,所以示波器模块一般不开启这个功能。

(3)可以使用Layout工具将一个示波器划分为若干个窗口,比如有两个输入信号,那么可以划分出两个子窗口,这样,两个信号就可以在两个子窗口中分别进行显示。

2、XY Graph绘图模块

(1)该模块有两个输入端口X、Y,它会在每个时间步长绘制第二输入值(Y)与第一输入值(X)的散点,最后将它们连起来,以创建X-Y图(忽略超出x-min、x-max、y-min、y-max指定范围的数据)。(两个输入端口均只能为标量)

3、Floating Scope浮动示波器模块

(1)浮动示波器模块和普通示波器模块的使用方法类似,不过它没有输入端口,需要按下图所示打开信号选择器,在这里可以选择其它模块的输出端口进行“虚空连接”,这样,浮动示波器就可以监测这些输出端口的输出信号了。(该模块使用并不频繁,这里仅做简单介绍)

(2)使用浮动示波器模块进行仿真时,需要取消下图所示两个选项的勾选,否则会报错。

4、Display显示模块

(1)该模块在前面介绍其它模块时经常使用,它的作用是将输入端口的信号值显示出来。

(2)信号值的显示格式有下图所示的几种,一般默认为short格式,这种格式基本满足大部分需求,不管输入是整数、浮点数、复数或者是矩阵,该格式都能显示,另外一种可能常用的格式为binary,该格式会直接将输入数据转换为二进制形式,前面的章节中有使用过这种形式,这里不再演示。

四、终止仿真模块

        当输入值不为0(或者输入信号中含非零元素)时,Stop Simulation模块将使仿真暂停,这个暂停并不算是报错,而是相当于将仿真时长缩短罢了。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 梯度计算中的一些算子
  • Go语言错误处理详解
  • 【AIGC】Kolors:快手开源的文生图大模型
  • WebGL系列教程九(动画)
  • Mysql SqlServer 分页
  • 【算法】BFS—解开密码锁的最少次数
  • 简单说说MySQL中 SELECT 语句执行流程
  • 优化器与现有网络模型的修改
  • 软件编程随想
  • 内存dump文件分析
  • STM32--基于PWM的呼吸灯实验
  • 服务器断电重启后报XFS文件系统错误 XFS (dm-0)_ Metadata I_O error
  • 多线程之CompletableFuture
  • nodejs 011: nodejs事件驱动编程 EventEmitter 与 IPC
  • SLA 概念和计算方法
  • php的引用
  • JS 中的深拷贝与浅拷贝
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 345-反转字符串中的元音字母
  • CentOS 7 防火墙操作
  • Debian下无root权限使用Python访问Oracle
  • Java Agent 学习笔记
  • java8-模拟hadoop
  • Object.assign方法不能实现深复制
  • Redash本地开发环境搭建
  • Service Worker
  • Spark学习笔记之相关记录
  • 从0实现一个tiny react(三)生命周期
  • 基于阿里云移动推送的移动应用推送模式最佳实践
  • 开发基于以太坊智能合约的DApp
  • 聊一聊前端的监控
  • 面试遇到的一些题
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 一些关于Rust在2019年的思考
  • C# - 为值类型重定义相等性
  • hi-nginx-1.3.4编译安装
  • ionic异常记录
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • ​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化
  • ​十个常见的 Python 脚本 (详细介绍 + 代码举例)
  • #162 (Div. 2)
  • ${factoryList }后面有空格不影响
  • (13)DroneCAN 适配器节点(一)
  • (C语言)共用体union的用法举例
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (el-Transfer)操作(不使用 ts):Element-plus 中 Select 组件动态设置 options 值需求的解决过程
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (南京观海微电子)——COF介绍
  • (三)模仿学习-Action数据的模仿
  • (三分钟)速览传统边缘检测算子
  • (四)Android布局类型(线性布局LinearLayout)
  • (算法)Travel Information Center
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET 中 GetHashCode 的哈希值有多大概率会相同(哈希碰撞)
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)