主要内容

确定在何处存储变量和对象金宝app模型

模型数据是在基本工作空间或数据字典等工作空间中创建的对象和变量。模型数据包括:

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

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

  • 数据类型

  • 模型配置设置

  • 仿真输入输出数据

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

  • 您的建模的目标。

  • 模型体系结构(参考模型、子系统和其他划分策略)和组件结构。

  • 您使用的数据类型。

类型的数据

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

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

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

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

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

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

为您的设计存储数据

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

建模场景 场景描述 存储位置和技术

快速原型制作和模型实验

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

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

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

独立的模型

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

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

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

引用模型的独立层次结构

您有一个不依赖其他系统获取数据的引用模型层次结构。等级制度是独立存在的,因为它不是一个更大系统的一部分。

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

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

有关示例,请参见将模型引用层次结构迁移到Use Dictionary使用数据字典来管理燃料控制系统的数据

系统的组件

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

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

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

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

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

存储位置

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

  • MATLAB基础工作空间。在试验临时模型时,使用基本工作区来存储变量。

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

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

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

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

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

临时数据:基础工作区

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

  • 当你学习使用Simulink的时候金宝app

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

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

要在基本工作空间中创建变量,可以使用MATLAB命令提示符或Model Explorer。所有打开的模型都可以使用您在基本工作空间中创建的数据。

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

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

本地数据:模型工作区

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

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

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

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

  • 模型参数。

您可以通过将数据存储在模型工作区中来提高模型的可移植性并建立数据所有权。在本例中,模型文件永久存储数据。

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

您可以使用模型资源管理器来操作模型工作区数据。或者,您可以将命令提示符或脚本与模型工作区编程接口结合使用。

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

全局共享数据:数据字典

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

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

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

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

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

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

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

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

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

  • 用于存储的枚举类型定义金宝appSimulink.data.dictionary.EnumTypeDefinition对象。

您可以使用模型资源管理器来操作字典数据。或者,您可以将命令提示符或脚本与数据字典编程接口结合使用。

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

代码生成的注意事项

如果您想从模型生成C代码(金宝app仿真软件编码器),请考虑这些因素。

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

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

相关的话题