【北邮通信系统建模与仿真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