Enabled Subsystem 使能子系统

Enabled Subsystem

由外部输入使能执行的子系统

库:
Simulink / Ports & Subsystems
HDL Coder / Ports & Subsystems
在这里插入图片描述

描述

Enabled Subsystem 模块是一个预先配置的 Subsystem 模块,可以作为一个起点,用于创建在控制信号具有正值时执行的子系统。
Enabled Subsystem 使能子系统_第1张图片
使用 Enabled Subsystem 模块可以建模:

  • 不连续点
  • 可选功能
  • 替代功能

端口介绍

输入

In — 子系统模块的信号输入(标量 | 向量 | 矩阵)

Subsystem 模块的信号输入,指定为标量、向量或矩阵。在子系统中放置一个 Inport 模块会向Subsystem 模块添加一个外部输入端口。端口标签与 Inport 模块的名称相匹配。

使用 Inport 模块可以从局部环境中接收信号。

数据类型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

Enable — 子系统模块的控制信号输入(标量 | 向量 | 矩阵)

子系统中的 Enable 模块向 Subsystem 模块添加一个外部输入端口,使该模块成为 Enabled Subsystem 模块。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

输出端口

Out — 子系统模块的信号输出(标量 | 向量 | 矩阵)

从 Subsystem 模块输出的信号,以标量、向量或矩阵形式返回。在子系统中放置一个 Outport 模块会向 Subsystem 模块添加一个外部输出端口。端口标签与 Outport 模块的名称相匹配。

使用 Outport 模块可以向局部环境发送信号。

数据类型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus | image

模块特性

特性 描述
数据类型 Boolean \bus\ double\ enumerated \ fixed point\ half \integer\ single\ string
直接馈通 No
多维信号 Yes
可变信号 YES
过零检测 No

补充:实际支持的数据类型或功能取决于模块实施。

Enable介绍

库:
Simulink / Ports & Subsystems
HDL Coder / Ports & Subsystems
Enable 模块允许外部信号控制子系统或模型的执行。要启用此功能,可在 Subsystem 模块中添加该模块,或在 Model 模块所引用模型的根级别添加该模块。

如果在模型的根级别使用使能端口:

  • 对于多速率模型,请将求解器设置为单任务。
  • 对于具有定步长的模型,模型中有至少一个模块必须以指定的定步长速率运行。

端口介绍

Enable signal

使能信号从外部连接到 Enabled Subsystem 模块的外部,并传递到子系统的内部。当您选择显示输出端口参数时,使能信号端口将添加到 Enable 模块。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | expression

参数

一 启用时的状态 — 选择当禁用的子系统或模型被激活时要采用的模块状态
“保持” (默认) | “重置”
对于处于禁用状态的 Subsystem 模块或 Model 模块,选择在激活这些模块时其所含模块的状态变化情况。

“保持”
按其先前值保持模块状态。

“重置”
将模块状态重置为其初始条件(如果未定义,则为零)。
二 传播可变大小信号的大小
选择何时传播可变大小信号。

“仅在启用时”
当重新启用包含 Enable 端口模块的 Subsystem 模块或 Model 模块时,传播可变大小的信号。如果您选择此选项,采样时间必须为周期性采样时间。

“执行期间”
在每个时间步传播可变大小的信号。

三 显示输出端口
输出端口将 Enabled Subsystem 模块或激活的 Model 模块的外接使能信号传递到内部。

off
在 Enable 端口模块上删除输出端口。

on
在 Enable 端口模块上显示输出端口。选择此选项将允许子系统或模型处理使能信号。

四 启用过零检测
控制模型的过零检测。

on
检测过零点。

off
不检测过零点。

五 端口维度
指定从外部连接到 Model 模块并传递到模块内部的使能信号的维度。

1
标量信号。

[n]
宽度为 n 的向量信号。

[m n]
具有 m 行和 n 列的矩阵信号。

六 采样时间
指定模块方法执行之间的时间间隔。请参阅指定采样时间。

-1
从模型继承采样时间。

Ts
标量,其中 Ts 是时间间隔。

[Ts, To]
向量,其中 Ts 是时间间隔,To 是初始时间偏移量。

七 最小值

指定从外部连接到 Model 模块并传递到模块内部的使能信号的最小值。

Simulink® 使用此值来执行:

仿真范围检查。请参阅指定信号范围。

定点数据类型的自动定标。

所生成代码的优化。此优化可删除算法代码,并影响某些仿真模式(如 SIL 或外部模式)的结果。请参阅Optimize using the specified minimum and maximum values (Embedded Coder)。

[]
不指定最小值。

实数标量
实数双精度标量值。

八 最大值
指定从外部连接到 Model 模块并传递到模块内部的使能信号的最大值。

Simulink 使用此值来执行:

仿真范围检查。请参阅指定信号范围。

定点数据类型的自动定标。

所生成代码的优化。此优化可删除算法代码,并影响某些仿真模式(如 SIL 或外部模式)的结果。请参阅Optimize using the specified minimum and maximum values (Embedded Coder)。

[]
不指定最大值。

实数标量
实数双精度标量值。

九 数据类型
指定从外部连接到 Model 模块并传递到模块内部的使能信号的数据类型。

“double”
双精度浮点。

“single”
单精度浮点。

“int8”
有符号 8 位整数。

“uint8”
无符号 8 位整数。

“int16”
有符号 16 位整数。

“uint16”
无符号 16 位整数。

“int32”
有符号 32 位整数。

“uint32”
无符号 32 位整数。

“int64”
有符号 64 位整数。

“uint64”
无符号 64 位整数。

“boolean”
值为 true 或 false 的布尔值。

“fixdt(1,16)”
未定义二进制小数点位置的有符号 16 位定点数。

“fixdt(1,16,0)”
二进制小数点位置设置为零的有符号 16 位定点数。

“fixdt(1,16,2^,0)”
斜率设置为 2^0 且偏置设置为 0 的有符号 16 位定点数。

“”
数据类型对象,例如 Simulink.NumericType。您不能以数据类型表达式的形式输入 Simulink.Bus 对象的名称。

十 模式 — 选择数据类型类别
选择数据类型类别并显示下拉列表以帮助您定义数据类型。

“内置”
显示数据类型和“数据类型覆盖”的下拉列表。

“定点”
显示“符号性”、“定标”和“数据类型覆盖”的下拉列表。

“表达式”
显示用于输入表达式的文本框。

依存关系
要启用此参数,请选择“显示数据类型助手”按钮。

编程用法
没有等效的命令行参数。
十一 数据插值
指定从工作区加载数据时缺失的工作区数据的值。

on
在不存在对应工作区数据的时间步上对输出进行线性插值。

off
不在时间步处进行输出插值。取存在数据的最近时间步上的输出作为当前输出。

详细配置

触发功能

1.首先建立一个Enble subsystem
在这里插入图片描述
Enabled Subsystem 使能子系统_第2张图片
子系统内部
Enabled Subsystem 使能子系统_第3张图片
保持enable的模拟参数
Enabled Subsystem 使能子系统_第4张图片

2.创建一个累加的模型,用于功能测试
Enabled Subsystem 使能子系统_第5张图片
3.增加手动使能开关和示波器
Enabled Subsystem 使能子系统_第6张图片
将使能开关手动调节到"1",查看示波器的执行状态
Enabled Subsystem 使能子系统_第7张图片
如上图所示,示波器一直执行,并输出累加结果,满足预期期望

Enable 重置状态

如上实验启用状态为保持,修改状态为重置
Enabled Subsystem 使能子系统_第8张图片
Enabled Subsystem 使能子系统_第9张图片
单步执行,在手动切换到1的时候,累加功能正常输出,
手动切换使能引脚的信号为0
Enabled Subsystem 使能子系统_第10张图片
单步执行几次后发现使能开关切换到0之后,累加功能关闭,而且输出的信号不变
Enabled Subsystem 使能子系统_第11张图片
重新切换使能信号为1的时候,则发现累加重新开始.

结论:“重置” 是可以重置内部的变量,比如延时中的缓存

关闭使能引脚后输出清零

Enabled Subsystem 使能子系统_第12张图片
修改输出引脚,为重置模式,初始输出为0,则在使能关闭后,则输出清零
对模型进行修改如下
Enabled Subsystem 使能子系统_第13张图片
Enabled Subsystem 使能子系统_第14张图片

你可能感兴趣的:(Simulink,学习笔记,matlab,simulink)