Matlab simulink建模与仿真 第一章(simulink入门)

参考视频:simulink1.1simulink简介_哔哩哔哩_bilibili

一、simulink简介

1、simulink与MATLAB的关系

(1)MATLAB是一种以矩阵为来处理数据的的计算软件,其应用范围十分广泛,该产品由若干模块组成,simulink是其中一个,它可利用图形化的工具来进行建模与仿真。

(2)simulink是基于MATLAB的框图设计环境,可以用来对各种动态系统进行建模、分析和仿真,它的应用领域十分广泛,任何能用数学模型来描述的系统都可以在simulink中进行仿真分析,如空气动力学、导航制导通讯、电子、机械、热力学等诸多领域,这些系统从数学角度来描述多涉及连续、离散、非线性、时变、条件执行、多速率混合等用解析方法难以求解的系统,它们都可以通过simulink进行建模与仿真,从而指导系统的分析与设计。

2、simulink的特点

(1)交互式建模:提供大量功能模块便于用户快速建立模型,建模仅需利用鼠标拖放功能块并将其连接起来。

(2)交互式仿真:仿真结果可以动态显示,并可以在仿真过程中随时修改参数。

(3)扩展与定制:提供了一个开放式的环境,允许用户扩充功能,可以将C、fortran编写的算法集成到框图中。

(4)专业的模型库:针对不同行业和领域提供了专业模型库。

3、simulink窗口的打开

(1)打开MATLAB,在命令行中输入"simulink",然后按下回车即可。

(2)MATLAB的菜单栏中也有打开simulink的快捷图标,不同版本的图标显示方式和位置可能略有不同,下面都以R2017b版本进行介绍。

(3)按照下图所示,可以打开已有的模型文件,或者新建空白模型文件。

二、建模与仿真的流程示例

1、一个典例------求解二阶振荡电路

2、数学模型的建立示例

(1)要解决一个实际的问题,首先要建立数学模型,对于动态系统而言,其数学模型往往都是微分方程或者微分方程组,得到它的数学模型以后就可以在simulink中建立相应的方块图并进行求解与仿真。

(2)在上面的例子中,求解过程中得出一个微分方程

对这个微分方程进行变形,把最高阶的导数项挪到左侧,其余项挪到右侧,即

根据此式可画出如下方块图。

(3)在simulink中搭建上面的方块图,最终成品如下图所示。

3、在simulink中搭建数学模型示例

(1)继续使用上面的例子,打开simulink,然后新建或者打开已有的文件,按照下图所示打开模块库浏览器。

①simulink栏下将一些模块分为几种类别,分别有常用的模块、连续模块、不连续模块、离散模块、逻辑与位操作模块、查找表格模块、数学操作模块、模型校验模块、端口和子系统模块、用户自定义模块等。

②除了simulink栏以外,其它栏基本都是一些专业的工具箱,在某些专业领域会频繁使用,当然,它们也隶属于simulink。

(2)通过拖拽的方式可以将模块浏览器中的模块添加到编辑区中,另外编辑区中支持移动、缩放、同时框选多个模块、Ctrl+C/Ctrl+V快捷键复制粘贴、backspace/delete键删除、Ctrl+R/Ctrl+Shift+R快捷键旋转、Ctrl+I快捷键翻转等基本操作。

(3)对于已添加模块,双击它,按照下图所示可以修改其形状。

(4)双击模块可以修改模块的属性:

①针对求和模块,其输入端口数目可通过双击模块,更改属性"List of signs"的内容来改变,两个"+"对应两个输入,四个"+"对应四个输入,以此类推。

②针对增益模块,其增益系数可通过双击模块,更改属性"Gain"的值来改变,这个值就是增益系数(可以是负数)。

③针对阶跃信号产生模块,可通过更改属性"Step time"的值以更改信号产生阶跃的时间。

(5)每个模块都会与其它模块产生关联,也就是一个模块往往都具有输入端和输出端(当然,本例中的Step和Scope并不是这样,它们只有输入端或者输出端),在编辑区中,模块的输入端表示为一个指向模块内部的"无身箭头",模块的输出端表示为一个指向模块外部的"无身箭头"。

(6)各模块的位置摆好后,可以进行连线。

①鼠标选定模块的端口,直接进行拖拽,可以将其与其它模块的端口进行连线,以此表示信号的传递(违规连接不会被允许)。

②按住Ctrl键点击信号线的某个位置,可以在上面引出一条分支,或者在模块的端口出直接拉出一条信号线连接到其它信号线上,也可以达成同样的效果。

③如果连接的信号线不是黑色实线,说明信号线没能将两端连接,需要重新进行连线。

(7)框选所有模块,右键选择"Format"→"Show Block Name"→"On",可以让模块的注释保持显示,点击注释可对其进行更改,不过模块的注释对工程而言不起实际作用。

(8)选中模块,右键选择"Format"→"Foreground Color"可以设置模块本身的颜色,右键选择"Format"→"Background Color"可以设置模块填充颜色,设置填充颜色可对不同功能/种类的模块进行更好的区分。

(9)模型搭建完成后,可以点击下图所示图标或者使用快捷键Ctrl+S保存,文件格式为.mdl。

4、仿真示例

(1)使用之前搭建的模型,按照下图所示打开仿真参数设置窗口,一般需要配置的参数有起止时间和求解器选项,这里暂时不作深入介绍。

(2)仿真参数设置完成后,将已知的初始条件代入模型。

(3)完成以上工作后,可以直接开始仿真。

(4)仿真结束后,双击scope模块,可以查看仿真结果,也就是的图象。

相关推荐
控制迷思11 小时前
垂尾控制升级实验:LQG控制-EXP-LQG-垂尾升级
自动化·pcb·simulink·垂尾·smart material
guygg8812 小时前
两轮车MATLAB仿真程序的实现方法
开发语言·matlab
cici1587414 小时前
基于GPRMAX的地下管线正演模拟与MATLAB实现
开发语言·算法·matlab
bubiyoushang88817 小时前
MATLAB空间域图像增强技术详解与实现
图像处理·计算机视觉·matlab
春日见21 小时前
做一个项目的完整流程应该是什么样
linux·人工智能·数码相机·计算机视觉·matlab
ghie909021 小时前
基于SVM的图像分割MATLAB实现实例
人工智能·支持向量机·matlab
wuk99821 小时前
基于MATLAB的谱减法语音去噪及信噪比评估
开发语言·matlab·语音识别
Evand J21 小时前
【2026课题推荐】复杂环境下,无人车协同定位与路径规划算法(附MATLAB例程演示)
开发语言·算法·matlab
rit84324991 天前
水声信道MATLAB仿真程序
开发语言·matlab
春日见1 天前
强化学习第一讲:强化学习是什么,强化学习分类
开发语言·jvm·人工智能·python·学习·matlab·强化学习