Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

管理模型版本并指定模型属性

在 Simulink® 中,您可以使用这些方法管理模型的多个版本:

  • 使用 Projects 管理您的工程文件、连接到源代码管理、查看已修改的文件和比较修订版本。请参阅工程管理

  • 使用模型文件更改通知可处理如何进行源代码管理操作和管理多个用户。请参阅模型文件更改通知

  • 请使用 Simulink.MDLInfo 以从模型文件中提取信息,而不必将模块图加载到内存中。您可以使用 MDLInfo 查询模型版本和 Simulink 版本,查找引用模型的名称而不必将该模型加载到内存中,并将任意元数据附加到您的模型文件。

模型文件更改通知

您可以使用 Simulink 预设指定磁盘上的模型发生更改时是否向您发送通知。您可以在对模型进行更新或仿真、首次编辑模型或保存模型时接收此通知。例如,执行源代码管理操作和存在多个用户时,磁盘上的模型便可能发生更改。

在 Simulink Editor 中,在 Modeling 选项卡上,选择 Environment > Simulink Preferences。在 Model File 窗格中的 Change Notification 下,您可以选择以下选项:

  • 如果您选择 First editing the model,且磁盘上的文件已更改,而模块图在 Simulink 中未修改,则:

    • 修改模块图的任何交互操作(例如,添加模块)都会导致出现警告。

    • 修改模块图的任何命令行操作(例如对 set_param 的调用)都会导致出现警告。

  • 如果您选择 Saving the model,且磁盘上的文件已更改,则:

    • 在 Simulink Editor 中保存模型会导致出现消息。

    • save_system 函数会报告错误,除非您使用 OverwriteIfChangedOnDisk 选项。

要以编程方式检查模型自加载以来是否在磁盘上发生了更改,请使用函数 slIsFileChangedOnDisk

有关可帮助您处理源代码管理和多个用户的更多选项,请参阅工程管理

管理模型属性

您可以使用 Property Inspector 来查看和编辑模型版本属性、描述和回调函数。要打开 Property Inspector,请在 Modeling 选项卡中,在 Design 下,点击 Property Inspector。如果在模型顶层未选择任何内容,则模型属性(或者,如果在库模型中,则为库属性)会出现在 Property Inspector 中。

指定当前用户

当您创建或更新模型时,您的名称会记录在模型中。Simulink 假定您的名称由至少一个 USERUSERNAMELOGINLOGNAME 环境变量指定。如果您的系统未定义上述任何变量,则 Simulink 不会在模型中更新用户名。

UNIX® 系统定义 USER 环境变量并将其值设置为您用于登录到系统的名称。因此,如果您使用 UNIX 系统,无需执行任何操作,Simulink 即会将您识别为当前用户。

Windows® 系统可为用户名定义 Simulink 所需的环境变量,具体取决于您的系统上安装的 Windows 版本以及它是否连接到网络。使用 MATLAB® 函数 getenv 确定定义了哪个环境变量。例如,在 MATLAB 命令行窗口中,输入:

getenv('user')

此函数可确定 USER 环境变量是否存在于您的 Windows 系统中。如果不存在,请设置该变量。

模型信息

Info 选项卡汇总了有关模型当前版本的信息,例如所做修改、版本和上次保存日期。您可以查看和编辑模型信息,以及启用、查看和编辑模型的更改历史记录。

使用 Description 部分输入模型的说明。然后,您可以通过在 MATLAB 命令行窗口下输入 help 后跟模型名称来查看模型说明。

  • Model version

    此模型的版本号。自上次保存模型以来,主模型版本按发布次数递增。对于 Simulink 的每个新版本,模型次要版本都会重置为零,并且每次当您在同一版本中保存模型时,模型次要版本都会递增 1。

  • Created by

    创建此模型的人员的名称,基于创建模型时 USER 环境变量的值。

  • Created on

    此模型的创建日期和时间。不要更改此值。

  • Last saved by

    上次保存此模型的人员的名称,基于保存模型时 USER 环境变量的值。

  • Last saved on

    上次保存此模型的日期,基于系统日期和时间。

Properties

您可以查看源文件位置,设置模型的压缩级别,指定保存模型设计数据的位置,并在模型属性的 Properties 选项卡上定义回调。

注意

库属性还允许您指定从旧库模块到新库模块的映射。有关使用转换表实现此目的的信息,请参阅转换表

设置 SLX 压缩级别.  Property InspectorProperties 选项卡中,您可以选择三个 SLX Compression 选项之一:

  • None” 在保存操作期间不应用压缩。

  • 默认情况下,“Normal” 创建最小的文件大小。

  • Fastest” 创建的文件大小比选择 “None” 时要小,但比 “Normal” 所需的保存时间更短。

要以编程方式设置压缩级别,请使用 SLXCompressionType

提示

您可以通过在不压缩的情况下保存 Simulink 模型来减小 Git™ 存储库的大小。关闭压缩会导致磁盘上的 SLX 文件变大,但会减小存储库的大小。

要对新 SLX 文件使用此设置,请在 SLX Compression 设置为 “none” 的状态下使用模型模板创建模型。请参阅Create Template from Model。对于现有 SLX 文件,请设置压缩,然后保存模型。

定义设计数据的位置.  使用 External Data 部分指定您的模型使用的设计数据的位置。您可以在基础工作区或数据字典中定义设计数据。请参阅迁移单个模型以使用字典

回调.  使用 Callbacks 部分可指定要在模型仿真过程中的特定点处调用的函数。从列表中选择该回调。在框中,输入要为选定的回调调用的函数。有关这些回调的信息,请参阅创建模型回调

以编程方式访问模型信息

某些版本信息存储为模型中的模型参数。您可以使用 Simulink get_param 函数通过编程方式访问此信息。

下表介绍了 Simulink 用于存储版本信息的模型参数。

属性说明

Created

创建日期。

Creator

创建此模型的人员的名称。

Description

用户输入的此模型的说明。在属性检查器的 Info 选项卡上,在 Description 框中输入或编辑模型说明。要在 MATLAB 命令行窗口中查看模型说明,请输入:

help 'mymodelname'

Dirty

如果此参数的值为 on,则模型有未保存的更改。

FileName

保存模型的绝对路径。

LastModifiedBy

上次保存模型的用户的名称。

LastModifiedDate

上次保存模型时的日期。

MetaData

与模型有关的任意数据的名称和属性。有关详细信息,请参阅Simulink.MDLInfo.getMetadata

ModifiedByFormat

ModifiedBy 参数的格式。该值可以包含 %<Auto> 标记。Simulink 软件会将该标记替换为 USER 环境变量的当前值。

ModifiedDateFormat

用来生成 LastModifiedDate 参数值的格式。该值可以包含 %<Auto> 标记。Simulink 在保存模型时会将该标记替换为当前日期和时间。

ModelVersion

自上次保存模型以来,主模型版本按发布次数递增。对于 Simulink 的每个新版本,模型次要版本都会重置为零,并且每次当您在同一版本中保存模型时,模型次要版本都会递增 1。

ModelVersionFormat

该值包含模型格式版本 %<AutoIncrement:#.#>,其中 # 是整数。保存模型时,Simulink 递增模型版本号 #

PreviousFileName

PreSaveFcnPostSaveFcn 回调正在运行时,PreviousFileName 指示在保存操作开始前模型的绝对路径。

要查找模型的当前绝对路径,请改用 FileName

SavedSinceLoaded

指示模型加载后是否保存过。'on' 表示模型已保存。

VersionLoaded

上次保存模型使用的 Simulink 版本,例如 '7.6'

EnableAccessToBaseWorkspace

模型是否可以访问基础工作区中的设计数据和配置集,指定为 'true''false'

LibraryVersion 是链接模块的模块参数。LibraryVersion 是创建链接时库的 ModelVersion

有关源代码管理版本信息,请参阅工程管理

另请参阅

相关主题