Main Content

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

Zero-Pole

通过零极点增益传递函数进行系统建模

  • 库:
  • Simulink / Continuous

  • Zero-Pole block

说明

Zero-Pole 模块可以为您使用零点、极点和拉普拉斯域传递函数增益定义的系统进行建模。此模块可为单输入单输出 (SISO) 和单输入多输出 (SIMO) 系统建模。

使用此模块的条件

Zero-Pole 模块假定满足以下条件:

  • 传递函数的格式为

    H(s)=KZ(s)P(s)=K(sZ(1))(sZ(2))(sZ(m))(sP(1))(sP(2))(sP(n)),

    其中 Z 表示零点,P 表示极点,K 表示传递函数增益。

  • 极点数必须大于或等于零点数。

  • 如果极点和零点为复数,它们必须是复共轭对组。

  • 对于多输出系统,所有传递函数必须具有相同的极点。零点的值可以不同,但每个传递函数的零点数必须相同。

注意

当传递函数具有不同的零点数或者每个传递函数只有一个零点时,不能使用一个 Zero-Pole 模块建立多输出系统模型。使用多个 Zero-Pole 模块建立此类系统模型。

为单输出系统建模

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

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

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

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

为多输出系统建模

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

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

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

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

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

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

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

传递函数在模块上的显示

Zero-Pole 模块根据您如何指定零点、极点和增益参数来显示传递函数。

  • 如果这两个参数指定为表达式或向量,模块将显示具有指定的零点、极点和增益的传递函数。如果在括号中指定变量,模块将计算变量。

    例如,如果您将 Zeros 指定为 [3,2,1],将 Poles 指定为 (poles)(其中 poles[7,5,3,1]),并将 Gain 指定为 gain,则模块将如下所示。

  • 如果将这两个参数指定为变量,模块将根据需要显示后跟 (s) 的变量名称。

    例如,如果您将 Zeros 指定为 zeros,将 Poles 指定为 poles,并将 Gain 指定为 gain,则模块将如下所示:

端口

输入

全部展开

输入信号,指定为数据类型为 double 的标量。

数据类型: double

输出

全部展开

由零极点增益传递函数进行建模的系统,是数据类型为 double 的标量或向量信号。

  • 对单输出系统建模时,模块输出标量时域信号。有关详细信息,请参阅为单输出系统建模

  • 对多输出系统建模时,模块输出向量,其中每个元素都是系统的一个输出。有关详细信息,请参阅为多输出系统建模

数据类型: double

参数

全部展开

定义全零矩阵。

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

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

编程用法

模块参数:Zeros
类型:字符向量、字符串
值:向量 | 矩阵
默认值:'[1]'

定义极点向量。

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

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

编程用法

模块参数:Poles
类型:字符向量、字符串
值:向量
默认值:'[0 -1]'

定义增益向量。

  • 对于单输出系统,输入传递函数的 1×1 增益向量。

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

编程用法

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

用于计算模块状态的绝对容差,指定为正值、实数值、标量或向量。要从 Configuration Parameters 继承绝对容差,请指定 auto-1

  • 如果输入实数标量,则在计算所有模块状态时,该值会覆盖 Configuration Parameters 对话框中的绝对容差。

  • 如果输入实数向量,则该向量的维度必须匹配模块中连续状态的维度。这些值将覆盖 Configuration Parameters 对话框中的绝对容差。

  • 如果输入 auto 或 -1,则 Simulink® 会使用 Configuration Parameters 对话框中的绝对容差值(请参阅Solver 窗格)来计算模块状态。

编程用法

模块参数: AbsoluteTolerance
类型:字符向量、字符串
值:'auto' | '-1' | 任何正实数值标量或向量
默认值:'auto'

为每个状态分配唯一名称。如果此字段为空 (' '),则不会分配任何名称。

  • 要为单个状态分配名称,请输入名称并用引号引起来,例如 'position'

  • 要为多个状态分配名称,请输入以逗号分隔的列表并用花括号括起来,例如 {'a', 'b', 'c'}。每个名称都必须是唯一的。

  • 要在 MATLAB® 工作区中分配带变量的状态名称,请输入不带引号的变量。变量可以是字符向量、字符串、元胞数组或结构体。

限制

  • 状态名称只会应用于所选模块。

  • 状态数量必须能够被状态名称的数量均分。

  • 指定的名称数量可以少于状态数量,但不能多于状态数量。

    例如,可以在具有四个状态的系统中指定两个名称。第一个名称应用于前两个状态,第二个名称应用于后两个状态。

编程用法

模块参数:ContinuousStateAttributes
类型:字符向量、字符串
值:' ' | 用户定义
默认值:' '

模块特性

数据类型

double

直接馈通

多维信号

可变大小信号

过零检测

扩展功能

另请参阅

主题

在 R2006a 之前推出