主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

仿真调速选项

将仿真时间与挂钟时间按指定比率缓慢仿真

说明

使用仿真节奏来减慢仿真速度,以帮助分析和与模型交互。当您调整仿真时,诸如 Scope 模块和仪表模块之类的可视化效果会以较慢的速度更新。启用仿真节奏后,您可以修改模型中的参数并观察模型变化的效果。

在软件以几毫秒的时钟时间计算一秒仿真时间结果的模型中,仿真节奏非常有用。

当您仿真模型参考层次结构时,仅应用顶层模型中指定的仿真步调选项。引用模型中指定的仿真步调选项将被忽略。

The Simulation Pacing Options dialog box

打开 仿真调速选项

在 Simulink® 工具条中的仿真调试建模选项卡上,点击运行按钮箭头。然后,选择仿真起搏

In the Simulink Toolstrip, the Run list is expanded with the pointer paused on the Simulation Pacing option.

示例

全部展开

打开模型 vdp

mdl = "vdp";
open_system(mdl)

The model vdp.

对模型进行仿真。

out = sim(mdl);

仿真只需几秒钟即可完成。

simMeta = getSimulationMetadata(out);
simMeta.TimingInfo.TotalElapsedWallTime
ans = 
4.4275

为了更好地观察仿真过程中信号值如何变化,启用仿真节奏。

  1. 在 Simulink® 工具条中的仿真选项卡上,点击运行按钮箭头,然后选择仿真节奏

  2. 在“仿真节奏选项”对话框中,选择启用节奏以减慢仿真

或者,使用 set_param 函数来启用仿真节奏。

set_param(mdl,"EnablePacing","on")

运行按钮图标上带有时钟注解,表示已启用仿真节奏。

要查看节奏仿真期间的信号 x1x2,请双击 Scope 模块。

再次对模型进行仿真。在仿真选项卡上,点击运行。或者,使用 sim 函数。

out = sim(mdl);

随着仿真的运行,Scope 模块会更新以显示信号 x1x2 的数据。

The Scope block displays data through the current simulation time of approximately 7 seconds.

在节奏仿真运行时,您可以修改模块参数、添加和删除端口值标签,以及导航模型层次结构,就像在没有节奏的仿真期间一样。您还可以启用或禁用仿真起搏并在仿真期间调整起搏率。

例如,运行另一个节奏仿真,并在仿真期间更改名为 Mu 的模块的 Gain 参数的值。对于此仿真,减少仿真时间与挂钟时间的比率,以确保您有足够的时间来修改参数并查看 Scope 模块中更改的效果。

  1. 在“仿真节奏选项”对话框中,拖动值滑块或在字段中输入一个值,将仿真节奏降低到每秒仿真时间的近似比率 0.35 秒。

  2. 在 Simulink 工具条中的仿真选项卡上,点击运行

  3. 双击名为 Mu 的模块。

  4. 使用封装模块的自定义模块参数对话框中的滑块来调整 Gain 参数的值。监控改变 Gain 参数对 Scope 模块中的信号 x1x2 的影响。

The Scope block displays the data for signals x1 and x2 through the current simulation time of approximately 11 seconds. The shape and amplitude of the signals change due to the changing gain value.

您可以使用仪表模块查看信号并调整模型中的变量和参数值,同时使用仿真仿真减慢仿真速度。使用带有仿真节奏的仪表模块可以让您直观地了解您的模型以及模型在您调整模型参数时如何响应变化。

示例模型使用仿真节奏将仿真节奏减慢到大约相当于挂钟时间,或者每挂钟一秒一个仿真秒。该模型有一个标有信号选择的按钮,您可以使用它来控制正弦波或锯齿波输入信号是否传递到输出,并使用 Dashboard Scope 模块进行可视化。

打开模型并运行仿真。在仿真过程中,按下并释放信号选择按钮并观察对输出信号的影响。

有关创建示例模型的更多信息,请参阅Control Merging Signals with the Push Button Block

相关示例

参数

全部展开

减慢仿真的选项,指定为 offon

编程用法

参数EnablePacing
值:"off" | "on"
默认值:"off"

仿真时间与挂钟时间的近似比率,指定为正标量。默认情况下,当您启用仿真节奏时,软件会将仿真减慢到每秒时钟时间大约一秒的仿真时间。

您可以使用值滑块或文本框来指定大致的起搏率。仿真时间与时钟时间的比率不限于值滑块中显示的范围。

依赖关系

要启用此参数,请选择启用起搏以减慢仿真

限制

快速加速器仿真运行不支持使用 set_param 函数调整 PacingRate 参数的值:

  • 通过使用 Simulink 编辑器

  • 通过发出 "start" 仿真命令

    set_param(mdl,SimulationCommand="start")

编程用法

参数PacingRate
类型:字符串 | 字符向量
值:正标量
默认值:"1"

提示

  • 当您通过点击前进后退逐步完成仿真时,仿真节奏不适用。当您完成步进并点击继续时,步进就会生效。

  • 由于仿真节奏会有意减慢仿真,因此在启用仿真节奏时不支持使用 Simulink Profiler 对模型进行分析。要使用 Simulink Profiler,请禁用仿真节奏。

  • 要指定和调整使用 Simulation 对象的仿真和 App DesignerApp 中仿真节奏选项,请使用 setModelParameter 函数。

版本历史记录

在 R2018a 中推出

另请参阅

工具

模块