主要内容

idtf.

具有可识别参数的传递函数模型

描述

一个idtf.模型表示作为连续时间或离散时间传递函数的系统,具有可识别(可估计)系数。用idtf.创建传送功能模型或转换动态系统模型转移功能表格。

SISO转移函数是具有指数术语的多项式之比。连续,

G S. = E. - τ. S. B. N S. N + B. N - 1 S. N - 1 + ...... + B. 0. S. m + 一种 m - 1 S. m - 1 + ...... + 一种 0.

在离散时间,

G Z. - 1 = Z. - K. B. N Z. - N + B. N - 1 Z. - N + 1 + ...... + B. 0. Z. - m + 一种 m - 1 Z. - m + 1 + ...... + 一种 0.

在离散时间,Z.-K.代表一个延迟的延迟kt.S., 在哪里T.S.是样本时间。

为了idtf.模型,分母系数一种0.,......,一种m-1和分子系数B.0.,......,B.N可以是可评估的参数。(前导分母系数始终固定为1.)时间延迟τ.(或者K.在离散时间中)也可以是可估计的参数。这idtf.模型存储多项式系数一种0.,......,一种m-1B.0.,......,B.N在里面分母分子分别模型的属性。延迟时间τ.K.存储在Iodelay.模型的属性。

不像IDS.Idpoly.idtf.将噪声参数固定为1而不是参数化。所以,在 y = G + H E. H= 1。

MIMO传递函数包含一个SISO传递函数,对应于系统中的每个输入输出对。为了idtf.模型,每个输入输出对的多项式系数和传输延迟是独立的可估计参数。

创建

你可以获得一个idtf.模型对象以三种方式之一。

  • 估计idtf.基于系统输入输出测量的模型TFEST..这TFEST.命令估计传输功能系数和传输延迟的值。估计值存储在分子分母,Iodelay.由此产生的属性idtf.模型。当您引用分子和分母属性时,您可以使用快捷方式数字den.这报告生成模型的属性存储有关估计的信息,例如处理估计中使用的初始条件和选项。例如,您可以使用以下命令估计并获取有关传输功能的信息。

    sys =特遣部队(数据、nx);num = sys.Numerator;穴= sys.den;sys。报告

    有关估计的更多例子idtf.模型,参见TFEST.

    当你获得一个idtf.模型通过估计,您可以从模型中提取估计的系数及其不确定性。为此,请使用命令如tfdata.getpar.,或getcov.

  • 创建一个idtf.模型使用idtf.命令。例如,创建一个idtf.模型与您指定的分子和分母。

    sys = idtf (num穴)
    你可以创建一个idtf.模型配置初始参数化以估计传输函数以拟合测量的响应数据。当您这样做时,您可以指定与分子和分母系数和传输延迟这样的值的约束。例如,您可以修复某些参数的值,或指定空闲参数的最小值或最大值。然后,您可以使用配置的模型作为输入参数TFEST.使用这些约束估计参数值。对于例子,见创建连续时间传输功能模型创建离散时间传递函数

  • 将现有的动态系统模型转换为idtf.模型使用idtf.命令。例如,转换状态空间模型sys_ss转移函数。

    sys_tf = iDTF(SYS_SS);
    有关更详细的例子,请参阅将可识别的状态空间模型转换为可识别的传输功能

有关功能的信息,您可以用来从或转换中提取信息idtf.模型对象,见对象功能

描述

创建传递函数模型

例子

SYS.= IDTF(分子,分母)创建具有可识别参数的连续时间传输功能模型。分子指定传输函数分子系数的当前值。分母指定传输函数分母系数的当前值。

例子

SYS.= IDTF(分子,分母,TS)创建具有采样时间的离散时间传输函数模型TS.

例子

SYS.= IDTF(___名称,价值使用该传输功能创建传输功能属性由一个或多个指定名称,价值对参数。在前面语法中的任何输入参数组合之后指定名称-值对参数。

将动态系统模型转换为传输功能模型

例子

SYS.= IDTF(SYS0.转换任何动态系统模型SYS0.idtf.模型形式。

输入参数

展开全部

任何转换为​​的动态系统idtf.模型。

什么时候SYS0.是一个识别的模型,其估计的参数协方差在转换期间丢失。如果要在转换期间转换估计的参数协方差,请使用翻译

特性

展开全部

传输函数分子系数的值,指定为行向量或单元数组。

对于SISO传输函数,按以下顺序作为行向量存储分子系数的值:

  • 下行的力量S.P.(用于连续时间传输函数)

  • 提升的能力Z.-1问:-1(用于离散时间传递函数)

初始值未知的任何系数存储为

用于MIMO传输功能纽约产出和nu.输入,分子是A.纽约-经过-nu.每个输入/输出对的分子系数的单元阵列。有关MIMO传输功能的示例,请参阅创建MIMO离散时间传输功能

如果你创建一个idtf.模型SYS.使用idtf.命令,sys.numerator.包含您使用的数字系数的初始值分子输入参数。

如果你获得了一个idtf.模型通过识别使用TFEST., 然后sys.numerator.包含分子系数的估计值。

idtf.模型SYS.,房地产sys.numerator.是属性价值的别名sys.Structure.Numerator.Value

传递函数分母系数的值,指定为行向量或小区阵列。

对于SISO传输函数,按以下顺序作为行向量存储分母系数的值:

  • 下行的力量S.P.(用于连续时间传输函数)

  • 提升的能力Z.-1问:-1(用于离散时间传递函数)

领先的系数分母固定为1.初始值未知的任何系数存储为

用于MIMO传输功能纽约产出和nu.输入,分母是一个纽约-经过-nu.每个输入输出对的小区分母系数阵列。有关MIMO传输功能的示例,请参阅创建MIMO离散时间传输功能

如果你创建一个idtf.模型SYS.使用idtf.命令,sys.denominator.函数指定的分母系数的初始值分母输入参数。

如果你获得了一个idtf.模型SYS.通过识别使用TFEST., 然后sys.denominator.包含分母系数的估计值。

idtf.模型SYS.,房地产sys.denominator.是属性价值的别名sys.structure.Denominator.Value.

传输函数显示变量,指定为以下值之一:

  • '- 连续时间模型默认

  • 'P'- 相当于'

  • 'z ^ -1'- 用于离散时间模型的默认值

  • 'q ^ -1'- 相当于'z ^ -1'

的价值多变的被反映在显示器中,并影响了对的解释分子分母用于离散时间模型的系数矢量。什么时候多变的设定为'z ^ -1''q ^ -1',系数向量按变量的升序幂进行排序。

有关使用的例子多变的财产,参见指定传输函数显示变量

传输延迟,指定为包含每个输入输出对的单独传输延迟的数字数组。

对于连续时间系统,运输延迟在存储在中的时间单位中表示TimeUnit财产。对于离散时间系统,传输延迟表示为表示示例时间倍增的整数TS.

用于MIMO系统纽约产出和nu.输入,集合Iodelay.作为A.纽约-经过-nu.大批。此阵列的每个条目是表示相应输入输出对的传输延迟的数值。你可以设置Iodelay.到标量值以向所有输入输出对应用相同的延迟。

如果你创建一个idtf.模型SYS.使用idtf.然后,命令sys.iodelay.包含使用名称值对参数指定的传输延迟的初始值。

如果你获得了一个idtf.模型SYS.通过识别使用TFEST., 然后sys.iodelay.包含运输延迟的估计值。

idtf.模型SYS.,房地产sys.iodelay.是属性价值的别名sys.structure.iodelay.Value.

有关可估计参数的特定财产信息idtf.模型,指定为单个结构或结构阵列。

  • SISO系统-单一结构。

  • MIMO系统与纽约产出和nu.输入 -纽约-经过-nu.大批。元素结构(I,J)包含对应于传输函数的信息(I,J)输入-输出。

结构。分子结构.Denominator.,结构包含分别包含有关分子系数,分母系数和传输延迟的信息。每个参数结构包含以下字段。

场地 描述 例子
价值 参数值。每个属性都是相应的别名价值进入结构财产SYS.表示未知的参数值。 sys.Structure.Numerator.Value包含SISO分子系数的初始或估计值。sys.numerator.是这个属性价值的别名。sys.numerator {i,j}是MIMO属性的别名吗sys.structure(i,j).numerator.value
最低限度 参数在估计期间可以假设的最小值。 sys.structure.iodelay.minimum = 0.1将传输延迟约束到大于或等于0.1的值。sys.structure.iodelay.minimum.必须大于或等于零。
最大 参数在估计期间可以假设的最大值。 sys.structure.iodelay.maximum = 0.5将传输延迟约束到小于或等于0.5的值。sys.structure.iodelay.maximum.必须大于或等于零。
自由 Boolean指定参数是否是免费估计变量。如果要修复估计期间参数的值,请设置相应的自由价值错误的.对于分母,价值自由对于指定的领先系数sys.structure.Denominator.Free(1),总是错误的(主要的分母系数始终固定为1)。 sys.structure.Denominator.Free = False.固定所有分母系数SYS.中指定的值sys.structure.Denominator.Value.
规模 参数值的比例。估计算法不使用规模
信息 包含字段的结构数组标签单位用于存储参数标签和单位。将参数标签和单位指定为字符向量。 '时间'

模型创新的差异(协方差矩阵)E.,指定为标量或矩阵。

  • SISO模型 - 标量

  • MIMO模型与Ny输出 -Ny-经过-Ny矩阵

识别的模型包括白色高斯噪声分量E.T.)。noisavariance.是该噪声分量的方差。通常,模型估计函数(例如TFEST.)决定了这个方差。

此属性是只读的。

摘要报告包含有关使用估计命令获得的传输函数模型的估计选项的信息,例如TFEST.冲动.用报告要找到已识别模型的评估信息,包括:

  • 估计方法

  • 估算选项

  • 搜索终止条件

  • 估计数据适合和其他质量指标

如果您通过施工创建模型,则内容报告是无关紧要的。

SYS = IDTF([1 4],[1 20 5]);sys.report.Optionsed.
ans = []

如果使用估计命令获取模型,则报告包含有关估计数据,选项和结果的信息。

加载iddata2.Z2;sys = tfest(z2,3);sys.report.Optionsed.
InitializeMethod: [1×1 struct] InitialCondition: 'auto' Display: 'off' InputOffset: [] OutputOffset: [] EstimateCovariance: 1 Regularization: [1×1 struct] SearchMethod: 'auto' SearchOptions: [1×1 idoptions.search.]identsolver] WeightingFilter: [] EnforceStability: 0 OutputWeight: [] Advanced: [1×1 struct]

有关此属性的更多信息以及如何使用它,请参阅相应估计命令参考页面的输出参数部分和估计报告

每个输入通道的输入延迟,指定为标量值或数字向量。对于连续时间系统,请在存储在中的时间单位中指定输入延迟TimeUnit财产。对于离散时间系统,请在图案时间的整数倍数中指定输入延迟TS..例如,设置inputdelay.3.指定三个采样时间的延迟。

适用于系统N输入,集合inputdelay.对A.N-by-1矢量。此向量的每个条目是表示相应输入通道的输入延迟的数值。

你也可以设置inputdelay.对标量值应用相同的延迟到所有通道。

估计差异inputdelay.作为模型的固定常数。评估使用Iodelay.估计时间延迟的财产。指定初始值和约束以估计时间延迟,使用sys.structure.iodelay.

对于识别的系统,例如idtf.outputdelay.固定为零。

采样时间,指定为以下之一。

  • 连续时间模型 -0.

  • 具有指定采样时间模型的离散时间模型 - 正标量标量表示在指定的单位中表示的采样周期TimeUnit模型的财产

  • 具有未指明采样时间的离散时间模型 --1

更改此属性不会离散或重新确定模型。用C2D.d2c在连续和离散时间表示之间转换。用d2d更改离散时间系统的采样时间。

单位为时间变量,采样时间TS.,以及模型中指定为标量的任何时间延迟。

更改此属性不会重新确定或转换数据。修改属性仅更改现有数据的解释。用chgTimeUnit将数据转换为不同的时间单位。

输入通道名称,指定为字符向量或单元格数组。

  • 单输入模型—例如,字符向量,'控制'

  • 多输入模型 - 字符向量单元阵列

或者,使用自动矢量扩展为多输入模型分配输入名称。例如,如果SYS.是一个双输入模型,输入:

sys.inputname.='控制';

输入名称自动展开{'控件(1)';'控件(2)'}

当您使用一个估计模型时iddata.目的数据,软件自动设置InputName.data.InputName.

您可以使用速记表示法参考InputName.财产。例如,sys.u.相当于sys.inputname.

您可以通过多种方式使用输入通道名称,包括:

  • 识别模型显示和绘图上的频道

  • 提取MIMO系统的子系统

  • 互连模型时指定连接点

输入通道单元,指定为字符向量或单元格数组。

  • 单输入模型 - 字符向量

  • 多输入模型 - 字符向量单元阵列

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

输入通道组,指定为结构。这InputGroup.属性允许您将MIMO Systems的输入通道分成组,以便您可以通过名称引用每个组。在里面InputGroup.结构,将字段名称设置为组名称,以及属于每个组的输入通道的字段值。

例如,创建名为的输入组控制噪音包括输入通道1,2和3,5。

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

然后,您可以从中提取子系统控制使用以下语法输入所有输出:

SYS(:,'控件')

输出通道名称,指定为字符向量或单元格数组。

  • 单输入模型—例如,字符向量,'测量'

  • 多输入模型 - 字符向量单元阵列

或者,使用自动矢量扩展为多输出模型分配输出名称。例如,如果SYS.是一个双输出模型,输入:

sys.outputname ='测量';

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

当您使用一个估计模型时iddata.目的数据,软件自动设置outputName.data.outputname.

您可以使用速记表示法y参考outputName.财产。例如,sys.y.相当于sys.outputname.

您可以通过多种方式使用输出通道名称,包括:

  • 识别模型显示和绘图上的频道

  • 提取MIMO系统的子系统

  • 互连模型时指定连接点

输出通道单元,指定为字符向量或单元格数组。

  • 单输入模型—例如,字符向量,'秒'

  • 多输入模型 - 字符向量单元阵列

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

输出通道组,指定为结构。这产量组属性允许您将MIMO Systems的输出通道划分为组,并按名称引用每个组。在里面产量组结构,将字段名称设置为组名称,以及属于每个组的输出通道的字段值。

例如,创建名为的输出组温度测量包括输出通道1和3,5。

sys.outputgroup.temperature = [1];sys.outputgroup.measurement = [3 5];

然后,您可以将子系统从所有输入中提取到测量使用以下语法输出:

SYS('测量',:)

例如,指定为字符向量的系统名称,'system_1'

您要与系统关联的任何文本,指定为字符串或字符向量阵列。该属性存储您提供的任何数据类型。例如,如果SYS1.SYS2.是动态系统模型,可以设置他们的笔记属性如下。

sys1.notes =.“sys1有一个字符串。”;sys2。Notes ='sys2有一个字符矢量。';sys1.notes sys2.notes.
ans =“sys1有一个字符串。”ans ='sys2有一个字符矢量。

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

为模型数组抽样网格,指定为一个结构。

对于通过抽样一个或多个自变量而派生的已识别线性(IDLTI)模型数组,此属性跟踪与每个模型关联的变量值。当您显示或绘制模型数组时将显示此信息。使用此信息可以将结果追溯到独立变量。

将数据结构的字段名称设置为采样变量的名称。将字段值设置为与数组中的每个模型关联的采样变量值。所有采样变量必须是数字和标量值,并且所有采样值阵列必须匹配模型阵列的尺寸。

例如,假设您在系统的各种操作点收集数据。您可以单独识别每个操作点的模型,然后将结果堆叠在一起中成一个系统阵列。您可以使用关于操作点的信息标记数组中的各个模型。

nominal_engine_rpm = [1000 5000 10000];sys.samplinggrid = struct('rpm',名称_engine_rpm)

这里,SYS.是包含在1000,5000和10000 rpm的三个识别模型的阵列。

对于您通过线性化模拟链接生成的模型阵列万博1manbetx®软件填充多个参数值或操作点的模型SamplingGrid自动使用与数组中的每个条目对应的变量值。

对象功能

一般来说,任何适用于的功能动态系统模型适用于一个idtf.模型对象。这些函数有四种一般类型。

  • 运营和返回的功能idtf.模型对象使您可以转换和操作idtf.楷模。例如:

    • 合并合并估计idtf.楷模。

    • C2D.转换A.idtf.从持续的离散时间。用d2c转换A.idtf.从离散时间到连续时间。

  • 执行分析和仿真功能的功能idtf.对象,如bSIM

  • 检索或解释模型信息的功能,例如建议getpar.

  • 转换的功能idtf.对象进入不同的模型类型,例如Idpoly.对于时域或IDFRD.对于频域

以下列表包含您可以使用的功能的代表子集idtf.楷模。

展开全部

翻译 在模型转换操作中翻译参数协方差
setpar. 设置线性模型参数的值和界限等属性
chgTimeUnit 改变动态系统的时间单位
d2d 重新取样离散时间模型
d2c 将模型从离散转换为连续时间
C2D. 从持续离散时间转换模型
合并 合并估计模型

展开全部

SIM 模拟鉴定模型的响应
预测 使用扩展或Unspented Kalman滤波器或粒子滤波器预测状态和状态估计在下次步骤中的误差协方差
比较 比较确定的模型输出和测量输出
冲动 动态系统的脉冲响应图;脉冲响应数据
动态系统的步骤响应图;步骤响应数据
b 频率响应或幅度和相位数据的Bode图

展开全部

tfdata. 访问传输功能数据
得到 访问模型属性值
getpar. 获取线性模型参数的值和界限等属性
getcov. 识别模型的参数协方差
建议 数据或估计线性模型的分析和建议

展开全部

Idpoly. 具有可识别参数的多项式模型
IDS. 具有可识别参数的状态空间模型
IDFRD. 频率响应数据或模型

例子

全部收缩

指定具有可估计参数的连续时间,单输入,单输出(SISO)传递函数。传递函数的初始值由以下等式给出:

G S. = S. + 4. S. 2 + 2 0. S. + 5.

num = [1 4];DEN = [1 20 5];g = IDTF(NUM,DEN)
G = s + 4 -------------- s^2 + 20 s + 5连续时间识别传递函数。参数化:极点数:2 0数:1自由系数数:4使用“tfdata”,“getpvec”,“getcov”参数及其不确定性。状态:由直接建造或改造而成。不估计。

G是一个idtf.模型。数字den在下降功率中指定分子和分母多项式系数的初始值 S. .具有初始值1和4的分子系数是可估计参数。具有初始值20和5的分母系数也是可评估参数。主要的分母系数始终固定为1。

您可以使用G指定初始参数化以进行估计TFEST.

使用已知的输入延迟指定连续时间,SISO传输函数。传递函数初始值由以下等式给出:

G S. = E. - 5. 8. S. 5. S. + 5.

用名称标记传输函数的输入'电压'并指定输入单元伏特

使用名称值对参数指定延迟,输入名称和输入单元。

num = 5;den = [1 5];Input_delay = 5.8;input_name =.'电压';input_unit ='伏特';g = iDTF(Num,Den,“InputDelay”,input_delay,......'InputName',input_name,'Inputunit',input_unit);

G 是一个idtf.模型。您可以使用G指定初始参数化以进行估计TFEST..如果您这样做,诸如inputdelay.InputName.,InputUnit应用于估计的模型。估算过程处理inputdelay.作为固定值。如果要估算延迟并指定初始值为5.8 s,请使用Iodelay.物业。

指定具有可估计参数的离散时间SISO传输函数。传递函数的初始值由以下等式给出:

H Z. = Z. - 0. 1 Z. + 0. 8.

将采样时间指定为0.2秒。

Num = [1 -0.1];Den = [1 0.8];t = 0.2;H = idtf (num窝,Ts);

数字den是分子和分母多项式系数的初值。对于离散时间系统,指定系数的升次幂 Z. - 1

TS.指定传输函数的采样时间为0.2秒。

H是一个idtf.模型。分子和分母系数是可估计参数(除第一分母系数固定为1外)。

指定离散时间,双输入,双输出传递函数。MIMO传递函数的初始值由以下等式给出:

H Z. = [ 1 Z. + 0. 2 Z. Z. + 0. 7. - Z. + 2 Z. - 0. 3. 3. Z. + 0. 3. ]

将采样时间指定为0.2秒。

nums = {1,[1,0]; [ -  1,2],3};dens = {[1,0.2],[1,0.7]; [1,-0.3],[1,0.3]};t = 0.2;H = IDTF(NUMS,DENS,TS);

全国矿工工会洞穴指定单元格阵列中系数的初始值。单元格阵列中的每个条目对应于一个输入输出对的传递函数的分子或分母。例如,第一行全国矿工工会{1,[1,0]}.中传递函数的第一行的分子H.的第一行洞穴{[1,0.2],[1,0.7]},指定第一行的分母H

TS.指定传输函数的采样时间为0.2秒。

H是一个idtf.模型。除了每个分母多项式的前导系数之外,所有多项式系数是可评估的参数。这些系数始终固定为1。

以下列条件指定以下离散时间传输函数Q ^ -1

H 问: - 1 = 1 + 0. 4. 问: - 1 1 + 0. 1 问: - 1 - 0. 3. 问: - 2

将采样时间指定为0.1秒。

num = [1 0.4];den = [1 0.1-0.3];ts = 0.1;etauval_variable ='q ^ -1';H = IDTF(NUM,DEN,TS,'多变的',ality_variable);

使用名称值对参数指定变量Q ^ -1

数字den是分子和分母多项式系数在上升功率 问: - 1

TS.指定传输函数的采样时间为0.1秒。

H是一个idtf.模型。

指定一个具有可估计系数的传递函数,其初始值由以下静态增益矩阵给出:

H S. = [ 1 0. 1 1 1 0. 3. 0. 2 ]

m = [1 0 1;1 1 0;3 0 2];H = IDTF(M);

H是一个idtf.描述三输入的模型(nu = 3.),三个输出(纽约= 3.) 转换功能。每个输入输出通道是可估计的静态增益。增益的初始值由矩阵中的值给出m

使用可识别参数转换具有可识别参数的状态空间模型。

将以下可识别的状态空间模型转换为可识别的传输功能。

X T. = [ - 0. 2 0. 0. - 0. 3. ] X T. + [ - 2 4. ] T. + [ 0. 1 0. 2 ] E. T. y T. = [ 1 1 ] X T.

a = [-0.2,0;0,-0.3];B = [2; 4];c = [1,1];d = 0;k = [0.1;0.2];sys0 = IDS(A,B,C,D,K,'noisevariance',0.1);sys = iDTF(SYS0);

一种B.CD.,K.是指定的矩阵SYS0.,一个可识别的状态空间模型,噪声方差为0.1。

sys = iDTF(SYS0)创造一个idtf.模型SYS.

加载时域系统响应数据Z1

加载Iddata1.Z1

设置极点的数量np2并估计传递函数。

np = 2;sys =特遣部队(z1, np);

SYS.是一个idtf.模型包含估计的二极传递函数。

查看结果估计模型的分子和分母系数SYS.

sys.numerator.
ans =.1×22.4554 176.9856
sys.denominator.
ans =.1×31.0000 3.1625 23.1631

在分子和分母和其他信息的估计中查看不确定性,使用tfdata.

创建一组具有可识别系数的传递函数模型。数组中的每个传递函数的形式为:

H S. = 一种 S. + 一种

系数的初始值 一种 以0.1到1.0的数组在阵列上变化,增量为0.1。

H = IDTF(零(1,1,10));为了k = 1:10 num = k / 10;den = [1 k / 10];h(::,k)= iDTF(NUM,DEN);结尾

第一个命令预先释放一维10个元素阵列,H,并用空填充它idtf.楷模。

模型数组的前两个维度是输出和输入维度。剩下的维度是数组维度。H (:,:, k)代表 K. T. H 阵列中的模型。就这样为了循环取代了 K. T. H 数组中带有传递函数的项,其系数初始化时使用 一种 = K. / 1 0.

在R2012A介绍