【北邮通信系统建模与仿真simulink笔记】(2)2.3搭建仿真模型&&模块操作&&运行仿真

【声明】

本博客仅用于记录博主学习内容、分享笔记经验,不得用作其他非学术、非正规用途,不得商用。本声明对本博客永久生效,若违反声明所导致的一切后果,本博客均不负责。

目录

【声明】

一、搭建第一个仿真模型

二、模块操作

2.1、模块之间的连接方法

2.2、模块的复制方法

2.3、模块的插入

2.4、连线分支和连线改变

2.5、信号组合

三、运行仿真

3.1、求解器

3.2、仿真步长


一、搭建第一个仿真模型

例题:两个不同频率的正弦波和余弦波信号,具有不同的振幅,输出是正弦信号和余弦信号的和,并且以图形的方式输出系统运算的结果。

解:

1、新建一个空白模型

2、simulink-sources-Sine Wave模块

3、选择数学运算中的加法模块

simulink-Math Operations-Add模块

4、选择输出模块中的scope模块

simulink-Sinks-Scope模块

4、参数设置

5、将各个模块连接起来

二、模块操作

2.1、模块之间的连接方法

1、直接连接

2、选中Tx,按住Ctrl,点击Rx。

2.2、模块的复制方法

1、选中模块鼠标右键,选择复制。

2、Ctrl+C、Ctrl+V

2.3、模块的插入

如果用户需要在连线上插入一个信号模块,只需要将这个模块移动到线上就可以自动连接。

需要注意的是,这个功能仅支持单输入和单输出模块,对于其他的模块,只能是先删除连线,再放置模块,最后重新连线。

2.4、连线分支和连线改变

再某些情况下,一个系统模块的输出要同时作为其他多个模块的输入,这时就需要从此模块当中引出若干连线以连接其他模块。

对信号连线进行分支的操作方式是:

使用鼠标右键单击需要分支的信号连线,拖动到目标模块。

此外,对信号连线还有以下几种操作:

1、使用鼠标左键单击并拖动可以改变信号连线的路径;

2、按住Shift键的同时在信号连线上单击鼠标左键并拖动可以形成新的结点

2.5、信号组合

在利用simulink进行仿真时,很多情况下需要将系统中某些模块的输出信号(标量)组合成一个向量信号,并将得到的信号作为另一个模块的输入。

比如在使用示波器显示模块scope时,scope只有一个输入端口,若要输入实向量信号,则scope模块以不同的颜色显示不同的信号,能够完成信号组合的系统模块是:

simulink-Signal Routing-Mux模块

使用mux模块可以将多个标量信号组合成一个向量信号,因此用simulink可以实现矩阵和向量之间的传递。

三、运行仿真

为了对动态系统进行正确的仿真,需要设置正确的系统模块参数和系统仿真参数

系统仿真参数的设置

选中系统模型窗口中的SImulation|Configuration Parameters...菜单项,或者在窗口空白处按Ctrl+E都可以打开系统仿真参数设置对话框。

3.1、求解器

设置系统仿真时间区间。

Start Time代表仿真起始时间,Stop Time代表仿真终止时间,设置完成之后点击OK。

3.2、仿真步长

如果发现Scope输出的曲线不平滑,说明是在仿真过程中没有设置合适的仿真步长,而是使用了simulink默认的仿真步长所造成了。

所以对动态系统的仿真步长需要进行合适的设置。

仿真参数的选择对仿真结果有非常大的影响,对于简单系统,由于系统中并不存在状态变量,因此每次计算结果都应该是准确的,在使用simulink对简单系统级进行仿真时,影响仿真结果输出的因素有:仿真的起止时间、仿真步长。

对简单系统来说,不管采用何种求解器,simulink总是在仿真过程中选用最大的仿真步长,如果仿真实践的区间较长而最大步长值采用默认值auto,则会导致系统在仿真时使用大的步长。

matlab仿真步长的计算方法是:

(结束时间-开始时间)/50

相关推荐
iCxhust5 小时前
反Park+反Clarke变换
matlab
bazhange6 小时前
python如何像matlab一样使用向量化替代for循环
开发语言·python·matlab
Evand J6 小时前
【MATLAB代码介绍】EKF+CKF对比程序
matlab·ekf·非线性滤波·ckf
yu85939588 小时前
matlab雷达信号与干扰的仿真
开发语言·matlab
北京耐用通信8 小时前
无缝衔接·高效传输——耐达讯自动化CC-Link IE转Modbus TCP核心解决方案
网络·人工智能·物联网·网络协议·自动化·信息与通信
北京耐用通信10 小时前
不换设备、不重写程序:耐达讯自动化网关如何实现CC-Link IE转Modbus TCP的高效互通?
人工智能·科技·物联网·网络协议·自动化·信息与通信
我爱C编程11 小时前
基于分层QLearning强化学习的联合抗干扰算法matlab仿真
matlab·强化学习·分层qlearning·联合抗干扰
沅_Yuan12 小时前
基于核密度估计的Transformer-LSTM-KDE多输入单输出回归模型【MATLAB】
matlab·回归·lstm·transformer·核密度估计·kde
Evand J13 小时前
【MATLAB例程】二维平面下的CV和CA模型,组成IMM的仿真,滤波使用粒子滤波PF,适用于非线性目标跟踪、定位等
matlab·平面·目标跟踪·pf·粒子滤波·imm·多模型
简简单单做算法2 天前
基于GA遗传优化的Transformer-LSTM网络模型的时间序列预测算法matlab性能仿真
深度学习·matlab·lstm·transformer·时间序列预测·ga遗传优化·电池剩余寿命预测