主要内容

查看采样时间信息

R2026b

Simulink® 模型可以显示表示特定采样时间的颜色编码和注解。您可以显示彩色的模块和信号线。注解是模块上输出端口上的标记,颜色为黑色:

  1. 要启用颜色,请在 Simulink 模型窗口中,在调试选项卡上,选择叠加信息 > 颜色。

  2. 要启用注解,请在调试选项卡上,选择叠加信息 > 文本。

同时选择颜色和文本将同时显示颜色和注解。无论您选择什么,Simulink 都会自动执行更新模型。

要关闭颜色和注解,请执行以下操作:

  1. 在调试选项卡上,选择叠加信息 > 颜色以禁用颜色。

  2. 在调试选项卡上,选择叠加信息 > 文本以禁用注解。

当您更改这些设置时,软件会自动执行更新图。

您的“采样时间显示”选项直接控制“时间图例”上显示的信息。

注意

指定采样时间信息表中的离散采样时间代表一种特殊情况。五种颜色表示前五个最快的离散速率。第六种颜色(橙色)代表比第五个离散速率慢的所有速率。您可以通过查看各信号线上的注解来区分这些较慢的速率。

使用“时间图例”检查采样时间

您可以查看单个或多个模型的时间图例。此外,您还可以阻止图例在您选择采样时间菜单中的选项时自动打开。

为了帮助您解释模块图,时间图例包含模型中每个采样时间的颜色、注解和值。要查看图例,请执行下列操作:

  1. 在 Simulink 模型窗口中,在建模选项卡上,点击更新模型。

  2. 在调试选项卡上,选择叠加信息 > 图例或按 Ctrl+J。

    您也可以使用 Simulink 编辑器左侧资源管理器栏上的快捷方式。

三种颜色指示三种最快的离散采样时间。第三种颜色(蓝色)表示比第三个离散采样时间慢的所有速率。采样时间颜色可以自定义以包含表示更多离散采样时间的颜色。

此外,当您选择颜色或文本时,软件默认更新模型图并打开图例。图例内容反映您的选择。如果启用了颜色,图例将显示采样时间的颜色和值。如果您启用了注解,图例上将显示注解。

图例显示模型中存在的采样时间,按采样时间的类型分类。为了避免杂乱,计时信息以行显示,这些行可以展开以显示有关每个特定采样时间的详细信息。您可以展开每行,以了解特定采样时间是如何引入到模型中的。采样时间的复选框还允许您选择要显示的特定采样时间。时间图例还显示用于分析离散时间线的基本速率和标量乘数。

对于离散采样时间,时间/频率切换按钮允许您选择乘数信息的格式。所有离散采样时间都合并到同一行中,例如,周期性分区、离散导出函数等。触发采样时间速率现在可视化为其源采样时间,说明驱动触发器的采样率。非周期性分区、重置、初始化、重新初始化和终止采样时间的注解不使用其事件名称作为注解,而是具有它们自己的简明注解。

时间图例允许您突出显示作为采样时间来源的模型中的模块和信号。展开一个采样时间行,然后点击超链接以导航到模型中的模块。

注意

时间图例显示模型中的所有采样时间,包括没有与任何模块关联的采样时间。例如,如果定步长为 0.1,而所有模块的采样时间都是 0.2,则图例上将出现两个采样时间(0.1 和 0.2)。

当您更改采样时间可视化选项或在编译模型后打开时间图例时,您不需要更新模型。 (自 R2023b 起)

如果您不希望在选择采样时间显示时查看图例,请执行以下操作:

  1. 在 Simulink 工具条中,在建模选项卡上,选择环境 > Simulink 设置。

  2. 在常规窗格中,清除当采样时间显示更改时打开时间图例,然后点击应用。

跨模型层次结构的采样时间可视化

在处理模型引用层次结构时,Simulink 提供层次结构同步的采样时间可视化。这种同步可确保采样时间颜色、注解和时间图例信息在整个模型层次结构中保持一致,因此您可以在不单独重新配置每个引用模型的情况下解释时间行为。

顶层模型确定可视化

顶层模型 mDiscrete 为整个层次结构定义采样时间可视化。当您在任何模型窗口中切换颜色、文本或时间图例时,Simulink 会更新顶层模型的可视化设置并自动刷新整个层次结构。这会确保在跨模型边界检查速率行为时使用单一、一致的时序上下文。

如下所示,采样时间颜色、注解和速率标签源于此模型的编译速率,并且引用模型在模型层次结构的上下文中打开时会继承这些可视化设置。

Top model mDiscrete with sample time colors, annotations, and Timing Legend showing base rate and discrete rate multipliers.

采样时间映射

引用模型可能包含显式调度的采样时间或从顶层模型继承采样时间。在编译期间,Simulink 分析顶层模型和引用模型之间的采样时间映射。这些映射确定每个引用模型速率如何对应于顶层模型速率,并确保使用顶层模型的时序上下文显示引用模型。

时间图例包含显示源小组件,后者指示显示的采样时间颜色是来自顶层模型还是引用模型。

引用模型可以通过两种方式查看,具体取决于其打开方式。

在上下文中打开.  要在当前模型层次结构的上下文中打开引用模型,请双击对应的 Model block。或者,右键点击 Model 模块并选择在新选项卡中打开或在新窗口中打开。

以这种方式打开时,引用模型会自动继承顶层模型的采样时间颜色和注解。引用模型显示相同的颜色和速率标签,其速率派生自顶层模型的基本速率。通过这种同步视图,更容易查看引用模型在整个模型层次结构的上下文中是如何执行的。

在模型层次结构外部打开.  要在当前模型层次结构外部打开引用模型,请在 Model 模块图标上点击作为顶层模型打开标记。或者,右键点击 Model 模块,然后选择作为顶层模型打开。

当 msamp_basic 作为顶层模型打开时,Simulink 会独立编译它。采样时间颜色和注解必须在此新窗口中显式切换。时间图例反映 msamp_basic 的内在基本速率和速率顺序。在此视图中,速率标签和颜色不再映射到 mDiscrete 的时序上下文。

当同步不适用时

当软件能够以有意义的方式映射顶层模型和引用模型之间的采样时间时,支持同步采样时间可视化。当软件无法映射执行速度时,引用模型会显示其自身的时序上下文。在这种情况下,采样时间颜色、注解和时间图例可能与顶层模型中的不同。

在以下示例中,顶层模型使用周期性事件端口调度引用模型。Model 模块使用顶层模型的时序上下文显示,并显示为速率 D2。

当您打开引用模型时,软件使用其自身的时间序列上下文而不是顶层模型的时序上下文来显示该模型。显示源小组件指示采样时间颜色、注解和时间图例派生自引用模型。

自定义采样时间颜色

您可以使用 simulink.sampletimecolors.Palette 对象及其函数来自定义采样时间调色板。您可以为模型中所有类型的采样时间创建自定义调色板对象。然后,您可以将此调色板用于当前 MATLAB® 会话,或将其作为所有 MATLAB 会话的默认调色板。

创建自定义采样时间调色板以用作默认值

  1. 创建名为 myFirstPalette 的自定义调色板对象。

    pltObj = simulink.sampletimecolors.Palette("myFirstPalette");
    Palette with properties:
     
                                      Name: "myFirstPalette"
                ContinuousSampleTimeColors: [0 0 0]
          FixedInMinorStepSampleTimeColors: [0.4902 0.4902 0.4902]
        ContinuousVariableSampleTimeColors: [0.4902 0.4902 0.4902]
                  DiscreteSampleTimeColors: [3x3 double]
              AsynchronousSampleTimeColors: [0.7529 0.3608 0.9843]
                  AperiodicPartitionColors: [0.7529 0.3608 0.9843]
           InitializeEventSampleTimeColors: [0.7961 0.5176 0.3647]
            TerminateEventSampleTimeColors: [0.7961 0.5176 0.3647]
                ResetEventSampleTimeColors: [0.7961 0.5176 0.3647]
         ReinitializeEventSampleTimeColors: [0.7961 0.5176 0.3647]
                  ConstantSampleTimeColors: [0.8196 0.0157 0.5451]
                 MultirateSampleTimeColors: [0.5451 0.4000 0.0235]
                     UnionSampleTimeColors: [0.4039 0.2980 0.0235]

  2. 使用 RGB 值自定义连续采样时间的颜色。

    pltObj.ContinuousSampleTimeColors = [0.9 0.2 0.4];

  3. 自定义离散采样时间的颜色。此步骤显示设置采样时间颜色的不同方法。

    • 使用十六进制代码自定义颜色。

      pltObj.DiscreteSampleTimeColors = ["#123456", "#523467", "#204973"];

    • 使用预定义的 MATLAB 颜色图,例如 parula。有关详细信息,请参阅使用颜色图更改颜色方案。

      pltObj.DiscreteSampleTimeColors = parula(3);

      采样时间颜色设置为 parula 的模型:

      Image of an updated and compiled model that show the sample time color palette set to parula.

    • 使用预配置的内置经典调色板自定义采样时间颜色:

      simulink.sampletimecolors.applyPalette("classic (built in)")

      采样时间颜色设置为 classic (built in) 的模型:

      Image of an updated and compiled model that show the sample time color palette set to classic (built in).

    • 使用预配置的内置色盲调色板自定义采样时间颜色:

      simulink.sampletimecolors.applyPalette("color blind accessible (built in)")

      采样时间颜色设置为 color blind accessible (built in) 的模型:

      Image of an updated and compiled model that show the sample time color palette set to color blind (built in).

  4. 将新自定义调色板设置为当前和所有将来的 MATLAB 会话的默认调色板。

    simulink.sampletimecolors.applyPalette(pltObj,"UserDefault",true)
    要在您的 Simulink 模型中查看新采样时间调色板,请按 Ctrl+D 键更新模型。

检查整个模型中的采样时间

模型数据编辑器在可排序、可搜索的表中显示关于模型数据的信息,如信号、参数和状态。要打开模型数据编辑器,请在建模选项卡上,点击模型数据编辑器。采样时间列显示为模型中每个信号指定的采样时间。在更新模块图后,该列还会显示每个信号使用的特定采样。例如,对于指定继承采样时间的信号,该列显示 -1。您也可以使用此列指定采样时间。

有关详细信息,请参阅模型数据编辑器。

另请参阅

对象

函数

主题