Simulink 入门教程
- 格式:doc
- 大小:339.00 KB
- 文档页数:45
matlab之simulink最通俗教程Simulink是MATLAB的一个重要工具箱,用于建模和仿真控制系统。
Simulink提供了一种图形化建模环境,可以方便地构建复杂系统,并对其进行仿真和分析。
本文将详细介绍Simulink的基本原理和使用方法,以便初学者快速入门。
Simulink模型由各种模块组成,这些模块可以是系统组件、数学算法或信号处理函数。
用户可以使用Simulink库中的预定义模块,也可以自己编写MATLAB函数来创建自定义模块。
模块之间的连接通过信号线进行,可以传递各种类型的信号,如数值、布尔值和字符串。
使用Simulink建模的第一步是创建一个新模型。
在MATLAB命令窗口中输入“simulink”命令即可打开Simulink库浏览器。
然后,可以从左侧的“Simulink Library Browser”面板中拖动所需的模块到模型窗口中。
常用的模块包括输入输出模块、数学运算模块和逻辑控制模块。
在模型中添加模块后,可以使用鼠标将它们连接在一起。
要创建连接线,只需点击模块输出端口并将鼠标拖动到另一个模块的输入端口。
连接线将自动连接两个模块,形成信号传递路径。
连接线上可以添加箭头标记,用于指定信号的流动方向。
模型的参数和设置可以在模型窗口的右侧“Properties”面板中进行调整。
例如,可以设置模块的初始状态、仿真时间范围和采样时间。
还可以为模块添加注释、设置显示颜色和调整模块大小等。
Simulink提供了多种仿真和分析工具,用于评估模型的性能和行为。
可以使用“Simulate”按钮开始仿真并观察模型的实时响应。
仿真结果可以以图表或波形图的形式显示,并可以保存和导出到MATLAB工作空间中进行后续处理。
还可以使用模型验证和优化工具来检查模型的准确性和效率。
除了基本的建模和仿真功能外,Simulink还支持代码生成和硬件连接。
可以将Simulink模型转换为C代码,并嵌入到嵌入式系统中。
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 子模块库,便可看到各种输入源模块。
图7.1 Simulink(4) 用鼠标单击所需要的输入信号源模块“Sine Wave”(正弦信号),将其拖放到的空白模型窗口“untitled”,则“Sine Wave”模块就被添加到untitled窗口;也可以用鼠标选中“Sine Wave”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave”模块添加到untitled窗口,如图7.2所示。
图7.2 Simulink(5) 用同样的方法打开接收模块库“Sinks”,选择其中的“Scope”模块(示波器)拖放到“untitled”窗口中。
(6)在“untitled ”窗口中,用鼠标指向“Sine Wave ”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope ”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。
如图7.3所示。
(7) 开始仿真,单击“untitled ”模型窗口中“开始仿真”图标,或者选择菜单“Simulink ”——“Start ”,则仿真开始。
Simulink使用入门下面简要的介绍一下,如何使用Simulink进行建模和仿真实验:1.启动matlab之后,在命令窗口中输入命令“Simulink”或者单击工具栏上的Simulink图标,打开Simulink模块库窗口。
如图1所示。
图1 Simulink模块库窗口2.在Simulink模块库窗口中单击菜单项“File/New/Model”,就可以新建一个Simulink模型文件。
如图2所示。
图2 Simulink 模型文件3.在2中所建立的Simulink文件窗口中单击“File/Save as”,可以修改文件名,并把文件保存在自己所要保存的路径下。
4.双击Communications Blockset,该模块库包含了通信系统中常用的功能模块:Channels(传输信道),Comm Sources(信源),Comm Sink(信宿),Source Cording(信源编码),Modulation(调制),等等。
如图3所示。
图3 通信工具箱里的功能模块5.在Simulink基础库中找到自己需要的模块,选取该模块,直接拖动到新建模型窗口中的适当位置,或者选取该模块后,右击鼠标,“Add to…”加到所建模块窗口中。
图4中,把信号发生器放到了amn中。
图4 利用模块库建立仿真模型6.如果需要对模型模块进行参数设置和修改,只需选中模型文件中的相应模块,单击鼠标右键,选取相应的参数进行修改,或者双击鼠标左键,进行修改。
还可以在选中模块之后通过拖动鼠标来修改模块的位置、大小和形状。
7.通过快捷菜单的其它选项还可以对模型的颜色、旋转、字体、阴影等属性进行设置,也可以对模型进行接剪切、拷贝或删除。
8.模块外部的大于符号“>”分别表示信号的输入输出节点,为了连接两个模型的输入输出,可以将鼠标置于节点处,这时鼠标显示为十字,拖动鼠标到另一个模块的端口,然后释放鼠标的按钮,则形成了带箭头的连线,箭头的方向表示信号的流向。
Simulink入门教程北京索为高科系统技术有限公司雒海涛2011-02-12一、simulink简介Simulink是MATLAB中的一种交互式工具,完全支持图形用户界面,无需考虑算法的实现,主要针对创造性算法和模块结构的设计。
基本的工作流程为:二、simulink启动Simulink可以通过三种方式启动,在matlab命令行输入simulink;点击matlab工具条上simulink图标;在matlab桌面开始菜单启动。
分别如下图所示:三、simulink基本环境介绍上图是simulink的基本界面环境,通过该界面可以新建simulink模型,点击工具条上的new 按钮,或者通过菜单Files-new-model来新建一个模型,模型界面如下:模型窗口由菜单、工具栏、模型浏览器窗口、模型框图窗口以及状态栏组成。
1、工具栏2、菜单菜单名菜单项功能FileNew——Model 新建模型Model properties 模型属性Preferences SIMULINK 界面的默认设置选项Print… 打印模型Close 关闭当前Simulink 窗口Exit MATLAB 退出MATLAB 系统EditCreate subsystem 创建子系统Mask subsystem… 封装子系统Look under mask 查看封装子系统的内部结构Update diagram 更新模型框图的外观ViewGo to parent 显示当前系统的父系统Model browser options 模型浏览器设置Block data tips options 鼠标位于模块上方时显示模块内部数据Library browser 显示库浏览器Fit system to view 自动选择最合适的显示比例Normal 以正常比例(100%)显示模型SimulationStart/Stop 启动/停止仿真Pause/Continue 暂停/继续仿真Simulation Parameters… 设置仿真参数Normal 普通Simulink 模型Accelerator 产生加速Simulink 模型FormatText alignment 标注文字对齐工具Filp name 翻转模块名Show/Hide name 显示/隐藏模块名Filp block 翻转模块Rotate Block 旋转模块Library link display 显示库链接Show/Hide drop shadow 显示/隐藏阴影效果Sample time colors 设置不同的采样时间序列的颜色Wide nonscalar lines 粗线表示多信号构成的向量信号线Signal dimensions 注明向量信号线的信号数Port data types 标明端口数据的类型Storage class 显示存储类型ToolsData explorer… 数据浏览器Simulink debugger… Simulink 调试器Data class designer 用户定义数据类型设计器Linear Analysis 线性化分析工具四、simulink常用模块介绍1.输入信号源模块库(Sources)2.接收模块库(Sinks)3.连续系统模块库(Continuous)4.离散系统模块库(Discrete)5.信号路线模块(Signal Routing)6.端口和子系统模块组(Ports&Subsystem)7.数学运算模块(Math Operations)8.查询表模块组(Look-Up Tabels)9.非连续函数模块组(Discontinuous)10.用户自定义模块(User-Defined Functions)五、Simulink文件操作1.新建文件新建仿真模型文件有几种操作:●在MATLAB 的命令窗口选择菜单“File”>“New”>“Model”。
S i m u l i n k-入门教程(总83页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--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 文件中在操作系统命令行中,使用 matlab 命令和 -r 开关例如,要在运行 Microsoft® Windows®操作系统的计算机上启动 MATLAB 时启动 Simulink,请创建具有以下目标的桌面快捷方式:matlabroot\bin\win64\ -r start_simulink在 Macintosh 和 Linux®计算机上,可在启动 MATLAB 时使用以下命令启动Simulink 软件:matlab -r start_simulink打开 Simulink Editor要打开 Simulink Editor,您可以:创建一个模型。
在 MATLAB 的Home选项卡上,点击Simulink并选择一个模型模板。
S i m u l i n k仿真环境基础学习Simulink是面向框图的仿真软件。
7.1演示一个Simulink的简单程序【例7.1】创建一个正弦信号的仿真模型。
步骤如下:(1)在MATLAB的命令窗口运行simulink命令,或单击工具栏中的图标,就可以打开Simulink模块库浏览器(SimulinkLibraryBrowser)窗口,如图7.1所示。
图7.1Simulink界面(2)单击工具栏上的图标或选择菜单“File”——“New”——“Model”,新建一个名为“untitled”的空白模型窗口。
(3)在上图的右侧子模块窗口中,单击“Source”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink下的Source子模块库,便可看到各种输入源模块。
(4)用鼠标单击所需要的输入信号源模块“SineWave”(正弦信号),将其拖放到的空白模型窗口“untitled”,则“SineWave”模块就被添加到untitled窗口;也可以用鼠标选中“SineWave”模块,单击鼠标右键,在快捷菜单中选择“addto'untitled'”命令,就可以将“SineWave”模块添加到untitled窗口,如图7.2所示。
(5)Scope ”模块(示波器)拖放到“untitled ”窗口中。
(6)在“untitled ”窗口中,用鼠标指向“SineWave ”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope ”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。
如图7.3所示。
(7)开始仿真,单击“untitled ”模型窗口中“开始仿真”图标,或者选择菜单“Simulink ”——“Start ”,则仿真开始。
双击“Scope ”模块出现示波器显示屏,可以看到黄色的正弦波形。
如图7.4所示。
图7.2Simulink 界面图7.3Simulink模型窗口图7.4示波器窗口(8)保存模型,单击工具栏的图标,将该模型保存为“Ex0701.mdl”文件。
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。
或者,如果您知道要打开的模型的名称,可在 MATLAB 命令提示符下输入名称,例如vdp。
有关打开模型的其他方法,请参阅打开模型。
提示Simulink Editor 会在 MATLAB 桌面的前端打开。
要将 MATLAB 桌面移动到前端,请在 Simulink Editor 中选择View> MATLAB Desktop。
打开Library Browser通过以下方式之一从 MATLAB 中打开 Simulink Library Browser:•在主页选项卡上,点击Simulink并选择一个模型模板。
在新模型中,点击Library Browser按钮。
•在命令提示符下,输入slLibraryBrowser。
Library Browser 随即打开,并显示您系统中的 Simulink 模块库的树视图。
当您点击树视图中的库时,右侧窗格将显示库的内容。
注意除了 Simulink 库之外,Simulink 还附带了模块库。
这些库支持对附带的示例模型(包含这些库中的模块)进行仿真。
但是,要生成代码或修改这些模块,必须拥有相关的产品许可证。
在 Simulink Editor 中构建和编辑模型•启动 Simulink 并创建一个新模型•向模型中添加模块•对齐和连接模块•设置模块参数•添加更多模块•建立分支连接•组织模型•对模型进行仿真并查看结果•修改模型本示例介绍创建模型、向模型中添加模块、连接模块以及仿真模型的基础知识。
您还将学习如何使用子系统组织模型、为模型的组件命名以及修改模型。
启动 Simulink 并创建一个新模型1.在 MATLAB®主页选项卡中,点击Simulink。
2.在 Simulink®Start Page 上,点击Blank Model模板。
将在 Simulink Editor 中打开一个基于Blank Model模板的新模型。
3.打开 Library Browser,以访问创建模型需要的模块。
在 Simulink Editor中,点击Library Browser按钮。
向模型中添加模块一个模型至少要接收一个输入信号,对该信号进行处理,然后输出结果。
在Library Browser 中,Sources 库包含代表输入信号的模块。
Sinks 库包含用于捕获和显示输出的模块。
其他库包含可用于各种用途(如数学运算)的模块。
在此基本模型中,输入信号为正弦波,执行的操作为增益运算(通过乘法增加信号值),结果输出到一个 Scope 窗口。
尝试使用不同的方法来浏览库,并向您的模型中添加模块。
1.打开 Sources 库。
在 Library Browser 的树视图中,点击Sources库。
2.在右窗格中,将光标悬停在Sine Wave 模块上,以查看描述其用途的工具提示。
3.使用上下文菜单在模型中添加一个模块。
右键点击该模块并选择Addblock to model untitled。
(要了解该模块的详细信息,请从上下文菜单中选择Help。
)4.通过拖放操作在模型中添加一个模块。
在库树视图中,点击MathOperations。
在 Math Operations 库中,找到Gain 模块,然后将其拖到模型中Sine Wave 模块的右侧。
5.在库树视图中,点击Simulink,查看以图标形式显示在右窗格中的子库。
此视图是导航库结构的另一种方法。
双击Sinks库图标。
6.在 Sinks 库中,找到Scope 模块,然后使用上下文菜单或通过拖放操作将其添加到模型中。
现在,您的模型如下图所示。
对齐和连接模块可将模块连接起来,在模型元素之间建立能够使模型正常工作所需要的关系。
当您根据模块之间的交互方式对齐模块后,模型将更加一目了然。
快捷方式可以帮助您对齐和连接模块。
1.拖动 Gain 模块,使其与 Sine Wave 模块对齐。
当两个模块水平对齐时,将出现一条对齐参考线。
释放模块,此时将出现一个蓝色箭头,作为建议连接线的预览。
2.要接受该连接线,请点击箭头的末端。
此时参考线将变成一条实线。
3.采用同样的方法,将 Scope 模块与 Gain 模块对齐并连接起来。
提示可以使用Diagram> Arrange菜单查看其他对齐方式选项。
设置模块参数您可以设置大多数模块上的参数。
参数可以帮助您指定模块如何在模型中工作。
您可以使用默认值,也可以根据需要设置值。
可以使用 Property Inspector 设置参数。
也可以双击大多数模块,使用模块对话框来设置参数。
要了解何时使用每一种方式,请参阅设置属性和参数。
在模型中,您可以在Sine Wave 模块中设置幅值,在Gain 模块中设置增益值。
1.显示 Property Inspector。
选择View> Property Inspector。
2.选择Sine Wave 模块。
3.在 Property Inspector 中,将Amplitude参数设置为2。
4.选择Gain 模块并将Gain参数设置为3。
该值将显示在模块上。
添加更多模块假设您要再执行一个增益运算,但这次针对的是Sine Wave 模块的输出绝对值。
为了实现此目的,需要添加一些模块,请尝试通过不同的方式找到库中的模块并添加到模型中。
1.如果知道要添加的模块的名称,可以使用快捷方式。
点击模型中要添加模块的位置,然后键入模块名称(在本例中为 Gain)。
此时将显示一个可能的模块列表。
2.点击模块名称,或者在突出显示模块名称后按Enter。
如果它不是列表中的第一个模块,您可以使用箭头键突出显示模块名称。
使用此方法可以在出现蓝色放大镜的任何位置添加模块,例如在您绘制信号线时。
3.许多模块会显示要求您为某个模块参数输入值的提示。
Gain 模块会提示您输入Gain值。
键入3并按Enter。
每增加一个模块实例,名称中的数字就会增加 1,例如 Gain1、Gain2 等。
4.在模型中添加一个Abs 模块。
假定您不知道模块在哪个库中,也不知道模块的完整名称。
这种情况下,可以使用 Library Browser 中的搜索框进行搜索。
在搜索框中输入abs并按Enter。
当您找到 Abs 模块后,将其添加到 Gain1 模块的左侧。
5.添加另一个 Scope 模块。
您可以右键点击并拖动现有的 Scope 模块为其创建一个副本,或使用Edit> Copy和Edit> Paste。
下图显示了您的模型的当前状态。
注意当您按照数字顺序为模型中的模块命名时(例如 Gain1、Gain2 等),复制和粘贴操作将按照 ASCII 字符的标准排序约定生成模块名称。
这种排序方法可能会导致模块名称中出现一串难以理解的数字。
如果编号方案对您很重要,请为模块编号,使复制和粘贴操作生成的模块名称遵循常见的阅读顺序。
为此,请在模块名称中使用前导零,例如 Gain001、Gain002 等。
建立分支连接第二个增益运算的输入是正弦波的绝对值。
要使用一个Sine Wave 模块作为两个增益运算的输入,需要从Sine Wave 模块输出信号上创建一条分支。
1.对于模型中的第一组模块,您使用了水平对齐参考线帮助您对齐和连接模块。
您还可以使用参考线垂直对齐模块。
将 Scope1 模块拖动到 Scope 模块下面并与之对齐。
当垂直对齐参考线显示两个模块已对齐时,释放模块。
2.按下图所示对齐并连接 Abs 和 Gain1 模块。
3.从 Sine Wave 模块的输出端口创建一条连接到 Abs 模块的分支线。
当光标悬停在 Sine Wave 模块的输出信号线上时,按住Ctrl键并向下拖动。
拖动分支线,直到末端靠近 Abs 模块为止。
4.向 Abs 模块拖动,直到分支线连接到该模块。
根据需要移动顶点,以拉直该线。
(顶点上出现一个圆圈。
)您可以尝试用其他方法来连接模块:•拖动鼠标,从一个模块的输出向另一个模块的输入绘制一条连接。
当您的模块已对齐(即不显示参考线)时,可以使用此方法。
•选择第一个模块,然后按住Ctrl键并点击要连接的模块。
当您不希望模块对齐时,可以使用此方法。
连接线根据需要拐弯以建立连接,如下图所示。
注意您可以选择多个模块,将它们连接到一个具有多个输入端口的模块(例如,总线)。
要从线段逼近对角线,请按住Shift键并拖动顶点。
提示要改善信号线的形状,请选择信号线,然后从省略号菜单中选择Autoroute Line。
如果模型元素之间存在更好的路线,则会重新绘制信号线。
您可以将模块组合成子系统,并为模块、子系统和信号添加标签。
有关子系统的详细信息,请参阅创建子系统。