第七章 Simulink建模和仿真

合集下载

MATLAB_第7讲_simulink建模仿真

MATLAB_第7讲_simulink建模仿真

1 启动Simulink
➢启动Simulink 每个子模块库中包含同类型的标准模型,这些模块可直 接用于建立系统的Simulink框图模型。
可按以下方法打开子模块库: 用鼠标左键点击某子模块库 (如【Continuous】), Simulink 浏览器右边的窗口 即显示该子模块库包含的全 部标准模块。
仿真,可选择【Simulation: Stop】菜单。也可直接点击模型窗口中的
(或 )启动(或停止)仿真。 No
Image
No Image
No Image
No Image
7.2 模块库和系统仿真
1 Simulink模块库
1) Sources库
也可称为信号源库,该库包含了可 向仿真模型提供信号的模块。它没 有输入口,但至少有一个输出口。
No Image
No Image
4) Math 库
No :实现一个数学函数。
Image
右图为该函数的参数设置框。点击函数设置的下拉窗口,可选择 所需要的函数。选定函数后,该模块图标将显示所选函数。如选 择“Square”,则模块图标变为:
No
No
Image
Image
1 Simulink模块库
5) Signals Routing 库
No Image
No Image
3建立Simulink仿真模型
➢模块调整 改变模块位置、大小; 改变模块方向 使模块输入输出端口的方向改变。选中模块后,选取菜单Format→ Rotate Block,可使模块旋转900。
No Image
No Image
按快捷键Ctrl+R结果相同。
3建立Simulink仿真模型
No Image

计算机仿真技术课件第七章Simulink建模和仿真

计算机仿真技术课件第七章Simulink建模和仿真
实现IIR和FIR滤波器
Discrete state-space
实现离散状态空间系统
Discrete-time integrator
离散时间积分器
Discrete transfer fcn
实现离散传递函数
Discrete zero-pol
实现用零极点表达的离散传递函数
First-order hold
实现一阶采样保持系统
Unit delay
单位采样时间延迟器
Zero-order hold
实现采样的零阶保持
表7.2.3 Discrete库
第七章 Simulink建模和仿真 7.2 基本模块
模 块 名
说 明
Derivative
信号的微分运算
Integrator
To file
向文件中写数据
To workspace
向工作间定义的变量写数据到
XY graph
Matlab图形窗口显示信号的二维图
表7.2.2 Sinks库
第七章 Simulink建模和仿真 7.2 基本模块
模 块 名
说 明
Discrete filter
第七章Simulink建模和仿真 7.1 Simulink的概述和基本操作
Simulink模型并不一定要包含全部的三种元素,在实际应用中通常可以缺少其中的一个或两个。例如,若要模拟一个系统偏离平衡位置后的恢复行为,就可以建立一个没有输入而只有系统模块加一个显示模块的模型。在某种情况下,也可以建立一个只有源模块和显示模块的系统。若需要一个由几个函数复合的特殊信号,则可以使用源模块生成信号并将其送入Matlab工作间或文件中。 二、仿真运行原理 Simulink仿真包括两个阶段;初始化阶段和模型执行阶段 (1) 模块初始化 在初始化阶段主要完成以下工作: ① 模型参数传给Matlab进行估值,得到的数值结果将作为模型的实际参数; ② 展开模型的各个层次,每一个非条件执行的子系统被它所包含的模块所代替;

simulink建模与仿真流程

simulink建模与仿真流程

simulink建模与仿真流程我们需要在Simulink中创建一个新的模型。

打开Simulink软件后,选择“File”菜单中的“New”选项,然后选择“Model”来创建一个新的模型。

接着,我们可以在模型中添加各种组件,如信号源、传感器、执行器等,以及各种数学运算、逻辑运算和控制算法等。

在建模过程中,我们需要定义模型的输入和输出。

在Simulink中,可以使用信号源模块来定义模型的输入信号,如阶跃信号、正弦信号等。

而模型的输出信号可以通过添加显示模块来实现,如示波器模块、作用域模块等。

接下来,我们需要配置模型的参数。

在Simulink中,可以通过双击组件来打开其参数设置对话框,然后根据需求进行参数配置。

例如,对于控制系统模型,我们可以设置控制器的增益、采样时间等参数。

完成模型的配置后,我们可以进行仿真运行。

在Simulink中,可以选择“Simulation”菜单中的“Run”选项来运行仿真。

在仿真过程中,Simulink会根据模型的输入和参数进行计算,并生成相应的输出结果。

我们可以通过示波器模块来实时显示模型的输出信号,以便进行结果分析和调试。

在仿真过程中,我们可以通过修改模型的参数来进行参数调优。

例如,可以改变控制器的增益值,然后重新运行仿真,观察输出结果的变化。

通过不断调整参数,我们可以优化模型的性能,使其达到设计要求。

除了单一模型的仿真,Simulink还支持多模型的联合仿真。

通过将多个模型进行连接,可以实现系统级的仿真。

例如,我们可以将控制系统模型和物理系统模型进行连接,以实现对整个控制系统的仿真。

在仿真完成后,我们可以对仿真结果进行分析和评估。

Simulink提供了丰富的分析工具,如频谱分析、时域分析和稳定性分析等。

通过对仿真结果的分析,我们可以评估模型的性能,并进行进一步的改进和优化。

Simulink建模与仿真流程包括创建模型、添加组件、定义输入输出、配置参数、运行仿真、参数调优、联合仿真和结果分析等步骤。

第七章SMlink使用

第七章SMlink使用

7.3 系统仿真及参数设置
中建立起系统模型框图后, 在Simulink中建立起系统模型框图后,运行菜单【Simulation】|【Start】 中建立起系统模型框图后 运行菜单【 】【 】 就可以用Simulink对模型进行动态仿真。一般在仿真运行前需要对仿真参 对模型进行动态仿真。 就可以用 对模型进行动态仿真 数进行设置,运行菜单【 】【 】完成设置。 数进行设置,运行菜单【Simulation】|【Parameters】完成设置。
(2)仿真算法设置 ) 离散模型:对变步长和定步长解法均采用 离散模型:对变步长和定步长解法均采用discrete(no continuous state)。 。 连续模型:有变步长和定步长两种解法。 连续模型:有变步长和定步长两种解法。 变步长解法有: 变步长解法有:ode45、ode23、ode113、ode15s、ode23s、ode23t, 、 、 、 、 、 , ode23st 、 3、设置输出选项
7.3 系统仿真及参数设置
一、算法设置
里需要设置仿真起始和终止时间、 在Solver里需要设置仿真起始和终止时间、选择合适的解法(Solver)并 里需要设置仿真起始和终止时间 选择合适的解法( ) 指定参数、设置一些输出选择。 指定参数、设置一些输出选择。 1、设置起始时间和终止时间(Simulation time) 、设置起始时间和终止时间( ) 【Simulation】|【Start time】设置起始时间,而【Stop time】设置终止 】【 】设置起始时间, 】 时间,单位为“ 时间,单位为“秒”。 2、算法设置(Solver option) 、算法设置 (1)算法类型设置 ) 仿真的主要过程一般是求解常微分方程组, 仿真的主要过程一般是求解常微分方程组,【Solver option】|【Type】用来选择仿真算法的类型是变化 】【 】 的还是固定的。 的还是固定的。

Simulink 建模与仿真

Simulink 建模与仿真

9.2 Simulink基本操作 Simulink基本操作
Simulink 中的“Simu”一词表示可用于计算机 中的“Simu”一词表示可用于计算机 仿真, Link”一词表示它能进行系统连接 一词表示它能进行系统连接, 仿真 , 而 “ Link” 一词表示它能进行系统连接 , 即把一系列模块连接起来, 即把一系列模块连接起来,构成复杂的系统模 型 。 作 为 MATLAB 的 一 个 重 要 组 成 部 分 , Simulink由于它所具有的上述的两大功能和特 Simulink由于它所具有的上述的两大功能和特 以及所提供的可视化仿真环境、 色,以及所提供的可视化仿真环境、快捷简便 的操作方法, 的操作方法,而使其成为目前最受欢迎的仿真 软件。 软件。 该部分内容主要介绍Simulink的基本功能和基 该部分内容主要介绍 Simulink的基本功能和基 本操作方法,并通过举例介绍如何利用 Simulink进行系统建模和仿真 Simulink进行系统建模和仿真。 进行系统建模和仿真。
计 算 机 仿 真 4
9.1 Simulink简介 Simulink简介
2. 交互式仿真环境 Simulink提供了交互性很强的仿真环境, Simulink提供了交互性很强的仿真环境,既可 提供了交互性很强的仿真环境 以通过下拉式菜单执行仿真, 以通过下拉式菜单执行仿真,也可以通过命令进行 仿真。 仿真。 3. 与Matlab工具箱的集成 Matlab工具箱的集成 Simulink可以直接利用 Simulink可以直接利用Matlab的资源,使得用 可以直接利用Matlab的资源 的资源, 户可以完成数据分析、过程自动化、 户可以完成数据分析、过程自动化、参数优化等工 作。工具箱提供的高级设计和分析能力可以融入仿 真过程。 真过程。计 算 机 仿 真 Nhomakorabea15

MATLAB使用Simulink 进行建模与仿真方法

MATLAB使用Simulink 进行建模与仿真方法

方法/步骤
第一步:我们打开MATLAB软件,然后 在命令窗口中输入simulink或点击左 上角的【新建】,然后选择 【simulink Model】,如下图所示。
方法/步骤
第二步:此时将进入如下图所示的 Simulink界面,我们点击工具栏中的 【Library Browser】,如下图所示。
方法/步骤
第五步:基本的仿真模型需要信号发 生装置,我们可以选择如下图所示的 各种信号发生器,如正弦波信号发生 器,我们将其拖动到仿真模型框图。
方法/步骤
第六步:有了信号发生装置,作为一 个合理的仿真模型则必有信号接收与 显示装置,如下图所示,我们可以选 择Scope进行波形显示。
方法/步骤
第七步:我们选择好基本的输入输出 装置后,如下图所示,我们在仿真模 型框图中布局好装置位置并进行连线。
方法/步骤
第八步:仿真模型连线完毕后,检查 无误后我们就可以按下【Run】按钮, 运行我们的仿真程序了,如下图所示, 我们可以在显示器件中观察仿真结果, 并进行模型调整与修改。
注意事项
Simulink是 MATLAB很强大的系统建模、仿真和分析功能组件,上述方法、步骤只介绍了使用 Simulink搭建最基础的输入输出模型。
参考资料:Matlab/Simulink通信系统建模与仿真实例分析
《Matlab/Simulink通信系统建模与仿真实例分析》是2008年清华大学出版的一本图书,作者是 邵玉斌。
参考资料:基于matlab/simulink的通信系统建模与仿真(十三五)
《基于matlab/simulink的通信系统建模与仿真(十三五)》是2017年10月北京航空航天大学出 版社出版的图书,作者张瑾,周原,姚巧鸽,赵静。本书以MATLAB R2016a为平台,通过大量的 MATLAB、Simulink仿真实例,加深读者对通信系统原理的理解。

如何使用MATLABSimulink进行动态系统建模与仿真

如何使用MATLABSimulink进行动态系统建模与仿真

如何使用MATLABSimulink进行动态系统建模与仿真如何使用MATLAB Simulink进行动态系统建模与仿真一、引言MATLAB Simulink是一款强大的动态系统建模和仿真工具,广泛应用于各个领域的工程设计和研究中。

本文将介绍如何使用MATLAB Simulink进行动态系统建模与仿真的方法和步骤。

二、系统建模1. 模型构建在MATLAB Simulink中,可以通过拖拽模块的方式来构建系统模型。

首先,将系统的元件和子系统模块从库中拖拽到模型窗口中,然后连接这些模块,形成一个完整的系统模型。

2. 参数设置对于系统模型的各个组件,可以设置对应的参数和初始条件。

通过双击模块可以打开参数设置对话框,可以设置参数的数值、初始条件以及其他相关属性。

3. 信号连接在模型中,各个模块之间可以通过信号连接来传递信息。

在拖拽模块连接的同时,可以进行信号的名称设置,以便于后续仿真结果的分析和显示。

三、系统仿真1. 仿真参数设置在进行系统仿真之前,需要设置仿真的起止时间、步长等参数。

通过点击仿真器界面上的参数设置按钮,可以进行相关参数的设置。

2. 仿真运行在设置好仿真参数后,可以点击仿真器界面上的运行按钮来开始仿真过程。

仿真器将根据设置的参数对系统模型进行仿真计算,并输出仿真结果。

3. 仿真结果分析仿真结束后,可以通过查看仿真器界面上的仿真结果来分析系统的动态特性。

Simulink提供了丰富的结果显示和分析工具,可以对仿真结果进行绘图、数据处理等操作,以便于对系统模型的性能进行评估。

四、参数优化与系统设计1. 参数优化方法MATLAB Simulink还提供了多种参数优化算法,可以通过这些算法对系统模型进行优化。

可以通过设置优化目标和参数范围,以及定义参数约束条件等,来进行参数优化计算。

2. 系统设计方法Simulink还支持用于控制系统、信号处理系统和通信系统等领域的特定设计工具。

通过这些工具,可以对系统模型进行控制器设计、滤波器设计等操作,以满足系统性能要求。

MATLAB教程_第7章__Simulink仿真

MATLAB教程_第7章__Simulink仿真

三、模块间的连线
1.连接两个模块 从一个模块的输出端连到另一个模块的输入端是Simulink仿真最 基本的操作。方法是先移动鼠标指向模块的输出端,鼠标的箭头 会变成十字形光标,这时按住鼠标左键,拖动鼠标到另一个模块 的输入端,当十字形光标出现“重影”时,释放鼠标即完成了连 接。
2.模块间连线的调整 用鼠标单击连线,可以选中该连线。这时会看到线上的一些黑色小 方块,这些是连线的关键点。用鼠标按住关键点,拖动即可以改 变连线的方向。
带限白噪声
2.输出模块(Sinks)
模块 Scope Floating Scope XY Graph Outl Display
功能 示波器 可选示波器 XY关系图 创建输出端 实时数值显示
模块 To File To Workspace Terminator Stop Simulation
功能 输出到文件 输出到工作空间 通用终端 输出不为0时停止仿真
一、Solver选项卡
(1)Simulink time 设置仿真起始时间和停止时间。
(2)Solver options 仿真解题器的操作。根据类型(Type)的变化 分为:Variable-step(变步长算法)和Fixedstep(固定步长算法)。
二、Data Import/Export选项卡
7.3 仿真模型的参数设置
选择模型窗口Simulation→Configuration Parameters…选项,将出现仿真参数配置窗口。
仿真参数配置窗口主要分为7个选项卡:Solver(解题 器)、Data Import/Export(数据输入/输出), Optimization(优化)、Diagnostics(诊断)、 Hardware Implementation(硬件工具)、Model Referencing(模型引用)和Real-Time Workshop(实 时工作空间),其中Solver、Data Import/Export和 Diagnostics三项经常用到。

MatlabSimulink系统建模和仿真

MatlabSimulink系统建模和仿真
Matlab/Simulink系统建模和仿真
本章内容
7.1 MATLAB编程仿真的方法 7.2 SIMULINK仿真基础 7.3 SIMULINK的工作原理 S-函数 7.4 用S-函数编写SIMULINK基本模块
7.5 SIMULINK仿真的数据结构和编程调用方法
7.6 SIMULINK在电子与通信系统仿真中的几个 关键问题 7.7 声卡在SIMULINK仿真模型中的应用

7.1.2 静态系统的Matlab编程仿真
静态系统的仿真过程就是相应的代数方程的数值计算或 求解过程。我们以幅度调制作为实例来讲解。
“实例7.1”试仿真得出一个幅度调制系统的输入输出波 形。设输入被调制信号是一个幅度为2v ,频率为 1000Hz的余弦波,调制度为0.5 ,调制载波信号是一个 幅度为5v ,频率为10KHz 的余弦波。所有余弦波的初 相位为0 。 (1)数学模型 根据题设,该调幅系统的输入输出关系表达式为
图:模拟真实示波器显示的调幅仿真波形,仿真中考虑了输 入信号与示波器扫描不同步,载波相位噪声以及加性信道噪 声的影响
7.1.3 连续动态系统的Matlab编程仿真 7.1.3.1 几个实例
“实例7.2”仿真电容的充电过程。 一个电压源通过电阻与电容串联的网络对电容充电。设t=0 为初始时刻 (初始时刻之前电路断开,不工作),电压源输出电压x(t) 为单位阶跃 函数,电容两端的电压为y(t) ,回路电流为i(t) ,并将电压源视为系统 输入,电容上的电压视为系统输出。电路的初始状态为y(0) 。如图。
(4)让输出波形‚动‛起来 我们来尝试这种一种更生动的仿真输出表现方式,并将仿真 模型推广到更实际的情况。考虑一个更接近真实物理系统的 调幅模型。考虑了相位噪声 n (t ) 的载波表达为 设信道是无衰减的,其加性噪声为n(t) ,那么在接收机所收 到的调幅信号r(t) 为r(t)=y(t)+n(t) 程序中,我们将仿真 时间区间划分为若干段,每段称为一帧,示波器的扫描周期 等于帧周期,即我们每仿真得出一帧的数据就让显示刷新一 次。程序中故意将输入被调信号的频率设臵为1005Hz ,这样 其信号周期就与仿真的帧周期不是整数倍关系,运行后将看 到‚不断‛滑动的被调信号,载波显示出相位抖动现象,而 接收信号则沾染了噪声。

simulink建模与仿真

simulink建模与仿真

1. 假设从实际应用领域(力学、电学、生态或社会)中,抽象出有初始状态为0的二阶微分方程x"+0.2x'+0.4x=0.2u (t), u(t)是单位阶跃函数。

用积分器直接构造求解微分方程的模型exm1.mdl。

步骤如下:(1)改写微分方程。

把原方程改写为:x"=0.2u(t)-0.2x'-0.4x(2)利用Simulink模块库中的标准模块构作模型。

(3)仿真操作。

(4)保存在MATLAB工作空间中的数据。

u(t):阶跃信号——信号源模块库(Source)Clock:当前时间——信号源模块库(Source)Gain:常数增益——数学运算模块库(Math)Add:求和——数学运算模块库(Math)Integrator:积分——连续系统模块库(Continuous)Scope:示波器——输出模块库(Sinks)To Workspace:输出到工作空间——输出模块库(Sinks)2. 建立二阶系统222)(n n nS S S G ωςωω++=的脉冲响应模型,设ωn=10Hz ,观察当0<ζ<1、ζ=0、ζ=1及ζ>1时系统的响应。

Pulse Generator :脉冲发生器——信号源模块库(Source )Transfer Fun :传递函数——连续系统模块库(Continuous )Scope :示波器——输出模块库(Sinks )ζ=0.2 ζ=0ζ=1 ζ=53.皮球以15米/秒的速度从10米高的地方落下,建立显示球弹跳轨迹的模型。

Gravity:常数——信号源模块库(Source)IC Elasticity:信号的初始值——信号与系统模块库(Signal&Systems)Gain:常数增益——数学运算模块库(Math)Velocity:积分——连续系统模块库(Continuous)Position:有上下边界的有限积分——连续系统模块库(Continuous)Scope:示波器——输出模块库(Sinks)4. 利用使能原理构成一个正弦半波整流器。

Simulink建模与仿真

Simulink建模与仿真

【实验名称】Simulink建模与仿真【实验目的】1.学习SIMULINK 软件工具的使用方法;2.用SIMULINK 仿真线性系统;【实验内容】1.SIMULINK简介SIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。

所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。

2.SIMULINK的启动进入SIMULINK界面,只要你在MA TLAB命令窗口提示符下键入‘SIMULINK’,按回车键即可启动SIMULINK软件。

在启动S IMULINK软件之后,SIMULINK的主要方块图库将显示在一个新的Windows中。

如图8-1所示:►在MA TLAB命令窗口中输入simulink :结果是在桌面上出现一个称为Simulink Library Browser的窗口,在这个窗口中列出了按功能分类的各种模块的名称。

图8-1 SIMULINK的主要方块图库3.SIMULINK的模块库介绍►SIMILINK模块库按功能进行分为以下8类子库:Continuous(连续模块)Discrete(离散模块)Function&Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块)4.SIMULINK简单模型的建立(1)建立模型窗口(2)将功能模块由模块库窗口复制到模型窗口(3)对模块进行连接,从而构成需要的系统模型5.SIMULINK功能模块的处理(1)模块库中的模块可以直接用鼠标进行拖曳(选中模块,按住鼠标左键不放)而放到模型窗口中进行处理。

Simulink建模与仿真

Simulink建模与仿真
⑤ 决定所有无显示设定采样时间的模块的采样时间; ⑥ 分配和初始化用于存储每个模块的状态和输入当前值的存储空间。
3.2.2、仿真运行原理
Simulink仿真包括两个阶段;初始化阶段和模型执行阶段
(1) 模块初始化
在初始化阶段主要完成以下工作: ① 模型参数传给Matlab进行估值,得到的数值结果将作为模型 的实际参数; ② 展开模型的各个层次,每一个非条件执行的子系统被它所包 含的模块所代替;
上 页 下7 页
综上所述,Simulink就是一种开放性的,用来模拟线性或非线 性的以及连续或离散的或者两者混合的动态系统的强有力的系 统级仿真工具。
上 页 下3 页
Simulink的特点:
(1)丰富的可扩充的预定义模块库 ; (2)交互式的图形编辑器来组合和管理直观的模块图 ; (3)以设计功能的层次性来分割模型,实现对复杂设计的管理; (4)通过Model Explorer 导航、创建、配置、搜索模型中的任
上 页 下6 页
Simulink模型并不一定要包含全部的三种元素,在实际应用 中通常可以缺少其中的一个或两个。
例如,若要模拟一个系统偏离平衡位置后的恢复行为,就可 以建立一个没有输入而只有系统模块加一个显示模块的模型。
在某种情况下,也可以建立一个只有源模块和显示模块的系 统。若需要一个由几个函数复合的特殊信号,则可以使用源模块 生成信号并将其送入Matlab工作间或文件中。
Simulink 仿真基础
1 Simulink的概述 2 基本操作 3 基本模块 4 建模方法 5 系统仿真举例
1
3.1 Simulink的概述
Simulink已经成为动态系统建模和仿真领域中应用最为广泛的软件之 一。Simulink可以很方便地创建和维护一个完整的模块,评估不同的 算法和结构,并验证系统的性能。由于Simulink是采用模块组合方式 来建模,从而可以使得用户能够快速、准确地创建动态系统的计算机 仿真模型,特别是对复杂的不确定非线性系统,更为方便。

simulink建模及动态仿真的一些实验步骤

simulink建模及动态仿真的一些实验步骤

simulink建模及动态仿真的一些实验步骤Simulink是MATLAB中的一种可视化仿真工具,可以用于动态系统建模、仿真和分析。

以下是一些Simulink建模及动态仿真的实验步骤:启动Simulink:首先,需要打开MATLAB,然后在MATLAB 的命令窗口中输入“simulink”命令,或者点击工具栏中的Simulink 图标来启动Simulink。

新建模型:在Simulink的启动界面中,可以选择“Blank Model”来新建一个空白的模型。

也可以选择其他预设的模型模板来开始建模。

构建系统模型:在新建的模型窗口中,可以通过从Simulink 的模块库中拖拽模块到模型窗口中来构建系统模型。

模块库中包含了各种类型的模块,如源模块、接收模块、处理模块等。

将这些模块按照系统的结构和功能连接起来,形成一个完整的系统模型。

设置模块参数:对于模型中的每个模块,都可以双击打开其参数设置对话框,设置其参数和初始条件。

这些参数和初始条件将决定模块在仿真中的行为。

设置仿真参数:在模型窗口的工具栏中,可以点击“Simulation”->“Model Configuration Parameters”来打开仿真参数设置对话框。

在这个对话框中,可以设置仿真的起始和结束时间、仿真步长、求解器类型等参数。

开始仿真:完成以上步骤后,可以点击模型窗口工具栏中的“Run”按钮来开始仿真。

在仿真过程中,可以实时观察模型中各个模块的状态和输出。

分析结果:仿真结束后,可以使用Simulink提供的各种分析工具来分析仿真结果。

例如,可以使用示波器模块来显示仿真过程中某个模块的输出波形,也可以使用MATLAB的工作空间来查看和处理仿真数据。

以上步骤是一个基本的Simulink建模和动态仿真的过程。

在实际使用中,可能还需要根据具体的需求和系统特点进行一些额外的设置和调整。

7.1.17.1Simulink仿真基础

7.1.17.1Simulink仿真基础
第七章 Simulink系统仿真
7.1 Simulink仿真基础 7.2 命令函数实现系统仿真 7.3 子系统的创建与封装 7.4 Simulink仿真应用举例
Simulink
➢ Simulink是MATLAB中用来对动态系统进行建模、 仿真和分析的软件包,它支持连续系统、离散系统、 线性系统和非线性系统。
系统仿真模型的创建
➢ 被拖到模型编辑窗口的各种模 块,保持着与原始标准模块一 样的内部参数设置,也就是说 内部参数开始均为默认值。
➢ 为了适合用户的不同需要,需 要对模块的内部参数做必要的 修改。
➢ 模块参数的设置
选择要设置的模块,鼠标双 击该模块图标,打开该模块 的参数设置对话框。
仿真参数的设置
模块的删除或复制:和一般的文字编辑操作一样, 先选定模块,再按删除键;或选择Edit菜单项中的 Cut、Copy、Paste等剪贴板操作命令。
系统仿真模型的创建
➢ Simulink模块的操作
两个模块的连接:先将鼠标指针移动到一个模块的 输出端,当鼠标指针变成十字形光标时按住鼠标左 键,移动鼠标指针到另一个模块的收入端,当连接 线由虚线变成实线时,释放鼠标左键就完成了两个 模块的连接。
(固定步长
(b)变步长
仿真参数的设置
➢ 启动仿真 方式一 单击工具栏中的“Start simulation” 快捷 按钮。 方式二 选择Simulation—>Start命令。
小 结:Simulink系统仿真的步骤
➢ 建立系统仿真模型:添加模块、设置模块参数、模块 连接
➢ 设置仿真参数:仿真起止时间、求解算法 ➢ 启动仿真并分析仿真结果
文件,在模型编辑窗口里进行操作。
模型编辑区
系统仿真模型的创建

第七讲Simulink仿真38页PPT

第七讲Simulink仿真38页PPT
标签和模块的位置,选择菜单命令 [Diagram>Format> Show Block Name],隐藏/显 示标签;方法2:右键单击目标模块,在弹出的快 捷菜单中进行与方法1同样的菜单项选择
15
7.3.3 模块连接
模块连接通过信号线实现。 信号线是Simulink模型中另一类最基本的元素,熟悉和正
确使用信号线是创建模型的基础。 信号线并不是简单的连线,它具有一定流向属性且不可逆
向,表示实际模型中信号的流向。
16
7.3.3 模块连接
信号线基本操作
操作内容 在模块间连线
移动线段 移动节点
画分支信号线
删除信号线 信号线标签
操作目的
操作方法
12
7.3.2 模块操作
操作内容 选取模块
选中多个模块 删除模块 调整模块大小 移动模块
操作目的
操作方法
从模块库浏览器中选取需
要的模块放入SIMULINK
仿真平台窗口中
方法1:在目标模块上按下鼠标左键,拖动目标模块进入 SIMULINK仿真平台窗口中,松开左键;方法2:在目标模块 上单击鼠标右键,弹出快捷菜单,选择“Add to Untitled”选 项
11
7.3.1 Simulink的基本模块
模块是构成Simulink系统仿真模 型的基本单元,建模过程主要涉 及Simulink模块的操作。
基本模块库
基本模块库是MATLAB中最早开发 的模块库,包括了连续系统、非 连续系统、离散系统、信号源等 各类子模块库,具有通用性。
专业模块库
Simulink在工程仿真领域的广泛 应用,相关领域专家为满足需要 又开发了诸如通信系统、数字信 号处理、模糊控制、神经网络等 多种专业模块库,专业模块库提 高相关领域的建模效率。

《Simulink建模与仿真》

《Simulink建模与仿真》

《Simulink建模与仿真》§2.11、>> A=[1 2 3;4 5 6]A = 1 2 34 5 62、>> B=[1 2 3]B = 1 2 33、>> C=[4;5;6]C =4564、>> A(2,3)ans =6(说明:ans是answer的缩写,默认的输出符号)5、MATLAB中分号(;)的作用有两点:一是作为矩阵或向量的分行符,二是作为矩阵或向量的输出开关控制符。

即如果输入矩阵或向量后键入分号,则矩阵与向量不在MATLAB命令窗中显示,否别将在命令窗口中显示。

6、冒号操作符(:)的应用。

冒号操作符在建立矩阵的索引与引用时非常方便且直接。

如上述对多维矩阵F的建立中,冒号操作符表示对矩阵F第一维与第二维所有元素按照其顺序进行引用,从而对F进行快速赋值,无需一一赋值。

如>> B=2:5 %对向量进行赋值;B = 2 3 4 5>> B(1:3)=2 %向量B从第2个到第3个元素全部赋值为2B = 2 2 2 5>> C=6:-2:0 %将向量C放行递减赋值.初始值为6,终止位为0,步长为一2C = 6 4 2 07、冒号的使用很灵活:§2.2 矩阵单元的基本运算1、矩阵的加减法>>a=[1 2 3;4 5 6]a =1 2 34 5 6>> b=[0 2 1;2 5 3]b =0 2 12 5 3>> c=a+bc =1 4 46 10 9>> d=a-bd =1 0 22 0 3矩阵与标量的加法与减法是指标量本身与矩阵所有元素进行相应运算,如若B=1,则>> e=a+Be =2 3 45 6 72、矩阵的乘方与除法>>a =1 2 34 5 6>> b=[1 2;0 3;2 1]b =1 20 32 1>> c=a*bc =7 1116 29在Matlab中,矩阵除法有两种形式,即左除(\)和右除(/)。

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

第七章 Simulink建模和仿真 7.2 基本模块
由于大多数物理系统都可以用微分方程组和代数方程组来描 述,Simulink也采用的是本教材第四章介绍的面向结构图的 数字仿真原理。但其功能块的类型、数值解法、功能快的描 述、以及建模方式和方法远远超出CSS仿真程序包,其界面 也更加友好。
Simulink 4把功能块分成9类,分别放置在9个库中,如图 7.2.1所示:源模块库(Sources)、输出显示库(Sinks)、离散 模块库(Discrete)、连续模块库(Continuous)、非线性模块 库(Nonlinear)、数学函数库(Math)、通用函数及列表库 (Functions and Tables)、信号处理及系统类模块库(Signal and Systems)和子系统模块库(Subsystems)。
③ 模型中的模块按更新的次序进行排序。排序算法产生一个列表 以确保具有代数环的模块在产生它的驱动输入的模块被更新后才 更新。当然,这一步要先检测出模型中存在的代数环。
④ 决定模型中有无显示设定的信号属性,例如名称、数据类型、 数值类型以及大小等,并且检查每个模块是否能够接受连接到它 输入端的信号。Simulink使用属性传递的过程来确定未被设定的 属性,这个过程将源信号的属性传递到它所驱动的模块的输入信 号;
① 首先,按照排序所决定的次序计算每个模块的输出。 ② 然后,根据当前时刻的输入和状态来决定状态的微分;
得到微分向量后再把它返回给解法器;后者用来计算下一 个采样点的状态向量。一旦新的状态向量计算完毕,被采 样的数据源模块和接受模块才被更新。 在仿真开始时模型设定待仿真系统的初始状态和输出。在 每一个时间步中,Simulink计算系统的输入、状态和输出, 并更新模型来反映计算出的值。在仿真结束时,模型得出 系统的输入、状态和输出。 在每个时间步中,Simulink所采取的动作依次为: ① 按排列好的次序更新模型中模块的输出。Simulink通过 调用模块的输出函数计算模块的输出。Simulink只把当前 值、模块的输入以及状态量传给这些函数计算模块的输出。 对于离散系统,Simulink只有在当前时间是模块采样时间 的整数倍时,才会更新模块的输出。
第七章 Simulink建模和仿真
在计算机技术飞速发展的今天,许多科学研究、工程设计由 于其复杂性越来越高,因此与计算机的接合日趋紧密。也正 是计算机技术的介入,改变了许多学科的结构、研究内容和 研究方向。例如,计算流体力学、计算物理学、计算声学等 新兴学科的兴起,均与计算机技术的发展分不开。控制理论、 仿真技术本身与计算机的接合就十分紧密,而随着专业领域 的研究深入和计算机软硬件技术的发展,这种联系呈现更加 紧密。计算控制论的建立,足以说明这个问题。而这种发展, 又以系统仿真技术的发展分不开的。
Matlab具有友好的工作平台和编程环境、简单易学的编程语言、 强大的科学计算和数据处理能力、出色的图形和图像处理功能、 能适应多领域应用的工具葙、适应多种语言的程序接口、模块化 的设计和系统级的仿真功能等,诸多的优点和特点。
支持Matlab仿真是Simulink工具箱,Simulink一般可以附在 Matlab上同时安装,也有独立版本来单独使用。但大多数用户 都是附在Matlab上,以便能更好地发挥Matlab在科学计算上的 优势,进一步扩展Simulink的使用领域和功能。
表7.2.1到表7.2.8列出了个库包含的主要模块及简单说明。 图7.2.2到图7.2.10列出了各库包含的主要模块种类图形。
第七章 Simulink建模和仿真 7.2 基本模块
表7.2.1 Source库
模块名
说明
Clock
显示或者提供仿真时间
Constant
产生一个常数值信号
Digital clock
本章详细地向用户介绍Simulink地建模方法、使用操作、以及 使用Simulink进行系统级的仿真和设计原理。使读者通过本章 地学习,不但可以进一步掌握计算机仿真的基本概念和理论,也 可以初步学会使用Simulink去真正地运用仿真技术解决科研和工 程中地实际问题。
第七章 Simulink建模和仿真 7.1 Simulink的概述和基本操作
Simulink模型可以用来模拟线性和非线性、连续和离散或者 两者的混合系统,也就是说它可以用来模拟几乎所有可能遇 到动态系统。另外Simulink还提供一套图形动画的处理方法, 使用户可以方便的观察到仿真的整个过程。
Simulink没有单独的语言,但是它提供了S函数规则。所谓 的S函数可以是一个M函数文件、FORTRAN程序、C或C++ 语言程序等,通过特殊的语法规则使之能够被Simulink模型 或模块调用。S函数使Simulink更加充实、完备,具有更强 的处理能力。
第七章 Simulink建模和仿真 7.1 Simulink的概述和基本操作
同Matlab一样,Simulink也不是封闭的,他允许用户可 以很方便的定制自己的模块和模块库。同时Simulink也 同样有比较完整的帮助系统,使用户可以随时找到对应 模块的说明,便于应用。
综上所述,Simulink就是一种开放性的,用来模拟线 性或非线性的以及连续或离散的或者两者混合的动态系 统的强有力的系统级仿真工具。
为了满足用户对工程计算的要求,一些软件公司相继推出一 批数学类科技应用软件,如Matlab、Xmath、 Mathematica、Maple等。其中MathWorks公司推出的 Matlab由于有强大的功能和友好的用户界面受到越来越多 的科技工作者的青睐,尤其是控制领域的专家和学者 .
第七章 Simulink建模和仿真
产生数字采样时间信号
Digital pulse generator 产生数字脉冲信号
From file
从文件读取数据输入
From work space
从工作间定义的矩阵读入数据
Pulse generator
产生脉冲信号
Ramp
产生“斜坡”信号
Random number
产生正态分布的随机信号
Repeating sequence 产生周期序列信号
基于上述分类,Simulink使用下面两个基本规则对模块进行排序: ① 每个模块必须在它驱动的所有模块更新之前被更新。这条规
则确保了模块被更新时输入有效。 ② 若非直接馈入源自块在直接馈入模块之前更新,则它们的更新
次序可以是任意的。这条规则允许Simulink在排序过程中忽略非 虚拟模块。 另外一个约束模块更新次序的因素是用户给模块设定优先级, Simulink在低优先级模块之前更新高优先级模块。
目前,随着软件的升级换代,在软硬件的接口方面有了 长足的进步,使用Simulink可以很方便地进行实时的信 号控制和处理、信息通信以及DSP的处理。世界上许多 知名的大公司已经使用Simulink作为他们产品设计和开 发的强有力工具。
第七章 Simulink建模和仿真 7.1 Simulink的概述和基本操作
第七章Simulink建模和仿真 7.1 Simulink的概述和基本操作
② 按排列好的次序更新模型中模块的状态,Simulink计算 一个模块的离散状态的方法时调用模块的离散状态更新函数。 而对于连续状态,则对连续状态的微分(在模块可调用的函 数里,有一个用于计算连续微分的函数)进行数值积分来获 得当前的连续状态。
近几年来,在学术界和工业领域,Simulink已经成为动态系 统建模和仿真领域中应用最为广泛的软件之一。Simulink可 以很方便地创建和维护一个完整地模块,评估不同地算法和 结构,并验证系统的性能。由于Simulink是采用模块组合方 式来建模,从而可以使得用户能够快速、准确地创建动态系 统的计算机仿真模型,特别是对复杂的不确定非线性系统, 更为方便。
二、仿真运行原理
Simulink仿真包括两个阶段;初始化阶段和模型执行阶段 (1) 模块初始化 在初始化阶段主要完成以下工作: ① 模型参数传给Matlab进行估值,得到的数值结果将作为模
型的实际参数; ② 展开模型的各个层次,每一个非条件执行的子系统被它所包
含的模块所代替;
第七章Simulink建模和仿真 7.1 Simulink的概述和基本操作
源模块
系统模块
显示模块
图7.1.1 Simulink模型元素关联图
第七章Simulink建模和仿真 7.1 Simulink的概述和基本操作
Simulink模型并不一定要包含全部的三种元素,在实际应用 中通常可以缺少其中的一个或两个。例如,若要模拟一个系 统偏离平衡位置后的恢复行为,就可以建立一个没有输入而 只有系统模块加一个显示模块的模型。在某种情况下,也可 以建立一个只有源模块和显示模块的系统。若需要一个由几 个函数复合的特殊信号,则可以使用源模块生成信号并将其 送入Matlab工作间或文件中。
7.1.2 基本操作 一、模型基本结构 一个典型的Simulink模型包括如下三种类型的元素: ① 信号源模块 ② 被模拟的系统模块 ③ 输出显示模块
如图7.1.1所示说明了这三种元素之间的典型关系。系统 模块作为中心模块是Simulink仿真建模所要解决的主要部分; 信号源为系统的输入,它包括常数信号源函数信号发生器 (如正弦和阶跃函数波等)和用户自己在Matlab中创建的自 定义信号或Matlab工作间中三种。输出模块主要在Sinks库 中。
Signal generator
信号发生器
Sine wave
正弦波信号
Step
产生一个阶跃信号
Uniform random number
产生均匀分布的随机信号
第七章 Simulink建模和仿真
7.2 基本模块
模块名
表7.2.2 Sinks库
说明
Display Scope Stop simulation To file To workspace XY graph
相关文档
最新文档