# DetectRiseNonnegative


检测信号值上升到非负值的情况,且其前一个值是严格负值。

库: Sysblock模块库 / LogicAndBitOperation

# 描述

DetectRiseNonnegative 模块用于判断输入信号是否大于或等于零,且其前一个值小于零。

  • 当输入信号大于或等于零,且其前一个值小于零时,输出为真(等于 1);
  • 当输入信号小于零,或者输入信号是非负的,其前一个值也是非负的,输出为假(等于 0)。

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

# 示例

参考模型示例

# 示例说明

  • Step 模块:用于提供随时间变化的输入信号。在这个例子中,信号从 -1 开始,在仿真开始时立即跳变到 1;
  • DetectRiseNonnegative 模块:用于检测输入信号何时从非正值上升到正值。当信号值从非正值上升到正值时,输出 1(真);
  • Scope 模块:用于显示模型的输出。在这个例子中,它显示了从非正值上升到正值检测的结果,即输入信号何时从非正值上升到正值。

# 端口

# 输入

u — 输入信号
标量 | 向量 | 矩阵

输入信号,可以是标量、向量或矩阵。

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

# 输出

y — 输出信号
0 | 1

输出信号,表示信号值上升到非负值的情况,可以是标量、向量或矩阵。

  • 当输入信号大于或等于零,且其前一个值小于零时,输出为真(等于 1);
  • 当输入信号小于零,或者输入信号是非负的,其前一个值也是非负的,输出为假(等于 0)。

数据类型: boolean

# 参数

初始条件 — U/z >= 0 的初始条件
0 (默认) | 标量 | 向量 | 矩阵

设置布尔表达式 U/z >= 0 的初始条件。

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

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

# 版本历史记录

  • 在 2024b 之前推出

# 限制信息

  1. 暂不支持对输入指定基于采样或基于帧的处理;
  2. 输入信号暂不支持 int64 和 uint64 的数据类型,输出信号暂不支持 uint8 的数据类型。

# 另请参阅

DetectChange | DetectDecrease | DetectFallNegative | DetectFallNonpositive | DetectIncrease | DetectRisePositive