Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

Constant

生成常量值

  • 库:
  • Simulink / Commonly Used Blocks

    Simulink / Sources

    DSP System Toolbox / Sources

    HDL Coder / Commonly Used Blocks

    HDL Coder / Sources

  • Constant block

说明

Constant 模块生成实数或复数常量值信号。使用此模块提供常量信号输入。此模块是生成标量、向量还是混合输出要取决于:

  • Constant value 参数的维度

  • Interpret vector parameters as 1-D 参数的设置

此模块的输出与 Constant value 参数具有相同的维度和元素。如果为此参数指定向量,即您希望模块将其解析为向量,请选中 Interpret vector parameters as 1-D 复选框。否则,如果为 Constant value 参数指定了向量,模块会将该向量视为一个矩阵。

提示

要输出常量枚举值,请考虑改用 Enumerated Constant 模块。Constant 模块提供不适用于枚举类型的模块参数,例如 Output minimumOutput maximum

使用总线对象作为输出数据类型

Constant 模块支持使用非虚拟总线作为输出数据类型。使用总线对象作为输出数据类型可以帮助简化您的模型。如果使用总线对象作为输出数据类型,请将 Constant value 设置为 0 或者与该总线对象匹配的 MATLAB® 结构体。

对总线的常量值使用结构体

您指定的结构体中必须为总线对象所代表的总线中的每个元素包含一个值。模块输出为非虚拟总线信号。

您可以使用 Simulink.Bus.createMATLABStruct 创建一个与总线对应的完全结构体。

也可以使用 Simulink.Bus.createObject 从 MATLAB 结构体中创建一个总线对象。

如果输出总线中的信号元素使用除 double 之外的其他数字数据类型,则您可以通过使用类型化表达式(例如 uint16(37))或非类型化表达式(例如 37)来指定结构体字段。要控制字段数据类型,您可以使用总线对象作为 Simulink.Parameter 对象的数据类型。要决定是使用类型化表达式还是非类型化表达式,请参阅Control Data Types of Initial Condition Structure Fields

设置配置参数以支持使用总线对象数据类型

要允许使用总线对象作为输出数据类型,请在开始仿真之前,将 Configuration Parameters > Diagnostics > Data Validity > Advanced parameters > Underspecified initialization detection 设置为 “Simplified”。有关详细信息,请参阅 Underspecified initialization detection

端口

输出

全部展开

常量值,指定为实数或复数值标量、向量、矩阵或 N 维数组。默认情况下,Constant 模块输出的信号与 Constant value 参数具有相同的维度、数据类型和复/实性。但是,您可以为输出指定 Simulink® 支持的任何数据类型,包括定点和枚举数据类型。

注意

如果您指定总线对象作为此模块的数据类型,请不要为模块的总线数据设置最大值。因为 Simulink 会忽略此设置。但请为指定作为数据类型的总线对象的总线元素设置最大值。有关详细信息,请参阅 Simulink.BusElement

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

参数

全部展开

Main

为模块指定常量值输出。

  • 您可以输入 MATLAB 以矩阵方式运算的任何表达式,包括布尔关键字 truefalse

  • 如果您将 Output data type 设置为总线对象,则可以指定下列选项之一:

    • 与总线对象对应的完整的 MATLAB 结构体

    • 0,以表示与总线对象的接地值对应的结构体

    有关详细信息,请参阅使用总线对象作为输出数据类型

  • 对于非总线数据类型,Simulink 使用最近舍入方法和饱和溢出操作,自动将此参数从其值数据类型转换为指定的输出数据类型。

编程用法

模块参数Value
类型:字符向量
值:标量 | 向量 | 矩阵 | N 维数组
默认值:'1'

如果 Constant value 参数的计算结果为包含 N 个元素的行或列向量,选中此复选框将输出长度为 N 的向量。

  • 如果 Constant value 参数的计算结果为包含 N 个元素的行或列向量,则选中此复选框时,模块将输出长度为 N 的向量。例如,模块将输出 1-by-N 维或 N-by-1 维矩阵。

  • 如果 Constant value 参数的计算结果为包含 N 个元素的行或列向量,则清除此复选框时,模块不输出长度为 N 的向量。

编程用法

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

指定仿真过程中 Constant 模块输出可以更改(例如,由于调整了 Constant value 参数)的时间间隔。

默认值 inf 表示模块输出永不更改。此设置可通过避免重新计算模块输出,加快仿真和代码生成速度。

有关详细信息,请参阅 指定采样时间

编程用法

模块参数SampleTime
类型:字符向量
:标量 | 向量
默认值'inf'

Signal Attributes

将 Simulink 检查的输出范围的下限值指定为有限的双精度实数标量值。

注意

如果您指定总线对象作为此模块的数据类型,请不要为模块上的总线数据设置最小值。因为 Simulink 会忽略此设置。但请为指定作为数据类型的总线对象的总线元素设置最小值。有关总线元素的 Minimum 参数的信息,请参阅 Simulink.BusElement

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

注意

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

编程用法

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

将 Simulink 检查的输出范围的上限值指定为有限的双精度实数标量值。

注意

如果您指定总线对象作为此模块的数据类型,请不要为模块的总线数据设置最大值。因为 Simulink 会忽略此设置。但请为指定作为数据类型的总线对象的总线元素设置最大值。有关总线元素的 Maximum 参数的信息,请参阅 Simulink.BusElement

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

注意

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

编程用法

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

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

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

编程用法

模块参数:OutDataTypeStr
类型:字符向量
值:'Inherit: Inherit from 'Constant value'' | 'Inherit: Inherit via back propagation' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'Enum: <class name>' | 'Bus: <object name>'
默认值:'Inherit: Inherit from 'Constant value''

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

编程用法

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

模块特性

数据类型

Boolean | bus | double | enumerated | fixed point | half | integer | single

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

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

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

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

在 R2006a 之前推出