matlab之simulink仿真入门

matlab之simulink仿真入门MatlabSimulink仿真工具的应用****Simulink是一个用来对动态系统进行建模、仿真和分析的软件包。使用Simulink来建模、分析和仿真各种动态系统(包括连续系统、离散系统和混合系统),将是一件非常轻松的事情。它提供了一种图形化的交互环境,只需用鼠标拖动的方法便能迅速地建立起系统框图模型,甚至不需要编写一行代码。由于Simulink具有强大的功能与友好的用户界面,因此它已

大家好,又见面了,我是你们的朋友全栈君。

Matlab Simulink仿真工具的应用

Simulink是一个用来对动态系统进行建模、仿真和分析的软件包。使用Simulink来建模、分析和仿真各种动态系统(包括连续系统、离散系统和混合系统),将是一件非常轻松的事情。
它提供了一种图形化的交互环境,只需用鼠标拖动的方法便能迅速地建立起系统框图模型,甚至不需要编写一行代码。
由于Simulink具有强大的功能与友好的用户界面,因此它已经被广泛地应用到诸多领域之中,如:
(1)通讯与卫星系统。
(2)航空航天系统。
(3)生物系统。
(4)物流系统。
(6)制造系统。
(7)金融系统
。

simulink作为matlab中一个强大的库,在自动控制方面有着不可替代的作用。鉴于网上已有大量教材,仅提供一个小例子,以为入门。基础理论可参考这里。

  • 打开matlab2014a(我用的是这个啦),点击simulink库。
  • 漫长的等待后……出现:
    这里写图片描述
  • Simulink模块库浏览器可以按照类型选择合适的系统模块、获得系统模块的简单描述以及查找系统模块等,并且可以直接将模块库中的模块拖动或者拷贝到用户的系统模型中以构建动态系统模型。
    这里写图片描述
  • SIMILINK模块库按功能进行分为以下8类子库:
    Continuous(连续模块)
    Discrete(离散模块)
    Function&Tables(函数和平台模块)
    Math(数学模块)
    Nonlinear(非线性模块)
    Signals&Systems(信号和系统模块)
    Sinks(接收器模块)
    Sources(输入源模块)

这里用一个非常简单的例子介绍如何建立动态系统模型。 此简单系统的输入为一个正弦波信号,输出为此正弦波信号与一个常数的乘积。 要求建立系统模型,并以图形方式输出系统运算结果。

已知系统的数学描述为:
u ( t ) = s i n ( t ) , t ≥ 0 u(t)=sin(t),t \geq0 u(t)=sin(t),t≥0
y ( t ) = a u ( t ) = a s i n ( t ) , a ≠ 0 y(t)=au(t)=asin(t),a\ne0 y(t)=au(t)=asin(t),a​=0

  • 单击新建模型按钮,即可打开:
    Simulink系统模拟编辑器窗口。

  • 依次将公共模块库和专业模块库中各控件通过鼠标左键拖动到Simulink系统模拟编辑器窗口中。

  • 系统输入模块库Sources中的Sine Wave控件:产生一个正弦波信号。

  • 数学库Math Operations中的Gain控件:将信号乘上一个常数(即信号增强)。

  • 系统输出Sink中的Scope控件(示波器控件):图形方式显示结果。
    -已放入控件后的Simulink框图:
    这里写图片描述

  • 连接控件

在选择构建系统模型所需的所有模块后,需要按照系统的信号流程将各系统模块正确连接起来。连接系统模块的步骤如下:
(1) 将光标指向起始块的输出端口,此时光标变成“+”。
(2) 单击鼠标左键并拖动到目标模块的输入端口,在接近到一定程度时光标变成双十字。这时松开鼠标键,连接完成。完成后在连接点处出现一个箭头,表示系统中信号的流向。

  • 复制控件

如果需要几个同样的模块,可以使用鼠标右键单击并拖动某个块进行拷贝。也可以在选中所需的模块后,使用Edit菜单上的Copy 和Paste 或使用热键Ctrl+C和Ctrl+V完成同样的功能。

  • 连线分支与连线改变

在某些情况下,一个系统模块的输出同时作为多个其它模块的输入,这时需要从此模块中引出若干连线,以连接多个其它模块。对信号连线进行分支的操作方式为:使用鼠标右键单击需要分支的信号连线(光标变成“+”),然后拖动到目标模块。

  • 控件参数设置

当用户按照信号的输入输出关系连接各控件之后,系统模型的创建工作便已结束。
为了对动态系统进行正确的仿真与分析,必须设置正确的控件参数。
控件参数的设置方法如下:
1.双击控件图标,打开控件参数设置对话框。
2.在参数设置对话框中设置合适的控件参数。

这里写图片描述

  • 仿真参数设置

1、仿真起止时间设置
在缺省情况下,Simulink默认的仿真起始时间为0s,仿真结束时间为10 s。
对于简单系统,当时间大于25时系统输出才开始转换,因此需要设置合适的仿真时间。
设置仿真时间的方法有两种:
(1)选择菜单Simulation中的Model configuration Parameters(或使用快捷键Ctrl+E),打开仿真参数设置对话框,在Solver选项卡中“Simulation time”栏设置系统仿真时间区间。设置系统仿真起始时间为0 s、结束时间为100 s。
(2)Simulink系统模拟编辑器窗口上方的仿真时间设置栏。
2、仿真步长设置
在使用Simulink对简单系统进行仿真时,影响仿真结果输出的因素有仿真起始时间、结束时间和仿真步长。对于简单系统仿真来说,不管采用何种求解器,Simulink总是在仿真过程中选用最大的仿真步长。
最大步长默认取值为auto,设置仿真步长的方法为:
选择菜单Simulation中的Model configuration Parameters(或使用快捷键Ctrl+E),打开仿真参数设置对话框,在Solver选项卡中“Solver options”栏的max step size设置系统仿真时间区间。

  • 运行仿真

当对系统中各控件参数以及系统仿真参数进行正确设置之后,单击系统模型编辑器上的Run图标(黑色三角)或选择Simulation菜单下的Run便可以对系统进行仿真分析。
-显示系统仿真结果

这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136117.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • deepfakes怎么用_手把手教你使用 Deepfakes 换脸

    deepfakes怎么用_手把手教你使用 Deepfakes 换脸做为程序员,不会换脸软件怎么能忍?下面教你们徒手使用Deepfakes换脸。python如何使用Deepfakes换脸?git获取deepfakes工具包程序员gitclonehttps://github.com/deepfakes/faceswap.git补齐依赖包:githubpipinstalltqdmpipinstallcv2pipinstallopencv-c…

    2022年5月26日
  • 数字媒体技术专业方向

    数字媒体技术专业方向

    2021年9月29日
  • Dataset之CIFAR-10:CIFAR-10数据集的简介、下载、使用方法之详细攻略

    Dataset之CIFAR-10:CIFAR-10数据集的简介、下载、使用方法之详细攻略Dataset之CIFAR-10:CIFAR-10数据集的简介、下载、使用方法之详细攻略目录CIFAR-10的简介1、与MNIST数据集中目比,CIFAR-10真高以下不同点2、TensorFlow官方示例的CIFAR-10代码文件3、CIFAR-10数据集的数据文件名及用途4、基于CIFAR-10数据集最新算法预测准确率对比CIFAR-10的下载1、下载CIFAR-10数据集的全部数据CIFAR-10使用方法1、使用TF读取CIFAR-10数据官网链接:TheCIFAR-10datas

    2022年10月17日
  • 什么是高内聚、低耦合?

    什么是高内聚、低耦合?

    2021年10月10日
  • 数据库中的左连接和右连接的区别是什么_左连接右连接内连接图解

    数据库中的左连接和右连接的区别是什么_左连接右连接内连接图解数据库中的左连接和右连接的区别今天,别人问我一个问题:数据库中的左连接和右连接有什么区别?如果有A,B两张表,A表有3条数据,B表有4条数据,通过左连接和右连接,查询出的数据条数最少是多少条?最多是多少条?我被这个问题问住了,后来我去问了数据库开发人员,问到的答案也是各种各样:a最大12最小0b最大12最小未知c…

    2022年9月16日
  • CentOS7安装mysql5.5

    CentOS7安装mysql5.5一、检查本地是否安装过其他版本的mysqlrpm-qa|grep-i mysql由于有些版本自带的有mariadb,检查是否有mariadb,若是有需要先卸载 yum-yremovemaria*二、下载mysql5.5的服务器和客户端的安装包 下载服务器包:wget https://dev.mysql.com/get/Downloads/MySQ…

    2022年5月4日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号