Simulink简介

Simulink® 是一个模块图环境,用于多域仿真以及基于模型的设计。它支持系统级设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证。Simulink 提供图形编辑器、可自定义的模块库以及求解器,能够进行动态系统建模和仿真。Simulink 与 MATLAB® 相集成,这样您不仅能够在 Simulink 中将 MATLAB 算法融入模型,还能将仿真结果导出至 MATLAB 做进一步分析

Simulink® 是动态系统的图形建模和仿真环境。您可以创建模块图,用模块表示系统的各个组成部分。模块可以表示物理组件、小型系统或函数。输入/输出关系则完整描述了模块特征。请思考下面这些示例:

1: 一个水龙头往一个水桶里注入水 - 水以一定的流速进入水桶,水桶变重。模块可以表示水桶,水的流速为输入,水桶的重量为输出。

2: 您用扩音器传递声音 - 扩音器一端产生的声音在另一端被放大。扩音器是模块,输入是声源的声波,输出是您听到的声波。

3:您推动购物车使它移动 - 购物车是模块,您施加的力是输入,购物车的位置是输出。

只有定义了输入和输出,模块的定义才算完成,并且此模型定义任务需与建模目的相关。例如,如果建模目的不涉及购物车的位置,则会自然选择购物车的速度作为输出。

Simulink 提供了一些模块库,它们是按功能分组的模块集合。例如,要对以常量倍数放大输入的扩音器进行建模,可以使用 Math Operations 库中的 Gain 模块。

进入扩音器的声波作为输入,出来的同一声波的更大版本作为输出。
> 符号表示模块的输入和输出,可以连接到其他模块

是对系统各个组件随时间流逝的行为变化进行仿真。简单来讲就是:采用一个时钟,按时间确定各个模块的仿真顺序,并在仿真过程中依次将在上一个模块图中计算得出的输出传播到下一个模块,直至最后一个模块。以扩音器为例。在每个时间步,Simulink 都必须计算正弦波的值,将其传播给扩音器,然后计算输出值。

信号 - 在仿真期间计算的模块输入和输出

状态 - 在仿真期间中计算的代表模块动态的内部值

参数 - 影响模块行为的值,由用户控制

在每个时间步,Simulink 都计算信号和状态的新值。相比之下,您可以在编译模型时指定参数,并且可以在仿真运行时偶尔更改它们

创建简单模型

您可以使用 Simulink® 来对系统建模,然后仿真该系统的动态行为。本教程中创建简单模型所使用的基本方法也适用于创建更复杂的模型。此示例对简化的汽车运动进行仿真。当踩下油门踏板时,汽车通常处于行进状态。松开踏板后,汽车怠速并停下来。

Simulink 模块是定义模块输入和模块输出之间数学关系的模型元素。要创建这个简单模型,您需要四个 Simulink 模块。

模型层次结构

Simulink® 模型可以组织成具有层次结构的组件。在分层模型中,您可以选择查看整体系统,或沿模型层次结构向下导航以逐级深入模型细节

相关推荐
吱吱鼠叔9 小时前
MATLAB计算与建模常见函数:5.曲线拟合
算法·机器学习·matlab
吱吱鼠叔18 小时前
MATLAB数据文件读写:2.矩阵数据读取
数据库·matlab·矩阵
橙意满满的西瓜大侠18 小时前
matlab入门学习(二)矩阵、字符串、基本语句、函数
matlab
kuan_li_lyg20 小时前
MATLAB - 机械臂手眼标定(眼在手内) - 估计安装在机器人上的移动相机的姿态
开发语言·人工智能·matlab·机器人·ros·机械臂·手眼标定
感谢地心引力21 小时前
【MATLAB2024b】安装离线帮助文档(windows)
windows·matlab
通信仿真实验室1 天前
(4)MATLAB生成CRC校验码
开发语言·数据结构·matlab
月白风清江有声1 天前
关于KKT条件的线性约束下非线性问题-MATLAB
开发语言·算法·matlab
柠檬少少开发1 天前
基于MATLAB的安全帽检测系统
matlab
科研工作站1 天前
MATLAB|电气互联系统有功-无功协同优化模型
matlab·综合能源·电气·有功·无功·电气互联
kuan_li_lyg1 天前
MATLAB - 机械臂手眼标定(眼在手外) - 估算固定相机相对于机器人基座的姿态
开发语言·人工智能·matlab·机器人·ros·机械臂·手眼标定