# DetectChange


检测信号值的变化

库: Sysblock模块库 / LogicAndBitOperation

# 描述

DetectChange 模块确定输入信号是否不等于其上一个值。初始条件为上一个输入 U/z 的初始值。

此模块仅支持离散采样时间。

# 示例

参考模型示例

# 示例说明

  • PulseGenerator 模块:用于产生一个脉冲信号,该信号在特定时间点发生变化;
  • DetectChange 模块:用于检测输入信号的值是否发生了变化。当输入信号的当前值与前一个值不同时,输出 1(真),表示发生了变化;
  • Scope 模块:用于显示模型的输出。在这个例子中,它显示了变化检测的结果,即脉冲信号何时发生变化。

# 端口

# 输入

u — 输入信号
信号值

输入信号,指定为标量、向量或矩阵。

数据类型: float | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | boolean | fixedPoint | enum

# 输出

y — 输出信号
0 | 1

输出信号,当输入信号不等于上一个值时,为 true(等于 1);当输入信号等于上一个值时,为 false(等于 0)。

数据类型: boolean

# 参数

初始条件 — 上一个的初始条件
0 (默认) | 标量 | 向量

为上一个输入 U/z 设置初始条件。

输出数据类型 — 输出的数据类型
“boolean” (默认) | “Inherit: auto”

将输出数据类型设置为 boolean 或 Inherit: auto。

# 版本历史记录

  • 在 2024b 之前推出

# 限制信息

  1. 暂不支持对输入指定基于采样或基于帧的处理;
  2. 输入信号暂不支持 int64、uint64、built-in integer 和 floating point 的数据类型,输出信号暂不支持 float、double、int8、int16、int32、int64、uint8、uint16、uint32、uint64、fixedPoint、enum 和 bus 的数据类型。

# 另请参阅

DetectDecrease | DetectFallNegative | DetectFallNonpositive | DetectIncrease | DetectRiseNonnegative | DetectRisePositive