SIMULINK基础(全)

合集下载

Simulink基础

Simulink基础

Simulink的使用
启动Simulink
Simulink库
源节点库 正弦波模块
MATLAB在通信中的应用
Simulink的使用
MATLAB在通信中的应用
Simulink的模块库浏览器
模块搜索 模块描述
系统模块
系统模块库
MATLAB在通信中的应用
Simulink的公共模块库
连续系统模块库 连续系统模块库 离散系统模块库 离散系统模块库 函数与表库 函数与表库 数学运算库 数学运算库 非线性系统模块库 非线性系统模块库 信号与系统模块库 信号与系统模块库
Communications Blockset
CDMA Reference Blockset CDMA Nonlinear Control Design Blockset Motorola DSP Developer’s Kit TI DSP Developer’s Kit
通讯系统工具包
CDMA通讯系统设计和分析工具包 非线性控制设计工具箱 Motorola DSP开发工具箱 TI DSP开发工具箱
2 离散模块库(Discrete)
模块功能说明:
模块功能说明:
线性离散系统的传递函数描述
线性离散系统的传递函数描述
线性离散系统的零极点模型描述
线性离散系统的零极点模型描述
线性离散系统的滤波器描述 线性离散系统的滤波器描述 线性离散系统的状态空间描述 线性离散系统的状态空间描述
离散时间积分器 离散时间积分器 离散信号的一阶保持器 离散信号的一阶保持器 单位延迟
MATLAB在通信中的应用
我们可以使用Simulink建立什么模型? Simulink的应用领域示意图
答:任何需要数学手段建立的系统。

SIMULINK基础详解

SIMULINK基础详解

表10-6
通用模块及功能 模块名 功能 提供一个输入端口 地线,提供零电平 地线, 模块名 功能 提供一个输出端口 终止没有连接的输出 端口 示波器
生成一个常量值
选择开关
乘运算
比例运算 关系运算 饱和输出,让输出超 饱和输出, 过某一值时能够饱和
逻辑运算 积分器 数据类型转换
7、 信号路径模块库(signal routing) 、 信号路径模块库( ) 信号路径模块库提供了信号在模型中流动的各种路径通道 的选择,包括信号的分离、汇合以及通道选择等模块, 的选择,包括信号的分离、汇合以及通道选择等模块,如表 10-7所示: 所示: 所示
Simulink提供了大量的系统模功能模块,包括信号发生、 提供了大量的系统模功能模块,包括信号发生、 提供了大量的系统模功能模块 控制运算、显示等通用模块和很多专业性极强的专业模块, 控制运算、显示等通用模块和很多专业性极强的专业模块, 应用这些模块可以轻松实现各个学科的工程仿真和研发工作。 应用这些模块可以轻松实现各个学科的工程仿真和研发工作。 Simulink提供的系统功能模块的另一个大的特点是开放性强, 提供的系统功能模块的另一个大的特点是开放性强, 提供的系统功能模块的另一个大的特点是开放性强 可以将几个相关的模块组合成一个具体的子系统, 可以将几个相关的模块组合成一个具体的子系统,也可以自 己创建模块并将创建的新模块加入到系统模块库中供建模使 用。
6、 通用模块库(Commonly Used Blocks) 、 通用模块库( ) 通用模块库中提供了一般建模常用的模块,这些模块在 通用模块库中提供了一般建模常用的模块, 各自的分类模块库中均能找到,但为了使用方便, 各自的分类模块库中均能找到,但为了使用方便,特将一些 常用的模块集中起来组成了该库如表10-6所示: 所示: 常用的模块集中起来组成了该库如表 所示

simulink基本知识

simulink基本知识

第七章 Simulink基础7.1 Simulink简介Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持连续、离散及两者混合的线性和非线性系统,也支持具有多种采样频率的系统。

在Simulink环境中,利用鼠标就可以在模型窗口中直观地“画”出系统模型,然后直接进行仿真。

它为用户提供了方框图进行建模的图形接口,采用这种结构画模型就像你用手和纸来画一样容易。

它与传统的仿真软件包微分方程和差分方程建模相比,具有更直观、方便、灵活的优点。

Simulink包含有Sinks(输出方式)、Source(输入源)、Linear(线性环节)、Nonlinear(非线性环节)、Connections(连接与接口)和Extra(其他环节)等子模型库,而且每个子模型库中包含有相应的功能模块,用户也可以定制和创建自己的模块。

用Simulink创建的模型可以具有递阶结构,因此用户可以采用从上到下或从下到上的结构创建模型。

用户可以从最高级开始观看模型,然后用鼠标双击其中的子系统模块,来查看其下一级的内容,以此类推,从而可以看到整个模型的细节,帮助用户理解模型的结构和各模块之间的相互关系。

在定义完一个模型后,用户可以通过Simulink的菜单或MATLAB的命令窗口键入命令来对它进行仿真。

菜单方式对于交互工作非常方便,而命令行方式对于运行一大类仿真非常有用。

采用Scope模块和其他的画图模块,在仿真进行的同时,就可观看到仿真结果。

除此之外,用户还可以在改变参数后迅速观看系统中发生的变化情况。

仿真的结果还可以存放到MATLAB的工作空间里做事后处理。

模型分析工具包括线性化和平衡点分析工具、MATLAB的许多基本工具箱及MATLAB的应用工具箱。

由于MATLAB和Simulink是集成在一起的,因此用户可以在这两种环境下对自己的模型进行仿真、分析和修改。

Simulink具有非常高的开放性,提倡将模型通过框图表示出来,或者将已有的模型添加组合到一起,或者将自己创建的模块添加到模型当中。

第三章 Simulink基础

第三章 Simulink基础

同一模型中复制模块 (1)按下ctrl键,选中要复制的模块 (2)拖到喜欢的位置 删除模块 选中后,点击右健中的clear 或按键盘的delete 断开模块连接 按下shitf键,选中模块并从模型中的原始位置 拖支模块即可。 改变模块的方向 Format菜单中选择flip block命令旋转180度,或 者rotate block顺时针旋转90度。
数学运算模块(math)
求绝对值或求模 建立逻辑真值表 求复数的幅值与相角 求复数的实部和虚部 求点乘(内积) 增益(对输入信号乘上一个常数) 逻辑操作符 由幅值与相角求复数 数学运算函数
求极大与极小值 对输入信号求积或商 比较操作符 取整操作 取输入的正负符号 以滑动形式改变增益 对输入信号求代数和 三角函数
输入源模块(source)
带限白噪声 产生一个频率不断变化的正弦波 显示当前仿真时间 生成一个常值 在规定的采样间隔显示当前仿真时间 从工作空间中定义的矩阵读取数据 从文件中读取数据 接地线模块 整个系统的输入子端
固定时间间隔的脉冲发生器 斜坡信号 正态分布的随机信号 产生规律重复的线性信号 产生各种不同的波型 产生一个正弦波 产生一个阶跃函数 均匀分布随机数
4、选择对象(包括模块和连线) 选择一个对象 单击鼠标左键即可选中 选择一个以上对象
逐个选择法:按住shift键 用方框选择
选择整个模型: Ctrl+A 或edit菜单下的select all
5、两个窗口之间模块的复制和移动 用鼠标复制模块 (1)打开相应的库或模型窗口 (2)把要复制的模块拖到自己的目标窗口 中。 用菜单中的命令复制、粘贴模块 模块的命名 选中模块的名称,然后输入新的字符 在同一模块中移动模块 (1)选中需要移动的模块和连线 (2)拖动到适当的地方,然后释放鼠标

Simulink基础

Simulink基础
Signal 1
Signal Builder
Ramp
Sine Wave
Step
Repeating Sequence
Chirp Signal
Random Number
Uniform Random Band-Limited White Noise Number lim
Repeating Sequence Stair
Variable Variable T ime DelayT ransport Delay
5.4 Simulink模块库 模块库
三、离散系统模块库
Discrete-Time Linear Systems
1 z Unit Delay -4 Z Integer Delay 4 Delays K Ts z-1 T apped Delay Discrete-T ime Integrator (z-1) z(z-0.5) Discrete Zero-Pole y(n)=Cx(n)+Du(n) x(n+1)=Ax(n)+Bu(n) Discrete State-Space z-0.75 z T ransfer Fcn Real Zero
5.1 Simulink简介 简介
创建的模型可以具有递阶结构, 用Simulink创建的模型可以具有递阶结构,因此用户可以采用从上到下或 创建的模型可以具有递阶结构 从下到上的结构创建模型。用户可以从最高级开始观看模型, 从下到上的结构创建模型。用户可以从最高级开始观看模型,然后用鼠标双 击其中的子系统模块,来查看其下一级的内容,以此类推, 击其中的子系统模块,来查看其下一级的内容,以此类推,从而可以看到整 个模型的细节,帮助用户理解模型的结构和各模块之间的相互关系。 个模型的细节,帮助用户理解模型的结构和各模块之间的相互关系。 在定义完一个模型后,用户可以通过Simulink的菜单或 的菜单或MATLAB的命令窗 在定义完一个模型后,用户可以通过Simulink的菜单或MATLAB的命令窗 口键入命令来对它进行仿真。菜单方式对于交互工作非常方便, 口键入命令来对它进行仿真。菜单方式对于交互工作非常方便,而命令行方 式对于运行一大类仿真非常有用。 式对于运行一大类仿真非常有用。 采用Scope模块和其他的画图模块,在仿真进行的同时,就可观看到仿真结 模块和其他的画图模块,在仿真进行的同时, 采用 模块和其他的画图模块 除此之外,用户还可以在改变参数后来迅速观看系统中发生的变化情况。 果。除此之外,用户还可以在改变参数后来迅速观看系统中发生的变化情况。 仿真的结果还可以存放到MATLAB的工作空间里做事后处理。 的工作空间里做事后处理。 仿真的结果还可以存放到 的工作空间里做事后处理

Simulink基础学习教程

Simulink基础学习教程

Simulink基础学习Simulink是面向框图的仿真软件。

7.1一个Simulink的简单程序【例7.1】创建一个正弦信号的仿真模型。

步骤如下:(1) 在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(Simulink Library Browser) 窗口,如图7.1所示。

(2)单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白模型窗口。

(3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。

(4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图7.2所示。

图7.1 Simulink 界面(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope”模块(示波器)拖放到“untitled”窗口中。

(6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。

如图7.3所示。

(7) 开始仿真,单击“untitled”模型窗口中“开始仿真”图标,或者选择菜单“Simulink”——“Start”,则仿真开始。

双击“Scope”模块出现示波器显示屏,可以看到黄色的正弦波形。

simulink基础知识

simulink基础知识

simulink基础知识Simulink 基础知识简介Simulink 是由 MathWorks 开发的用于动态系统建模和仿真的图形编程环境。

它与 MATLAB 软件紧密集成,提供了一个强大的工具集,适用于各种工程和科学领域。

图形建模Simulink 以拖放界面进行建模,用户可以使用称为块的预定义组件。

这些块代表系统中的元素,如信号源、放大器和控制器。

用户可以通过连接块来创建复杂系统模型。

直觉操作Simulink 具有直观的界面,使用户能够通过拖放块轻松创建模型。

通过双击块,可以访问其属性和参数,从而可以根据需要进行自定义。

模型仿真Simulink 模型可以针对用户定义的输入进行仿真。

仿真引擎解决模型中的方程,并生成输出信号。

这些信号可以在示波器或其他可视化工具中查看。

建模元素Simulink 提供了广泛的块库,用于构建各种系统模型。

这些块包括:信号生成块:产生输入信号,如正弦波和方波。

元件块:表示电阻、电容和电感等物理元件。

传输线块:模拟电气和流体动力系统中的传输线行为。

控制系统块:实现 PID 控制器、状态空间控制器和线性化控制器。

模型分析Simulink 提供了用于分析模型行为的强大工具。

这些工具包括:示波器:显示模型中信号的时域波形。

Bode 图:绘制系统的幅度和相位响应。

Nyquist 图:显示系统的稳定性。

与 MATLAB 集成Simulink 与 MATLAB 紧密集成,这使得用户可以访问 MATLAB的广泛功能。

用户可以在 Simulink 模型中嵌入 MATLAB 代码块,从而可以执行高级计算和数据处理任务。

应用领域Simulink 用于各种应用,包括:控制系统设计信号处理动力学建模机械系统模拟电路分析优点图形建模界面,易于使用广泛的块库,涵盖各种工程领域与 MATLAB 紧密的集成,提供强大的计算能力用于模型分析的强大工具集缺点对于大型复杂模型,仿真时间可能很长非线性系统的建模可能具有挑战性需要对 MATLAB 有基本的了解。

Simulink入门教程

Simulink入门教程

Simulink 快速入门要构建模型, 可以使用Simulink® Editor 和Library Browser。

启动 MATLAB 软件启动 Simulink 之前, 请先启动MATLAB®。

请参阅启动和关闭(MATLAB)。

配置 MATLAB 以启动 Simulink您在 MATLAB 会话中打开第一个模型时需要的时间比打开后续模型长, 因为默认情况下, MATLAB 会在打开第一个模型时启动 Simulink。

这种即时启动Simulink 的方法可以缩短 MATLAB 启动时间, 避免不必要的系统内存占用。

•要快速打开第一个模型, 您可以配置 MATLAB, 在它启动时同时启动Simulink。

要启动 Simulink 而不打开模型或 Library Browser, 请使用start_simulink。

•根据 MATLAB 的启动方式, 恰当使用此命令:•在 MATLAB startup.m文件中在操作系统命令行中, 使用matlab 命令和-r 开关例如, 要在运行Microsoft®Windows®操作系统的计算机上启动 MATLAB 时启动 Simulink, 请创建具有以下目标的桌面快捷方式:matlabroot\bin\win64\matlab.exe -r start_simulink在 Macintosh 和Linux®计算机上, 可在启动 MATLAB 时使用以下命令启动Simulink 软件:matlab -r start_simulink打开 Simulink Editor•要打开 Simulink Editor, 您可以:•创建一个模型。

在 MATLAB 的Home 选项卡上, 点击Simulink 并选择一个模型模板。

或者, 如果您已经打开了 Library Browser, 请点击New Model 按钮/。

有关创建模型的其他方法, 请参阅创建模型。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
17
AbsTol:默认值为1e-6设定绝对误差范围。 Decimation:默认值为1,决定隔多少个点返回状态和输出值。 Solver:解法器的选择 MaxRows:默认值为0,表示不限制。若为大于零的值,则表示限制输出和 状态的规模,使其最大行数等于该数值。 InitialState:一个向量值,用于设定初始状态。 FixedStep:用一个正数表示步阶的大小,仅用于固定步长模式。 MaxStep:默认值为auto。用于变步长模式,表示最大的步阶大小。
– Pulse Generator:脉冲发生器
– Repeating Sequence:重复信号 – Signal Generator:信号发生器,可以产生正弦、方波、锯齿波及随意波 – Sine Wave:正弦波信号 – Step:阶跃波信号
14
10、Ports & Subsystem(端口&子系统模块)
detect decrease:监测减少
16
SIMULINK仿真的运行
启动仿真
设置仿真参数和选择解法器之后,就可以启动仿真而运行。 选择Simulink菜单下的start选项来启动仿真,如果模型中有些参数没有定义, 则会出现错误信息提示框。如果一切设置无误,则开始仿真运行。 除了直接在SIMULINK环境下启动仿真外,还可以在MATLAB命令窗口中通 过函数进行,格式如下
2
SIMULINK简介
一、什么是SIMULINK
SIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的 一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口 是基于Windows的模型化图形输入,其结果是使得用户可以把更多的 精力投入到系统模型的构建,而非语言的编程上。 所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的 系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不 必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它 们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取), 进而进行仿真与分析。
[t,x,y]=sim(‘模型文件名’, [to tf], simset(‘参数1’,参数值1,‘参数 2’,参数值2, …))
其中to为仿真起始时间,tf为仿真终止时间。[t,x,y]为返回值,t 为返回的时间向量值,x为返回的状态值,y为返回的输出向量 值。 – simset定义了仿真参数,包括以下一些主要参数:
21
仿真算法与控制参数选择
1、Solver页
此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器, 并设定它的参数; 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机 仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为 0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际 的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的 因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素 ,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度 等等。 仿真精度控制有 Relative Tolerance 选项、Absolute Tolerance 等,其 中相对误差限的默认值设置为 1e-3,该值在实际仿真中显得偏大,建 议选择 1e-6 和 1e-7。值得指出的是,由于采用的变步长仿真算法,所 以将误差限设置到这样小的值也不会增加太大的运算量。
– Rate limiter: 变化率限幅模块
10
6、Signal routing (信号路由模块)
– Mux:将多个单一输入转化为一个复合输出 – Demux:将一个复合输入转化为多个单一输出 – Switch:开关选择,当第二个输入端大于临界值时,输出由第一个 输入端而来,否则输出由第三个输入端而来 – Manual Switch:手动选择开关
– Look-Up Table(2-D):建立两个输入信号的查询表
9
5、 Discontinuities (非线性模块)
– Saturation:饱和输出,让输出超过某一值时能够饱和。
– Relay:滞环比较器,限制输出值在某一范围内变化。
– Dead Zone:死区,在某一范围内的输入其输出值为0 – Backlash : 磁滞回环模块
22
仿真算法与控制参数选择
1、Solver页
仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步 长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固 定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差 控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提 供误差控制和过零检测。 在仿真时还可以选定最大允许的步长和最小允许的步长,这可以通过 填写 Max step size 栏目和 Min step size 的值来实现,如果变步长选择 的步长超过这个限制则将弹出警告对话框。 用户还可以在solver下拉选项框中选择对应模式下仿真所采用的算法。
S实际中,控制系统的结构往往很复杂,如果不借助专用的系 统建模软件,很难准确地把一个控制系统的复杂模型输入计算机, 对其进行进一步的分析与仿真。 1990年,Math Works软件公司为MATLAB提供了新的控制系统模 型图输入与仿真工具,并命名为SIMULAB,该工具很快就在控制 工程界获得了广泛的认可,使得仿真软件进入了模型化图形组态阶 段。但因其名字与当时比较著名的软件SIMULA类似,所以1992年 正式将该软件更名为SIMULINK。 SIMULINK的出现,给控制系统分析与设计带来了福音。该软件的 名称表明了该系统的两个主要功能:Simu(仿真)和Link(连接),即 该软件可以利用鼠标在模型窗口上绘制出所需要的控制系统模型, 然后利用SIMULINK提供的功能来对系统进行仿真和分析。
– Signal routing(信号路由模块) – Sinks(接收器模块)
Ports&Subsystem(端口&子系统模块)
Math(数学模块) Sources(输入源模块)
5
– Logic and Bit operations(逻辑&位操作)
1、连续模块(Continuous) – Integrator:输入信号积分
– Memory: 一个积分步骤的延迟
6
2、离散模块(Discrete)
– Discrete-time Integrator:离散时间积分器 – Discrete Filter:离散滤波器 – Discrete State-Space:离散状态空间系统模型 – Discrete Transfer-Fcn:离散传递函数模型 – Discrete Zero-Pole:以零极点表示的离散传递函数模型 – First-Order Hold:一阶采样和保持器 – Zero-Order Hold:零阶采样和保持器 – Unit Delay:一个采样周期的延时
三、SIMULINK的模块库介绍
常用的SIMILINK模块库按功能可分为以下几类:
– Continuous(连续模块) – User-defined Function(函数模块) Discrete(离散模块) Lookup Tables(查表模块)
– Discontinuities(非线性模块)
好是首先试试ode45。
(2)ode23:二/三阶龙格-库塔法,它在误差限要求不高和求解的问题不太难 的情况下,可能会比ode45更有效。也是一个单步解法器。 (3)ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下通常 比ode45有效。ode113是一种多步解法器,也就是在计算当前时刻输出时 ,它需要以前多个时刻的解。 (4)ode15s:是一种基于数字微分公式的解法器(NDFs)。也是一种多步解
7
3、 User-defined Function(函数模块) – Fcn:用自定义的函数(表达式)进行运算
– MATLAB Fcn:利用matlab的现有函数进行运算
– S-Function:调用自编的S函数的程序进行运算
8
4、 Lookup Tables(查表模块) – Look-Up Table:建立输入信号的查询表
3
主要内容
Simulink 建模的基础知识
Simulink 建模与仿真
线性/非线性系统分析与仿真
子系统与模块封装技术
4
SIMULINK简介
二、SIMULINK的启动
1. 在MATLAB的命令窗口直接键入“Simulink”并回车;
2. 单击MATLAB工具条上的 Simulink 图标;
3. 在MATLAB菜单上选 File→New→Model。
– In1:输入端
– Out1:输出端
– SubSystem:建立新的封装(Mask)功能模块
15
11、Logic and Bit operations(逻辑&位操作) Compare to constant :与常数比较
Compare to zero:与零比较
logical operator:逻辑操作算子 detect change:监测变化
23
变步长模式解法器有:ode45,ode23,ode113,ode15s, ode23s,ode23t,ode23tb, discrete。
(1)ode45:缺省值,四/五阶龙格-库塔法,适用于大多数连续或离散系统, 但不适用于刚性(stiff)系统。它是单步解法器,也就是,在计算y(tn)时 ,它仅需要最近处理时刻的结果y(tn-1)。一般来说,面对一个仿真问题最
11
7、 Math(数学模块)
– Sum:加减运算 Gain:比例运算 – MinMax:最值运算 Dot Product:点乘运算 Abs:取绝对值
– Sign:符号函数
相关文档
最新文档