本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

Abs

输出输入信号的绝对值

  • 库:
  • Simulink / Math Operations

    HDL Coder / HDL Floating Point Operations

    HDL Coder / Math Operations

说明

Abs 模块输出输入信号的绝对值。

对于有符号整数数据类型,最小负值的绝对值无法用该数据类型表示。在这种情况下,由 Saturate on integer overflow 复选框控制模块的行为。

如果您...模块将...而且...
选中此复选框饱和处理为该整数数据类型的最大正值
  • 对于 8 位有符号整数,-128 对应为 127。

  • 对于 16 位有符号整数,-32768 对应为 32767。

  • 对于 32 位有符号整数,-2147483648 对应为 2147483647。

不选中此复选框绕回到该整数数据类型的最小负值
  • 对于 8 位有符号整数,-128 依然是 -128。

  • 对于 16 位有符号整数,-32768 依然是 -32768。

  • 对于 32 位有符号整数,-2147483648 依然是 -2147483648。

Abs 模块支持过零检测。但是,当您在对话框中选择 Enable zero-crossing detection 时,该模块不会在 Fixed-Point Tool 中报告仿真最小值或最大值。如果您要使用 Fixed-Point Tool 来分析模型,请先对模型中的所有 Abs 模块禁用过零检测。

端口

输入

全部展开

绝对值模块的输入信号。

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

输出

全部展开

输入信号的绝对值。

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

参数

全部展开

Main

选择此项以启用过零检测。有关详细信息,请参阅 中的过零检测

编程用法

模块参数ZeroCross
类型:字符向量、字符串
'off' | 'on'
默认值'on'

将采样时间指定为 -1 以外的值。有关详细信息,请参阅指定采样时间

依存关系

此参数不可见,除非将其显式设置为 -1 以外的值。要了解详细信息,请参阅不建议设置采样时间的模块

编程用法

模块参数:SampleTime
类型:字符向量
值:标量或向量
默认值:'-1'

Signal Attributes

点击 Show data type assistant 按钮 以显示 Data Type Assistant,帮助您设置数据类型参数。有关详细信息,请参阅使用 Data Type Assistant 指定数据类型

Simulink® 检查的输出范围的下限值。

Simulink 使用最小值执行下列操作:

注意

Output minimum 不会饱和或剪切实际输出信号。请改用 Saturation 模块。

编程用法

模块参数OutMin
类型:字符向量
'[ ]'| 标量
默认值'[ ]'

Simulink 检查的输出范围的上限值。

Simulink 使用最大值执行下列操作:

注意

Output maximum 不会饱和或剪切实际输出信号。请改用 Saturation 模块。

编程用法

模块参数OutMax
类型:字符向量
'[ ]'| 标量
默认值'[ ]'

为输出选择数据类型。该类型可以继承、直接指定或表示为数据类型对象,如 Simulink.NumericType

编程用法

模块参数OutDataTypeStr
类型:字符向量
'Inherit: Same as input''Inherit: Inherit via back propagation''single''int8''uint8'int16'uint16''int32''uint32''int64''uint64'fixdt(1,16,0)、“fixdt(1,16,2^0,0)”、fixdt(1,16,2^0,0)'<data type expression>'
默认值'Inherit: Same as input'

选择此参数可防止定点工具覆盖您在模块上指定的 Output 数据类型。有关详细信息,请参阅Use Lock Output Data Type Setting (Fixed-Point Designer)。

编程用法

模块参数:LockScale
类型:字符向量
值:'off' | 'on'
默认值:'off'

指定定点运算的舍入模式。有关详细信息,请参阅Rounding (Fixed-Point Designer)。

模块参数始终舍入到最接近的可表示值。要控制模块参数的舍入方法,请在封装字段中使用 MATLAB® 舍入函数输入表达式。

编程用法

模块参数:RndMeth
类型:字符向量
值:'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero'
默认值:'Floor'

如果选中此复选框,饱和将应用于模块中的每个内部操作,而不仅仅应用于输出或结果。一般情况下,代码生成进程可以检测到何时不可能发生溢出。在这种情况下,代码生成器不会生成饱和代码。

操作执行此操作的原因发生的情况示例
选中此复选框。您的模型可能有溢出,并且您希望在生成的代码中具有显式饱和保护。溢出将饱和处理为数据类型可以表示的最大值。数字 130 不适合一个有符号 8 位整数,因此饱和处理为 127。
不选中此复选框。您需要优化所生成代码的效率。溢出会绕回到由数据类型表示的适当值。数字 130 不适合一个有符号 8 位整数,因此绕回 -126。

编程用法

模块参数SaturateOnIntegerOverflow
类型:字符向量
'off' | 'on'
默认值'off'

模块特性

数据类型

double | fixed point | integer | single

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

PLC 代码生成
使用 Simulink® PLC Coder™ 生成结构化文本代码。

定点转换
使用 Fixed-Point Designer™ 设计和仿真定点系统。

另请参阅

|

在 R2006a 之前推出