杰瑞科技汇

Matlab Simulink教程如何快速上手?

MATLAB Simulink 综合教程

第一部分:初识 Simulink

1 什么是 Simulink?

Simulink 是 MATLAB 最重要的一个组件,它提供了一个图形化环境,用于建模、仿真和分析多域动态系统

Matlab Simulink教程如何快速上手?-图1
(图片来源网络,侵删)
  • 核心思想:你不需要编写复杂的代码,而是通过拖拽模块连接线来构建系统的方框图,这个方框图直观地代表了系统的数学模型和物理结构。
  • 应用领域
    • 控制系统:设计 PID 控制器、分析系统稳定性。
    • 信号处理:设计滤波器、分析频谱。
    • 通信系统:仿真调制解调、信道编码。
    • 电力系统:模拟电机、电网。
    • 机械系统:进行多体动力学仿真。
    • 汽车/航空航天:设计自动驾驶算法、飞行控制系统。

2 Simulink vs. MATLAB Script

特性 MATLAB Script Simulink
形式 文本代码 (.m 文件) 图形化方框图 (.slx 文件)
优点 灵活、高效、适合复杂算法和数据处理 直观、易于理解、适合系统级建模和仿真
缺点 不够直观,系统复杂时难以阅读 计算开销可能较大,不适合纯数学计算
关系 相辅相成,Simulink 可以调用 MATLAB 函数,MATLAB 可以读取 Simulink 仿真结果进行分析。

第二部分:Simulink 环境初探

启动 MATLAB,在命令窗口输入 simulink 并回车,或者点击工具栏上的 Simulink 图标,即可打开 Simulink Library Browser(库浏览器)和一个新的空白模型窗口。

界面主要区域:

  1. Simulink Library Browser (库浏览器)

    • Simulink:基础库,包含所有核心模块,如 Sources(信号源)、Sinks(接收器)、Math Operations(数学运算)、Continuous(连续系统)等。
    • 特定工具箱:如 Control System Toolbox, Signal Processing Toolbox 等,提供更专业的模块。
  2. Model Editor (模型编辑器)

    Matlab Simulink教程如何快速上手?-图2
    (图片来源网络,侵删)
    • 你在这里构建方框图。
    • 包含菜单栏、工具栏、模型画布。

第三部分:创建第一个 Simulink 模型

我们将通过一个简单的例子来走一遍完整流程:生成一个正弦波,并通过一个增益模块将其放大,最后在示波器上显示。

步骤 1:新建模型

  • 在 Simulink Library Browser 中,点击 File -> New -> Model
  • 一个名为 untitled 的空白窗口会打开。

步骤 2:查找并添加模块

  • 添加正弦波信号源
    • 在库浏览器中,展开 Simulink
    • 点击 Sources (信号源)。
    • 找到 Sine Wave 模块,用鼠标左键按住并拖拽到模型画布上,然后松开。
  • 添加增益模块
    • 在库浏览器中,展开 Simulink
    • 点击 Math Operations (数学运算)。
    • 找到 Gain 模块,拖拽到画布上。
  • 添加示波器模块
    • 在库浏览器中,展开 Simulink
    • 点击 Sinks (接收器)。
    • 找到 Scope (示波器) 模块,拖拽到画布上。

步骤 3:连接模块

  • 将鼠标指针移动到 Sine Wave 模块的输出端口(右侧的 > 符号),指针会变成十字形。
  • 按住鼠标左键,拖拽一条线到 Gain 模块的输入端口(左侧的 > 符号),然后松开,一条连接线就画好了。
  • 用同样的方法,连接 Gain 模块的输出到 Scope 模块的输入。

你的模型现在看起来应该像这样:

[Sine Wave] --> [Gain] --> [Scope]

步骤 4:设置模块参数

  • 设置增益值
    • 双击 Gain 模块。
    • 弹出参数对话框,默认增益是 1,将其修改为 2
    • 点击 OK
  • 设置正弦波参数
    • 双击 Sine Wave 模块。
    • 你可以设置频率、幅值等参数,我们先保持默认设置。

步骤 5:配置仿真参数

  • 在模型编辑器的工具栏中,找到并点击 Configuration Parameters 按钮(通常看起来像齿轮图标),或者按快捷键 Ctrl+E
  • 这会打开一个对话框,在左侧选择 Solver (求解器)。
    • Simulation time:设置仿真总时长,Stop time: 10 (仿真10秒)。
    • Solver type:对于连续系统,选择 Variable-step (变步长)。
    • Solver:选择 ode45 (一个通用且强大的求解器)。
    • 点击 OK

步骤 6:运行仿真

  • 在工具栏中,点击绿色的 Run 按钮(或按 Ctrl+T)。
  • 仿真开始,状态栏会显示进度,完成后,会显示 "Simulation completed"。

步骤 7:查看结果

  • 双击 Scope 模块,打开示波器窗口。
  • 你会看到一个窗口,里面有一条曲线,这就是你的正弦波信号。
  • 为了更好地观察,可以点击示波器工具栏上的 Settings (望远镜图标),在 Time 范围中设置 10,然后点击 OK,现在你应该能看到一个完整的周期(默认频率下,周期为 2π,约 6.28 秒),并且波的幅值是 2(因为增益是 2)。

恭喜!你已经成功创建了并运行了你的第一个 Simulink 模型!


第四部分:核心概念详解

1 模块

  • 定义:Simulink 模型的基本构建块,代表一个数学运算、一个系统组件或一个功能。
  • 参数:每个模块都有可配置的参数,Gain 模块的增益值。
  • 端口:模块与外部连接的接口。
    • 输入端口:信号流入的地方(左侧)。
    • 输出端口:信号流出的地方(右侧)。

2 信号线

  • 定义:连接模块端口,表示信号流动的路径。
  • 信号标签:双击信号线可以添加标签,方便识别。
  • 分支:按住 Ctrl 键,点击信号线并拖拽,可以创建分支,将信号发送到多个模块。

3 求解器

  • 定义:Simulink 的“引擎”,负责根据你的模型方程计算出仿真时间步上的系统状态。
  • 类型
    • 变步长:根据系统的动态特性自动调整计算步长,在变化剧烈时步长变小,平缓时步长变大,精度和效率平衡得很好。默认推荐
    • 定步长:以固定的步长进行计算,适用于需要确定采样时间的实时应用或代码生成。

4 仿真管理器

  • 定义:一个独立的窗口,用于管理多个仿真任务,可以并行运行多个仿真,非常高效。

第五部分:进阶主题与技巧

1 子系统

当模型变得复杂时,可以将相关的模块组合成一个子系统,使模型更整洁、更易于管理。

Matlab Simulink教程如何快速上手?-图3
(图片来源网络,侵删)
  • 创建子系统
    1. 用鼠标框选你想要组合的模块和信号线。
    2. 右键点击选中的区域,选择 Create Subsystem from Selection
  • 封装子系统: 这是更高级的用法,你可以为子系统创建自定义的对话框、图标和参数,使其看起来像一个独立的“黑匣子”,右键点击子系统,选择 Mask -> Create Mask

2 使用 MATLAB 工作区

  • 从工作区导入数据:可以使用 From Workspace 模块导入 MATLAB 工作区中的变量作为信号源。
分享:
扫描分享到社交APP
上一篇
下一篇