08-SIMULINK交互式仿真集成环境
- 格式:docx
- 大小:949.35 KB
- 文档页数:44
实验七SIMULINK 仿真集成环境一、实验目的熟悉SIMULINK 的模型窗口、熟练掌握SIMULINK 模型的创建,熟练掌握常用模块的操作及其连接。
二、实验内容(1) SIMULINK 模型的创建和运行。
(2) 一阶系统仿真。
三、实验步骤1.Simulink 模型的创建和运行(1) 创建模型。
①在MATLAB 的命令窗口中输入simulink 语句,或者单击MATLAB 工具条上的SIMULINK 图标,SIMULINK 模块库浏览器。
②在MATLAB 菜单或库浏览器菜单中选择File|New|Model,或者单击库浏览器的图标,即可新建一个“untitle”的空白模型窗口。
③打开“Sources”模块库,选择“Sine Wave”模块,将其拖到模型窗口,再重复一次;打开“Math Operations”模块库选取“Product”模块;打开“Sinks”模块库选取“Scope”模块。
(2) 设置模块参数。
①修改模块注释。
单击模块的注释处,出现虚线的编辑框,在编辑框中修改注释。
②双击下边“Sine Wave”模块,弹出参数对话框,将“Frequency”设置为100;双击“Scope”模块,弹出示波器窗口,然后单击示波器图标,弹出参数对话框,修改示波器的通道数“Number of axes”为3。
③如图A4 所示,用信号线连接模块。
(3) 启动仿真①单击工具栏上的图标或者选择Simulation|Start 菜单项,启动仿真;然后双击“Scope”模块弹出示波器窗口,可以看到波形图。
②修改仿真步长。
在模型窗口的Simulation 菜单下选择“Configuration Parameters”命令,把“Max step size”设置为0.01;启动仿真,观察波形是不是比原来光滑。
③再次修改“Max step size”为0.001;设置仿真终止时间为10s;启动仿真,单击示波器工具栏中的按钮,可以自动调整显示范围,可以看到波形的起点不是零点,这是因为步长改小后,数据量增大,超出了示波器的缓冲。
SIMULINK交互式仿真集成环境简介SIMULINK是由MathWorks公司开发的一种基于模型的设计工具,被广泛用于工程中的仿真、建模和分析等方面。
本文将介绍SIMULINK交互式仿真集成环境的特点、功能和应用。
特点1. 图形化界面SIMULINK提供了直观的图形化界面,使用户可以轻松地建立模型、连接组件和设定参数。
2. 交互式仿真SIMULINK支持实时交互仿真,用户可以在模型运行的过程中观察结果并动态调整参数,使仿真更加灵活和实时。
3. 多种模块库SIMULINK包含了丰富的模块库,涵盖了各种工程领域的模型组件,用户可以快速搭建复杂模型并进行仿真分析。
4. 支持代码自动生成SIMULINK可以根据建立的模型自动生成对应的代码,方便用户将仿真结果应用到实际工程项目中。
功能1. 系统建模用户可以通过拖拽模块、线连接和参数设置,建立系统的数学模型。
2. 仿真分析SIMULINK提供了丰富的仿真分析工具,用户可以对模型进行动态仿真、频域分析、优化等操作。
3. 控制设计SIMULINK集成了控制系统设计工具,用户可以设计并优化闭环控制系统。
4. 协同工作多人可以同时使用SIMULINK进行协同工作,通过云存储共享和编辑模型。
应用领域1. 汽车行业SIMULINK在汽车行业中被广泛应用,包括引擎控制、车速控制、底盘控制等方面。
2. 电力系统电力系统的稳定性和控制可以通过SIMULINK进行建模和仿真分析。
3. 机器人控制机器人的运动规划、路径规划和控制系统设计都可以通过SIMULINK来实现。
总结SIMULINK作为一款强大的交互式仿真集成环境,为工程师和科研人员提供了一个方便、直观、灵活的建模和仿真平台。
通过本文的介绍,读者可以更加深入了解SIMULINK的特点、功能和应用领域,从而更好地利用这一工具进行工程设计和研究工作。
第八第八章章 SIMULINK SIMULINK 交互式仿真集成环境交互式仿真集成环境8.1 引导SIMULINK 是一个进行动态系统建模、仿真和综合分析的集成软件包。
它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
在SIMULINK 提供的图形用户界面GUI 上,只要进行鼠标的简单拖拉操作就可构造出复杂的仿真模型。
它外表以方块图形式呈现,且采用分层结构。
从建模角度讲,这既适于自上而下(Top-down )的设计流程(概念、功能、系统、子系统、直至器件),又适于自下而上(Bottum-up ) 逆程设计。
从分析研究角度讲,这种SIMULINK 模型不仅能让用户知道具体环节的动态细节,而且能让用户清晰地了解各器件、各子系统、各系统间的信息交换,掌握各部分之间的交互影响。
在SIMULINK 环境中,用户将摆脱理论演绎时需做理想化假设的无奈,观察到现实世界中摩擦、风阻、齿隙、饱和、死区等非线性因素和各种随机因素对系统行为的影响。
在SIMULINK 环境中,用户可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。
由于SIMULINK 环境使用户摆脱了深奥数学推演的压力和烦琐编程的困扰,因此用户在此环境中会产生浓厚的探索兴趣,引发活跃的思维,感悟出新的真谛。
在MATLAB6.x 版中,可直接在SIMULINK 环境中运作的工具包很多,已覆盖通信、控制、信号处理、DSP 、电力系统等诸多领域,所涉内容专业性极强。
本书无意论述涉及工具包的专业内容,而只是集中阐述:SIMULINK 的基本使用技法和相关的数值考虑。
节8.1虽是专为SIMULINK 初学者写的,但即便是熟悉SIMULINK 以前版本的读者也值得快速浏览这部分内容,因为新版的界面、菜单、工具条、模块库都有较大的变化。
第8.2节比较详细地阐述建模的基本操作:通用模块的具体化设置、信号线勾画、标识、模型窗参数设置。
第八章 SIMULINK交互式仿真集成环境8.1引导SIMULINK是一个进行动态系统建模、仿真和综合分析的集成软件包。
它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
在SIMULINK 提供的图形用户界面GUI上,只要进行鼠标的简单拖拉操作就可构造出复杂的仿真模型。
它外表以方块图形式呈现,且采用分层结构。
从建模角度讲,这既适于自上而下(Top-down)的设计流程(概念、功能、系统、子系统、直至器件),又适于自下而上(Bottum-up)逆程设计。
从分析研究角度讲,这种SIMULINK模型不仅能让用户知道具体环节的动态细节,而且能让用户清晰地了解各器件、各子系统、各系统间的信息交换,掌握各部分之间的交互影响。
在SIMULINK环境中,用户将摆脱理论演绎时需做理想化假设的无奈,观察到现实世界中摩擦、风阻、齿隙、饱和、死区等非线性因素和各种随机因素对系统行为的影响。
在SIMULINK环境中,用户可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。
由于SIMULINK环境使用户摆脱了深奥数学推演的压力和烦琐编程的困扰,因此用户在此环境中会产生浓厚的探索兴趣,引发活跃的思维,感悟出新的真谛。
在MATLAB6.x版中,可直接在SIMULINK环境中运作的工具包很多,已覆盖通信、控制、信号处理、DSP、电力系统等诸多领域,所涉内容专业性极强。
本书无意论述涉及工具包的专业内容,而只是集中阐述:SIMULINK 的基本使用技法和相关的数值考虑。
节8.1虽是专为SIMULINK初学者写的,但即便是熟悉SIMULINK以前版本的读者也值得快速浏览这部分内容,因为新版的界面、菜单、工具条、模块库都有较大的变化。
第8.2节比较详细地阐述建模的基本操作:通用模块的具体化设置、信号线勾画、标识、模型窗参数设置。
这部分内容是进一步深入的前提。
从第8.3节起,由浅入深地讲述SIMULINK 对各种数学、工程问题的建模、仿真和分析的基本方法。
第1章 MATLAB简介1、MA TLAB的主要特点有:①语言简洁,编程效率高。
②人机界面友善,交互性好。
③绘图功能强大,便于数据可视化。
④学科众多、领域广泛的MATLAB工具箱。
⑤源程序的开放性。
MATLAB的典型应用领域有:①自动控制②汽车③电子④仪器仪表⑤生物医学⑥信号处理⑦通信等。
2、填空题⑴命令窗口、命令历史窗口、当前目录窗口⑵查阅、保存、编辑⑶清除图形窗、清除命令窗口中显示内容、清除MATLAB工作空间中保存的变量。
3、如果想查看某一变量具体内容或者对其修改操作,可以在工作空间中双击该变量名称,可以打开数组编辑器,在数组编辑器中可以查看变量的具体内容,也可以对其修改。
如果想删除MATLAB内存中的变量,可以在工作空间中选中该变量,然后利用工作空间窗口的菜单命令或工具条中的快捷图标进行删除。
4、1+2+3+4+5+... (+ 后面可以直接跟...,也可以在+和...中加一个空格。
)6+7+8+91+2+3+4+5 ... (5后面必须跟一个空格,不能直接跟...,否则报错,这在预置一个+6+7+8+9 大数组时很重要。
)第2章矩阵与数值数组1、填空题:⑴非数、无穷大、机器零阈值,浮点数相对精度,eps= 2.2204e-016。
⑵全下标、单下标。
2、阅读程序题:(本题主要考察数组的寻访、赋值和简单运算,提示:带;的语句不显示结果)⑴ans =2 3 7Sa =102030A =1 20 5 30 910 4 6 8 10⑵ A =1 3 5 7 9 11 13 152 4 6 8 10 12 14 16ans =1 5 9 132 6 10 143 7 11 154 8 12 16A =0 0 5 7 0 0 13 152 4 0 0 10 12 0 0⑶ ans =-1 -46 4ans =3 05 -2ans =3 69 12ans =3 69 123、A=magic(4);L=A<10L =0 1 1 01 0 0 11 1 1 01 0 0 14、省略。
Simulink交互式仿真Simulink是一个进行动态系统建模、仿真和综合分析的集成软件包。
它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
Simulink有两大特征:一,建模借助鼠标交互实现;二,模型运作以时间流方式进行。
所以即使比较熟悉MATLAB工作环境和编程模式的读者,在初入Simulink领地时,也不免感到生疏。
为帮助读者亲身跨过Simulink门槛,本章第2节以算例形式对建模的数学基础、基本器件、操作手法、工作平台进行了细节性的描述。
就详细程度而言,尤以本章第一个算例为最,初学者切莫跳过。
像MATLAB编程需要函数、子函数、条件分支、循环控制一样,Simulink建模,尤其是创建较复杂的模型,就必须有简装子系统、精装子系统、使能子系统、触发子系统、循环子系统。
本章的第3、4、5节就专门阐述这些子系统创建、工作机理、以及应用示例。
从时间角度分,Simulink模型有连续和离散之分。
本章除第6节用于专述纯离散系统和采样离散系统建模外,其余章节所涉的内容对连续、离散两种系统都适用。
已建Simulink模型的运行、仿真分析,即可以通过鼠标手工操纵,也可以借助一组指令自动操控。
鼠标操纵法的特点是:该法只能在Simulink模型窗中实施,参数的设置必须由“人”通过对话窗进行。
而指令自动操控法可以摆脱Simulink模型窗,在执行过程中无须人工参与。
本章第7节的内容就是为Simulink模型的指令自动操控而设计的。
本章第8节是出于Simulink模型解算的数值问题而编写的。
该节还给出了消减仿真模型中“代数环困扰”的具体方法。
就像MATLAB编程中用户常常需要编写“供自己专用的模块化函数”那样,在Simulink建模中,用户也会需要创建一些“供自己专用的模块”,即S函数模块。
有关S函数模块的创建在本章的最后一节介绍。
在这引言结束之前,本书读者再次诚恳地建议读者:对待本章的算例,一定要“眼、脑、手”并用,一定要在机器具体运作,切忌停留于“翻阅”。
第8章交互式仿真集成环境Simulink Matlab基础及其应用教程本章主要内容如下:8.18.28.38.4Simulink基本操作模块库和系统仿真子系统创建与封装Simulink仿真举例第8章Simulink动态仿真Simulink中的“Simu”一词表示可用于计算机仿真,而“Link”一词表示它能进行系统连接,即把一系列模块连接起来,构成复杂的系统模型。
作为MATLAB的一个重要组成部分,Simulink由于它所具有的上述的两大功能和特色,以及所提供的可视化仿真环境、快捷简便的操作方法,而使其成为目前最受欢迎的仿真软件。
本章主要介绍Simulink的基本功能和基本操作方法,并通过举例介绍如何利用Simulink进行系统建模和仿真。
8.1Simulink基本操作利用Simulink进行系统仿真的步骤是:①启动Simulink,打开Simulink模块库②打开空白模型窗口;③建立Smulink 仿真模型;④设置仿真参数,进行仿真;⑤输出仿真结果。
每个子模块库中包含同类型的标准模型,这些模块可直接用于建立系统的Simulink框图模型。
可按以下方法打开子模块库:①用鼠标左键点击某子模块库(如【Continuou】),Simulink浏览器右边的窗口即显示该子模块库包含的全部标准模块。
①用鼠标右键点击Simulink菜单项,则弹出一菜单条,点击该菜单条即弹出该子库的标准模块窗口.如单击左图中的【Sink】,出现“Openthe‘Sink’Library”菜单条,单击该菜单条,则弹出右图所示的该子库的标准模块窗口。
b)打开空白模型窗口模型窗口用来建立系统的仿真模型。
只有先创建一个空白的模型窗口,才能将模块库的相应模块复制到该窗口,通过必要的连接,建立起Simulink仿真模型。
也将这种窗口称为Simulink仿真模型窗口。
以下方法可用于打开一个空白模型窗口:在MATLAB主界面中选择【File:NewModel】菜单项;单击模块库浏览器的新建图标;选中模块库浏览器的【File:NewModel】菜单项。
第八章 SIMULINK交互式仿真集成环境8.1引导SIMULINK是一个进行动态系统建模、仿真和综合分析的集成软件包。
它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
在SIMULINK 提供的图形用户界面GUI上,只要进行鼠标的简单拖拉操作就可构造出复杂的仿真模型。
它外表以方块图形式呈现,且采用分层结构。
从建模角度讲,这既适于自上而下(Top-down)的设计流程(概念、功能、系统、子系统、直至器件),又适于自下而上(Bottum-up)逆程设计。
从分析研究角度讲,这种SIMULINK模型不仅能让用户知道具体环节的动态细节,而且能让用户清晰地了解各器件、各子系统、各系统间的信息交换,掌握各部分之间的交互影响。
在SIMULINK环境中,用户将摆脱理论演绎时需做理想化假设的无奈,观察到现实世界中摩擦、风阻、齿隙、饱和、死区等非线性因素和各种随机因素对系统行为的影响。
在SIMULINK环境中,用户可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。
由于SIMULINK环境使用户摆脱了深奥数学推演的压力和烦琐编程的困扰,因此用户在此环境中会产生浓厚的探索兴趣,引发活跃的思维,感悟出新的真谛。
在MATLAB6.x版中,可直接在SIMULINK环境中运作的工具包很多,已覆盖通信、控制、信号处理、DSP、电力系统等诸多领域,所涉内容专业性极强。
本书无意论述涉及工具包的专业内容,而只是集中阐述:SIMULINK 的基本使用技法和相关的数值考虑。
节8.1虽是专为SIMULINK初学者写的,但即便是熟悉SIMULINK以前版本的读者也值得快速浏览这部分内容,因为新版的界面、菜单、工具条、模块库都有较大的变化。
第8.2节比较详细地阐述建模的基本操作:通用模块的具体化设置、信号线勾画、标识、模型窗参数设置。
这部分内容是进一步深入的前提。
从第8.3节起,由浅入深地讲述SIMULINK 对各种数学、工程问题的建模、仿真和分析的基本方法。
本章采用“算例”作为主体,配以适量的归纳性表述。
本章包含了34个“尽量简单”又“独立完整”的“典型”算例,而这正是SIMULINK在线PDF文件之所缺。
读者通过“手、眼、脑”并用地练习算例,掌握SIMULINK的一般使用规则和操作技法。
鉴于SIMULINK的本质,本节算例必定涉及数学、物理、和若干工程考虑。
本书已采取“无量纲记述”、“注释”等措施使算例尽可能易读易懂,读者只要稍微耐心,就可以从这些有背景的内容体验到SIMULINK仿真之细腻和切实,从这些带背景性的算例品出SIMULINK的精妙之处。
本章内容已在MATLAB6.5基础上进行全面更新,变动最大的是第8.4.3节。
此外,为适应读者应用水平的提高,新增了第8.8节,论述S函数模块的创建和使用。
8.1.1SIMULINK的安装图 8.1.1-1 8.1.2SIMULINK入门图 8.1.2-1图 8.1.2-2图 8.1.2-3图 8.1.2-4 模型创建中的模型窗一图 8.1.2-5图 8.1.2-6图 8.1.2-7 8.1.3SIMULINK库浏览器界面图 8.1.3-18.1.4SIMULINK模型窗的组成图8.1.4-1 8.2模型的创建8.2.1模型概念和文件操作8.2.1.1SIMULINK模型是什么8.2.1.2模型文件的操作图 8.2.1.2-18.2.2模块操作8.2.2.1模块的基本操作(1)模块的选定图 8.2.2.1-1 ●选定单个模块的操作方法:●选定多个模块的操作方法:图 8.2.2.1-2(2)模块的复制(3)模块的移动(4)模块的删除(5)改变模块大小(a )原尺寸(b )拖动边框(c )新尺寸图 8.2.2.1-3(6)模块的旋转(a )缺省状态(b )旋转1800(c )旋转900图 8.2.2.1-4(7)模块名的操作(8)模块的阴影效果8.2.2.2 向量化模块和标量扩展(1)向量化模块 (2)标量扩展【例8.2.2.2-1】演示“示波”模块的向量显示能力。
图 8.2.2.2-1-1【例8.2.2.2-2】演示“求和”模块的向量处理能力:输入扩展。
图 8.2.2.2-2-1【例8.2.2.2-3】演示“增益”模块的向量处理能力:参数扩展。
图 8.2.2.2-3-18.2.2.3参数设置8.2.3信号线操作8.2.3.1产生连线(1)水平或垂直连线的产生(2)斜连线的产生(3)连线的移动和删除8.2.3.2信号线的分支和折曲(1)分支的产生(2)信号线的折曲(3)折点的移动8.2.3.3信号线宽度显示8.2.3.4彩色显示信号线8.2.3.5插入模块图 8.2.3.5-18.2.3.6信号线标识(label)【例8.2.3.6-1】演示:信号线标识的传播8.2.4对模型的注释(1)模型注释的创建(2)注释位置的移动(3)注释文字的字体控制8.2.5常用的Sourse库信源【例8.2.5-1】如何调用MATLAB工作空间中的信号矩阵作为模型输入。
本例所需的输入为⎪⎩⎪⎨⎧<≤<≤-=elseTtTTttTttu2)2()(22。
(1)[sourec 0825_1.m]function TU=source0825_1(T0,N0,K)t=linspace(0,K*T0,K*N0+1);N=length(t);u1=t(1:(N0+1)).^2;u2=(t((N0+2):(2*N0+1))-2*T0).^2;u3(1:(N-(2*N0+2)+1))=0;u=[u1,u2,u3];TU=[t',u'];(2)图8.2.5-1 (3)(4)TU=source0825_1(1,100,4);(5)8.2.6常用的Sink库信宿8.2.6.1库信宿一览表8.2.6.2示波器(1)示波器的用途(2)示波器窗的工具条(3)示波器纵坐标范围的手工设置(4)示波器横坐标的设置(5)把示波器数据送入MATLAB工作空间(6)多信号显示区设置(7)设置为游离示波器8.2.7仿真的配置8.2.7.1解算器参数的设置(Solver)图8.2.7.1-18.2.7.2仿真数据的输入输出设置(Workspace I/O)图8.2.7.2-18.2.7.3仿真中异常情况的诊断(Diagnostics)图 8.2.7.3-18.3 连续系统建模8.3.1 线性系统8.3.1.1 积分模块的功用【例8.3.1.1-1】复位积分器的功用示例。
图8.3.1.1-18.3.1.2 积分模块直接构造微分方程求解模型【例8.3.1.2-1】假设从实际自然界(力学、电学、生态等)或社会中,抽象出有初始状态为0的二阶微分方程)(2.04.02.0t u x x x =+'+'',)(t u 是单位阶跃函数。
本例演示如何用积分器直接构搭求解该微分方程的模型。
(1) (2)图8.3.1.2-1-1(3)仿真操作(4)保存在MATLAB 工作空间中的数据clftt=ScopeData.time;xx=ScopeData.signals.values;[xm,km]=max(xx);plot(tt,xx,'r','LineWidth',4),hold onplot(tt(km),xm,'b.','MarkerSize',36),hold offstrmax=char('最大值',['t = ',num2str(tt(km))],['x = ',num2str(xm)]);024681012141618200.10.20.30.40.50.60.70.80.9最最最t = 4.9567x = 0.80201tx8.3.1.3传递函数模块【例8.3.1.3-1】直接利用传递函数模块求解方程(8.3.1.3-1)。
(1)图8.3.1.3-1(2)8.3.1.4状态方程模块和单位脉冲输入的生成【例8.3.1.4-1】假设式(8.3.1.4-1)中的输入函数u是单位脉冲函数)(t ,研究该系统的位移变化。
本例演示:(A)状态方程模块的使用;(B)脉冲函数的生成方法。
(1)(2)图8.3.1.4-1-1(3)图8.3.1.4-1-28.3.2非线性系统8.3.2.1建立非线性仿真模型的基本考虑【例8.3.2.1-1】物理背景:如图8.3.2.1-1-1所示喷射动力车的定位控制问题。
图8.3.2.1-1-1(1)图8.3.2.1-1-2(2)(3)图8.3.2.1-1-3(4) (5) (6)subplot(1,2,1),plot(xout(:,2),xout(:,1)) grid on,axis([-0.2,1,-1,0.2]),axis squarexlabel('\fontsize{14}位移'),ylabel('\fontsize{14}速度'), subplot(1,2,2),plot(xout(:,2),xout(:,1))grid on,axis([-0.1,0.05,-0.05,0.1]),axis square-0.200.20.40.60.8-1-0.8-0.6-0.4-0.200.2最最最最-0.1-0.0500.05-0.050.050.18.3.2.2 任意非线性函数模块及其应用【例8.3.2.2-1】轿车沿直线山坡路向前行驶。
要求设计一个简单的比例放大器,使轿车能以指定的速度运动。
本例演示:(A )仿真系统的创建。
(B )非线性模块的使用。
(C )任意函数模块的应用。
(D)体现“自下而上”的建模方式。
(E )本例将作为下面章节多个算例的基础,读者切莫跳略此题。
(1)图8.3.2.2-1-1 (2)图8.3.2.2-1-2(2)图8.3.2.2-1-3 (3)图8.3.2.2-1-4(4)8.4子系统的创建、装帧及受控执行8.4.1简装子系统及其应用8.4.1.1创建简装子系统的“先有内容后套包装”法【例8.4.1.1-1】题目的背景和参数与例8.3.2.2-1完全相同,要求创建利用比例控制器使轿车的运动速度稳定在期望车速的分层仿真模型。
本例演示:如何从非分层模型获得分层模型;创建简装子系统的“先有内容后套包装”法。
(1)(2)(3)(4)(5)图8.4.1.1-18.4.1.2创建简装子系统的“先有包装后置内容”法【例8.4.1.2-1】本例演示:如何自上而下构造分层模型;产生简装子系统的“先有包装后置内容”法。
(1)图 8.4.1.2-1(2)(3)(4)(5)8.4.2精装子系统8.4.2.1精装子系统的制作过程8.4.2.2装帧示例【例8.4.2.2-1】目标:把图8.4.1.1-1所示轿车速度控制模型中的轿车动态模型简装子系统变成精装子系统。