主要内容

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

Advisor.getExclusion

从模型或排除文件中获取排除信息

说明

exclusionInfo = Advisor.getExclusion(modelName) 显示模型的全部排除信息。

示例

exclusionInfo = Advisor.getExclusion(modelName,filterType,entityIdentifier) 获取模型中实体(如模块、子系统或 Stateflow® 元素)的排除信息。排除项的类型由 filterType 参量指定。实体由 entityIdentifier 参量指定。

示例

示例

全部折叠

向模型中添加排除项,然后从模型中获取该排除项。

打开 slexAircraftExample 模型。

openExample('simulink_aerospace/AircraftLongitudinalFlightControlExample')

在 Simulink® 画布上,点击要从模型顾问检查中排除的实体。对于此示例,点击名为 uInport 模块。

Simulink canvas with "u" Inport block selected

通过向所选模块添加排除项来从模型顾问分析中排除该模块。在 MATLAB® 命令行窗口中,输入:

Advisor.addExclusion('slexAircraftExample','Block',gcb);
'Block' 指定排除项需要过滤掉 Simulink 模块,函数 gcb 返回所选模块的路径。有关详细信息,请参阅 gcb

输入以下代码,即可从模型中排除相关项:

exclusions = Advisor.getExclusion('slexAircraftExample');

您添加到 u Inport 模块的排除项是 exclusions 中的第一个也是唯一一个元素。

exclusions(1)
ans = 

  AdvisorFilterSpecification with properties:
     filteredItem: [1×1 advisor.filter.IFilter]
         metadata: [1×1 advisor.filter.Metadata]
             mode: Exclude
    commentThread: [1×0 advisor.filter.Metadata Sequence]
             type: Block
               id: 'slexAircraftExample:1'
           checks: [1×1 String Sequence]

或者,您可以通过右键点击 Simulink 画布并选择 模型顾问 > 打开模型顾问排除项编辑器,在模型顾问排除编辑器中查看排除项。

模型顾问排除项编辑器会显示一个表,其中有一行显示 u Inport 模块排除的相关信息。过滤器标识符列显示 entityIdentifier 参量指定的路径名称,过滤器类型列显示 filterType 参量指定的排除过滤器类型。理由检查 ID 列分别与 rationalechecks 参量关联。

Model Advisor Exclusion Editor with exclusion for "u" Inport block

使用 Advisor.addExclusion 函数从模型顾问分析中排除 Simulink 模块。

打开 slexAircraftExample 模型。

openExample('simulink_aerospace/AircraftLongitudinalFlightControlExample')

在 Simulink 画布上,点击要从模型顾问检查中排除的实体。对于此示例,点击名为 uInport 模块。

Simulink canvas with "u" Inport block selected

通过向所选模块添加排除项来从模型顾问分析中排除该模块。在 MATLAB 命令行窗口中,输入:

Advisor.addExclusion('slexAircraftExample','Block',gcb);
'Block' 指定排除项需要过滤掉 Simulink 模块,函数 gcb 返回所选模块的路径。有关详细信息,请参阅 gcb

输入以下命令,即可排除 u Inport 模块:

exclusion = Advisor.getExclusion('slexAircraftExample','Block',gcb)
exclusion = 

  AdvisorFilterSpecification with properties:
     filteredItem: [1×1 advisor.filter.IFilter]
         metadata: [1×1 advisor.filter.Metadata]
             mode: Exclude
    commentThread: [1×0 advisor.filter.Metadata Sequence]
             type: Block
               id: 'slexAircraftExample:1'
           checks: [1×1 String Sequence]

或者,您可以通过右键点击 Simulink 画布并选择 模型顾问 > 打开模型顾问排除项编辑器,在模型顾问排除编辑器中查看排除项。

模型顾问排除项编辑器会显示一个表,其中有一行显示 u Inport 模块排除的相关信息。过滤器标识符列显示 entityIdentifier 参量指定的路径名称,过滤器类型列显示 filterType 参量指定的排除过滤器类型。理由检查 ID 列分别与 rationalechecks 参量关联。

Model Advisor Exclusion Editor with exclusion for "u" Inport block

输入参数

全部折叠

要从中获取排除项的模型,指定为字符向量或字符串数组。

示例: Advisor.getExclusion('mymodel');

数据类型: char | string

要从中排除的实体类型,指定为以下值之一。

描述
BlockSimulink 模块
BlockType具有特定 BlockType 属性值的模块
Subsystem子系统内的模块
Library库模块实例
MaskType具有特定 MaskType 属性值的模块或子系统
StateflowSimulink 中的 Stateflow 模块
ChartStateflow 图中的每个实体
StateStateflow 状态
TransitionStateflow 转移
JunctionStateflow 结点
GraphicalFunctionStateflow 图形函数
MatlabFunction

Stateflow MATLAB 函数

SimulinkFunction

Stateflow Simulink 函数

TruthTableStateflow 真值表
SimulinkBasedStateStateflow 中基于 Simulink 的状态

示例: Advisor.getExclusion('mymodel', 'Block', 'mymodel/Constant')

数据类型: char | string

要从中排除的实体的标识符,指定为 BlockType 属性值、MaskType 属性值或路径名。

如果您将 filterType 参量指定为:

  • 然后指定一个 BlockType 值,再指定一个 BlockType 值。

    您可以使用函数 gcbget_param 获取当前选定的模块和模块类型。例如:

    myblock = gcb;
    blockType = get_param(myblock,'BlockType');
    Advisor.getExclusion('mymodel','BlockType',blockType);

  • 然后指定一个 MaskType 值,再指定一个 MaskType 值。

    您可以使用函数 gcbget_param 来获取当前选定的实体和掩码类型。例如:

    blockWithMask = gcb;
    maskType = get_param(blockWithMask,'MaskType');
    Advisor.getExclusion('mymodel','MaskType',maskType);

  • 如果存在其他 filterType 参量,则指定实体的路径名。

    您可以使用函数 gcb 获取实体的路径名。例如:

    myblock = gcb;
    Advisor.getExclusion('mymodel','Block',myblock)

示例: Advisor.getExclusion('mymodel', 'Block', 'mymodel/Constant')

数据类型: char | string

输出参量

全部折叠

排除信息,以 AdvisorFilterSpecification 对象或 advisor.filter.FilterSpecification Sequence 对象的形式返回。advisor.filter.FilterSpecification Sequence 包含每个排除项对应的 AdvisorFilterSpecification 对象。

注意

如果显示结果中的 checks 属性为 .*,则模型顾问会将该实体从所有检查中排除。

替代功能

模型顾问排除项编辑器

您还可以使用模型顾问排除编辑器查看排除项。要查看模型的排除信息,请在 Simulink 画布中右键点击,或右键点击实体并选择模型顾问 > 打开模型顾问排除编辑器。有关详细信息,请参阅从模型顾问检查分析中排除模块

版本历史记录

在 R2021a 中推出

全部展开