主要内容

模型参考需求和限制

在参考模型之前,请考虑模型参考要求和限制。通过了解前期要求和限制,您将更好地准备成功参考模型。

模型重用

除非引用的模型具有以下任何属性,否则您可以在模型层次结构中提供多次模型的示意图:

  • 该模型引用另一个被设置为单个实例的模型。

  • 该模型包含了到文件块。

  • 该模型包含内部信号或状态,其中不支持多实例模型不支持的存储类。金宝app内部信号和状态必须使存储类设置为汽车模型默认值和内部数据的默认存储类必须是多实例存储类。

  • 模型使用这些statflow中的任何一个®结构体:

    • 导出状态流图形函数

    • Machine-parented数据

  • 引用的模型在Accelerator模式下执行,并包含一个未注入或内向的S函数,但未设置选项ss_option_works_with_code_reuse.

  • 该模型包含一个函数呼叫子系统:

    • 金宝app®力量是一个职能

    • 是由宽信号呼叫的吗

如果引用的模型具有任何这些属性,则模型层次结构中只能出现一个模型实例。该模型必须具有每个top模型允许的实例总数设置一个

模型面具

您可以在引用的模型中使用屏蔽块。此外,您还可以屏蔽引用的模型(参见创建并引用蒙面模型)。

要成功使用掩码,请考虑这些要求和限制:

  • 如果屏蔽指定引用模型的名称,则掩码必须直接提供引用的模型的名称。您无法使用Workspace变量来提供名称。

  • 掩码工作区模型块对被引用的模型不可用。被引用模型使用的任何变量都必须解析到以下任一工作空间:

    • 被引用模型定义的工作空间

    • matlab.®基础工作区

  • 掩码回调无法添加模型块,改变模型块名称,或更改模型块仿真模式。

参考型号中的s函数

不同类型的s函数为模型参考提供不同级别的支持。金宝app

函数类型 在普通模式中引用的模型 加速器模式中引用的型号
Level-1 Matlab S函数 不支持金宝app 不支持金宝app
Level-2 Matlab S功能 金宝app支持 金宝app支持 - 需要TLC文件
手写C MEX s函数

金宝app支持-可以内联一个TLC文件

金宝app支持-可以内联一个TLC文件
S函数建设者 金宝app支持 金宝app支持
遗留代码的工具 金宝app支持 金宝app支持

在参考模型中使用S函数时,请考虑这些要求和限制。

功能考虑 要求和限制
示例时间继承

如果s函数依赖于继承的样本时间,则s函数必须显式声明依赖于继承的样本时间。若要控制样例时间继承,请使用sssetmodelreferencesampletimeinheritancerule.区别在于s函数是否允许继承。有关详细信息,请参见S-函数,用于指定示例时间继承规则(金宝app仿真软件编码器)

加速器模式参考模型

对于加速器模式引用的型号,其中包含使用目标语言编译器文件内联的S-function的模型,S函数必须使用sssetOptions.宏设置ss_option_use_tlc_with_accelerator.选择在其mdlinitializatize方法。仿真目标不内联s函数,除非s函数设置此选项。

在这些情况下,被引用的模型不能使用非线性s -函数:

  • 该模型使用变量步骤求解器。

  • 模型在模型层次结构中被引用不止一次。为了解决这个限制,使用普通模式或:

    1. 制作参考模型的副本。

    2. 将不同的名称分配给副本。

    3. 在每个需要模型的位置引用不同的副本。

  • s函数使用字符向量参数。

加速器模式中的引用模型不能使用由生成的S函数金宝app仿真软件编码器™软件

标准模式参考模型

在某些条件下,当C S函数出现在正常模式下执行的引用模型中时,无法执行成功执行。有关详细信息,请参见正常模式下的s函数参考型号

要指定是否可以在正常模式引用模型中使用S函数,请使用sssetmodelreferenceNormalMode金宝appUpport.SIMSTRUCT功能。

为了使s函数在正常模式下处理引用模型的多个实例,s函数必须显式地表明它支持多个实例金宝app执行实例。有关详细信息,请参见金宝app支持在正常模式下使用的多个引用模型实例

受保护的模型

受保护的模型不能直接或间接使用非线性s函数。

模型体系结构需求和限制

元素 要求和限制

块不能跨模型引用边界。

迭代器子系统

如果引用的模型包含任务块,你可以放置模型块在迭代器子系统中仅当任务块也在迭代器子系统中。

可配置子系统

在一个可配置的子系统中模型块,在模型更新期间,不更改可配置子系统选择的子系统。

initfcn.回调

一个initfcn.顶级模型中的回调不能更改被引用模型使用的参数。

印刷参考模型

您不能打印顶级模型的参考模型。

信号要求和限制

信号 要求和限制
基于0或1的索引信息传播

在两种情况下,Simulin金宝appk不会将基于0或基于1的索引信息传播到连接到块的引用模型根级端口:

  • 接受索引(例如任务块)

  • 生产指标(例如对于迭代器块)

接受索引的块的示例是任务块。产生索引的块的示例是对于迭代器块。

这两种情况导致缺乏传播,从而导致Simulink无法检测不兼容的索引连接。金宝app这两种情况是:

  • 如果被引用模型的根级输入端口连接到具有不同的基于0或1的索引设置的模型中的索引输入,则Simulink不会设置根级的基于0或1的索引属性金宝appinport.块。

  • 如果被引用模型的根级输出端口连接到具有不同的基于0或1的索引设置的模型中的索引输出,则Simulink不会设置根级的基于0或1的索引属性金宝app外港块。

异步的利率

被引用的模型只能在模型满足条件时使用异步速率两个都这些条件:

  • 外部源通过根级驱动异步速率inport.块。

  • root -inport.块输出函数调用信号。看到异步任务规范(金宝app仿真软件编码器)

用户定义的数据类型输入或输出

只有引用的模型只能输入或输出定义的数据类型,或者金宝app仿真软件。数据类型金宝appsimulink.bus.对象定义。

公共汽车

如果使用虚拟总线作为引用模型的输入或输出,则总线不能包含可变大小的信号元素。看到在模型接口使用总线

信号对象

连接到a的信号模型块在功能上和块外部的功能相同。因此,该信号受到限制,给定信号在大多数相关信号对象中可以具有给定信号。看到金宝app仿真软件。信号想要查询更多的信息。

模拟要求和限制

仿真财产 要求和限制
连续样本时间传播

连续的采样时间不能传播到模型与采样时间无关的块。

样品时间和求解器

顶层模型的求解器控制模型层次结构中所有连续的样本时间。例如,对于固定步长求解器,参考模型中的所有连续速率都以顶部模型的固定步长运行。有关样本时间如何影响求解器的信息,请参见样本时间的类型

状态初始化

初始化使用状态引用其他模型的模型的状态,以时间格式指定结构或结构中的初始状态。有关更多信息,请参阅参考模型的状态信息

参数可调谐性

在模拟引用其他模型的模型时,在某些情况下,会失去块参数的一些可调性(例如获得参数的获得堵塞)。有关更多信息,请参阅其他建模目标的可调性注意事项和限制

代码生成需求和限制

通过预先了解代码生成需求和限制,您可以更好地为代码生成正确地设置模型层次结构。看到设置模型层次结构代码生成的配置参数(金宝app仿真软件编码器)模型引用的代码生成限制(金宝app仿真软件编码器)

相关的话题