主要内容

使用Model Explorer编辑和管理工作区变量

要学习用于创建、编辑和管理工作区变量的所有技术,请参见创建、编辑和管理工作区变量

找到模型或块使用的变量

在模型资源管理器中,您可以获得一个模型或块使用的变量列表。下面的方法是获得变量列表的一种方法:

  1. 在里面内容窗格,右键单击要为其找到它使用的变量的块。

  2. 选择找到引用变量菜单项。

Model Explorer返回类似的结果:

为了提高性能,Model Explorer使用来自模型最后编译版本的缓存信息。如果您想重新编译模型,可以手动进行,或者在模型资源管理器中设置更新图领域是的然后重复搜索。

你也可以使用以下方法来查找模型或块使用的变量:

  • 在模型探险家中,在模型层次结构窗格中,右键单击块或模型节点并选择找到引用变量菜单项。

  • 在Model Explorer中,在搜索栏中,使用引用变量搜索类型的选择。

  • 在仿真软件金宝app®编辑器,右键单击块、子系统,或在画布中选择找到引用变量菜单项。单击画布将返回整个模型的结果。

金宝appSimulink.findVars函数提供了其他选项,用于返回Model Explorer或Simulink Editor中不可用的关于工作区变量的信息。金宝app

有关查找引用变量时的限制的信息,请参阅金宝appSimulink.findVars文档。

使用返回变量集

对于返回变量集合中的变量,您可以找到使用该变量的块(有关详细信息,请参见查找使用特定变量的块).此外,您还可以从返回的变量集中导出变量。有关详细信息,请参见出口工作空间变量

查找使用特定变量的块

此示例显示如何使用Model Explorer获取使用特定工作区变量的块列表。

  1. 打开模型f14

  2. 模型浏览器打开。

  3. 在里面模型层次结构窗格中,选择基本工作空间节点。

  4. 在里面内容窗格中,右键单击该变量MQ.并选择找到所使用的地方

  5. 在里面选择一个系统对话框,选择f14

  6. 清除搜索引用的模型复选框,以来f14不引用任何模型,并单击好的

    搜索引用的模型选中后,您可以在模型引用层次结构中使用目标变量的任何地方找到它。然而,在整个层次结构中找到目标变量可能需要更多的时间。

    更新图以包括最近的更改复选框在默认情况下被清除,以避免不必要的模型图更新,从而节省时间。选择复选框以通过强制更新关系图来合并您最近对模型所做的更改。

  7. 点击好的以响应更新模型图的消息。

    因为您刚刚打开了模型,所以在找到变量之前必须至少更新一次模型图。你可以选择更新图以包括最近的更改在里面选择一个系统要强制初始图更新的对话框,尽管您通常在执行多个搜索时更改模型时通常使用该选项找到所使用的地方

  8. Model Explorer显示搜索结果:

    其值包括的属性列MQ.的块参数MQ.变量。如果这些属性列不在视图中,则Model Explorer将它们添加到搜索结果显示的末尾。

您还可以通过使用其中一个方法找到使用特定变量的块:

  • 在搜索栏中,选择用于可变用法搜索类型的选择。

  • 在里面搜索结果窗格中,右键单击变量并选择找到所使用的地方菜单项。

  • 在模型数据编辑器中,右键单击工作区变量并选择找到所使用的地方菜单项。

查找未使用的工作区变量

您可以使用Model Explorer获取在工作区中定义但未由模型或块使用的变量列表。获得变量列表的一种方法是右键单击工作区名称模型层次结构窗格并选择发现未使用的变量菜单项。例如:

  1. 打开f14模型。

  2. 打开Model Explorer。

  3. 在“搜索”工具栏中,设置更新图领域是的

  4. 在里面模型层次结构窗格中,右键单击基本工作空间节点,并选择发现未使用的变量菜单项。

  5. 模型资源管理器显示类似这样的输出:

    金宝appSimulink.findVars函数提供了其他选项,用于返回Model Explorer或Simulink Editor中不可用的未使用工作区变量的信息。金宝app

编辑工作空间变量

在模型资源管理器中,您可以使用变量编辑器来编辑MATLAB中的变量®基本工作空间或模型工作空间。变量编辑器可用于编辑大型数组和结构。

打开变量编辑器:

  1. 在里面内容窗格中,选择该变量。

  2. 在Dialog窗格(右窗格)中,单击按钮接近变量的值。

  3. 在菜单中,选择打开变量编辑器

或者,从内容窗格而不是Dialog窗格,通过单击适当的单元格开始编辑变量的值。按钮出现在单元格中。

具有三个或多个维的数组的表示

当变量的值或金宝app仿真软件。参数对象是具有三维或更多维的数组价值列将数组显示为表达式,其中包含对重塑函数。

要编辑数组中的值,请修改重塑调用,它包含序列化vector中的所有数组值。当沿着维度添加或删除元素时,还必须更正表示修改后维度长度的参数。

重命名变量

这个例子展示了如何使用模型资源管理器在Simulink模型中块使用变量的任何地方重命名变量。金宝app

  1. 打开防抱死制动系统的建模示例模型sldemo_absbrake.模型将数据加载到MATLAB基础工作空间。

  2. 模型浏览器打开。

  3. 在里面模型层次结构窗格中,选择基本工作区。

  4. 在里面内容窗格,右键单击基本工作区变量并选择重命名所有

  5. 在里面选择一个系统对话框中,单击模型的名称sldemo_absbrake选择它作为重命名变量的上下文

  6. 清除搜索引用的模型复选框,然后单击好的.该模型sldemo_absbrake参考模型sldemo_wheelspeed_absbrake, 但只有sldemo_absbrake使用变量

    搜索引用的模型选中,您可以在模型引用层次结构中使用它的目标变量重命名目标变量。但是,在整个层次结构中重命名目标变量可能需要更多时间。

    更新图以包括最近的更改复选框在默认情况下被清除,以避免不必要的模型图更新,从而节省时间。选择复选框以通过强制更新关系图来合并您最近对模型所做的更改。

  7. 点击好的以响应更新模型图的消息。

    因为您刚刚打开了模型,所以在重命名变量之前必须至少更新一次模型图。你可以选择更新图以包括最近的更改在里面选择一个系统对话框强制初始关系图更新,不过当您在执行多个变量重命名操作时,通常会使用该选项。

  8. 在里面重命名所有对话框中,键入变量的新名称新名字框,然后单击好的

    的超链接相应的块部分的重命名所有对话框以查看目标方块。

请注意

您只能重命名函数的变量金宝appSimulink.findVars金宝app支持。

有关重命名文件的帮助,请使用项目。看到当重命名,删除,或删除文件时自动更新

比较重复的工作区变量

您可以比较存储在相同工作空间或不同工作空间中的重复变量。例如,您可以将存储在基本工作空间中的变量与存储在模型工作空间中的重复变量进行比较。

  1. 打开模型和模型资源管理器。

  2. 在搜索工具栏中,搜索重复的变量。选择具有重复条目的行。然后,右键单击并选择比较选择

  3. 回顾其中的差异比较观众

出口工作空间变量

您可以导出(保存)Model Explorer中列出的一组变量,导出基本或模型工作区中的单个变量或所有变量。

方法返回的变量集是一种可能的工作流程找到引用变量选择或金宝appSimulink.findVars函数。有关详细信息,请参见找到模型或块使用的变量

请注意

导出的所有变量必须来自同一个工作区。

要将Model Explorer中的工作区中的所有变量导出到MATLAB代码文件或MAT文件:

  1. 选择要导出的变量。

    1. 要选择工作区中的所有变量,右键单击工作区节点(例如,基本工作空间),并选择出口菜单项。例如:

    2. 要选择单个变量,请在内容窗格中,选择要导出的变量。右键单击突出显示的变量之一并选择出口选择菜单项。

    如果内容窗格中有按属性分组的数据,选择组中的顶行并不选择该组中的所有变量。分组数据的详细信息请参见模型浏览器

  2. 指定是否在MATLAB代码文件或MAT文件中保存变量。

    MATLAB代码文件格式更容易阅读,可编辑,并支持版本控制。金宝appmat文件格式为二进制,具有性能优势。

    如果指定MATLAB代码文件格式,Model Explorer可能会创建一个相关的mat文件,反映MATLAB代码文件的名称,但扩展名为.mat而不是.米

  3. 指定文件的名称和位置。

  4. 如果文件已经存在,Model Explorer会显示一个对话框,要求您选择以下选项之一:

    • 覆盖整个文件

      • 用所选变量替换目标文件中的所有变量,这些变量按字母顺序存储。

    • 更新文件中存在的变量,并向文件追加新变量

      • 在适当的地方更新现有变量并追加新变量。

    • 仅更新文件中存在的变量

      • 更新现有变量,但不添加任何新变量,从而消除了潜在的额外变量。

要永久存储模型的工作空间变量,请创建一个数据字典,而不是使用基本工作空间。看到什么是数据字典?

导入工作空间变量

您可以使用model Explorer将一组变量从文件导入(加载)到基本工作空间或模型工作空间。当您将变量导入到工作区时,Model Explorer将覆盖现有变量并添加任何新变量。

将变量导入工作区:

  1. 在里面模型层次结构窗格,右键单击要导入变量的工作区。

  2. 选择进口菜单项。

  3. 在“从文件导入”对话框中,为要导入的变量选择一个MATLAB代码文件或mat文件。

    请注意

    如果您导入MATLAB代码文件,则Simulink还导入关联的MAT文件。金宝app

另请参阅

|

相关话题