集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1510|回复: 3

Simulink基础

[复制链接]
小舍YZ 发表于 2017-7-4 16:14:46 | 显示全部楼层 |阅读模式
Simulink基础

1.Simulink简介

Simulink是MATALB中的一种可视化仿真工具,广泛用于线性系统、数字控制以及数字信号处理的建模和仿真中。Simulink采用模块化的建模方式,每个模块都有自己的输入、输出端口,并能实现一定的功能。在Simulink中,模型表现为若干个仿真模块的集合以及各个模块之间的连接关系, 并且这些模块可以组织成具有同等结构的子系统,具有内在的模块化设计要求。

根据输出信号和输入信号的关系,Simulink提供了3种类型的模块:连续模块、离散模块和混合模块。连续模块指输出信号发生连续变化的模块,离散模块则是输出信号以固定间隔变化的模块;混合模块是根据输入信号的类型来确定输出信号类型的,既能产生连续输出信号,也能够产生离散输出信号。如果一个仿真模型中只包括离散模块,Simulink采用固定步长方式进行仿真;如果模型中只有连续模块,Simulink将采用连续方式对模型继续仿真。如果模块中包含连续模块和离散模块,则采用两种仿真步长进行仿真。

2.Simulink软件的安装

Simulink可以随着MATLAB一起安装到计算机内,在MATLAB安装选项中选中Simulink组件,安装程序会自动将其安装到MATLAB目录下;如果已安装了MATLAB而没有安装Simulink的话,也可以继续使用安装程序将Simulink安装到计算机内。两者的安装方法是基本一样的。需要注意的是,Simulink的运行需要MATLAB后台的支持,因此必须要安装MATLAB软件。

3.Simulink的工作原理

Simulink的工作包括两个阶段:初始化阶段和模型执行阶段。

1)模型初始化阶段

在初始化阶段,Simulink主要完成以下工作:

(1)将模型参数传递给MATLAB进行估值,得到的数值结果将作为模型的实际参数;
(2)展开模型的各个层次,每一个非条件执行的子系统将被它所包含的模块代替;
(3)模型中的模块按更新的次序进行排序;
(4)决定模型中有无显示设定的信号属性,如:名称、数据类型等,并且检查各个模块是否能连接到其相应的输入信号;
(5)决定所有未设定采样时间的模块的采样时间;
(6)分配和初始化用于存储每个模块的状态和输入当前值的存储空间。
完成上述工作后,就可以进入模型执行阶段。

2)模型执行

一般模型是使用数值积分来进行仿真的,所运用的仿真解法器依赖于模型提供的连续积分能力。计算微分可以分为两步来进行:首先,按照排序所确定的次序计算每个模块的输出;其次,根据当前时刻的输入和状态来决定状态的微分,得到微分向量后再把它返回给解法器,再用其来计算下一时刻采样点的状态向量,一旦新的状态向量计算完毕,被采样的数据源模块和接收模块才被更新。

在仿真开始时,模型设定待仿真系统的初始状态和输出。在每一个时间步长中,Simulink计算系统的输入、状态和输出,并更新模型来反映计算出的值。在仿真结束时,模型得出系统的输入、状态和输出。

4.Simulink设计简单举例

作为本节的最后一部分,给出一个Simulink的应用实例,增加读者对Simulink建模的直观印象。

例8-1 建立一个调幅(AM)系统,信号频率为100KMHz,载波频率为1MHz,调幅系数为0.5,并在示波器中显示出来。

具体的操作步骤如下:

1)打开MATLAB,在工具栏点击 图标,启动Simulink(也可以直接在MATLAB命令窗口直接敲入simulink)。
2)在Simulink环境下新建一个模型,在Simulink工具栏点击图标实现或通过菜单“File”中的“New Model”命令来实现,将新模型保存为am.mdl。
3)从Simulink library Browser中加入基本模块。首先从“Simulink Source”库中选中“Sine Wave”模块,直接将其拖拽到am.mdl的界面中,并复制该模块;然后双击“Sine Wave”模块,设定载波频率和幅度。再按照同样的方法将“Sine Wave1”模块设定为信号产生模块;再从“Simulink Math Operations”库中选择乘法器模块Product,最后从“Simulink Sink”库中选择示波器Scope。
4)连接各个模块,选中目标模块,按住Ctrl键,再点击要连接的模块,Simulink即可自动将两个模块连接起来,最终设计如图7-7所示。

图7-7 调幅系统的Simulink设计示意图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| 小舍YZ 发表于 2017-7-4 16:15:47 | 显示全部楼层
5)在工具栏点击运行(RUN)图标 ,再直接点击Scope模块即可观察运行结果,如图7-8所示。至此,即完成了一个简单的AM调制系统模型。

图7-8 调幅系统的运行结果示意图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
zxopenljx 发表于 2019-10-24 11:10:06 | 显示全部楼层
Simulink基础
zxopenljx 发表于 2020-1-1 09:24:12 | 显示全部楼层
Simulink基础
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-4-20 05:34 , Processed in 0.063267 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表