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模块,可以查看仿真结果,也就是的图象。

相关推荐
Evand J8 小时前
集合卡尔曼滤波(Ensemble Kalman Filter),用于二维滤波(模拟平面上的目标跟踪),MATLAB代码
matlab·平面·目标跟踪
我是博博啦13 小时前
matlab例题
人工智能·算法·matlab
2402_8713219515 小时前
MATLAB方程组
gpt·学习·线性代数·算法·matlab
Matlab程序猿小助手1 天前
【MATLAB源码-第218期】基于matlab的北方苍鹰优化算法(NGO)无人机三维路径规划,输出做短路径图和适应度曲线.
开发语言·嵌入式硬件·算法·matlab·机器人·无人机
Matlab精灵2 天前
使用MATLAB进行字符串处理
开发语言·matlab
机器学习之心2 天前
POD-Transformer多变量回归预测(Matlab)
matlab·回归·transformer·pod-transformer
WangYan20222 天前
高光谱遥感是什么?高光谱遥感数据如何处理?(基于Matlab和Python多案例解析)从小白到精通
matlab·高光谱遥感数据处理·混合像元分解
Matlab精灵3 天前
利用Matlab函数实现深度学习算法
深度学习·算法·matlab
十七算法实验室3 天前
Matlab实现北方苍鹰优化算法优化随机森林算法模型 (NGO-RF)(附源码)
开发语言·深度学习·算法·决策树·随机森林·机器学习·matlab
mailangduoduo3 天前
基于matlab的语音信号去噪的App Designer 设计
matlab·gui设计·语音去噪·app设计