Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

使用 Model Advisor Configuration Editor 来自定义模型顾问

Model Advisor Configuration Editor 概述

使用 Model Advisor Configuration Editor,您可以指定要用于编辑时检查的检查,以及模型顾问中包含的检查。此组织层次结构保存为配置文件,在启动模型顾问时会加载该配置文件。您可以使用 Model Advisor Configuration Editor 修改现有配置,创建新模型顾问配置,并指定默认配置。

Model Advisor Configuration Editor 使您能够通过以下方式灵活地自定义模型顾问分析以满足您组织的需要:

  • 查看所有可用的模型顾问检查。

  • 在模型顾问树中添加、删除和组织内置检查和文件夹。

  • 将自定义模型顾问检查集成到您的验证和确认工作流中。

  • 禁用和启用检查和文件夹。

  • 重命名检查和文件夹。

  • 指定在模型顾问分析期间标记一项检查时,是将该检查标记为警告还是失败。

  • 在加载模型顾问配置时隐藏关于缺失检查的警告。

Model Advisor Configuration Editor 包括:

  • Library 窗格 - 只读窗格,其中列出在配置中可用的所有检查和文件夹,由 By ProductBy Task 选项卡构成。要永久显示 Library 选项卡,请在工具条上点击 Show Library

  • Model Advisor 窗格 - 此窗格列出当前模型顾问配置中的检查和文件夹,可按以下条件进行筛选:

    • All checks” - 列出当前配置中包含的所有模型顾问检查

    • Edit Time supported checks” - 仅列出支持编辑时执行的模型顾问检查

  • Information 选项卡 - 此选项卡提供有关检查和文件夹的详细信息,如显示名称、检查标题和 ID、说明、许可证要求、子检查和输入参数。

使用 LibraryModel Advisor 窗格中的搜索功能来查找特定的检查和文件夹。

Model Advisor Configuration Editor

打开 Model Advisor Configuration Editor

在打开 Model Advisor Configuration Editor 之前,确认当前文件夹可写。如果文件夹不可写,当您启动 Model Advisor Configuration Editor 时会看到一条错误消息。

使用模型顾问 API 实现自定义检查或模型顾问自定义时,您必须首先更新 Simulink® 环境,以包括您的 sl_customization.m 文件。在 MATLAB® 命令行中输入

Advisor.Manager.refresh_customizations

使用以下方法之一打开 Model Advisor Configuration Editor:

  • 以编程方式 - 在 MATLAB 命令行中输入 Simulink.ModelAdvisor.openConfigUI

  • 从 Simulink Editor - 在 Modeling 选项卡中,选择 Model Advisor > Model Advisor Configuration Editor

  • 从模型顾问中 - 选择 Settings > Open Configuration Editor

当您打开 Model Advisor Configuration Editor 时,将显示模型顾问当前正在使用的配置文件。配置的文件名显示在窗口的顶部。确认您所看到的是正确的配置文件。要打开不同配置文件,请点击 Open 并浏览到您要查看的文件。

要创建新配置,请点击工具条中的 New 按钮。使用 Save As 重命名配置文件。模型顾问配置文件以 .json 格式保存。

指定默认配置文件

您可以使用 Model Advisor Configuration Editor 来指定默认配置,该配置在模型顾问打开时会自动加载。要设置默认配置,请在 Model Advisor Configuration Editor 中打开配置文件,然后点击工具条中的 Set As Default 按钮。

注意

如果您之前已指定默认配置,则可以使用 Clear default configuration setting 清除用于指定当前默认配置文件的设置。点击该按钮不会修改当前显示在 Model Advisor Configuration Editor 中的配置。如果未指定默认配置,模型顾问将使用系统管理员定义的标准配置。

如果未将配置文件指定为默认值,则在保存文件时,系统会提示您是否将该文件设置为默认配置。要使此文件成为默认配置,请点击 Yes

自定义模型顾问配置

您可以使用 Model Advisor Configuration Editor 自定义模型顾问配置树,包括添加与删除检查和文件夹,以及指定检查的执行顺序。您还可以禁用用户选择是否在分析中包括或排除检查的功能。您也可以使用 Model Advisor Configuration Editor 来定义检查的输入参数。

注意

Library 选项卡复制的检查将保留其默认参数设置。当它们被粘贴到您的自定义配置文件夹中时,每个检查旁边的框都处于未选中状态。

Model Advisor 选项卡的文件夹中复制或剪切的检查将保留其用户定义的参数设置。当一项检查包含在多个文件夹中时,您可以分别为每项检查指定不同参数。

组织层次结构

您可以通过使用以下方式在模型顾问配置树中自定义检查和文件夹的布局:

  • 使用 New Folder 创建文件夹。

  • 使用 CopyCutPaste 添加、复制和移动检查和文件夹。

  • 使用 Delete 删除检查和文件夹。

  • 使用 Move UpMove Down 移动配置树中检查或文件夹的位置。配置树中层次较高的文件夹和检查在分析中会先执行。

启用或禁用检查

您可以使用 Model Advisor Configuration Editor 来禁用模型顾问中检查和文件夹的复选框控件。禁用后,检查仍会列在模型顾问配置树中,但它会灰显,您无法在分析中添加或删除它。

Model Advisor 窗格中,右键点击文件夹或检查并选择 Disable。根据 Model Advisor Configuration Editor 中的复选框选择,模型顾问中会出现以下结果:

  • 如果在 Model Advisor Configuration Editor 中选中了检查旁边的框,则在模型顾问中,该检查会自动选中。由于您选择了 Disable,检查会灰显,您无法选择从分析中删除检查。

    如果检查旁边的框选中并且在 Model Advisor Configuration Editor 中应用了 Disable 选项,则在模型顾问中,该检查未被选中,并且您无法将其包括在分析中。

  • 如果在 Model Advisor Configuration Editor 中选中了文件夹旁边的框,则在模型顾问中,该文件夹内的检查将自动选中。由于您选择了 Disable,文件夹及其检查会灰显,并且您无法选择从分析中删除检查。

    如果文件夹旁边的框选中并且在 Model Advisor Configuration Editor 中应用了 Disable 选项,则在模型顾问中,该文件夹内的检查都不会被选中,并且您无法将其包括在分析中。

当某检查或文件夹被禁用时,您可以使用 Enable 选项来允许用户确定是否将检查包括在分析中。

注意

EnableDisable 会同时影响模型顾问用户界面和编辑时检查的分析中检查的执行。

指定检查自定义的参数

您可以使用 Model Advisor Configuration Editor 来自定义模型顾问检查,例如该检查的显示名称和输入参数。

Information 选项卡中,查看您可以为检查自定义的内容:

  • Display Name - 为检查提供新名称,该名称显示在模型顾问中。请注意,更改显示名称不会更改检查标题。

  • Check result when issues are flagged - 指定当检查在您的模型中标记为问题时,您在结果中将检查标记为警告还是失败。默认值为 “Warning”。选择 “Fail” 可将标记的检查在结果中标记为失败。

  • Input Parameters - 指定检查的其他特性和功能。模型顾问使用这些参数来进一步定义分析的重点。例如,您可以选择只包括子检查 jc_0736_b,并在模型顾问检查 Check indentation of code in Stateflow states 的分析中指定单字节空间的可接受数量。

隐藏缺失检查的警告消息

当加载模型顾问配置时,模型顾问会在发现检查缺失时自动对您发出警告。您可以使用 Model Advisor Configuration Editor 来隐藏此消息。选择 Model Advisor Configuration Editor 根节点,在 Information 选项卡中,选择 Suppress warning message for missing checks when loading configuration

您也可以通过在 MATLAB 命令行中输入以下命令,以编程方式隐藏模型顾问警告:

warning('off','Simulink:tools:MALoadConfigMissCorrespondCheck')

使用 Model Advisor Configuration Editor 创建自定义模型顾问配置

您可以使用 Model Advisor Configuration Editor 来组织模型顾问的层次结构,并指定检查分析中包含的检查。此示例说明如何创建新配置文件、为模型顾问和编辑时检查指定检查、定义检查参数以及将配置加载到模型顾问。

将模型复制到当前目录

将模型 AdvisorCustomizationExample.slx 及其支持文件(包括自定义模型顾问配置文件 demoConfiguration.json)复制到您的可写目录中。

1.在 MATLAB 中,将当前文件夹设置为可写目录。

2.在 MATLAB 命令提示符下输入以下命令。MATLAB 将示例文件复制到您的可写目录中。

copyfile(fullfile(matlabroot,'examples','slcheck','main','prepare_cust_chk_code.m'),...
    'prepare_cust_chk_code.m','f');
run('prepare_cust_chk_code.m');

打开模型并查看模型顾问配置

在此示例中,您将刷新模型顾问检查信息缓存,打开模型,并查看模型顾问配置。具体来说,您将查看配置对模型顾问用户界面和编辑时检查的影响。

1.要刷新模型顾问检查信息缓存,请在 MATLAB 命令提示符下键入:

Advisor.Manager.refresh_customizations();

2.打开示例模型。

open_system('AdvisorCustomizationExample.slx');

3.在 Modeling 选项卡上,打开 Model Advisor。您也可以通过在 MATLAB 命令提示符下键入以下命令来打开模型顾问:

modeladvisor('AdvisorCustomizationExample.slx');
Updating Model Advisor cache...
Model Advisor cache updated. For new customizations, to update the cache, use the Advisor.Manager.refresh_customizations method.

4.在 By Task 标签中,确保选中下列检查旁边的框:

  • Modeling Standards for MAB > Naming Conventions > Content > Check character usage in block names

  • Modeling Standards for MAB > Simulink > Diagram Appearance > Check whether block names appear below blocks

5.右键点击 Modeling Standards for MAB folder,然后选择 Run Selected Checks。在结果中,请注意这两项检查都带警告标记。有关使用模型顾问的详细信息,请参阅Run Model Advisor Checks and Review Results

6.返回 Simulink 模型编辑器。

7.在 Modeling 选项卡上,确认 Model Advisor > Edit-Time Checks 选项处于选中状态。注意 Logical Operator 模块会突出显示。点击该模块上方的警告图标,查看编辑时检查违规。有关详细信息,请参阅Check Model Compliance Using Edit-Time Checking

加载模型顾问配置

在此示例中,您将加载示例 AdvisorCustomizationExample.slx 附带的模型顾问配置文件。模型顾问配置文件可以是 .json(从 R2020a 开始)或 .mat(R2019b 及更早版本)格式。

1.要加载自定义配置文件,请选择 Settings > Load Configuration,然后选择您要使用的配置。对于此示例,从您之前指定的可写目录中选择 demoConfiguration.json。模型顾问会更新以反映新配置,并在窗口顶部显示配置文件名称。

2.浏览模型顾问,可以看到在此配置中只有三项检查可用。

3.要将配置文件 demoConfiguration.json 指定为默认的模型顾问配置,请选择 Settings > Set Current Configuration as Default

要清除默认配置设置,请选择 Settings > Clear default configuration settings。如果未指定默认配置,模型顾问将使用系统管理员定义的标准配置。

创建新模型顾问配置

在此示例中,您将创建名为 demo_Configuration_ISO26262_MAB.json 的自定义配置文件。您将使用此配置文件来定义您要通过使用模型顾问用户界面来执行的 MathWorks 咨询委员会 (MAB) 建模规范检查。

1.在模型 AdvisorCustomizationExample.slx 中,打开模型顾问并检查 demoConfiguration.json 是否为当前配置。

2.选择 Settings > Open configuration editor 以打开 Model Advisor Configuration Editor。

注意:当您打开 Model Advisor Configuration Editor 时,会自动显示模型顾问缓存中当前加载的文件。

3.点击 New。在 Model Advisor 窗格中,选择 All checks。这将指定您正在查看的配置适用于模型顾问用户界面中的所有检查。

4.突出显示 Model Advisor Configuration Editor 根文件夹,然后点击 New Folder。选择新文件夹,在 Information 选项卡中,将显示名称更改为 ISO 26262 Standard Checks。点击 Apply

5.在工具条中,选择 Show Library 以显示 Library 窗格。在 By Product 选项卡的搜索字段中,输入 ISO 26262

6.右键点击 Simulink Check > Modeling Standards > IEC 61508, IEC 62304, ISO 26262, EN 50128, and ISO 25119 Checks 文件夹,然后选择 Copy。右键点击您的自定义 ISO 26262 Standard Checks 文件夹,然后点击 Paste。确认文件夹和检查已复制到您的自定义配置文件夹。

注意:从 Library 窗格复制的检查将保留其默认参数设置。当它们被粘贴到您的自定义配置文件夹中时,每个检查旁边的框都处于未选中状态。

7.在 Model Advisor 窗格的 By Task 文件夹中,右键点击 Modeling Standards for MAB folder,然后选择 Cut。点击 Model Advisor Configuration Editor 根文件夹,然后点击 Paste。该文件夹已从 By Task 文件夹中删除,并作为新子文件夹添加到 Model Advisor Configuration Editor 根文件夹中。

注意:从 Model Advisor 窗格的文件夹中复制或剪切的检查将保留其用户定义的参数设置。当一项检查包含在多个文件夹中时,您可以分别为每项检查指定不同参数。

8.选择 ISO 26262 Standard Checks 文件夹,并使用 Move Down 按钮更改该文件夹在层次结构中的位置。模型顾问将首先执行 Modeling Standards for MAB 文件夹中的检查。

9.选择 By ProductBy Task 文件夹,然后选择 Delete

10.点击 Save As,将配置文件重命名为 demo_Configuration_ISO26262_MAB。在出现提示时,选择 Yes 将配置保存为默认配置。该文件自动以 .json 格式保存。

注意:如果您之前已指定默认配置,则可以使用 Clear default configuration 设置清除用于指定当前默认配置文件的标志。点击该按钮不会修改当前显示在 Model Advisor Configuration Editor 中的配置。

11.关闭 Model Advisor Configuration Editor 和 AdvisorCustomizationExample.slx 模型。

12.通过在 MATLAB 命令行中输入以下内容,刷新模型顾问缓存并打开模型 AdvisorCustomizationExample.slx

Advisor.Manager.refresh_customizations();
open_system('AdvisorCustomizationExample.slx');

13.打开模型顾问并检查配置文件 demo_Configuration_ISO26262_MAB.json 是否正在使用。模型顾问显示文件夹 Modeling Standards for MABISO 26262 Standard Checks

指定模型顾问检查

在此示例中,您将在自定义配置文件 demo_Configuration_ISO26262_MAB.json 中自定义检查,并查看您的自定义对 AdvisorCustomizationExample.slx 模型的模型顾问分析的影响。

1.在 Modeling 选项卡上,点击 Model Advisor > Model Advisor Configuration Editor,并且可根据需要打开 demo_Configuration_ISO26262_MAB.json

2.在 Model Advisor 窗格中,确认配置焦点设置为 All checks 选项。

3.清除 Model Advisor Configuration Editor 根节点文件夹旁边的复选框。(此步骤是可选步骤。但是,对于使用 Model Advisor Configuration Editor 指定的要在模型顾问中显示的检查,取消此复选框可以帮助您更轻松地查看检查结果。)

4.要允许您使用模型顾问用户界面指定要在模型顾问分析中包括哪些检查,请右键点击 Model Advisor Configuration Editor 根文件夹,然后点击 Enable。(注意:Enable 是默认设置。当没有任何检查被禁用时,此选项灰显。)

5.选中 Modeling Standards for MAB > Naming Conventions >Content > Check character usage in block name 旁边的复选框。

6.右键点击下列每项检查,然后选择 Disable

  • Modeling Standards for MAB > Naming Conventions > Content > Check character usage in block names

  • Modeling Standards for MAB > Naming Conventions > Content > Check length of subsystem name

7.点击 Modeling Standards for MAB > Simulink > Diagram Appearance > Check whether block names appear below blocks 检查,在 Information 选项卡中,对 Check result when issues are flagged 选项选择 Fail。点击 Apply

注意Check result when issues are flagged 选项的默认值为 Warning

8.点击 Save 保存配置。关闭 Model Advisor Configuration Editor 和模型。

9.通过在 MATLAB 命令行中输入以下内容,刷新模型顾问缓存并打开模型 AdvisorCustomizationExample.slx

Advisor.Manager.refresh_customizations();
open_system('AdvisorCustomizationExample.slx');

10.打开模型顾问并确认正在使用配置文件 demo_Configuration_ISO26262_MAB.json

观察下列检查,它们反映了您在 Model Advisor Configuration Editor 中选择的设置:

  • Modeling Standards for MAB > Naming Conventions > Content > Check character usage in block names check 灰显,且复选框处于选中状态。此检查将始终在模型顾问分析中执行,由于它灰显,因此您无法选择将其从分析中排除。

  • Modeling Standards for MAB > Naming Conventions > Content > Check length of subsystem names check 灰显,且复选框未处于选中状态。此检查将不会包含在分析中,并且由于它灰显,您无法选择它来包含在分析中。

11.选中 Modeling Standards for MAB > Simulink > Diagram Appearance > Check whether block names appear below blocks 旁边的复选框。

12.要运行模型顾问分析,请右键点击 Model Advisor Standards for MAB 根节点,然后选择 Run Selected Checks

13.点击以下检查并查看模型顾问分析结果:

  • Modeling Standards for MAB > Naming Conventions > Content > Check character usage in block names 检查标有警告图标,结果指定检查违规位于 Gain 模块中。

  • Modeling Standards for MAB > Naming Conventions > Content > Check length of subsystem 检查没有检查结果,因为无法选择它来进行分析。

  • Modeling Standards for MAB > Simulink > Diagram Appearance > Check whether block names appear below blocks 检查标有失败图标。此行为是有意为之;您使用 Model Advisor Configuration Editor 指定了此检查设置。

指定用于编辑时检查的检查

在此示例中,您将指定在 demo_Configuration_ISO26262_MAB.json 配置文件中可用的检查,以便在编辑时检查期间执行。

1.在模型 AdvisorCustomizationExample.slx 中,在 Modeling 选项卡上,确保 Model Advisor > Edit-Time Checks 选项处于选中状态。

2.在 Modeling 选项卡上,点击 Customize Edit-Time Checks。Model Advisor Configuration Editor 打开,且配置焦点选项设置为 Edit-Time supported checks。编辑时检查仅支持模型顾问检查的子集;Edit-Time supported checks 选项仅显示支持编辑时检查的检查。

3.在 Model Advisor 窗格中,选中 Modeling Standards for MAB > Simulink > Operation Blocks > Check icon shape of Logical Operator blocks 检查旁边的框。

4.点击 Save 保存配置。关闭 Model Advisor Configuration Editor。返回 AdvisorCustomizationExample.slx 模型。

5.在 Simulink Editor 中,请注意 Logical Operator 模块现在突出显示。打开违规项,然后点击 Fix。模型顾问将模块更改为矩形形状,并清除突出显示的编辑时检查警告。

另请参阅

|

相关主题