Simulink系统仿真
Simulink动态系统仿真入门

Simulink动态系统仿真入门Simulink是基于MA TLAB的图形化仿真设计环境,是MATLAB 提供的进行动态系统建模、仿真和综合分析的集成软件包。
它使用图形化的系统模块对动态系统进行描述,并在此基础上采用MATLAB 的计算引擎对动态系统在时域内进行求解。
它可以处理的系统包括:线性、非线性、离散、连续及混合、单任务、多任务离散事件等。
在MATLAB7.X版本中,可以直接在Simulink环境中运作的工具箱和模型库很多,已经覆盖了航天、航空、通信、控制、信号处理等等诸多领域,涉及内容专业性很强。
1、Simulink系统的启动由于Simulink和MATLAB是高度集成在一起的,因此启动Simulink必须先启动MA TLAB。
在MA TLAB启动Simulink可以通过在命令窗口输入Simulink,或者点击MATLAB工具栏的Simulink 快速启动图标。
启动Simulink后,出现Simulink的主窗口,选择主菜单File中的New\model,即可以打开系统模型编辑器。
下图依次是MATLAB 主窗口、Simulink主窗口和系统模型编辑窗口,图中的箭头表示了操作顺序。
在打开一个新的系统模型文件以后,用户可以从Simulink模块库中选择适合的系统模块或自定义模块来建立系统模型。
我们通过一个简单的例子来分步说明Simulink建模和仿真的能力。
1)在MATLAB 窗口运行Simulink。
打开Simulink模块库浏览器。
2)点击Source子库前的“+”展开库,可以看到各种信源模块。
3)点击新建图标,打开一个空白型的模型窗口。
4)用鼠标选中需要的信源模块,把它拖入新建的空白模型编辑窗口,生成一个正弦波的复制品。
5)同样将信宿库Sinks中的示波器Scope拷贝到模型窗口。
6)利用鼠标完成两个模块的连线操作,完成一个简单的模型。
7)为进行仿真,双击示波器模块,打开示波器显示屏。
第五章 Simulink系统建模与仿真

本章重点
Simulink基本结构 Simulink模块 系统模型及仿真
一、Simulink简介
Simulink 是MATLAB 的工具箱之一,提供交互式动态系统
建模、仿真和分析的图形环境
可以针对控制系统、信号处理及通信系统等进行系统的建 模、仿真、分析等工作 可以处理的系统包括:线性、非线性系统;离散、连续及 混合系统;单任务、多任务离散事件系统。
从模块库中选择合适的功能子模块并移至编辑窗口中,按 设计要求设置好各模块的参数,再将这些模块连接成系统 Simulink的仿真过程就是给系统加入合适的输入信号模块 和输出检测模块,运行系统,修改参数及观察输出结果等
过程
二、Simulink的基本结构
Simulink窗口的打开
命令窗口:simulink 工具栏图标:
三、Simulink模型创建
7、信号线的标志
信号线注释:双击需要添加注释的信号线,在弹出的文本编辑 框中输入信号线的注释内容
信号线上附加说明:(1) 粗线表示向量信号:选中菜单Forma t|Wide nonscalar lines 即可以把图中传递向量信号的信号线用粗 线标出;(2)显示数据类型及信号维数:选择菜单Format|Port data types 及Format|Signaldimensions,即可在信号线上显示前 一个输出的数据类型及输入/输出信号的维数;(3) 信号线彩 色显示:选择菜单Format|Sample Time Color,SIMULINK 将用 不同颜色显示采样频率不同的模块和信号线,默认红色表示最 高采样频率,黑色表示连续信号流经的模块及线。
同一窗口内的模块复制: (1)按住鼠标右键,拖动鼠标到目标
控制系统的Simulink仿真

06 结论与展望
结论
控制系统Simulink仿真是一种有 效的工具,可用于模拟和分析各 种控制系统的性能。通过使用 Simulink,研究人员和工程师可 以轻松地构建和修改控制系统模 型,并使用各种仿真工具进行系 统分析和优化。
Simulink提供了广泛的模块库和 工具,可用于构建各种类型的控 制系统模型,包括线性、非线性、 离散和连续系统。这些模块可以 方便地组合和修改,以适应特定 的控制系统需求。
非线性系统仿真
总结词
对非线性系统的动态行为进行模拟的过程。
详细描述
非线性系统在Simulink中可以通过使用非线性模块进行模拟。非线性系统是指系统的 输出与输入不成比例的系统,例如某些电子设备或机械系统。在Simulink中,可以使 用非线性模块来模拟这些系统的行为,例如非线性增益、饱和等。通过调整模块参数,
• 未来,Simulink可能会引入更多先进的仿真技术和算法,以提高仿真精度和 效率。例如,基于模型的控制设计、自适应控制、预测控制等先进控制算法可 能会被集成到Simulink中,以提供更强大的分析和优化工具。
• 此外,随着物联网和智能制造等领域的快速发展,Simulink可能会扩展其模 块库和工具箱,以支持这些领域的控制系统建模和仿真。例如,增加与传感器 、执行器和其他智能设备的接口模块,以及支持实时仿真和嵌入式系统开发的 工具箱。
保障生产安全
控制系统能够及时检测和预防潜在的安全隐患, 降低事故发生的可能性。
3
节能减排
优化控制参数,降低能耗和排放,符合绿色环保 要求。
控制系统的发展历程
01
02
03
模拟控制系统
学习使用MATLABSimulink进行系统仿真

学习使用MATLABSimulink进行系统仿真【第一章:引言】在如今数字化时代,仿真已成为系统设计与优化的重要工具。
系统仿真能够帮助工程师在产品开发的早期阶段快速验证设计,预测产品性能,并提供有关系统行为的深入洞察。
由于其易用性和广泛应用领域,MATLABSimulink成为了工程界最受欢迎的仿真工具之一。
本文将介绍如何学习使用MATLABSimulink进行系统仿真,并强调其专业性。
【第二章:MATLABSimulink概览】MATLABSimulink是一个具有图形化界面的仿真环境,可用于建模、仿真和分析各种复杂动态系统。
它使用块状图形表示系统的组成部分,并通过连接输入和输出端口模拟系统的行为。
用户可以通过简单拖拽和连接块状元件来构建仿真模型,并通过调整参数和设置仿真参数来进行模拟分析。
【第三章:基本建模技巧】在使用MATLABSimulink进行系统仿真之前,掌握基本的建模技巧至关重要。
首先,需要熟悉各种块状元件的功能和用途,例如传感器、执行器、逻辑运算器等。
其次,理解信号流和数据流的概念,以及如何在模型中正确地引导信号传递和数据流动。
最后,学习使用条件语句、循环语句等控制结构来实现特定的仿真逻辑。
【第四章:系统模型的构建】在使用MATLABSimulink进行系统仿真时,首先需要根据实际系统的需求和特点进行系统模型的构建。
这包括确定系统的输入和输出,以及分析系统的功能和性能要求。
然后,使用块状元件将系统的各个组成部分建模,并建立各个组件之间的联系和依赖关系。
在构建模型的过程中,要注意选择恰当的块状元件和参数设置,以确保模型的合理性和可靠性。
【第五章:仿真参数设置与分析】为了获得准确且可靠的仿真结果,需要合理设置仿真参数。
常见的仿真参数包括仿真时间、步长和求解器类型等。
仿真时间应根据系统的实际运行时间确定,步长要足够小以保证仿真的精度,而求解器类型则根据系统的特点选择。
完成仿真后,还需要对仿真结果进行分析,以评估系统的性能和进行优化调整。
simulink仿真实验报告

simulink仿真实验报告Simulink仿真实验报告一、引言Simulink是一种基于模型的设计和仿真工具,广泛应用于各领域的工程设计和研究中。
本次实验将利用Simulink进行系统仿真实验,通过搭建模型、参数调整、仿真运行等过程,验证系统设计的正确性和有效性。
二、实验目的本实验旨在帮助学生掌握Simulink的基本使用方法,了解系统仿真的过程和注意事项。
通过本实验,学生将能够:1. 熟悉Simulink的界面和基本操作;2. 理解和掌握模型构建的基本原理和方法;3. 学会调整系统参数、运行仿真和分析仿真结果。
三、实验内容本实验分为以下几个步骤:1. 绘制系统模型:根据实验要求,利用Simulink绘制出所需的系统模型,包括输入、输出、控制器、传感器等。
2. 参数设置:针对所绘制的系统模型,根据实验要求设置系统的参数,例如增益、阻尼系数等。
3. 仿真运行:通过Simulink的仿真功能,对所构建的系统模型进行仿真运行。
4. 仿真结果分析:根据仿真结果,分析系统的动态性能、稳态性能等指标,并与理论值进行对比。
四、实验结果与分析根据实验要求,我们绘制了一个负反馈控制系统的模型,并设置了相应的参数。
通过Simulink的仿真功能,我们进行了仿真运行,并获得了仿真结果。
仿真结果显示,系统经过调整参数后,得到了较好的控制效果。
输出信号的稳态误差较小,并且在过渡过程中没有发生明显的振荡或超调现象。
通过与理论值进行对比,我们验证了系统的稳态稳定性和动态响应性能较为理想。
五、实验总结通过本次实验,我们掌握了使用Simulink进行系统仿真的基本方法和技巧。
了解了系统模型构建的基本原理,并学会了参数调整和仿真结果分析的方法。
这对于我们今后的工程设计和研究具有重要的意义。
六、参考文献1. 《Simulink使用手册》,XXX出版社,20XX年。
2. XXX,XXX,XXX等.《系统仿真与建模实践教程》. 北京:XXX出版社,20XX年。
第3章 Simulink建模与仿真

将仿真数据写入 mat 文件 将仿真数据写入. mat文件 将仿真数据输出到 将仿真数据输出到 Matlab 工作空间 MATLAB 工作空间 使用 Matlab 使用MATLAB 图形显示数据 图形显示数据
图3.10 系统输出模块库及其功能
第3章 Simulink建模与仿真
模块功能说明:
模块功能说明: 有限带宽白噪声
求取输入信号的数学函数值 对输入信号进行内插运算
求取输入信号的数学函数值 对输入信号进行内插运算 输入信号的一维线性内插
输入信号的一维线性内插
输入信号的二维线性内插 输入信号的二维线性内插 输入信号的 n 维线性内插 输入信号的n维线性内插
M函数(对输入进行运算输出结果) M 函数,对输入进行运算输出结果 多项式求值
第3章 Simulink建模与仿真
模块功能说明: 模块功能说明 : 连续信号的数值微分 连续信号的数值微分 输入信号的连续时间积分 输入信号的连续时间积分 单步积分延迟,输出为前一个输入 单步积分延迟,输出为前一个输入 线性连续系统的状态空间描述 线性连续系统的状态空间描述
线性连续系统的传递函数描述 线性连续系统的传递函数描述 对输入信号进行固定时间延迟 对输入信号进行固定时间延迟 对输入信号进行可变时间延迟 对输入信号进行可变时间延迟 线性连续系统的零极点模型 线性连续系统的零极点模型
合并输入信号块控制信息 信号组合器信号组合器 信号探测器信号探测器 信号维数改变器 选择或重组信号 信号线属性修改 输入信号宽度
信号维数改变器 选择或重组信号 信号线属性修改 输入信号宽度
第3章 Simulink建模与仿真
模块功能说明: 对信号进行分配
Target模块库:主要提供各种用来进行独立可执行代码 或嵌入式代码生成,以实现高效实时仿真的模块。它 们和RTW、TLC有着密切的联系。 (6) Stateflow库:对使用状态图所表达的有限状态 机模型进行建模仿真和代码生成。有限状态机用来描 述基于事件的控制逻辑,也可用于描述响应型系统。
simulink

五.设置仿真参数
பைடு நூலகம்
仿真参数对话框simulation/configuration parameters 设置如下仿真参数: Solver(算法) Data Import/Export(数据输入输出) Diagnostics(诊断) Optimization(优化) Hardware Implementation(硬件工具) Model Referencing(模块引用)
建模仿真的一般过程是: 1.打开一个空白的编辑窗口; 2.将模块库中模块复制到编辑窗口里,并依照给定 的框图修改编辑窗口中模块的参数; 3.将各个模块按给定的框图连接起来; 4.用菜单选择或命令窗口键入命令进行仿真分析, 在仿真的同时,可以观察仿真结果,如果发现有不 正确的地方,可以停止仿真,对参数进行修正; 5.如果对结果满意,可以将模型保存。
10) 模块的输入输出信号:模块处理的信号包括标量信号和向量信号; 标量信号是一种单一信号,而向量信号为一种复合信号,是多个信 号的集合,它对应着系统中几条连线的合成。缺省情况下,大多数 模块的输出都为标量信号,对于输入信号,模块都具有一种“智能” 的识别功能,能自动进行匹配。某些模块通过对参数的设定,可以 使模块输出向量信号。
5.2 数据输入输出选项(Data Import and Export)
主要用来设置Simulink与MATLAB工作空间交换 数值的有关选项。 Load from workspace(从工作空间载入数据)选 中前面的复选框即可从MATLAB工作空间获取时 间和输入变量,一般时间变量定义为t,输入变量 定义为u。 Initial state用来定义从MATLAB工作空 间获得的状态初始值的变量名。 Save to workspace(将输出保存到工作空间) Save options(保存选项)。
MatlabSimulink系统建模和仿真

图:电容的充电、放电过程的仿真结果。在充电仿真中,输出信号 为系统的零状态响应。在放电过程仿真中,输出信号为系统的零输 入响应。 如果要仿真系统输入信号为任意函数的情况,只需要修改仿 真程序中的输入信号设臵即可。
“实例2.3”单摆运动过程的建模和仿真。 (1)单摆的数学模型 设单摆摆线的固定长度为l ,摆线的质量忽略不计,摆锤质 量为m ,重力加速度为g ,设系统的初始时刻为t=0 ,在任 意 t 0 时刻摆锤的线速度为v(t) ,角速度为 w(t ) ,角位移 为 (t ) 。以单摆的固定位臵为坐标原点建立直角坐标系, 水平方向为x 轴方向。如下图所示。
图:电容的充电电路以及等价系统
(1)数学分析
首先根据网络拓扑和元件伏安特性建立该电路方程组
dy (t ) i (t ) C dt
dy (t ) 1 1 x(t ) y (t ) dt RC RC
y(t ) x(t ) Ri (t )
并化简得
该方程也称为系统的状态方程。在方程中,变量y 代表电 容两端的电压,是电容储能的函数。本例中它既是系统的 状态变量,又是系统的输出变量。
7.1 Matlab编程仿真的方法
7.1.1 概述 通过编程的形式建立计算机仿真模型是最基本的 计算机建模方法。Matlab编程仿真过程就是用编 写脚本文件或函数文件来描述数学模型,并实现 计算机数值求解的过程。 我们把外界对系统产生作用的物理量称为输入 信号或激励,把由于系统内部储存的能量称为系 统的状态,而将系统对外界的作用物理量称为系 统的输出信号或响应。
图:模拟真实示波器显示的调幅仿真波形,仿真中考虑了输 入信号与示波器扫描不同步,载波相位噪声以及加性信道噪 声的影响
7.1.3 连续动态系统的Matlab编程仿真 7.1.3.1 几个实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
班级:通信工程
姓名:曾浩
学号:201007302123
实验四 Simulink系统仿真
一、实验目的
1、熟悉SIMULINK工作环境及特点
2、掌握SIMULINK 的建模与仿真方法
4、掌握Simulink模型的建立及系统仿真方法。
二实验基本知识
1.了解SIMULINK模块库中各子模块基本功能
2. SIMULINK 的建模与仿真方法
(1)打开模块库,找出相应的模块。
鼠标左键点击相应模块,拖拽到模型窗口中即可。
(2)创建子系统:当模型大而复杂时,可创建子系统。
(3)设置仿真控制参数。
三、实验内容
(1)系统的仿真与分析
1.创建一个正弦信号的仿真模型
在MATLAB 的命令窗口运行simulink 命令单击工具栏上的图标或选择菜
单“File”——“New”——“Model”,新建一个名为
“untitled”的空白模型窗口。
添加模块
仿真
2.建立二阶系统的仿真模型。
方法一: 输入信号源使用阶跃信号,系统使用开环传递函数s
s 6.012 ,接受模块使用示波器来
构成模型。
(1) 在“Sources ”模块库选择“Step ”模块,在“Continuous ”模块库选择“Transfer Fcn ”模
块,在“Math Operations ”模块库选择“Sum ”模块,在“Sinks ”模块库选择“Scope ”。
(2) 连接各模块,从信号线引出分支点,构成闭环系统。
仿真并分析
单击工具栏的“Start simulation ”按钮,开始仿真,在示波器上就显示出阶跃响应。
在 Simulink 模型窗口,选择菜单“Simulation ”——“Simulation parameters …”命令,在
“Solver ”页将“Stop time ”设置为15,然后单击“Start simulation ”按钮,示波器显示的就到15
秒结束。
方法二:
(1) 系统使用积分模块(Integrator)和零极点模块(zero-pole)串联,反馈使用“Math
Operations”模块库中的“Gain”模块构成反馈环的增益为-1。
(2) 连接模块,由于“Gain”模块在反馈环中,因此需要使用“Flip Block”翻转该模块。
(3) 设置模块参数,将“zero-pole”模块参数对话框中的“Zeros”栏改为“[]”,将“Poles”栏
改为[-0.6]。
将“Gain”模块的“Gain”参数改为-1。
模型如图
如果将示波器换成“Sinks”模块库中的“Out”模块;然后在仿真参数设置对话
框的“Workspace I/O”页(工作空间输入输出),将“Time”和“Output”栏勾选,并分别设置保
存在工作空间的时间量和输出变量为“tout”和“yout”。
仿真后在工作空间就可以使用这两个
变量来绘制曲线,如图7.30 所示:
plot(tout,yout)
2.离散系统仿真
控制部分为离散环节,被控对象为两个连续环节,其中一个有反馈环,反馈
环引入了零阶保持器,输入为阶跃信号。
创建模型并仿真:
(1) 选择一个“Step”模块,选择两个“Transfer Fcn”模块,选择两个“Sum”模块,选择两
个“Scope”模块,选择一个“Gain”模块,在“Discrete”模块库选择一个“Discrete Filter”和一
个“Zero-Order Hold”模块。
(2) 连接模块,将反馈环的“Gain”模块和“Zero-Order Hold”模块翻转。
(3) 设置参数,“Discrete Filter”和“Zero-Order Hold”模块的“Sample time”都设置为0.1s。
(4) 添加文本注释,系统框图如图
(2)子系统与封装
将控制对象中的第一个连续环节中的反馈环建立
为一个子系统。
在模型窗口中,将控制对象中的第一个连续环节的反馈环用鼠标拖出的虚线框框住,选择菜单“Edit”/“Create subsystem”,则系统如图
双击子系统,则会出现“Subsystem”模型窗口,如图所示。
可以看到子系统模型除了用鼠标框住的两个环节,还自动添加了一个输入模块
“In1”和一个输出模块“Out1”
(3)用MATLAB 命令创建和运行Simulink 模型
条件执行子系统
1.使能子系统
建立一个用使能子系统控制正弦信号为半波整流信号的模型。
模型由正弦信号“Sine wave”为输入信号源,示波器“Scope”为接收
模块,使能子系统“Enabled Subsystem”为控制模块,
连接模块,将“Sine wave”模块的输出作为“Enabled Subsystem”的
控制信号,模型如图
开始仿真,由于“Enabled Subsystem”的控制为正弦信号,大于零时执
行输出,小于零时就停止,则示波器显示为半波整流信号,示波器的显
示如图
2.触发子系统
建立一个用触发子系统控制正弦信号输出阶梯波形的模型模型由正弦信号“Sine wave”为输入信号源,示波器“Scope”为接收模块,触发子系统“Triggered Subsystem”为控制模块,选择“Sources”模块库中的“Pulse Generator”模块为控制信号。
连接模块,将“Pulse Generator”模块的输出作为“Triggered Subsystem”
的控制信号,模型如图
开始仿真,由于“Triggered Subsystem”的控制为“Pulse Generator”模块的输出,示波器输出如图
3.PID控制器设计
在Simulink下建立PID控制模型
其中PID封装模块内部结构如下图
仿真时取Kp=40,Ki=2,Kd=10,仿真时间为10s ,得到如下图所示结果。