simulink教程前言(11)

合集下载

matlabsimulink教程

matlabsimulink教程

matlabsimulink教程Matlab Simulink是一种基于Matlab的高级系统建模和仿真工具。

它允许用户通过图形化界面来构建和模拟复杂的多域系统。

首先,我们来介绍如何启动Simulink。

在Matlab主界面的命令窗口中输入simulink即可打开Simulink图形界面。

Simulink界面主要由工具栏、模型窗口和浏览器窗口组成。

工具栏上的各种按钮可以帮助用户进行模型的构建和仿真。

模型窗口用于进行模型的可视化编辑,用户可以从浏览器中选择模型中的各个组件进行添加和连接。

在开始使用Simulink之前,我们建议用户先了解一些基本概念和术语。

Simulink中的基本组成单位是模块,模块可以是输入、输出、运算器、信号转换器等。

这些模块可以通过连线连接起来,形成一个完整的系统模型。

模块间的信号传递可以是连续的、离散的或者混合的。

在Simulink中,用户可以通过选择不同的模块和参数来构建自己需要的系统模型。

Simulink有很多强大的功能,其中之一是仿真功能。

用户可以设置各种参数来对系统模型进行仿真,比如时间步长、仿真时长等。

Simulink会根据用户设定的参数对系统模型进行仿真,并产生仿真结果。

用户可以通过可视化界面查看仿真结果,也可以将仿真结果保存为数据文件和图形文件。

另外,Simulink还提供了各种调试工具和分析工具,帮助用户对系统模型进行诊断和优化。

除了系统建模和仿真功能,Simulink还可以与其他Matlab工具和工具箱进行集成。

用户可以在Simulink中调用Matlab函数和脚本,也可以使用不同的工具箱来扩展Simulink的功能。

Simulink还支持与外部硬件的连接和通信,比如数据采集卡、控制器等。

总之,Matlab Simulink是一个功能强大、易于使用的系统建模和仿真工具。

通过Simulink,用户可以通过图形化界面来构建和仿真复杂的系统模型,同时还可以进行调试和优化。

Simulink入门共21页

Simulink入门共21页

:X—Y图的输出,分别输入X,及Y。
To File
:把数据输出至文件中。
To Workspace
:把数据输出至MATLAB的工作空间中。
Stop—Simulation
:停止仿真。
图6—4 Sink库
图6—5 Sink库图标窗口
图6—6 Discrete库
图6—7 Discrete库图标窗口
3.Discrete 离散型元件
Zero—0rder Hold
:零阶保持器。
4.Continuous 线性系统元件
图6—8 Continuous库
图6—9 Continuous库图标窗口
Derivative
:微分器。
Integrator
:积分器。
Memory
:输出本模块上一步的输入值。
State—Space
:状态空间模型。
Transfer Fun
:建立一个线性传递函数。
Transport Delay
:对输入信号进行一定的延迟
Variable Transport Delay :对输入信号进行不定量的延迟
Zero—Pole
:用极—零点的方式输入传递函数。
5.Nonlinear 非线性元件
Backlash
:用放映的方式模仿一个系统的特性
Coulomb & Viscous Friction :在原点不连续而在原点以 外具有线性增益
Dead zone
:提供一个死区
Manual switch
:手动开关
Multiport switch
:多点输出开关
Quantizer
:对输入进行量化处理
Rate limiter

simulink 入门

simulink 入门
模型操作
打开与关闭模型 保存模型 打印与拷贝模型 模型属性与注释
实时系统与硬件设计
Simulink Fixed Point Real-Time Windows Target xPC Target xPC Target Embedded Option Simulink HDL Coder Simulink PLC Coder Instrument Control Toolbox Video and Image Processing Blockset
2. Simulink建模的基础知识
Math Operations (数学模块库)
Abs & Sign :绝对值与符号函数 add & Sum:加减 Product & Divide:乘除 MinMax:最值运算 Gain:增益 Slider Gain:滑动增益 Math Function:数学函数 Trigonometric Function:三角函数 复数运算 取整运算 …
2. Simulink建模的基础知识
Discrete (离散模块库)
Discrete-time Integrator:离散积分 Discrete Derivative:离散微分 Discrete Filter:离散滤波器 Discrete PID Controller:离散PID控制器 Discrete Transfer Fcn:离散传递函数模型 Discrete Zero-Pole:离散零极点传递函数模型 Discrete State-Space:离散状态空间模型 First-Order Hold:一阶采样保持器 Zero-Order Hold:零阶采样保持器 Unit Delay:一个采样周期的延时 Memory:存储器 …

SIMULINK基础详解

SIMULINK基础详解

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

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按钮。

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

∙打开一个现有模型。

要打开最近使用的模型,请在 MATLAB Home选项卡上点击Simulink。

SIMULINK基础(全)

SIMULINK基础(全)

3
主要内容
Simulink 建模的基础知识
Simulink 建模与仿真
线性/非线性系统分析与仿真
子系统与模块封装技术
4
SIMULINK简介
二、SIMULINK的启动
1. 在MATLAB的命令窗口直接键入“Simulink”并回车;
2. 单击MATLAB工具条上的 Simulink 图标;
3. 在MATLAB菜单上选 File→New→Model。
22
仿真算法与控制参数选择
1、Solver页
仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步 长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固 定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差 控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提 供误差控制和过零检测。 在仿真时还可以选定最大允许的步长和最小允许的步长,这可以通过 填写 Max step size 栏目和 Min step size 的值来实现,如果变步长选择 的步长超过这个限制则将弹出警告对话框。 用户还可以在solver下拉选项框中选择对应模式下仿真所采用的算法。
21
仿真算法与控制参数选择
1、Solver页
此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器, 并设定它的参数; 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机 仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为 0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际 的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的 因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素 ,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度 等等。 仿真精度控制有 Relative Tolerance 选项、Absolute Tolerance 等,其 中相对误差限的默认值设置为 1e-3,该值在实际仿真中显得偏大,建 议选择 1e-6 和 1e-7。值得指出的是,由于采用的变步长仿真算法,所 以将误差限设置到这样小的值也不会增加太大的运算量。

《SIMULINK仿真基础》课件

《SIMULINK仿真基础》课件
《SIMULINK仿真基础》 PPT课件
SIMULINK仿真基础课程介绍,通过深入浅出的方式帮助学员掌握SIMULINK 的基本知识和仿真实践技巧。
课程大纲
SIMULINK基础知识
SIMULINK简介、软件界面介绍、模型的创 建方式、模型的保存和加载。
仿真方法与技巧
仿真参数设置、仿真停止方式、数据可视化 方法。
并实现控制和优化
项目仿真分析
学习仿真技巧,掌握仿真参数设置,能够 运用仿真进行系统分析、控制和优化。
通过实际案例学习,能够应用SIMULINK 进行电路、控制系统、机械系统和通信系 统的仿真分析。
模型建立流程
模型建立步骤、系统建模方法、模型参数设 置。
仿真应用案例
电路仿真实例、控制系统仿真实例、机械系 统仿真实例、通信系统仿真实例。
目标学员
1 工程师
具备一定仿真基础,希望深入学习SIMULINK并应用于实际工程项目的工程师。
2 科研人员
希望运用仿真技术进行科研工作的科研人员。
3 学生
对仿真技术和工程应用感兴趣的学生,尤其是自动化握SIMULINK的基础知识
2 熟练掌握SIMULINK模型建立流程
了解SIMULINK的特点、功能和基本操作, 掌握基本的建模方法。
学习模型建立的基本步骤,了解不同系统 的建模方法,并掌握模型参数设置。
3 能够运用SIMULINK进行仿真分析, 4 能够应用SIMULINK完成实际工程

simulink教程前言 (10)

simulink教程前言 (10)

第10章封装子系统本章向读者介绍如何为Simulink子系统创建自定义的用户接口,也就是对子系统进行封装,以表现自定义的用户风格,本章的主要内容如下:关于封装介绍子系统封装的关键概念封装子系统举例以一个简单的子系统封装为例,向读者介绍封装操作的基本步骤封装编辑器封装编辑器是封装操作中的设置对话框,这里详细介绍了该对话框的参数设置方式 链接封装参数和模块参数介绍了如何把封装参数链接到隐藏在封装后的模块参数上创建动态框如何创建根据用户选择的选项不同而改变模块外观的封装自定义库操作如何定制用户库,并将用户库添加到Simulink库中可配置子系统如何创建可配置子系统,也就是如何创建可在不同模块之间进行切换的子系统第10章封装子系统 22710.1 封装子系统概述封装就是创建子系统的自定义用户接口,也就是把具有一定功能的子系统封装成一个模块,它可以隐藏原子系统中的内容,使其作为一个模块显示在用户模型中,而且该模块与Simulink中的固有模块一样有自己的图标和参数对话框,当用户双击这个模块时可以打开对话框,并设置参数值。

不仅如此,封装后的子系统拥有自己的工作区,这不仅可以使用户的框图更加专业,而有还能够保护子系统中实现的内容,用户可以向被封装的子系统传递参数,就像使用通常内嵌的Simulink模块一样。

10.1.1 封装特征Simulink中的Mask Editor(封装编辑器)提供了封装子系统时编辑模块的所有操作设置值,它可以对任何子系统进行封装,封装后的子系统允许用户:用一个单个的参数框(包含模块说明、参数提示和帮助文本)替换子系统的参数框及内容;用用户图标替换子系统的标准图标;通过隐藏子系统的内容防止对子系统的无目的更改;把定义了模块行为的方块图封装在子系统内,然后把被封装的子系统放置在库中,从而创建一个用户模块。

封装可以包括如下特征。

1.封装图标封装图标替换了子系统的标准图标,也就是,它会替代方块图中子系统模块的标准图标。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第11章Simulink调试器本章向读者介绍如何利用Simulink调试器定位和查找模型中的错误,调试器是查找模型仿真中错误的重要工具,本章的主要内容包括:调试器概述介绍Simulink调试器的类型,如何启动不同模式的调试器调试器控制如何在不同的调试器模式下控制仿真的执行设置断点如何利用调试器设置断点,包括无条件断点和有条件断点显示仿真信息如何显示当前的仿真信息显示模型信息如何显示被调试模型的信息256 第11章 Simulink调试器11.1 调试器概述Simulink调试器是用来定位和查看Simulink模型中错误的工具,它允许用户利用仿真方法来仿真模型,并在每个方法结束后暂停仿真,并查看该方法执行后的仿真结果,通过单步运行模型仿真和交互显示模块的状态、输入和输出,用户可以用调试器查找出模型中存在的问题。

注意:方法就是Simulink在仿真过程中的每个时间步上用来求解模型的函数,模块由多个方法组成,模块方块图的执行是一个多步操作,它需要在仿真过程中执行方块图中所有模块的不同模块方法。

Simulink调试器既有图形用户接口,也有命令行用户接口,图形用户接口允许用户访问调试器中最常用的特性,命令行接口可以访问调试器的所有功能。

11.1.1 启动调试器Simulink调试器有两种模式:图形模式(GUI)和命令行模式。

若要在GUI模式下启动调试器,首先打开希望调试的模型,并从模型窗口中的Tools菜单上选择Simulink debugger 命令,打开调试器窗口,如图11-1所示。

图11-1若要从MATLAB命令行中启动调试器,可以利用sldebug命令或带有debug选项的sim 命令在调试器的控制下启动模型。

例如,下面的两个命令均可以将文件名为vdp的模型装载到内存中,同时开始仿真,并在模型执行列表中的第一个模块处停止仿真。

>> sim (‘vdp’, [0, 10], simset (‘debug’, ‘on’) )或>> sldebug ‘vdp’11.1.2 调试器的图形用户接口调试器的图形用户接口包括工具栏和左、右两个选项面板,左侧的选项面板包括Break第11章 Simulink 调试器 257Points 选项页和Simulation Loop 选项页,右侧的选项面板包括Outputs 、Sorted List 和Status 选项页。

当在GUI 模式下启动调试器时,单击调试器工具栏中的“开始/继续”按钮开始仿真,Simulink 会在执行的第一个仿真方法处停止仿真,并在Simulation Loop 选项面板中显示方法的名称,同时在模型方块图中显示当前方法标注,如图11-2所示。

图11-2这时,用户可以设置断点、单步运行仿真、继续运行仿真到下一个断点或终止仿真、检验数据或执行其它的调试任务。

注意:当在GUI 模式下启动调试器时,在MATLAB 命令窗口中的调试器命令行接口也被激活,但是,用户应该避免使用命令行接口,以防止图形接口与命令行接口的同步错误。

11.1.3 调试器的命令行接口在调试器命令行模式下,用户可以在MATLAB 命令窗口中键入调试器命令来控制调试器,调试器接受调试器命令缩写,关于命令缩写和可重复命令参看表11-1。

用户可以通过在MATLAB 命令行中输入一个空命令(也就是,按下Return 键)来重复某些命令。

当用命令行模式启动调试器时,调试器不是在调试器窗口中显示方法名称,而是在MATLAB 命令窗口中显示方法名称。

图11-3就是在MATLAB 命令窗口中输入sldebug ‘vdp’命令后显示的调试器信息。

图11-3258 第11章 Simulink调试器1.方法的ID有些Simulink命令和消息使用方法的ID号表示方法,方法的ID号是一个整数,它是方法的索引值。

在仿真循环过程中第一次调用方法时就指定了方法的ID号,调试器会顺序指定方法的索引值,在调试器阶段第一次调用的方法以0开始,以后顺序类推。

2.模块的ID有些Simulink命令和消息使用模块的ID号表示模块,当在仿真的编译过程中生成模型的排序列表时,Simulink就指定了模块的ID号,它是模块的索引值。

模块ID的格式为sid:bid,这里,sid是一个整数,用来标识包含该模块的系统(或者是根系统,或者是非虚拟系统),bid是系统排序列表中模块的位置。

例如,模块索引0:1表示在模型根系统中的的第1个模块。

调试器的slist命令可以显示被调试模型中每个模块的模块索引值。

3.访问MATLAB工作区用户可以在sldebug调试命令提示中输入任何MATLAB表达式。

例如,假设此时在断点处,用户正在把时间和模型的输出记录到tout和yout变量中,那么下面的命令可以绘制变量的曲线图。

( sldebug …) plot ( tout, yout )假设用户需要访问的变量名与sldebug命令中的某些字母相同,例如,变量s是step 命令名中的一部分,那么在sldebug命令提示中键入s则显示的是变量s的值。

( sldebug …) eval ( ‘s’ )11.1.4 调试器命令表11-1列出了调试器命令,表中的“重复”列表示在命令行中按下Return键是否可以重复这个命令,“说明”列对命令的功能进行了简短的描述。

表11-1 调试器命令命令缩写格式重复说明animate ani 否使能/关闭动画模式ashow as 否显示一个代数环atrace at 否设置代数环跟踪级别bafter ba 否在模块执行后插入断点break b 否在模块执行前插入断点bshow bs 否显示一个指定的模块clear cl 否从模块中清除断点第11章 Simulink调试器 259 continue c 是继续仿真disp d 是当仿真结束时显示模块的I/Oelist el 否显示方法执行顺序emode em 否在加速模式和正常模式之间切换etrace et 否使能或关闭方法跟踪help ? 或h 否显示调试器命令的帮助minor m 否使能或关闭最小步长模式nanbreak na 否设置或清除无限值处的断点next n 是至下一个时间步的起始时刻probe p 否显示模块数据quit q 否中断仿真run r 否运行仿真至仿真结束时刻slist sli 否列出模型中的非虚拟模块states state 否显示当前的状态值status stat 否显示有效的调试选项step s 是步进仿真一个或多个方法stop sto 否停止仿真strace i 是设置求解器跟踪级别systems sys 否列出模型中的非虚拟系统tbreak tb 否设置或清除时间断点trace tr 是每次执行模块时显示模块的I/Oundisp und 是从调试器的显示列表中删除模块untrace unt 是从调试器的跟踪列表中删除模块where w 否显示仿真在仿真循环中的当前位置xbreak x 否当调试器遇到限步长状态时中断仿真zcbreak zcb 否在非采样过零事件处触发中断zclist zcl 否列出包含非采样过零的模块260 第11章 Simulink 调试器11.2 调试器控制用户可以根据自己的需要选择不同的调试器模式,对于Simulink 调试器来说,无论选择GUI 模式还是命令行模式,它都可以从当前模型悬挂的任何时刻开始运行仿真至下列时刻:仿真结束时刻 下一个断点 下一个模块 下一个时间步11.2.1 连续运行仿真调试器的run 命令可以从仿真的当前时刻跳过插入的任何断点连续运行仿真至仿真终止时刻,在仿真结束时,调试器会返回到MATLAB 命令行,若要继续调试模型,必须重新启动调试器。

注意:GUI 模式下不提供与run 命令功能相同的图形版本,若要在GUI 模式下连续运行仿真至仿真结束时刻,必须首先清除所有的断点,然后单击“开始/继续”按钮。

11.2.2 继续仿真在GUI 模式下,当调试器由于任何原因将仿真过程悬挂起来时,它会将“停止仿真”按钮设置为红色,若要继续仿真,单击“开始/继续”按钮。

在命令行模式下,需要在MATLAB 命令窗口中输入continue 命令继续仿真,调试器会继续仿真至下一个断点处,或至仿真结束时刻。

当选择调试器工具栏中的“动画”按钮时,调试器会处在动画模式,此时调试器呈灰色显示,“开始/继续”按钮或continue 命令会步进仿真方法,并在每个方法结束时暂停仿真。

当在动画模式下运行仿真时,调试器会使用调试指针标识在每个时间步上执行的是方块图中的哪个模块,这个移动的指针形象地说明了模型的仿真过程,用户可以使用调试器工具栏中的滑动条增加或减少两次方法执行中的延迟,因此也就减慢或加快了动画速率。

注意:当使能动画模式时,调试器不允许用户设置断点,并在动画仿真过程中忽略用户设置的任何断点。

事实上,无论调试器何时在某个方法上停止仿真,它都会在被调试模型的方块图中显示调试指针,如图12-4所示。

第11章 Simulink 调试器 261图12-4调试指针指示出了仿真要执行的下一个方法,它包括三个部分:下一个方法框:它出现在方块图的左上角,它指定了被执行的下一个方法的名称和ID 号;模块指针:当下一个方法是模块方法时,模块指针才出现,它表示下一个方法要操作的模块;方法标题:当下一个方法是模块方法时,方法标题才会出现,它是一个彩色的矩形块,标题会部分覆盖下一个方法要执行的模块的图标,图标中标题的颜色和位置表示下一个模块方法的类型,如下:在动画模式下,标题会保持当前最大时间步的时间长度,并在每个标题上显示一个数字,这个数字指定了在时间步内模块调用相应方法的时间值。

若要在调试器的命令行模式下使能动画,在MATLAB 命令行中键入animate 命令,animate 命令中的延迟参数允许用户指定两次调用方法的间隔时间长度,缺省值为1秒。

例如,下面的命令使动画以缺省值的两倍速率执行:>> animate 0.5若要在命令行模式下关闭动画,键入如下命令:>> animate stop下一个方法框方法标题262 第11章 Simulink 调试器11.2.3 单步运行仿真用户可以在调试器的GUI 模式和命令行模式下单步运行仿真。

1.在GUI 模式下单步运行仿真在GUI 模式下,用户可以利用调试器工具栏中的选择按钮控制仿真步进的量值,表11-2列出了调试器工具栏中的命令按钮及作用。

表11-2 调试器工具栏的命令按钮及作用按钮 作用步进到下一个方法 越过下一个方法 跳出当前方法在开始下一个时间步时步进到第一个方法 步进到下一个模块方法 开始或继续仿真 暂停仿真 停止仿直在选择的模块前中断当执行所选择的模块时显示该模块的输入和输出 显示被选择模块的当前输入和输出切换动画模式,按钮旁的滑动条控制动画速率显示调试器帮助信息关闭调试器在GUI 模式下利用调试器工具栏上的按钮单步运行仿真,在每个步进命令结束后,调试器都会在Simulation Loop 选项面板中高亮显示当前方法的调用堆栈,调用堆栈由被调用的方法组成,调试器会高亮显示调用堆栈中的方法名称。

相关文档
最新文档