zpk公司

创建零极点增益模型;转换为零极点增益模型

句法

sys=Z P K(Z,P,K)
sys=Z p k(Z,p,k,Ts)
sys=zpk(米)
SYS = ZPK(Z,P,K,ltisys)
S = ZPK( 'S')
z=zpk('z',Ts)
zsys = ZPK(SYS)
zsys = ZPK(SYS, '测量')
zsys = ZPK(SYS, '噪音')
zsys=zpk(sys,'augmented')

说明

使用zpk公司打造零极点增益模型(zpk公司模型对象),或将动态系统转换为零极点增益形式。

零极点增益模型的建立

sys=Z P K(Z,P,K)创建了零的连续时间零极点增益模型ž,极P和增益(S)ķ. 输出系统是一个zpk公司存储模型数据的模型对象。

在西索案中,žP是实时或复数值的零点和极点的载体,以及ķ是实时或复数标量增益:

H 小号 = ķ 小号 ž 1 小号 ž 2 ... 小号 ž 小号 p 1 小号 p 2 ... 小号 p ñ

žp[]对于没有零或极点的系统。这两个向量的长度不必相等,模型也不必适当(即极点过多)。

要创建MIMO零极点增益模型,请指定该模型的每个SISO条目的零点、极点和增益。在这种情况下:

  • žP是向量的单元格数组,其行数与输出数相同,列数与输入数相同,以及ķ是一个矩阵,其行数与输出数相同,列数与输入数相同。

  • 向量ž{I,J}p {I,J}指定从输入的传递函数的零点和极点Ĵ输出一世

  • K(I,J)指定从输入传递函数的(标量)增益Ĵ输出一世

请参见下面的MIMO示例。

sys=Z p k(Z,p,k,Ts)利用采样时间建立离散时间零极点增益模型Ts公司(很快)。组TS = -1Ts=[]离开样品的时间不确定。输入参数žPķ如在连续时间的情况。

sys=zpk(米)指定一个静态增益中号

SYS = ZPK(Z,P,K,ltisys)创建一个从LTI模型继承与性质的零极点增益模型ltisys(包括采样时间)。

创建数组zpk公司模型对象,使用对于环,或者使用用于多维单元阵列žP,和多维数组ķ

前面的任何语法都可以后跟属性名/属性值对。

“属性名”的PropertyValue

每对指定模型的特定属性,例如输入名称或输入延迟时间。有关的属性的详细信息zpk公司模型对象,见属性. 请注意

sys=Z P K(Z,P,K,'Property1',Value1,…,'PropertyN',ValueN)

为下面的命令序列的快捷方式。

sys=Z P K(Z,P,K)集合(sys,'Property1',Value1,…,'PropertyN',ValueN)

零极点增益模型在s或z中的有理表达式

您还可以使用有理式创建ZPK模型。要么做到这一点,第一种类型:

  • S = ZPK( 'S')要使用Laplace变量中的有理函数指定ZPK模型,小号

  • z=zpk('z',Ts)指定与采样时间ZPK模型Ts公司在离散时间变量中使用有理函数,ž

一旦您指定了这些变量中的任何一个,您就可以在变量中直接将ZPK模型指定为有理表达式小号ž输入您的传递函数为在任何一个理性的表达小号ž

转换为零极点增益形式

zsys = ZPK(SYS)转换任意LTI模型系统零极点增益形式。输出zsys是一个ZPK对象。默认,zpk公司使用计算从状态空间转换为零极点增益时的零点。或者,

zsys=zpk(sys,'inv')

使用状态空间模型的反演公式来计算零点。对于低增益的高阶模型,该算法速度较快,但精度较低小号= 0。

已识别模型的转换

所标识的模型由以下形式的输入 - 输出方程表示y(t)=Gu(t)+He(t),其中u(吨)是该组测量输入通道和e(吨)表示噪声信道。如果λ=将表示噪声的协方差e(吨),这个公式也可以写成Y(T)=谷(T)+ HLV(t)的,其中COV(V(t))的= I

zsys = ZPK(SYS),或zsys = ZPK(SYS, '测量')转换标识的线性模型进ZPK形式的测量组件。系统是类型的模型IDSSidproc公司IDTFidpoly公司,或艾德格雷zsys表示üÿ

zsys = ZPK(SYS, '噪音')转换标识的线性模型进ZPK形式的噪声分量。它代表了噪声输入之间的关系,V(t)的和输出,y_噪声=HL v(t)。噪声的输入通道属于InputGroup'噪声'. 噪声输入通道的名称为V□的yname,其中yname是相应的输出信道的名称。zsys具有一样多的输入为输出。

zsys=zpk(sys,'augmented')将测量和噪声动力学转换为ZPK模型。zsys纽约+nu输入使第一个NU输入代表通道u(吨)而通过通道其余表示噪声信道V(t)的zsys.InputGroup输入组包含2个输入组,'测量'“噪音”zsys.InputGroup.Measured值设置为1:NUzsys.InputGroup.Noise设置为nu+1:nu+ny。zsys公司表示公式y(t)=[G HL][u;v]

小费

识别出的非线性模型无法被转换成一个ZPK系统。使用线性近似函数,如线性化利纳普

变量选择

至于转移功能,您可以指定在零极点增益模型显示可使用的变数。可用的选项包括小号(默认)和p连续时间模型,ž(违约),ž-1q-1(相当于ž-1), 要么q(相当于ž)离散时间模型。重新分配'变量'属性覆盖默认值。更改变量只影响零极点增益模型显示。

属性

zpk公司对象具有以下属性:

ž

系统零。

ž属性存储的传递函数的零(分子根)。对于SISO模型,ž是包含零的向量。对于MIMO模型纽约输出和怒族输入,ž是一个纽约-由-怒族每个输入/输出对的零向量的单元数组。

P

系统极点。

P属性存储传递函数极点(分母根)。对于SISO模型,P是含有两极的载体。对于MIMO型号纽约输出和怒族输入,P是一个纽约-由-怒族磁极为每个输入/输出对向量的单元阵列。

ķ

系统增益。

ķ属性存储传递函数增益。对于SISO型号,ķ是标量值。对于MIMO型号纽约输出和怒族输入,ķ是一个纽约-由-怒族存储每个输入/输出对增益的矩阵。

显示格式

指定的分子和分母多项式因式分解如何用于显示目的。

分子和分母多项式分别显示为第一级和第二级的因素的产物。显示格式控制这些因素的显示。显示格式可以采用以下值:

  • '根'(默认)-根据多项式根的位置显示因子。

  • '频率'- 显示因素根自然频率计ω0和阻尼比ζ

    '频率'显示格式不适用于离散时间型号变量价值'Z ^ -1''问题^-1'

  • '时间常数'- 显示因素根时间常数而言τ和阻尼比ζ

    '时间常数'显示格式不适用于离散时间型号变量价值'Z ^ -1''问题^-1'

对于连续时间模型,下表显示了如何多项式因子被写入在各显示格式。

显示名称 一阶因子(实根[R 二阶因子(复数根对[R=一个±JB
'根' 小号-[R 小号2-αs+β),其中α= 2一个β=一个2+b2
'频率' (1-小号/ω0),其中ω0=[R 1 - 2ζ小号/ω0) + (小号/ω02,其中ω02=一个2+b2ζ=一个/ω0
'时间常数' (1-τS),其中τ= 1 /[R 1 - 2ζτS) + (τS2,其中τ= 1 /ω0ζ=

对于离散时间模型,多项式因子以连续时间形式写入,具有以下变量替换:

小号 w ^ = ž 1 Ť 小号 ; [R [R 1 Ť 小号

哪里Ť小号是采样时间。在离散时间内,τω0与等效连续时间根的时间常数和固有频率紧密匹配,前提是|ž-1 |«Ť小号ω0«π/Ť小号=奈奎斯特频率)。

默认:'根'

变量

传递函数显示变量,指定为以下情况之一:

  • 'S'- 默认为连续时间模型

  • 'Z'-离散时间模型的默认值

  • 'P'-相当于'S'

  • 'Q'-相当于'Z'

  • 'Z ^ -1'-倒数'Z'

  • '问题^-1'-相当于'Z ^ -1'

的价值变量只影响zpk公司模型。

默认:'S'

碘油

运输延误。碘油是一个数字数组,为每个输入/输出对指定单独的传输延迟。

对于连续时间系统中,存储在所述的时间单位指定传输延迟时间单位财产。对于离散时间系统,以采样时间的整数倍指定传输延迟,Ts公司

对于MIMO系统纽约输出和怒族输入,设置碘油给一个纽约-由-怒族阵列。这个阵列的每个条目是表示用于相应的输入/输出一对传送延迟的数值。您还可以设置碘油对标量值应用相同的延迟到所有输入/输出对。

默认:0对所有的输入/输出对

InputDelay

每个输入通道的输入延迟,指定为标量值或数值向量。对于连续时间系统,在存储在时间单位财产。对于离散时间系统,以采样时间的整数倍指定输入延迟Ts公司。例如,输入延迟=3装置的三个采样时间的延迟。

对于具有系统怒族输入,设置InputDelay怒族×1向量。该向量中的每个条目是表示用于相应输入通道的输入延迟的数值。

您还可以设置InputDelay一个标值应用相同的延迟到所有通道。

默认:0

OutputDelay

输出延迟。OutputDelay是一个数值向量指定为每个输出信道的时间延迟。对于连续时间系统中,存储在所述的时间单位指定输出延迟时间单位属性。对于离散时间系统中,指定的采样时间的整数倍的延迟输出Ts公司。例如,输出延迟=3装置的三个采样周期的延迟。

对于具有系统纽约输出,组OutputDelay纽约×1矢量,其中每个条目是表示用于相应的输出信道的输出延迟的数值。您还可以设置OutputDelay一个标值应用相同的延迟到所有通道。

默认:0表示所有输出通道

Ts公司

采样时间。对于连续时间模型,TS = 0. 对于离散时间模型,Ts公司是表示采样周期的正标量。该值以时间单位模型的属性。若要表示具有未指定采样时间的离散时间模型,请设置TS = -1

更改此属性不会使模型离散化或重新采样。使用c2d型D2C对连续 - 离散时间之间转换。采用D2D改变一个离散时间系统的采样时间。

默认:0(连续时间)

时间单位

时间变量的单位,采样时间Ts公司和模型中的任何时间延迟,指定为下列值之一:

  • “纳秒”

  • '微秒'

  • “毫秒”

  • “秒”

  • '分钟'

  • '小时'

  • '天'

  • “周”

  • '月'

  • '年'

更改此属性不会影响其他属性,因此会更改整个系统行为。使用chgTimeUnit时间单位之间的转换,而无需修改系统行为。

默认:“秒”

InputName

输入信道的名称,指定为以下情况之一:

  • 字符向量 - 对于单输入模式,例如,“控制”

  • 字符向量的单元阵列 - 对于多输入模型。

可替代地,使用自动向量扩展到多输入的模型分配输入名称。例如,如果系统是一个双输入模式,输入:

sys.InputName = '控制';

输入名称自动扩展为{'controls(1)';'controls(2)}

您可以使用速记符号ü参考InputName属性。例如,系统u相当于系统输入名

输入频道名称有多种用途,包括:

  • 模型显示和图形上确定信道

  • 提取MIMO系统的子系统

  • 互连模型时指定连接点

默认:“”所有输入通道

InputUnit

输入信道单元,指定为以下情况之一:

  • 字符向量 - 对于单输入模式,例如,“秒”

  • 字符向量的单元阵列 - 对于多输入模型。

采用InputUnit跟踪输入信号单元。InputUnit对系统行为没有影响。

默认:“”所有输入通道

InputGroup

输入通道组。这个InputGroup属性可以指定MIMO系统的输入通道进行分组,并通过名称来引用每个组。指定输入的基团的结构。在这种结构中,字段名是组名称和字段值是属于各组的输入通道。例如:

sys.InputGroup.controls = [1 2];sys.InputGroup.noise = [3-5];

创建名为控制噪声分别包括输入通道1、2和3、5。然后可以从控制输入到使用所有输出:

SYS(:, '对照')

默认:没有域结构

OutputName

输出通道名称,指定为以下之一:

  • 特征向量 - 对于单输出模式。例如,'测量'

  • 字符向量的单元阵列 - 对于多输出模式。

可替代地,使用自动向量扩展为多输出模式分配输出名称。例如,如果系统是双输出模型,请输入:

sys.OutputName = '测量';

输出名称自动扩展为{ '测量(1)'; '测量(2)'}

您可以使用速记符号ÿ参考OutputName属性。例如,系统y相当于系统输出名称

输出通道的名称有多种用途,包括:

  • 模型显示和图形上确定信道

  • 提取MIMO系统的子系统

  • 互连模型时指定连接点

默认:“”对于所有输出通道

OutputUnit

输出信道单元,指定为以下情况之一:

  • 特征向量 - 对于单输出模式。例如,“秒”

  • 字符向量的单元阵列 - 对于多输出模式。

采用OutputUnit跟踪输出信号单元。OutputUnit对系统行为没有影响。

默认:“”对于所有输出通道

OutputGroup

输出信道组。该OutputGroup属性可以将MIMO系统的输出信道分配到组中,并按名称引用每个组。将输出组指定为结构。在这个结构中,字段名是组名,字段值是属于每个组的输出通道。例如:

系统输出组温度=[1];系统输入组测量=[35];

创建一个名为输出组温度测量分别包括输出信道1和3、5。然后,您可以从测量输出使用:

sys('测量',:)

默认:没有域结构

姓名

系统名,指定为字符向量。例如,'系统'1'

默认:“”

笔记

要与系统关联的任何文本,存储为字符串或字符向量的单元格数组。属性存储您提供的任何数据类型。例如,如果系统1系统2是动态的系统模型,你可以设置自己的笔记属性如下:

系统1.注释=“sys1有一个字符串。”;系统2.注释=“sys2有一个字符向量。”;系统1.Notes系统2.Notes
ANS = “SYS1有一个字符串”。ANS =“SYS2具有字符向量”。

默认:[0×1串]

用户数据

要与系统关联的任何类型的数据,指定为任何MATLAB®数据类型。

默认:[]

采样点

模型数组的采样网格,指定为数据结构。

对于由采样一个或多个自变量导出模型阵列,此属性跟踪与阵列中的每个模型相关联的变量的值。显示或打印模型阵列时将显示此信息。使用此信息将结果追溯到自变量。

将数据结构的字段名设置为采样变量的名称。将字段值设置为与数组中的每个模型关联的采样变量值。所有采样变量应为数值和标量值,所有采样值数组应与模型数组的维数匹配。

例如,假设在创建11×1阵列线性模型,sysarr公司通过在次服用的线性时变系统的快照T = 0:10. 下面的代码用线性模型存储时间样本。

sysarr.SamplingGrid系统=结构('时间',0:10分)

类似地,假设您创建了一个6乘9的模型数组,中号,通过独立地采样两个变量泽塔w ^。以下代码将在(泽塔,w)中号

的ζ,W] = ndgrid(<ζ电的6个值>,)M.SamplingGrid =结构(“泽塔”,泽塔,'W',西)

当你展示中号中,阵列中的每个条目包括对应的泽塔w ^价值观。

中号
M(:,:,1,1)[zeta=0.3,w=5]=25--------s^2+3s+25m(:,:,2,1)[zeta=0.35,w=5]=25--------s^2+3.5s+25。。。

对于由线性化的Simulink生成的模型阵列万博1manbetx®在多个参数值或操作点上建模,软件将填充采样点自动使用与数组中每个项对应的变量值。例如万博1manbetxSimulink控制设计™命令线性化slLinearizer填入采样点通过这种方式。

默认:[]

实例

实施例1

创建连续时间SISO传输函数:

H 小号 = 2 小号 小号 1 + Ĵ 小号 1 Ĵ 小号 2

创建H小号)作为zpk公司对象使用:

h=zpk(0,[1-i 1+i 2],-2);

实施例2

指定以下单输入双输出零极点增益模型:

H ž = [ 1 ž 0.3分 2 ž + 0.5分 ž 0.1分 + Ĵ ž 0.1分 Ĵ ]

要做到这一点,请输入:

Z={[];-0.5};P={0.3;[0.1+i 0.1-i]};K=[1;2];H=zpk(Z,P,K,-1);%未指定采样时间

实施例3

转换的传递函数

h=tf([-10 20 0],[1 7 20 28 19 5]);

零极点增益形式,使用:

ZPK(H)

此命令返回结果:

零/极/增益:-10 S(S-2)----------------------(S + 1)^ 3(S ^ 2 + 4S +5)

实施例4

从变量中的有理表达式创建离散时间ZPK模型ž

z=zpk('z',0.1);H=(z+.1)*(z+.2)/(z^2+.6*z+.09)

此命令返回以下结果:

零/极/增益:(Z + 0.1)(Z + 0.2)---------------(Z + 0.3)^ 2采样时间:0.1

实施例5

创建MIMOzpk公司使用由零和极点组成的单元阵列建模。

创建双输入双输出零极点增益模型

H 小号 = [ 1 小号 3 小号 + 小号 + 1 2 2 小号 2 2 小号 + 2 小号 1 小号 2 小号 3 0 ]

输入:

Z={[],-5;[1-i 1+i][]};P={0,[-1-1];[1 2 3],[]};K=[-1 3;2 0];H=zpk(Z,P,K);

采用[]作为一个占位符žP当对应的条目H小号)没有零或极点。

实施例6

将识别出的多项式模型的测量和噪声分量提取为两个独立的ZPK模型。前者可作为被控对象模型,后者可作为控制系统设计的扰动模型。

加载内燃机整机Z = IDDATA(Y,U,0.04);NB = 2;NF = 2;NC = 1;ND = 3;NK = 3;SYS = BJ(Z,[NB NC ND NF NK]);

系统是以下形式的模型,Y(T)= B / F U(T)+ C / d E(t)的,其中B / F代表测得的组分和光盘的噪声成分。

sysMeas = ZPK(SYS, '测量')

另外,使用可以简单地使用zpk(系统)以提取测量组件。

sys noise=zpk(sys,'noise')

算法

zpk公司使用MATLAB功能转换传递函数和函数转换状态空间模型。

R2006a前推出