主要内容

确定在哪里存储变量和对象金宝app模型

模型数据是在工作区(如基本工作区或数据字典)中创建的对象和变量。模型数据包括:

  • 块参数的数值,例如金宝app仿真软件。参数对象和MATLAB®变量

  • 信号,例如金宝app仿真软件。信号对象

  • 数据类型

  • 模型配置集

  • 仿真输入输出数据

您可以在适合您的设计的位置存储、划分和共享模型数据。您选择的存储位置取决于:

  • 您的建模目标。

  • 模型体系结构(引用的模型、子系统和其他分区策略)和组件结构。

  • 您使用的数据类型。

数据类型

  • 仿真数据是用于驱动模拟的一组输入数据和模拟生成的一组输出数据。例如,您可以使用变量来存储模拟所获取的输入数据轮廓尺寸块。模拟可以通过以下方式导出输出数据,例如,外港块,到工作空间块和记录信号。

    您可以在基本工作空间中存储当前MATLAB会话的仿真数据。要永久存储此模拟数据,请将其保存在mat文件或脚本文件中。有关加载、生成和存储模拟数据的详细信息,请参见信号加载技术的比较导出仿真数据

  • 设计数据是一组变量,用于指定模型中的块参数和信号特性。例如,设计数据包括MATLAB数值变量、参数和信号数据对象、数据类型对象和总线对象。

    您可以将设计数据存储在基本工作区、模型工作区或数据字典的design data部分中。要使用模型永久存储本地设计数据,请使用模型工作区。要在模型之间共享设计数据,请使用数据字典或基本工作区。数据字典永久存储数据,您可以控制数据范围以建立所有权,对数据进行分区以简化可读性和维护,并跟踪更改。如果使用基本工作区,要永久存储数据,必须将其保存在mat文件或脚本文件中。

  • 配置设置是一组模型配置参数。默认情况下,配置集驻留在模型文件中,因此您不需要将配置集与模型分开存储。但是,您不能与其他模型共享这些集。

    要在模型之间共享配置集,您必须创建金宝app仿真软件。ConfigSet对象。每个对象代表一个独立的配置集。您可以将这些对象存储在基本工作区或数据字典的Configurations部分中。如果使用数据字典,则可以定义每个配置集的范围,比较不同的配置集,并跟踪更改。数据字典固有地将配置集与其他类型的数据分区。

为您的设计存储数据

下表显示了可用于存储、分区和管理设计数据和配置集的技术。

建模场景 场景描述 储存地点和技术

快速原型和模型实验

在学习使用Simulink时,您需要创建临时数据,例如用于指定数字块参数的变量金宝app®

您想要尝试建模技术。您不需要永久存储所创建的数据。

将数据存储在基本工作区中,以便您可以快速创建和更改数据。

独立的模型

您有一个单一的模型,它不依赖于其他系统的数据。这个模型是独立的,因为它不是一个更大系统的一部分。

将数据存储在模型工作区中,以提高模型的可移植性。使用数据字典来存储不能存储在模型工作区中的数据。

或者,将所有模型数据存储在数据字典中。如果使用字典,则可以使用引用字典对数据进行分区。

引用模型的独立层次结构

您有一个引用模型的层次结构,它不依赖于其他系统的数据。层次结构是独立的,因为它不是一个更大系统的一部分。

在每个模型工作区中存储本地模型数据。

在数据字典中存储模型共享的数据,例如总线对象和配置集。将层次结构中的所有模型链接到字典。

例如,请参见将模型引用层次结构迁移到使用字典用数据字典管理燃油控制系统的数据

组件系统

一个或多个团队维护模型系统的组件。一个组件是单个模型或代表较大系统的一部分的参考模型的层次结构。

在模型工作区中存储本地模型数据。

将组件中的模型共享的数据(如总线对象和配置集)存储在数据字典中。将组件中的所有模型链接到字典。

使用额外的引用字典来存储组件共享的数据。

使用示例请参见使用数据字典为模型引用层次划分数据

存储位置

选择以下任何一个位置来存储数据:

  • MATLAB基工作区。在使用临时模型进行实验时,使用基本工作区来存储变量。

  • 一个模型工作区。使用模型工作区永久存储模型本地的数据。

  • 数据字典。使用数据字典永久存储全局数据,在模型之间共享数据,并跟踪对数据所做的更改。

该图表显示了每个存储位置的功能和优势。

能力 基本工作空间 模型的工作空间 数据字典
数据模型的链接 隐式的 隐式的
用于定义数据的统一接口
模型数据的依赖
数据输入比较
数据输入持久性
修复丢失变量的选项 附加选项
共享数据
数据分组
数据条目的更改跟踪
配置集的更改跟踪
数据输入合并和核对
辅助数据的存储和分区
要求链接

有关模型与工作区和工作空间变量交互方式的信息,请参见符号解析

临时数据:基本工作区

使用基本工作区来临时存储数据:

  • 当你学习使用Simulink金宝app

  • 当您需要在试验建模技术时快速创建变量时

  • 当您不需要永久存储数据时

要在基本工作区中创建变量,您可以使用MATLAB命令提示符或模型资源管理器。所有打开的模型都可以使用您在基本工作区中创建的数据。

如果在模型中使用变量来指定数字块参数,则可以在仿真期间通过在命令提示符处使用命令以编程方式更改参数值。要以编程方式更改存储在模型工作区或数据字典中的参数值,您必须使用这些存储位置的函数接口。

要在结束MATLAB会话之前永久存储基本工作空间数据,您可以将数据保存在mat文件或脚本文件中。在以后的会话中,您可以从文件加载数据。但是,如果对基本工作区中的数据进行了更改,则必须再次将数据保存到文件中。考虑使用模型工作区或数据字典来永久存储数据。

本地数据:模型工作区

使用模型工作区来存储仅在关联模型中使用的数据。这些数据可以包括:

  • 常量参数,例如,用于指定块参数值的数字变量。

  • 数据对象,例如金宝app仿真软件。信号金宝app仿真软件。参数对象,用于控制信号和参数特性。然而,模型工作区中的信号对象只能使用汽车存储类。如果你存储AUTOSAR。参数对象,则代码生成器将忽略您为该对象指定的存储类。

  • 金宝app仿真软件。NumericType对象,用于指定数据类型。但是,不能将对象用作数据类型别名。你必须设置IsAlias财产

  • 模型参数。

您可以通过在模型工作区中存储数据来改进模型可移植性并建立数据所有权。在这种情况下,模型文件永久地存储数据。

在模型引用层次结构中,每个模型工作区都充当唯一的名称空间。因此,您可以在多个模型工作区中使用相同的变量名。然后,您可以为每个模型分配一个唯一的变量值。

您可以使用Model Explorer来操作模型工作区数据。另外,您可以将命令提示符或脚本与模型工作区编程接口结合使用。

有关使用模型工作区存储本地数据的详细信息,请参见模型的工作区

全局和共享数据:数据字典

数据字典是永久存储数据的独立文件。使用数据字典代替基本工作区来划分数据、跟踪更改、控制访问和共享数据。如果您将一个模型链接到一个数据字典,您仍然可以通过配置对模型或字典的访问来使用基本工作区中的变量。

正如您可以使用模型工作区一样,您可以使用数据字典直接将数据与模型关联起来。您可以使用这种关联来确定数据的范围并建立所有权。

在使用字典时,可以通过将数据存储在其他引用字典中来对数据进行分区。但是,字典中的每个条目必须使用唯一的名称。您必须将每个字典作为单独的文件来管理。

使用数据字典来存储多个模型或系统组件共享的数据。这些数据可以包括:

  • 多个模型用来指定块参数值的数值变量。

  • 金宝app仿真软件。AliasType金宝app仿真软件。NumericType对象,用于一次在多个模型中指定数据类型。

  • 数据对象,包括信号对象(如金宝app仿真软件。信号)使用存储类,而不是汽车。如果你有金宝app仿真软件编码器™许可,这些对象可以表示在生成的代码中作为全局变量出现的信号和可调参数。

  • 金宝app仿真软件。公共汽车对象,用于定义引用模型之间的信号接口。

  • 金宝app仿真软件。ConfigSet对象,用于维护跨多个模型的配置参数一致性。

  • 枚举类型定义,您使用金宝appSimulink.data.dictionary.EnumTypeDefinition对象。

您可以使用Model Explorer来操作字典数据。或者,您可以将命令提示符或脚本与数据字典编程接口结合使用。

有关数据字典的基本信息,请参见什么是数据字典?

代码生成的注意事项

如果您打算从模型(金宝app仿真软件编码器),请考虑这些因素。

  • 如果应用的存储类不是汽车到一个信号对象(例如金宝app仿真软件。信号)来控制生成代码中信号或块状态的外观,您不能将对象存储在模型工作区中。将对象存储在基本工作区或数据字典中。有关信号和状态的存储类的详细信息,请参见模型界面元素的C代码生成配置(金宝app仿真软件编码器)

  • 如果应用的存储类不是汽车到参数对象(例如金宝app仿真软件。参数),您可以将对象存储在基本工作区、模型工作区或数据字典中。然而,如果您将对象存储在模型工作区中,代码生成器将假定包含该参数的模型拥有该参数。有关更多信息,请参见参数对象存储位置对代码生成的影响(金宝app仿真软件编码器)

相关的话题