主要内容

子系统

组块创建模型层次结构

  • 子系统块

库:
金宝app模型/常用的块
金宝app模型/港口和子系统
高密度脂蛋白编码器/港口和子系统

描述

一个子系统块包含块模型或系统内的一个子集。的子系统块可以代表一个虚拟子系统或nonvirtual子系统。

  • Nonvirtual子系统——控制子系统评估的内容作为一个单元(原子执行)。创建有条件地执行子系统运行只触发一个事件发生时,函数调用,行动,或使输入(见有条件地执行子系统和模型)。

  • 虚拟子系统,子系统既不是有条件的,也不是自动执行。虚拟子系统没有校验和。来确定一个子系统是虚拟的,可以使用get_param为布尔函数块参数IsSubsystemVirtual

一个原子子系统块是一个子系统块与块参数治疗作为原子单元选中,代表nonvirtual子系统。

一个代码重用子系统块是一个子系统块的参数治疗作为原子单元选择和参数函数包装设置为可重用的功能指定函数代码生成子系统的格式。

创建一个子系统,做以下之一:

  • 复制一个子系统块从港口&子系统库为您的模型。然后将块添加到子系统通过打开子系统块和复制块。

  • 选择所有块和线条组成的子系统,然后在多个选项卡上,单击创建子系统。金宝app动态仿真模块®取代了一块子系统块,以及必要的轮廓尺寸外港块来反映信号进出子系统。

输入端口的数量上子系统块图标对应的数量轮廓尺寸块的子系统。类似地,输出端口的数量在块对应的数量外港块的子系统。

子系统块支持金宝app信号标签传播通过子系统轮廓尺寸外港块。

请注意

引用子系统是一个子系统存储在一个单独的文件,它使用一个引用子系统的参考块。子系统的重用,添加多个子系统的参考文件块引用相同的子系统。引用一个子系统的行为相同,经常在运行时子系统。

港口

输入

全部展开

放置一个轮廓尺寸块在一个子系统增加外部输入端口子系统块。港标签匹配的名称轮廓尺寸块。

使用轮廓尺寸块信号从当地环境。

数据类型:一半|||int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点|枚举|公共汽车|图像

重新启动事件端口提供了一个函数调用控制信号,触发一个子系统初始化事件,重置子系统的状态。

子系统必须包含一个重新启动功能块,对应于每个子系统初始化事件。有关更多信息,请参见使用初始化,初始化、复位和终止功能

指定端口名称,使用事件名称参数的事件监听器块的重新启动功能块。

依赖关系

使这种类型的端口,选择显示子系统重新启动端口复选框。

输出

全部展开

放置一个外港块在一个子系统的输出端口子系统块。端口标签子系统块的名称外港块。

使用外港块将信号发送到当地的环境。

数据类型:一半|||int8|int16|int32|int64|uint8|uint16|uint32|uint64|布尔|不动点|枚举|公共汽车|图像

参数

全部展开

主要

选择如何显示端口上的标签子系统块图标。

没有一个

不显示端口标签。

FromPortIcon

如果相应的端口信号图标显示名称,显示信号的名字子系统块。否则,显示端口块名或端口号,如果块名称是一个默认名称。

FromPortBlockName

显示相应的端口块对的名称子系统块。

SignalName

如果信号连接到端口命名,显示信号的名称子系统块。否则,显示对应的端口的名称。

为端口标签编辑子系统块,看到编辑港口子系统上的标签

编程使用

参数:ShowPortLabels
类型:特征向量
价值:“FromPortIcon”|“FromPortBlockName”|“SignalName”
默认的:“FromPortIcon”

控制用户访问子系统的内容。

读写

使子系统的打开和修改内容。

只读的

使开放但不修改子系统。如果子系统驻留在一块库,您可以创建和打开链接子系统和可以和修改子系统的本地副本,但不能改变的权限或修改原始库实例的内容。

NoReadOrWrite

禁用打开或修改子系统。如果子系统驻留在一个图书馆,你可以创建链接的子系统模型但不能打开,修改,更改权限,或创建本地副本的子系统。

请注意

你没有收到回复,如果您尝试查看内容的一个子系统读/写权限参数设置为NoReadOrWrite。例如,当双击子系统,仿真软件不打开子系统,不显示任何信息。金宝app

编程使用

参数:权限
类型:特征向量
价值:“读写”|“只读”|“NoReadOrWrite”
默认的:“读写”

输入一个函数的名称被称为如果出现错误而执行子系统模型。金宝app

金宝app仿真软件对函数传递两个参数:子系统的处理和特征向量指定了错误类型。如果没有指定函数,模型显示一个通用的错误消息如果执行子系统金宝app会产生一个错误。

编程使用

参数:ErrorFcn
类型:特征向量
价值:|“<函数名称>”
默认的:

选择是否解决工作空间变量引用的这个子系统的名称。

有关更多信息,请参见符号解析符号解析过程

所有

解决所有这个子系统所使用的工作空间变量的名字,包括那些用于指定块的参数值和模型数据对象(例如,金宝app金宝appSimulink.Signal对象)。

ExplicitOnly

解决只有名字的工作空间变量用于指定块的参数值,数据存储内存(不存在块),信号和状态标记为“必须解决”。

没有一个

不解决任何工作空间变量名。

编程使用

参数:PermitHierarchicalResolution
类型:特征向量
价值:“所有”|“ExplicitOnly”|“没有”
默认的:“所有”

导致治疗子系统金宝app仿真软件作为一个单元,当确定块的执行顺序的方法。

对所有块的子系统是在同一水平模型层次结构的子系统在确定块方法执行顺序。这可能会导致执行子系统的模块的方法与执行交叉方法子系统之外的街区。

治疗子系统作为一个单元,当确定块的执行顺序的方法。例如,当它需要计算子系统的输出,动态仿真模块调用中的所有模块子系统的输出方法之前调用其他模块的输出方法在相同的水平金宝app子系统块。

编程使用

参数:TreatAsAtomicUnit
类型:特征向量
价值:“关闭”|“上”
默认的:“关闭”

选择要显示这个参数初始化事件港口。明确该参数删除端口。

依赖关系

要启用该参数,选择治疗作为原子单元复选框。

编程使用

块参数:ShowSubsystemReinitializePorts
类型:特征向量
值:“关闭”|“上”
默认值:“关闭”

努力消除任何人工代数循环,包括原子子系统

不要试图消除任何人工代数循环,包括原子子系统。

努力消除任何人工代数循环,包括原子子系统。

依赖关系

要启用该参数,选择治疗作为原子单元参数。

编程使用

参数:MinAlgLoopOccurrences
类型:特征向量
价值:“关闭”|“上”
默认的:“关闭”

指定如何调度子系统。

样品时间

指定是否所有块在这个子系统必须运行以同样的速度或可以运行在不同的利率。

周期性的分区

作为一个周期分区调度子系统。指定分区名和样品时间对应的速率分区运行。

非周期分区

调度子系统作为一个非周期分区。指定一个分区名称。

依赖关系

要启用该参数,选择治疗作为原子单元参数。

编程使用

参数:ScheduleAs
类型:特征向量
价值:“SampleTime”|“PeriodicParition”|“AperiodicPartition”
默认的:“SampleTime”

指定分区子系统的名称。

依赖关系

要启用该参数,选择治疗作为原子单元参数,设置计划是周期性的分区非周期分区

编程使用

参数:PartitionName
类型:特征向量
价值:
默认的:

指定是否所有块在这个子系统必须运行以同样的速度或可以运行在不同的利率。

  • 如果子系统的模块可以运行在不同的利率,指定子系统采样时间为继承(1)。

  • 如果所有的块必须以同样的速度运行,指定样品时间对应于这个速度的值样品时间参数。

  • 如果有块的子系统(除了指定一个不同的样品时间1),模金宝app型显示一个错误消息,当你更新或模拟模型。例如,假设所有的块子系统必须运行5次每秒。为了确保这一点,指定子系统的样品时间0.2。在这个例子中,如果任何的块子系统以外的指定样品时间0.2,1,或,模金宝app型显示一个错误当你更新或模拟模型。

1

指定继承采样时间。使用这个示例的时间如果子系统的模块可以运行在不同的利率。

(Ts 0)

指定周期采样时间。

依赖关系

要启用该参数,选择治疗作为原子单元参数。

编程使用

参数:SystemSampleTime
类型:特征向量
价值:' 1 '|“(Ts 0)”
默认的:' 1 '

指定版本控制(条件)表达式执行的一个变体金宝app仿真软件的功能当表达式计算真正的

有关更多信息,请参见金宝appSimulink.Variant

变体

缺省名称为一个逻辑(布尔)表达式。

逻辑表达式

一个逻辑表达式或(布尔)金宝appSimulink.Variant对象代表了一个逻辑表达式。

函数表达式计算时被激活真正的

如果你想为您的模型生成代码,表达式中的变量定义为金宝appSimulink.Parameter对象。

依赖关系

启用该参数通过添加子系统块内不同的子系统块。

编程使用

块参数:VariantControl
类型:特征向量
值:“变异”|“<逻辑表达式>”
默认值:“变异”

导致治疗子系统金宝app仿真软件作为一个单元时传播条件变体变异来源块或变体水槽块。

金宝app仿真软件将子系统作为一个单元时传播条件变体变异来源块或变体水槽块。例如,当仿真软件计算的变异条件子系统金宝app,它传播条件中的所有模块子系统。

金宝app仿真软件对所有块子系统是在同一水平上在模型层次结构子系统本身在决定其变异状况。

编程使用

参数:TreatAsGroupedWhenPropagatingVariantConditions
类型:特征向量
价值:“上”|“关闭”
默认的:“上”

代码生成

需要一个参数对代码生成选项卡金宝app仿真软件编码器™或者嵌入式编码器®许可证。

选择要生成的代码格式一个原子(nonvirtual)子系统。

汽车

金宝app仿真软件编码器和嵌入式编码为您选择最佳的格式基于实例的类型和数量的子系统中存在的模型。

内联

金宝app仿真软件编码器无条件地和嵌入式编码内联子系统。

那种一次性的功能

如果Filename选项被设置为汽车,金宝app仿真软件编码器和嵌入式编码包单独的函数模型文件。如果文件名称选项被设置为使用子系统名称,使用函数名,或用户指定的使用不同的文件名,金宝app仿真软件编码器和嵌入式编码包单独的函数在单独的文件。

子系统与此设置生成的函数参数依据函数接口参数设置。您可以使用参数生成的函数名称和文件函数名文件名称(没有扩展)。这些函数是不可重入的。

可重用的功能

金宝app仿真软件编码器和嵌入式编码生成一个函数参数时,允许重用子系统的代码模型包括的多个实例子系统。

这个选项还生成一个函数与参数,允许子系统生成的代码的代码重用模型引用层次结构的一个子系统,包括多个实例引用的模型。在这种情况下,必须在图书馆子系统。

有关更多信息,请参见:

提示

  • 当你想要一个子系统的多个实例表示为一个可重用的功能,您可以指定每个其中之一汽车或者是可重用的功能。最好使用一个或另一个,使用创建两个可重用的功能,每个指定一个。这些选择的结果只有当重用不同是不可能的。选择汽车不允许控制子系统的功能或文件名称的代码。

  • 可重用的功能汽车选项都试图确定一个子系统存在的多个实例,如果代码可以重用。选项的行为之间的区别是,当重用是不可能的:

    • 汽车收益率内联代码,或者情况下禁止内联,单独为每个子系统功能的实例。

    • 可重用的功能产生一个单独的函数,参数为每个子系统模型中的实例。

  • 如果您选择可重用的功能当你生成的代码是在源代码控制下,集文件名称选项使用子系统名称,使用函数名,或用户指定的。否则,代码文件的名称改变当你修改你的模型,从而防止源代码控制在你的文件。

  • 如果你选择以外的一种选择汽车内联和模型配置参数,代码生成器生成单独的输出和更新方法。代码生成器不考虑结合代码生成和仿真的输出和更新方法规范。

依赖关系

  • 这个参数要求金宝app仿真软件编码器代码生成。

  • 要启用该参数,选择治疗作为原子单元

编程使用

参数:RTWSystemCode
类型:特征向量
价值:“汽车”|“内联”|“那种一次性函数”|“可重用函数”
默认的:“汽车”

选择如何金宝app仿真软件编码器名字的函数生成子系统。

如果你有嵌入式编码人员许可,您可以控制函数名与选项配置参数代码生成>标识符窗格。

汽车

分配一个唯一的函数名称使用默认的命名约定,模型_子系统(),在那里模型模型和的名字吗子系统子系统的名称(或代码重用时一模一样的)。

如果您选择可重用的功能函数包装可重用的子系统的参数有多个实例模型参考等级,为了生成子系统的可重用的代码,函数名的选择必须设置为汽车

使用子系统名称

使用子系统名作为函数名称。默认情况下,函数名使用命名约定模型_子系统

请注意

当一个子系统是在图书馆块和子系统参数函数包装被设置为可重用的功能,如果你设置使用子系统名称选项,代码生成器使用的名称库块子系统的函数名和文件名。

用户指定的

启用函数名字段。输入任何法律C或c++函数名必须是唯一的。

有关更多信息,请参见生成子系统的代码作为单独的函数和文件(金宝app仿真软件编码器)

依赖关系

  • 这个参数需要一个金宝app仿真软件编码器许可证。

  • 要启用该参数,设置函数包装那种一次性的功能可重用的功能

编程使用

参数:RTWFcnNameOpts
类型:特征向量
价值:“汽车”|“使用子系统名称”|用户指定的
默认的:“汽车”

指定一个独特的、有效的C或c++子系统代码的函数名。

如果你想使用这个参数给函数一个特定的名字而不是允许金宝app仿真软件编码器代码生成器来分配自己的自动生成名称或使用子系统名称。有关更多信息,请参见生成子系统的代码作为单独的函数和文件(金宝app仿真软件编码器)

依赖关系

  • 这个参数需要一个金宝app仿真软件编码器许可证。

  • 要启用该参数,设置函数名的选择参数用户指定的

编程使用

参数:RTWFcnName
类型:特征向量
价值:|“<函数名称>”
默认的:

选择如何金宝app仿真软件编码器名字的函数的单独的文件生成子系统。

汽车

根据子系统的配置和有多少实例模型,汽车产生不同的结果:

  • 如果代码生成器生成一个单独的文件的子系统,子系统生成的代码模块内代码生成子系统父系统。父母是模型本身如果子系统,子系统的代码生成模型。c模型. cpp

  • 如果您选择可重用的功能函数包装参数和生成的代码是在源代码控制下,考虑指定文件名称选项以外的价值汽车。这可以防止生成的文件名改变由于无关的模型修改,这对使用源代码控制管理是有问题的配置。

  • 如果您选择可重用的功能函数包装可重用的子系统的参数有多个实例模型参考等级,为了生成子系统的可重用的代码,文件名称选项必须设置为汽车

使用子系统名称

代码生成器生成一个单独的文件,使用子系统(或图书馆块)名称作为文件名称。

请注意

文件名称选项被设置为使用子系统名称,如果模型包含子系统文件名是支离破碎模型块,或者如果一个模型参考目标正在生成的模型。在这些情况下,文件名的子系统由子系统模型名称前缀的名称。

使用函数名

代码生成器使用指定的函数名函数名的选择作为文件名称。

用户指定的

这个选项允许文件名称(没有扩展)文本输入字段。代码生成器使用您输入的名称作为文件名。输入文件名称,但不包括。c. cpp(或任何其他)扩展。这个文件的名字不必是惟一的。

请注意

而子系统源文件名称不需要是独一无二的,你必须避免给nonunique名称导致循环依赖关系(例如,sys_a.h包括sys_b.h,sys_b.h包括sys_c.h,sys_c.h包括sys_a.h)。

依赖关系

  • 这个参数需要一个金宝app仿真软件编码器许可证。

  • 要启用该参数,设置函数包装那种一次性的功能可重用的功能

编程使用

参数:RTWFileNameOpts
类型:特征向量
价值:“汽车”|“使用子系统名称”|“使用函数名”|用户指定的
默认的:“汽车”

您所指定的文件名,不必是惟一的。然而,避免给非唯一的名字,导致循环依赖关系(例如,sys_a.h包括sys_b.h,sys_b.h包括sys_c.h,sys_c.h包括sys_a.h)。

有关更多信息,请参见生成子系统的代码作为单独的函数和文件(金宝app仿真软件编码器)

依赖关系

  • 这个参数需要一个金宝app仿真软件编码器许可证。

  • 要启用该参数,设置文件名称选项用户指定的

编程使用

参数:RTWFileName
类型:特征向量
价值:|“<文件名称>”
默认的:

选择使用参数生成功能。

void_void

生成一个函数没有参数和全局变量传递数据。例如:

空白subsystem_function(空白)

允许参数(优化)

生成一个函数,使用参数,而不是作为全局变量传递数据。这个规范减少全球RAM。它可能会减少代码规模和提高执行速度,使代码生成器使用额外的优化。例如:

空白subsystem_function (real_T rtu_In1, real_T rtu_In2, real_T * rty_Out1)
在某些情况下,当生成优化的代码,代码生成器可能不会生成一个函数的参数。

允许参数(匹配的图形界面)

生成一个子系统匹配的函数接口,使用参数图形块界面。生成的函数接口是可预测的,不会改变。可预测的接口可以用于调试和测试您的代码和与外部应用程序集成。例如,如果一个模型有两个港口和两个输出港,然后生成的函数接口:

空白subsystem_function (real_T rtu_In1, real_T rtu_In2, real_T * rty_Out1 real_T * rty_Out2)

有关更多信息,请参见:

依赖关系

  • 这个参数需要嵌入式编码器和一个ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能

编程使用

参数:FunctionInterfaceSpec
类型:特征向量
价值:“void_void”|“允许参数(优化)”|“允许参数(匹配的图形界面)”
默认的:“void_void”

生成子系统的功能代码,一个原子的内部数据子系统分开其母模型和所有子系统。

不生成子系统的功能代码,一个原子的内部数据子系统分开其母模型和所有子系统。

生成子系统的功能代码,一个原子的内部数据子系统分开其母模型和所有子系统。子系统数据结构宣布独立于父母模型的数据结构。一个子系统与单独的数据都有自己的块I / O和DWork数据结构。结果,生成的代码更容易跟踪和测试的子系统。数据分离也倾向于减少全局数据结构的最大大小整个模型,因为它们分成多个数据结构。

有关如何生成原子子系统的模块化的功能代码,看看生成Nonvirtual子系统的模块化的功能代码(嵌入式编码)

有关如何应用内存部分原子子系统,明白了覆盖默认的内存位置子系统功能和数据(嵌入式编码)

依赖关系

  • 这个参数需要一个许可证为嵌入式编码器和一个ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能

编程使用

参数:FunctionWithSeparateData
类型:特征向量
价值:“关闭”|“上”
默认的:“关闭”

选择嵌入式程序员如何应用内存部分子系统初始化和终止功能。

继承模型

应用根模型内存子系统功能代码段

默认的

不适用内存子系统系统代码段,覆盖模型级规范吗

的内存部分利益

将一个模型的内存部分应用于子系统

提示

依赖关系

  • 这个参数需要一个嵌入式编码器软件许可证和ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能可重用的功能

编程使用

参数:RTWMemSecFuncInitTerm
类型:特征向量
价值:“继承模式”|“默认”|“感兴趣的内存部分”
默认的:“继承模式”

选择如何执行嵌入式编码记忆的部分适用于子系统的功能。

继承模型

应用根模型内存子系统功能代码段

默认的

不适用内存子系统系统代码段,覆盖模型级规范吗

的内存部分利益

将一个模型的内存部分应用于子系统

提示

依赖关系

  • 这个参数需要一个嵌入式编码器软件许可证和ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能可重用的功能

编程使用

参数:RTWMemSecFuncExecute
类型:特征向量
价值:“继承模式”|“默认”|“感兴趣的内存部分”
默认的:“继承模式”

选择嵌入式程序员如何应用内存部分子系统常数。

继承模型

应用根内存部分子系统的数据模型

默认的

不适用内存部分子系统的数据,覆盖任何模型级规范

的内存部分利益

将一个模型的内存部分应用于子系统

提示

  • 您所指定的内存部分,适用于中相应的全局数据结构生成的代码。基本信息的全局数据结构为原子生成子系统,明白了标准的数据结构(金宝app仿真软件编码器)

  • 可能的值取决于什么(如果有的话)的内存部分设置为模型配置。看到控制数据和函数放置在内存中插入语法(嵌入式编码)

  • 如果你没有配置模型与一个包,继承模型是唯一值出现。否则,其中包括默认的和所有的内存部分包包含的模型。

  • 这些选项可以用于覆盖模型内存部分设置为给定的子系统。有关如何应用内存部分原子子系统,明白了覆盖默认的内存位置子系统功能和数据(嵌入式编码)

依赖关系

  • 这个参数需要一个许可证为嵌入式编码器和一个ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能并选择函数与单独的数据参数。

编程使用

参数:RTWMemSecDataConstants
类型:特征向量
价值:“继承模式”|“默认”|“感兴趣的内存部分”
默认的:“继承模式”

选择如何嵌入编码器应用内存部分子系统的内部数据。

继承模型

应用根内存部分子系统的数据模型

默认的

不适用内存部分子系统的数据,覆盖任何模型级规范

的内存部分利益

将一个模型的内存部分应用于子系统

提示

  • 您所指定的内存部分,适用于中相应的全局数据结构生成的代码。基本信息的全局数据结构为原子生成子系统,明白了标准的数据结构(金宝app仿真软件编码器)

  • 可能的值取决于什么(如果有的话)的内存部分设置为模型配置。看到控制数据和函数放置在内存中插入语法(嵌入式编码)

  • 如果你没有配置模型与一个包,继承模型是唯一值出现。否则,其中包括默认的和所有的内存部分包包含的模型。

  • 这些选项可以用于覆盖模型内存部分设置为给定的子系统。有关如何应用内存部分原子子系统,明白了覆盖默认的内存位置子系统功能和数据(嵌入式编码)

依赖关系

  • 这个参数需要一个许可证为嵌入式编码器和一个ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能并选择函数与单独的数据参数。

编程使用

参数:RTWMemSecDataInternal
类型:特征向量
价值:“继承模式”|“默认”|“感兴趣的内存部分”
默认的:“继承模式”

选择嵌入式程序员如何应用内存部分子系统的参数。

继承模型

应用根模型内存子系统功能代码段

默认的

不适用内存子系统系统代码段,覆盖任何模型级规范

的内存部分利益

将一个模型的内存部分应用于子系统

提示

  • 您所指定的内存部分适用于相应的全局数据结构生成的代码。基本信息的全局数据结构为原子生成子系统,明白了标准的数据结构(金宝app仿真软件编码器)

  • 可能的值取决于什么(如果有的话)的内存部分设置为模型配置。看到控制数据和函数放置在内存中插入语法(嵌入式编码)

  • 如果你没有配置模型与一个包,继承模型是唯一值出现。否则,其中包括默认的和所有的内存部分包包含的模型。

  • 这些选项可以用于覆盖模型内存部分设置为给定的子系统。有关如何应用内存部分原子子系统,明白了覆盖默认的内存位置子系统功能和数据(嵌入式编码)

依赖关系

  • 这个参数需要一个许可证为嵌入式编码器和一个ERT-based系统目标文件。

  • 要启用该参数,设置函数包装那种一次性的功能并选择函数与单独的数据参数。

编程使用

参数:RTWMemSecDataParameters
类型:特征向量
价值:“继承模式”|“默认”|“感兴趣的内存部分”
默认的:“继承模式”

子系统的参考

文件你想引用指定子系统。引用信息子系统,看到子系统的参考

依赖关系

要访问这个参数,子系统的参考部分中,点击转换

更多信息关于如何子系统,子系统转换为引用转换现有的引用的子系统的子系统

编程使用

参数:ReferencedSubsystem
类型:特征向量
价值:|“<文件名>”
默认的:

块特征

数据类型

布尔一个|公共汽车一个|一个|枚举一个|不动点一个|一半一个|整数一个|一个|字符串一个

直接引线

没有

多维信号

是的一个

适应信号

是的一个

讨论二阶导数过零检测

没有

一个实际数据类型或能力取决于块实现的支持。金宝app

扩展功能

版本历史

介绍了R2007a