主要内容

Slider

用滑动标尺调整参数值

  • Slider block

库:
Simulink / Dashboard

描述

在仿真过程中,Slider 模块调整连接的模块参数的值。例如,您可以将 Slider 模块连接到模型中的 Gain 模块,并在仿真过程中调整其值。您可以修改 Slider 模块的刻度范围以适合您的数据。将 Slider 模块与其他 Dashboard 模块结合使用,可以创建交互式仪表板来控制您的模型。

连接 Dashboard 模块

Dashboard 模块不使用端口来连接到模型元素。要连接 Dashboard 模块,请使用连接模式。要在未连接的模块上进入连接模式,请将鼠标在要连接的模块上暂停并点击连接按钮 。要在已连接的模块上进入连接模式,请选择该模块,在显示的省略号 (…) 上暂停,然后在展开的操作菜单中点击连接按钮。

要将控制模块连接到模型中的参数或更改控制模块的连接,请进入连接模式。选择要连接到其参数的模块。从出现的列表中,选择要连接的参数。然后,请在 Dashboard 模块上悬停并点击完成连接按钮

在更新模型图之前,控制模块无法连接到其值为变量的参数。要在仿真未运行时连接到其值为变量的参数或修改作为所连接的参数值的变量值,请按 Ctrl+D 更新模型图。

您可以连接到具有标量值的参数,或连接到矩阵或结构体的元素。有关详细信息,请参阅Connect Dashboard Blocks to Simulink Model

您还可以将 Dashboard 模块连接到 Stateflow® 图。有关详细信息,请参阅Connect Dashboard Blocks to Stateflow (Stateflow)

此动画说明如何将 Slider 模块连接到您的模型。

An unconnected Slider block connects to the Gain parameter of a Gain block.

参数记录

连接到 Dashboard 模块的可调参数数据会记录到仿真数据检查器,您可以在其中查看参数值以及记录的信号数据。您可以通过使用 UI 或 Simulink.sdi.exportRun 函数从仿真数据检查器导出参数数据来访问 MATLAB® 工作区中记录的参数数据。有关使用仿真数据检查器 UI 导出数据的详细信息,请参阅Export Data From Simulation Data Inspector to Workspace or File。参数数据存储在 Simulink.SimulationData.Parameter 对象中,可作为导出的 Simulink.SimulationData.Dataset 中的元素来访问。

示例

全部展开

在仿真之前或仿真期间,您可以使用 Slider 模块更改所连接模块参数的值。例如,在模型 sliderGain 中,Slider 模块连接到 Gain 模块的增益参数。

对模型进行仿真。要在仿真期间更改增益值,请使用 Slider 模块。

Animation of the sliderGain model during simulation

扩展示例

限制

  • 除了 Dashboard Scope 模块和 Display 模块之外,Dashboard 模块只能连接到实数标量信号。

  • 您不能在“模块参数”对话框中使用连接表将 Dashboard 模块连接到已注释掉的模块。使用连接模式将 Dashboard 模块连接到带注释的模块时,Dashboard 模块在您取消注释模块之前不会显示连接的值。

  • Dashboard 模块无法连接到引用模型中的模型元素。

  • 在仿真模型层次结构时,引用模型内的 Dashboard 模块不会更新。

  • Dashboard 模块不支持快速加速仿真。

  • 当您在仿真期间将 Dashboard 模块连接到变量或参数时,该变量或参数的数据不会记录到仿真数据检查器中。要将变量和参数数据记录到仿真数据检查器,请在仿真之前将 Dashboard 模块连接到该变量或参数。

  • 当您将默认参数行为设置为内联并在外部模式下对模型进行仿真时,Dashboard 模块看起来像是更改了参数和变量值。但是,更改不会传播到仿真。例如,Gain 模块显示使用 Dashboard 模块对增益参数进行的更改,但仿真中使用的增益值不变。

参数

全部展开

此模块是控制模块 - 即控制参数值的模块。将该模块连接到您要控制其值的参数。您可以连接到具有标量值的参数,或连接到矩阵的元素。

Dashboard 模块不使用端口来连接到模型元素。要连接 Dashboard 模块,请使用连接模式、Simulink® 工具条或“模块参数”对话框中的连接表。有关信息,请参阅Connect Dashboard Blocks to Simulink Model

要使用连接表连接到具有标量值的参数,请执行以下操作:

  1. 选择模块。

  2. 在属性检查器中,在参数选项卡上,点击连接更改

  3. 选择要连接其参数值的模块。

  4. 在出现的表中,选择该参数。

  5. 点击应用

要连接到其值指定为变量的参数或更改已连接变量的值,您必须先更新模型图。要更新模型图,请按 Ctrl+D

您还可以将 Dashboard 模块连接到 Stateflow 图。有关详细信息,请参阅Connect Dashboard Blocks to Stateflow (Stateflow)

编程用法

您可以通过编程方式将控制模块连接到参数。定义一个表示该参数的 Simulink.HMI.ParamSourceInfo 对象。然后,将 Binding 参数的值设置为该对象。要设置 Binding 参数的值,请使用 set_param 函数。

例如,假设名为 vdp 的模型包含名为 myButtonPush Button 模块和名为 x1Integrator 模块。要将 Push Button 模块连接到 Integrator 模块的 Initial Condition 参数,请使用以下代码。

blockPath1 = "vdp/myButton";
blockPath2 = "vdp/x1";

myObj = Simulink.HMI.ParamSourceInfo;
myObj.BlockPath = Simulink.BlockPath(blockPath2);
myObj.ParamName = 'InitialCondition';

set_param(blockPath1,Binding=myObj)
参数: Binding
值: Simulink.HMI.ParamSourceInfo object

示例: set_param(gcb,Binding=myObj)

模块上显示的刻度的类型。线性指定线性刻度,Log 指定对数刻度。

编程用法

要以编程方式设置模块参数值,请使用 set_param 函数。

参数: ScaleType
值: 'Linear' (默认) | "Linear" | "Log"

示例: set_param(gcb,ScaleType="Log")

有限双精度实数标量值,用于指定标度的最小刻度线值。最小值必须小于最大值参数的值。

编程用法

要以编程方式设置模块参数值,请使用 set_param 函数。

Limits 参数的值指定为 [min,int,max] 形式的向量。

  • min 是刻度的 Minimum 刻度线值。

  • int 是刻度的 Tick Interval。要使 Tick Interval 的值为 auto,请将向量中的 Tick Interval 位置留空,或指定 -1

  • max 是刻度的 Maximum 刻度线值。

参数: Limits
值: [0 -1 100] (默认) | [min,int,max]

示例: set_param(gcb,Limits=[-50 -1 100])

有限双精度实数标量值,用于指定标度的最大刻度线值。最大值必须大于最小值参数的值。

编程用法

要以编程方式设置模块参数值,请使用 set_param 函数。

Limits 参数的值指定为 [min,int,max] 形式的向量。

  • min 是刻度的 Minimum 刻度线值。

  • int 是刻度的 Tick Interval。要使 Tick Interval 的值为 auto,请将向量中的 Tick Interval 位置留空,或指定 -1

  • max 是刻度的 Maximum 刻度线值。

参数: Limits
值: [0 -1 100] (默认) | [min,int,max]

示例: set_param(gcb,Limits=[0 -1 50])

有限实数正整数标量值,用于指定标度上主刻度线的间隔。当设置为 auto 时,模块会根据最大值最小值参数的值自动调整刻度间隔。

编程用法

要以编程方式设置模块参数值,请使用 set_param 函数。

Limits 参数的值指定为 [min,int,max] 形式的向量。

  • min 是刻度的 Minimum 刻度线值。

  • int 是刻度的 Tick Interval。要使 Tick Interval 的值为 auto,请将向量中的 Tick Interval 位置留空,或指定 -1

  • max 是刻度的 Maximum 刻度线值。

参数: Limits
值: [0 -1 100] (默认) | [min,int,max]

示例: set_param(gcb,Limits=[0 5 100])

模块标签的位置。当模块连接到模型中的元素时,标签是所连接的元素的名称。

编程用法

要以编程方式设置模块参数值,请使用 set_param 函数。

参数: LabelPosition
值: 'Top' (默认) | "Top" | "Bottom" | "Hide"

示例: set_param(gcb,LabelPosition="Bottom")

模块特性

数据类型

double | half | integer | single

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

全部展开

版本历史记录

在 R2015b 中推出

全部展开