Main Content

什么是数据字典?

数据字典是存储模型相关数据的持久性存储库。您也可以使用基础工作区存储您的模型在仿真过程中使用的设计数据。但数据字典提供的功能更多一些。

字典可以存储定义参数和信号的设计数据,还可以包括定义模型行为的数据。字典不存储仿真数据,即模型仿真时进出 InportOutport 模块的输入或输出。

数据字典与 MATLAB® 字典数据类型没有关联,后者是一种将每个键与对应的值相关联的数据结构体。有关 MATLAB 字典数据类型的信息,请参阅字典

字典的功能

字典的功能优势
字典作为数据源字典中的条目都是持久性的。您不需要在开发过程中重新加载数据。
显式数据-模型链接您可以将数据字典定义为模型的数据源。在模型仿真和代码生成过程中,模型将从数据字典中检索数据。
版本处理

您可以:

  • 将包含以前版本 Simulink® 中保存的模型数据的数据字典连接到您的模型。

  • 继续使用先前版本的 Simulink 中保存的模型的数据字典,并在 Simulink 的更高版本中保存模型的各个版本。

  • 导出(保存)数据字典,以在使用先前版本的 Simulink 创建的模型中使用。

更改跟踪当您修改条目时,其状态将更新到字典中,并存储为可跟踪的元数据。字典还跟踪记录修改者和修改时间。您还可以查看或还原更改。
条目比较比较两个字典中各条目的值。
将数据分组为多个引用字典对数据项进行分区并组织为引用字典。
模型-数据依存关系了解各条目在模型中如何使用。
修复缺少变量的选项

对于编译时报告为未定义的变量:

  • 如果变量不存在,请创建一个新变量或加载一个文件。

  • 如果变量已删除,请撤消删除或创建一个新变量。

  • 如果变量已重命名,请重命名对该变量的引用,或通过复制重命名的变量来创建一个新的变量。

对引用数据进行存储和分区对与模型有关但在仿真过程中模型不使用的数据(例如设备规格)进行存储和分区。
统一的数据定义界面使用模型资源管理器处理字典中的设计数据。
在内存中增量更新以最小的内存占用提高了性能和可扩展性。
需求可追溯性链接从数据字典条目导航到需求文档所在的位置。

字典的分区

Simulink 数据字典由四部分组成:

  • 设计数据:包含定义参数、信号以及决定模型行为的设计数据的变量和数据类型。在字典中创建或导入的设计数据存储在此分区中。

    此分区只能存储某些类和数据类型。有关详细信息,请参阅 有效的设计数据类

  • 架构数据:存储在 Simulink 和架构模型接口上使用的共享定义,如端口接口、数据类型、系统级常量及其平台属性。要检查和修改架构数据,请使用Architectural Data Editor,该工具可通过从模型资源管理器中选择“架构数据”部分并点击打开架构数据编辑器按钮来访问。

    有关管理架构数据的相关工作流的详细信息,请参阅Store Shared Data in Architectural Data SectionStore Data in Architectural Data Section Programmatically

  • 配置:包含决定如何在仿真过程中配置模型的配置集,即 Simulink.ConfigSet 类的对象。这些对象控制各种属性,如采样时间和仿真开始时间。

    当您将配置集存储到数据字典中时,可以使用配置引用来访问配置集。具有链接的数据字典的模型将配置引用解析为字典中的配置集。有关配置引用的详细信息,请参阅在多个模型之间共享配置

    此部分还可以存储属于 Simulink.VariantConfigurationData 类的变量配置对象。这些对象存储有关变体配置、激活变体和默认变体设置以及与每一种配置关联的控制项变量定义的相关信息。

    注意

    如果您从数据字典中加载配置集,而其中包含系统上不可用的组件,则缺失组件中的参数将重置为默认值。

  • Embedded Coder 字典:包含用于 Embedded Coder® 的代码生成定义。要检查和修改存储在数据字典中的代码定义,请使用 Embedded Coder 字典 (Embedded Coder),而不是模型资源管理器。

  • 其他数据:包含与模型有关但在仿真过程中模型不使用的信息。使用此分区存储引用信息,例如描述模型所表示的物理设备和过程的数据。

    此分区几乎可以存储任何内置的或自定义的类或数据类型。有关详细信息,请参阅 无效的其他数据类

用不同版本的 Simulink 创建的模型的字典用法

Simulink 提供数据字典的版本处理。发生下列事件时,无论模型是使用哪个 Simulink 版本创建的,Simulink 都会同步字典中的数据以用于模型。

  • 您将在以前版本的 Simulink 中保存的数据字典链接到您的模型,例如,您将在 R2018a 中保存的数据字典链接到您在 R2018b 中开发的模型。

  • 您打开了具有链接数据字典且保存在以前版本的 Simulink 中的模型,例如,您开发了使用 R2018a 中的数据字典的模型,并在 R2018b 中打开该模型以继续开发。

要查看保存数据字典的 Simulink 版本,请在当前文件夹浏览器中,点击数据字典并在详细信息窗格中找到保存在以下 Simulink 版本中字段。您还可以选择导出(保存)数据字典,以便用于使用不同版本的 Simulink 创建的模型。要在较旧的 Simulink 版本中使用您在较新 Simulink 版本中保存的数据字典,您需要先将其导出。

要导出数据字典,请执行下列操作:

  1. 在 MATLAB 命令行窗口的当前文件夹窗格中,导航到数据字典的位置。

  2. 双击该字典的名称。

  3. 在模型资源管理器中,右键点击数据字典的名称。如果您对字典进行了更改,请在上下文菜单中选择保存更改

  4. 右键点击数据字典的名称。在上下文菜单中,选择导出到以前的版本

  5. 在“将数据字典导出到以前的版本”对话框中,指定要在其中保存模型的 Simulink 的先前版本。指定 Simulink 要在其中放置新版本字典的文件夹。您指定的文件夹不能包含作为现有字典层次结构一部分的字典。然后点击确定

    Export Data Dictionary to Previous Version dialog box with Version set to R2014a and Folder not yet selected

  6. 验证您指定的文件夹中是否存在新版本的数据字典。

管理和编辑字典中的条目

要创建、修改和查看数据字典中的条目,请使用模型资源管理器。有关详细信息,请参阅创建、编辑和管理工作区变量View and Revert Changes to Dictionary Data

要以编程方式管理字典中的条目,请参阅以编程方式将数据存储到字典中

字典引用

您可以在父字典中引用一个或多个字典。引用字典中的数据在父字典中可见。通过这种方式可对数据进行有意义的分区,尤其是对于模型引用层次结构。有关详细信息,请参阅Partition Dictionary Data Using Referenced DictionariesPartition Data for Model Reference Hierarchy Using Data Dictionaries

导入和导出文件格式

文件格式导入到字典中从字典中导出
MAT 文件
MATLAB 脚本

允许访问基础工作区

有关允许模型访问基础工作区属性和允许字典访问基础工作区属性的信息,请参阅继续使用基础工作区的共享数据

相关主题