Main Content

Knob

用刻度盘调节参数值

  • Knob block

库:
Simulink / Dashboard

描述

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

连接 Dashboard 模块

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

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

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

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

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

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

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

参数记录

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

示例

全部展开

在仿真期间,可以使用 Knob 模块将一个参数的值设置为几个值之一。例如,在模型 knobGain 中,Knob 模块连接到 Gain 模块的增益参数。Knob 模块配置为您可以在 020 之间选择增益值。

The Block Parameter dialog box for the Knob block

对模型进行仿真。要在仿真期间更改增益值,请旋转 Knob 模块。

Animation of the knobGain 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)

编程用法

要以编程方式将 Dashboard 模块连接到可调参数或变量,请使用 Simulink.HMI.ParamSourceInfo 对象。Simulink.HMI.ParamSourceInfo 对象包含四个属性。有些属性适用于将 Dashboard 模块连接到由值定义的参数,有些属性适用于将 Dashboard 模块连接到由变量定义的参数。并非所有字段都有连接值,因为一个给定的 Dashboard 模块可以连接到由值定义的参数或由变量定义的参数。

模块参数Binding
类型:Simulink.HMI.SignalSpecification
默认值:[]

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

编程用法

模块参数ScaleType
类型:字符串或字符向量
'Linear' | 'Log'
默认值:'Linear'

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

编程用法

要以编程方式设置 Minimum 参数,请使用 1×3 向量,其中依次包含 MinimumTick IntervalMaximum 参数的值。要使 Tick Interval 的值为 auto,请将向量中的 Tick Interval 位置留空,或指定 -1

模块参数Limits
类型:1x3 向量
默认值[0 -1 100]

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

编程用法

要以编程方式设置 Maximum 参数,请使用 1×3 向量,其中依次包含 MinimumTick IntervalMaximum 参数的值。要使 Tick Interval 的值为 auto,请将向量中的 Tick Interval 位置留空,或指定 -1

模块参数Limits
类型:1x3 向量
默认值[0 -1 100]

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

编程用法

要以编程方式设置 Tick Interval 参数,请使用 1×3 向量,其中依次包含 MinimumTick IntervalMaximum 参数的值。要使 Tick Interval 的值为 auto,请将向量中的 Tick Interval 位置留空,或指定 -1

模块参数Limits
类型:1x3 向量
默认值[0 -1 100]

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

编程用法

模块参数LabelPosition
类型:字符向量
'Top' | 'Bottom' | 'Hide'
默认值'Top'

模块特性

数据类型

double | half | integer | single

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

版本历史记录

在 R2015a 中推出

全部展开