一、使用 Model Browser 浏览模型层次结构
二、使用查找功能来搜索模型元素
1、执行基本搜索
2、执行高级搜索
3、搜索属性值
4、指定搜索条件并对结果排序
三、使用 Model Explorer 进行搜索
在构建和修改模型时,了解模型结构并且能够找到特定的模型元素将很有帮助。Simulink Editor 工具可简化这些任务。使用适合模型大小和复杂度的工具。
使用模型浏览器来查看和浏览模型结构。可以使用模型浏览器在模型层次结构中导航来查找元素。这种方法适用于熟悉其结构的小型模型。
在 Modeling 选项卡上,点击 Find 以找到符合搜索条件的模型元素。可以在选定系统中进行搜索,(可选)并且使搜索范围包括该系统下的所有系统。还可以基于搜索条件缩小搜索结果范围。
使用 Model Explorer 基于高级条件搜索模型层次结构。可以使用它来搜索模型层次结构并搜索变量。Model Explorer 能够搜索并将更改一次性应用于多个模型元素。
使用工程范围搜索以集中搜索所有模型和支持文件。可以在模型文件、MATLAB 文件和其他工程文件(如 PDF 和 Microsoft®Word 文件)中查找匹配项。
使用 Model Browser 在具有树状结构的模型层次结构中导航。该浏览器可以帮助了解模型的组织结构并浏览系统内的系统。要显示 Model Browser,请在 Simulink Editor 中,在 View 选项卡中,选择 Model Browser>Show Model Browser。
如图所示:
可以通过点击 Hide/Show Model Browser 控件 来切换 Model Browser 显示。
如图所示:
在 Model Browser 中,指定是否包括链接到库或封装子系统的模块。点击 ,然后选择 Library Links 或 Systems with Mask Parameters。
如图所示:
通过点击Edit选项卡上的 Find 在 Simulink 模型中搜索。如图所示:
使用 Find 来查找、浏览到并选择与输入的搜索字符串相匹配的元素。搜索可以匹配元素中任何位置的字符串,例如名称和参数值。可以自定义搜索,以仅在某些类型的元素中进行搜索,或仅在以某种方式设置的特定参数中进行搜索。
默认搜索 | 可用搜索选项 |
---|---|
在当前系统中进行搜索 | 指定在模型层次结构中搜索当前系统及该系统下的所有系统。 |
在所有模型元素包括所有类型的 Simulink 和 Stateflow® 对象中进行搜索 | 缩小搜索范围,以仅包含您需要的元素,如模块、注释或信号。 |
在参数中进行搜索 | 指定在搜索中省略参数值。 |
不区分大小写,部分匹配 | 搜索完全匹配并使用正则表达式。 |
在引用模型中但不在链接模块或封装系统中进行搜索 | 您可以逐个关闭和打开这些选项。 |
在模型 sldemo_fuelsys
的当前层级中搜索包含数字 2
的所有模型元素。
注意:打开 Property Inspector 查看当前选择的属性和参数。在 View 选项卡中,点击 Property Inspector。
(1)打开模型 任意的模型
。
(2)在 Edit选项卡上,点击 Find。
(3)在搜索框中输入 2
,然后按 Enter 键。将会看到2个突出显示的模型元素。找到的第一个元素(版权注释)的突出显示更明显,表明它是当前匹配。
如图所示:
(4)要移动到下一个元素,点击搜索框的向下箭头。在此示例中,当前选定突出显示将移至 Constant 模块。模块名称不会出现在模型中。在 Property Inspector 中查看,会看到模块名称 Constant2。
(5)使用向上和向下箭头在找到的其余元素之间移动。
可以通过指定搜索条件来缩小搜索范围。
(1)在 Edit 选项卡上,点击 Find。
(2)输入搜索字符串。也可以稍后添加搜索字符串。
(3)点击 View Details。
如图所示:
(4)点击 Configure advanced search settings 按钮 。
如图所示:
(5)在 Advanced Search Settings 对话框中,对于要设置的每个条件,点击 Add property and value 按钮 。选择属性并输入每个条件的值。
如图所示:
(6)设置任何其他高级搜索设置,然后点击 OK。
(7)如果输入了搜索字符串,则将执行搜索。您也可以在指定条件后输入搜索字符串,或输入星号 (*
) 来搜索与高级条件匹配的任何模型元素。
注意:可以取消搜索并查看部分搜索结果。在 Finder 界面中,点击 Stop Search 按钮。如图所示:
使用搜索框,您可以指定要搜索的属性和值。以 Property:Value
的形式输入搜索字符串。例如,要搜索值为 throttle_sw
的所有 Constant value 参数,请键入 Value:throttle_sw
,然后按 Enter 键。要搜索所有 Constant 模块,请输入 BlockType:Constant
。要搜索出现在该模块描述中的文本,请使用 Description:textstring
的形式。
使用属性的编程名称进行搜索。要找到编程名称,请在 Property Inspector 中,将鼠标悬停在该属性上。
输入完整的属性名称,不区分大小写。不能对属性名称使用正则表达式或部分匹配。
默认情况下,值搜索不区分大小写,并且会查找部分匹配。使用高级搜索设置可使搜索区分大小写、指定逐字匹配或使用正则表达式搜索。
要搜索具有冒号的字符串并防止将冒号前的文本视为属性,采用以下方法之一:
在冒号前添加反斜杠进行转义,例如 Earth\: a planet
。
在表达式前后使用单引号或双引号,例如 'Earth: a planet'
或 "Earth: a planet"
。
指定搜索条件,并使用 Finder 界面对结果进行排序。搜索包含字符串 xxx的所有元素。然后,可以使用 Finder 界面来缩小结果范围。可以在搜索运行时与搜索结果进行交互。但是,仅在搜索完成后才能对结果进行排序。
注意:将 Model Browser 与 Finder 界面结合使用来选择搜索起始点。
(1)在 Edit 选项卡上,点击 Find。
(2)输入搜索字符串。也可以稍后添加搜索字符串。
(3)点击 View Details。
如图所示:
(4)要扩大搜索范围,在 Finder 界面中点击 Click to search in current system and below 按钮 。
如图所示:
(5)搜索包含字符串的所有元素。在搜索框中输入参数,然后按 Enter 键。
(6)仅搜索模块。在 Advanced Search Settings 对话框的 Object Type 下,清除 Stateflow 复选框。展开 Simulink 列表,并清除 Annotations 和 Signals 复选框。
(7)将搜索范围进一步缩小为仅查看其描述中包含单词 input
的模块。在 Property :Value 下,从属性列表中选择 BlockDescription
。在值框中,输入 input
,然后点击 Add property and value 按钮 。点击 OK。
(8)搜索会返回较少的模块。可以添加更多属性值以进一步缩小搜索范围。例如,可以指定要搜索的模块的类型。打开 Advanced Search Settings 对话框。在 Property :Value 下,添加另一个属性-值对组。将属性设置为 BlockType
,将值设置为 MultiPortSwitch
。点击 Add property and value 按钮,然后点击 OK。列表中会出现一个模块。
(9)清除高级搜索条件。点击 Configure advanced search settings 按钮上的箭头,然后选择 Clear Advanced Settings。
Model Explorer 用来使用高级方法来浏览和修改模型。使用 Model Explorer 可搜索:
工作区和数据字典中的变量
模型中的变量使用
某一类模块的实例
模块参数和参数值
可以合并搜索条件并迭代优化结果。在 Model Explorer 中搜索模型元素,在模型层次结构中选择的节点开始。可以搜索整个模型,搜索某个特定的系统,或者搜索层次结构中的某个系统及该系统下的所有系统。使用搜索结果,可以一次性将更改应用于多个元素。要修改算法模块参数,例如 Gain 模块的 Gain 参数。
如图所示:
点击Find Referenced Variables,如图所示: