Main Content

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

Discrete Zero-Pole

对由离散传递函数的零点和极点定义的系统建模

  • 库:
  • Simulink / Discrete

  • Discrete Zero-Pole block

Description

Discrete Zero-Pole 模块对由 z 域传递函数的零点、极点和增益定义的离散系统建模。此模块假定传递函数具有以下形式:

H(z)=KZ(z)P(z)=K(zZ1)(zZ2)...(zZm)(zP1)(zP2)...(zPn),

其中 Z 表示零点向量,P 表示极点向量,K 表示增益。极点数必须大于或等于零点数 (n ≥ m)。如果极点和零点为复数,它们必须是复共轭对组。

该模块根据参数的指定方式显示传递函数。有关详细信息,请参阅 Zero-Pole

为单输出系统建模

对于单输出系统,模块的输入和输出是标量时域信号。要为此系统建模,请执行以下操作:

  1. Zeros 字段中输入传递函数的零点向量。

  2. Poles 字段中输入传递函数的极点向量。

  3. Gain 字段中输入传递函数的 1×1 增益向量。

为多输出系统建模

对于多输出系统,模块输入为标量,输出为向量,其中每个元素都是系统的一个输出。要为此系统建模,请执行以下操作:

  1. Zeros 字段中输入全零矩阵。

    此矩阵的每一包含一个传递函数(将系统输入与一个输出相关联)的零点。

  2. Poles 字段中输入对系统的所有传递函数都通用的极点向量。

  3. Gain 字段中输入增益向量。

    每个元素代表对应的传递函数在 Zeros 中的增益。

输出向量的每个元素对应于 Zeros 中的一列。

端口

输入

全部展开

输入信号,指定为实数值标量。

数据类型: single | double

输出

全部展开

由离散传递函数的零点、极点和增益定义的系统的模型。输出的宽度等于 Zeros 矩阵中的列数,如果 Zeros 是向量,则为 1。

数据类型: single | double

参数

全部展开

Main

指定全零向量或全零矩阵。零点数量必须小于或等于极点数量。如果极点和零点为复数,它们必须是复共轭对组。

  • 对于单输出系统,输入传递函数的零点向量。

  • 对于多输出系统,输入矩阵。矩阵的每一列包含一个传递函数(将系统输入与一个输出相关联)的零点。

编程用法

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

指定极点向量。极点数必须大于或等于零点数。如果极点和零点为复数,它们必须是复共轭对组。

  • 对于单输出系统,输入传递函数的极点向量。

  • 对于多输出系统,输入对系统的所有传递函数通用的极点向量。

编程用法

模块参数:Poles
类型:字符向量
值:向量
默认值:'[0 0.5]'

指定由增益值构成的向量。

  • 对于单输出系统,输入一个标量或 1×1 向量作为传递函数的增益。

  • 对于多输出系统,输入增益向量。每个元素代表对应的传递函数在 Zeros 中的增益。

编程用法

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

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

编程用法

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

State Attributes

使用此参数为模块状态指定唯一名称。默认值为 ' '。如果此字段为空,则表示未指定任何名称。使用此参数时,请记住以下注意事项:

  • 有效的标识符以字母或下划线字符开始,后跟字母数字或下划线字符。

  • 状态名称仅适用于所选模块。

当您点击 Apply 时,此参数将启用 State name must resolve to Simulink signal object

有关详细信息,请参阅模型接口元素的 C 代码生成配置 (Simulink Coder)

编程用法

模块参数:StateName
类型:字符向量
值:唯一名称
默认值:''

选中此复选框会要求将状态名称解析为 Simulink® 信号对象。

依存关系

要启用此参数,请为 State name 指定值。仅当将模型配置参数 Signal resolution 设置为除 “None” 以外的值时,才会显示此参数。

选中此复选框将禁用 Code generation storage class

编程用法

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

通过选择目标包定义的信号对象类,来选择自定义存储类包。例如,要应用来自内置包 mpt 的自定义存储类,请选择 “mpt.Signal”。除非您将基于 ERT 的代码生成目标与 Embedded Coder® 一起使用,否则自定义存储类不会影响生成的代码。

要使用除 Simulink 包之外的存储类包,您必须将该包加载到模型的 Embedded Coder 字典中。请参阅Load Storage Class Packages into Embedded Coder Dictionary (Embedded Coder)

有关使用存储类配置模型数据的信息,请参阅模型接口元素的 C 代码生成配置 (Embedded Coder)。有关自定义存储类的信息,请参阅Organize Data into Structures in Generated Code (Embedded Coder)

编程用法

模块参数:StateSignalObject
类型:字符向量
值:'Simulink.Signal' | '<StorageClass.PackageName>'
默认值:'Simulink.Signal'

选择用于代码生成的状态存储类。

使用 Signal object classSimulink 以外的包中选择自定义存储类。

依存关系

要启用此参数,请为 State name 指定值。

编程用法

模块参数:StateStorageClass
类型:字符向量
值:'Auto' | 'Model default' | 'ExportedGlobal' | 'ImportedExtern' | 'ImportedExternPointer' | 'Custom' | ...
默认值:'Auto'

指定存储类型限定符,如 constvolatile

注意

在以后的版本中将删除 TypeQualifier。要将存储类型限定符应用于数据,请使用自定义存储类和内存段。除非您将基于 ERT 的代码生成目标与 Embedded Coder 一起使用,否则自定义存储类和内存段不会影响生成的代码。

在仿真期间,模块将使用以下值:

  • 状态名称解析成的信号对象的初始值

  • 信号对象的最小值和最大值

有关详细信息,请参阅数据对象

依存关系

要启用此参数,请将 Code generation storage class 设置为 “ExportedGlobal”、“ImportedExtern”、“ImportedExternPointer” 或 “Model default”。除非您以前为此参数设置了值,否则它将不会显示。

编程用法

模块参数:RTWStateStorageTypeQualifier
类型:字符向量
值:'' | 'const' | 'volatile' | ...
默认值:''

模块特性

数据类型

double | single

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

在 R2006a 之前推出