系统识别工具箱™软件允许您使用频域数据来识别命令行中的线性模型和GyD.F4y2Ba系统识别GyD.F4y2Ba你可以使用频域数据估计连续时间和离散时间线性模型。本主题概述了在工具箱中使用频域数据的模型估计。有关使用频域数据进行模型估计的示例,请参见GyD.F4y2Ba频域识别:使用频域数据估计模型GyD.F4y2Ba.GyD.F4y2Ba
频域数据可以有两种类型:GyD.F4y2Ba
频域输入输出数据GyD.F4y2Ba-通过计算时域输入的傅里叶变换获得数据,GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaT.GyD.F4y2Ba),和输出,GyD.F4y2BayGyD.F4y2Ba(GyD.F4y2BaT.GyD.F4y2Ba),信号。数据是输入的集合,GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),和输出,GyD.F4y2BayGyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),频域信号。在工具箱中,频域输入输出数据用GyD.F4y2BaiddataGyD.F4y2Ba
对象。有关更多信息,请参阅GyD.F4y2Ba表示工具箱中的频域数据GyD.F4y2Ba.GyD.F4y2Ba
频率响应数据GyD.F4y2Ba-也称为频率函数或频率响应函数(FRF),数据由传递函数测量,GyD.F4y2BaGGyD.F4y2Ba(GyD.F4y2Baiω.GyD.F4y2Ba),一个系统在一组离散的频率GyD.F4y2BaωGyD.F4y2Ba.在一个频率上的频率响应数据GyD.F4y2BaωGyD.F4y2Ba告诉你线性系统如何响应相同频率的正弦输入。在工具箱中,频率响应数据用GyD.F4y2BaidfrdGyD.F4y2Ba
对象。有关更多信息,请参阅GyD.F4y2Ba表示工具箱中的频域数据GyD.F4y2Ba.频响数据可以通过以下两种方式获取:GyD.F4y2Ba
直接测量频率响应数据值,例如使用频谱分析仪。GyD.F4y2Ba
对时域或频域输入输出数据进行频谱分析(GyD.F4y2BaiddataGyD.F4y2Ba
对象),使用如下命令GyD.F4y2Ba水疗中心GyD.F4y2Ba
和GyD.F4y2BaspafdrGyD.F4y2Ba
.GyD.F4y2Ba
使用命令计算确定的线性模型的频率响应,例如GyD.F4y2BafreqrespGyD.F4y2Ba
那GyD.F4y2Ba波德GyD.F4y2Ba
,GyD.F4y2BaidfrdGyD.F4y2Ba
.GyD.F4y2Ba
这GyD.F4y2Ba模型估计工作流GyD.F4y2Ba使用频域数据与使用时域数据进行估计是相同的。如果需要,首先通过删除离群值和过滤数据来准备用于模型识别的数据。然后从数据估计一个线性参数模型,并验证估计。GyD.F4y2Ba
使用频域数据有以下优点:GyD.F4y2Ba
数据压缩 - 将时域数据转换为频域时,可以压缩数据的长记录。例如,您可以使用对数间隔的频率。GyD.F4y2Ba
非均匀性-频域数据不一定是均匀间隔的。您的数据可以具有与频率相关的分辨率,以便在感兴趣的频率区域中使用更多的数据点。例如,感兴趣的频率可以是系统的带宽范围,或系统共振的附近。GyD.F4y2Ba
预过滤-频域数据的预过滤变得简单。它对应的是给数据的不同频率分配不同的权重。GyD.F4y2Ba
连续时间信号——可以使用频域数据表示连续时间信号,并使用这些数据进行估计。GyD.F4y2Ba
在执行模型估计之前,您将频域数据指定为工具箱中的对象。您可以指定两者GyD.F4y2Ba连续时间和离散时间频域数据GyD.F4y2Ba.GyD.F4y2Ba
频域输入输出数据GyD.F4y2Ba-指定为GyD.F4y2BaiddataGyD.F4y2Ba
对象。在对象中存储GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),GyD.F4y2BayGyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba)和频率矢量GyD.F4y2BaωGyD.F4y2Ba.这GyD.F4y2Ba域GyD.F4y2Ba
属性为GyD.F4y2Ba“频率”GyD.F4y2Ba
,以指定对象包含频域信号。如果GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),GyD.F4y2BayGyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba)是离散时间信号的离散时间傅立叶变换,采样间隔采样GyD.F4y2BaTsGyD.F4y2Ba
的采样间隔GyD.F4y2BaiddataGyD.F4y2Ba
对象。如果GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),GyD.F4y2BayGyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba)为连续时间信号的傅里叶变换,指定GyD.F4y2BaTsGyD.F4y2Ba
作为GyD.F4y2Ba0.GyD.F4y2Ba
在GyD.F4y2BaiddataGyD.F4y2Ba
对象。GyD.F4y2Ba
要在命令行绘制数据,请使用GyD.F4y2Ba情节GyD.F4y2Ba
命令。GyD.F4y2Ba
例如,您可以绘制频域输入输出数据的相位和幅值。GyD.F4y2Ba
加载时域输入输出数据。GyD.F4y2Ba
负载GyD.F4y2Baiddata1GyD.F4y2Baz1GyD.F4y2Ba
时域输入GyD.F4y2Ba你GyD.F4y2Ba
和输出GyD.F4y2BayGyD.F4y2Ba
存储在GyD.F4y2Baz1GyD.F4y2Ba
,一个GyD.F4y2BaiddataGyD.F4y2Ba
的对象GyD.F4y2Ba域GyD.F4y2Ba
属性设置为GyD.F4y2Ba'时间'GyD.F4y2Ba
.GyD.F4y2Ba
对数据进行傅里叶变换,得到频域输入输出数据。GyD.F4y2Ba
zf = fft (z1);GyD.F4y2Ba
这GyD.F4y2Ba域GyD.F4y2Ba
的属性GyD.F4y2BazfGyD.F4y2Ba
被设置为GyD.F4y2Ba“频率”GyD.F4y2Ba
,表示为频域数据。GyD.F4y2Ba
绘制频域输入输出数据的幅度和相位。GyD.F4y2Ba
情节(zf)GyD.F4y2Ba
频率响应数据GyD.F4y2Ba-指定为GyD.F4y2BaidfrdGyD.F4y2Ba
对象。如果您有Control System Toolbox™软件,您还可以将数据指定为GyD.F4y2Ba的朋友GyD.F4y2Ba
(控制系统工具箱)GyD.F4y2Ba对象。GyD.F4y2Ba
要在命令行绘制数据,请使用GyD.F4y2Ba波德GyD.F4y2Ba
命令。GyD.F4y2Ba
例如,您可以绘制传递函数模型的频响曲线。GyD.F4y2Ba
创建系统的传递函数模型。GyD.F4y2Ba
Sys = tf([1 0.2],[1 2 1]);GyD.F4y2Ba
计算传递函数模型的频响,GyD.F4y2BasysGyD.F4y2Ba
, 100个频率点。指定频率范围为0.1 rad/s到10 rad/s。GyD.F4y2Ba
频率= logspace (1100);frdModel = idfrd (sys、频率);GyD.F4y2Ba
绘制模型的频率响应曲线。GyD.F4y2Ba
波德(frdModel)GyD.F4y2Ba
有关频域数据类型以及如何指定它们的更多信息,请参见GyD.F4y2Ba频域数据表示GyD.F4y2Ba.GyD.F4y2Ba
您还可以使用以下命令在频域和时域数据类型之间进行转换。GyD.F4y2Ba
原始数据格式GyD.F4y2Ba | 时域数据GyD.F4y2Ba (GyD.F4y2Ba iddataGyD.F4y2Ba 对象)GyD.F4y2Ba |
频域数据GyD.F4y2Ba (GyD.F4y2Ba iddataGyD.F4y2Ba 对象)GyD.F4y2Ba |
频率特性数据GyD.F4y2Ba (GyD.F4y2Ba idfrdGyD.F4y2Ba 对象)GyD.F4y2Ba |
---|---|---|---|
时域数据GyD.F4y2Ba (GyD.F4y2Ba iddataGyD.F4y2Ba 对象)GyD.F4y2Ba |
N/AGyD.F4y2Ba | 使用GyD.F4y2BafftGyD.F4y2Ba |
|
频域数据GyD.F4y2Ba (GyD.F4y2Ba iddataGyD.F4y2Ba 对象)GyD.F4y2Ba |
使用GyD.F4y2Ba传输线GyD.F4y2Ba (仅适用于均匀间隔的频域数据)。GyD.F4y2Ba |
N/AGyD.F4y2Ba |
|
频率响应数据GyD.F4y2Ba (GyD.F4y2Ba idfrdGyD.F4y2Ba 对象)GyD.F4y2Ba |
不支持金宝appGyD.F4y2Ba | 使用GyD.F4y2BaiddataGyD.F4y2Ba .软件创建一个频域GyD.F4y2BaiddataGyD.F4y2Ba 对象,该对象具有与原始对象相同的输出和输入比率GyD.F4y2BaidfrdGyD.F4y2Ba 对象频率特性数据。GyD.F4y2Ba |
|
有关在应用程序或命令行中转换数据类型的更多信息,请参见GyD.F4y2Ba转换数据GyD.F4y2Ba分类页面。GyD.F4y2Ba
与时域数据不同,采样时间GyD.F4y2BaTsGyD.F4y2Ba
的频域数据可以为零。频域数据为零GyD.F4y2BaTsGyD.F4y2Ba
称为连续时间数据。频域数据GyD.F4y2BaTsGyD.F4y2Ba
大于零的称为离散时间数据。GyD.F4y2Ba
你可以获得连续时间频域数据(GyD.F4y2BaTsGyD.F4y2Ba
= 0)用下列方法GyD.F4y2Ba:GyD.F4y2Ba
从已知的连续时间解析表达式生成数据。GyD.F4y2Ba
例如,假设您知道系统的频率响应是GyD.F4y2Ba ,在那里GyD.F4y2BaB.GyD.F4y2Ba是一个常数。同时假设你的系统的时域输入是,GyD.F4y2Ba ,在那里GyD.F4y2Ba一种GyD.F4y2Ba常数是否大于零GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaT.GyD.F4y2Ba)为零GyD.F4y2BaT.GyD.F4y2Ba小于零。你可以计算的傅里叶变换GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaT.GyD.F4y2Ba)获得GyD.F4y2Ba
使用GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),GyD.F4y2BaGGyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),然后可以得到输出的频域表达式:GyD.F4y2Ba
您现在可以对的解析表达式求值GyD.F4y2BayGyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba),GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba)通过频率值网格GyD.F4y2Ba
,得到频域输入输出数据值的矢量GyD.F4y2Ba
.您可以将输入-输出数据打包为连续时间GyD.F4y2BaiddataGyD.F4y2Ba
对象,通过指定零采样时间,GyD.F4y2BaTsGyD.F4y2Ba
.GyD.F4y2Ba
t = 0;zf = iddata (Ygrid Ugrid, Ts,GyD.F4y2Ba“频率”GyD.F4y2Bawgrid)GyD.F4y2Ba
计算连续时间线性系统在频率网格处的频率响应。GyD.F4y2Ba
例如,在下面的代码中,您生成连续时间的频率响应数据,GyD.F4y2BaFRDcGyD.F4y2Ba
,由连续时间传递函数模型,GyD.F4y2BasysGyD.F4y2Ba
对于一个频率网格,GyD.F4y2Ba频率GyD.F4y2Ba
.GyD.F4y2Ba
Sys = idtf(1,[1 2 2]);频率= logspace (2100);FRDc = idfrd (sys、频率);GyD.F4y2Ba
测量振幅和相位的正弦实验,其中测量系统使用抗混叠滤波器。你测量系统在不同频率下对正弦输入的响应,然后把数据打包成GyD.F4y2BaidfrdGyD.F4y2Ba
对象。例如,频谱分析仪测量的频率响应数据是连续时间的。GyD.F4y2Ba
您还可以通过使用周期连续时间信号(多个正弦波)作为系统的输入来进行实验,并测量系统的响应。然后您可以将输入和输出数据打包为GyD.F4y2BaiddataGyD.F4y2Ba
对象。GyD.F4y2Ba
你可以获得离散时间频域数据(GyD.F4y2BaTsGyD.F4y2Ba
>0)GyD.F4y2Ba:GyD.F4y2Ba
用离散傅里叶变换变换测量的时域值。GyD.F4y2Ba
例如,在下面的代码中,计算时域数据的离散傅里叶变换,GyD.F4y2BayGyD.F4y2Ba
,采样时间为0.01秒,在离散时间点进行测量。GyD.F4y2Ba
t = 0:0.01:10;Y = IDDATA(SIN(2 * PI * 10 * T),[],0.01);Y = FFT(Y);GyD.F4y2Ba
计算离散时间线性系统的频率响应。GyD.F4y2Ba
例如,在以下代码中,生成离散时间频率响应数据,GyD.F4y2BaFRDdGyD.F4y2Ba
,由离散时间传递函数模型,GyD.F4y2BasysGyD.F4y2Ba
.您可以为创建离散时间模型指定一个非零的样本时间。GyD.F4y2Ba
Ts = 1;sys = idtf(1,[1 0.2 2.1],Ts);FRDd = idfrd (sys, logspace (2100);GyD.F4y2Ba
您可以使用连续时间频域数据来识别连续时间模型。您可以使用离散时间频域数据来识别离散时间和连续时间模型。然而,从离散时间数据中识别连续时间模型需要了解数据的样本间行为。有关更多信息,请参阅GyD.F4y2Ba估计连续时间和离散时间模型GyD.F4y2Ba.GyD.F4y2Ba
笔记GyD.F4y2Ba
对于离散时间数据,软件在估计时忽略Nyquist频率以上的频域数据。GyD.F4y2Ba
使用后代表频域数据后GyD.F4y2BaiddataGyD.F4y2Ba
或GyD.F4y2BaidfrdGyD.F4y2Ba
对象,您可以通过去除虚假数据和过滤数据来准备数据进行估计。GyD.F4y2Ba
要查看虚假数据,请在应用程序中绘制数据,或使用GyD.F4y2Ba情节GyD.F4y2Ba
(GyD.F4y2BaiddataGyD.F4y2Ba
对象)或GyD.F4y2Ba波德GyD.F4y2Ba
(GyD.F4y2BaidfrdGyD.F4y2Ba
对象)的命令。在识别出图中的虚假数据后,可以将其删除。例如,如果您想删除数据点20-30GyD.F4y2BazfGyD.F4y2Ba
,一个频域GyD.F4y2BaiddataGyD.F4y2Ba
对象,使用以下语法:GyD.F4y2Ba
zf (20:30) = [];GyD.F4y2Ba
由于频域数据不需要用均匀的间隔指定,因此不需要替换离群值。GyD.F4y2Ba
您还可以预过滤数据中的高频噪声。您可以在应用程序中预过滤频域数据,或使用GyD.F4y2BaidfiltGyD.F4y2Ba
在命令行。预热数据还可以帮助去除低频干扰的漂移。除了最小化噪声外,预热允许您将模型集中在特定频段上。感兴趣的频率范围通常对应于Bode图上的断点上的通带。例如,如果要为控制设计应用程序建模,可以将数据预浸,以增强所需闭环带宽周围的频率。GyD.F4y2Ba
有关更多信息,请参阅GyD.F4y2Ba过滤数据GyD.F4y2Ba.GyD.F4y2Ba
在预处理频域数据之后,可以使用它GyD.F4y2Ba估算连续时间和离散时间模型GyD.F4y2Ba.GyD.F4y2Ba
您可以使用频域数据估计下列线性参数模型。除ARX模型外,模型的噪声成分没有被估计。GyD.F4y2Ba
模型类型GyD.F4y2Ba | 额外的信息GyD.F4y2Ba | 估计命令GyD.F4y2Ba | 应用程序中的估算GyD.F4y2Ba |
---|---|---|---|
传递函数模型GyD.F4y2Ba | 看GyD.F4y2Ba估算系统识别应用程序中的传输函数模型GyD.F4y2Ba.GyD.F4y2Ba | ||
状态空间模型GyD.F4y2Ba | 估计GyD.F4y2BaK.GyD.F4y2Ba 状态空间模型的矩阵为零。GyD.F4y2Ba |
看GyD.F4y2Ba在系统识别应用程序中估计状态空间模型GyD.F4y2Ba.GyD.F4y2Ba | |
流程模型GyD.F4y2Ba | 没有对扰动模型进行估计。GyD.F4y2Ba | 看GyD.F4y2Ba使用应用程序估计过程模型GyD.F4y2Ba.GyD.F4y2Ba | |
输入-输出多项式模型GyD.F4y2Ba | 你只能估计输出误差和ARX模型。GyD.F4y2Ba |
|
看GyD.F4y2Ba在应用程序中估计多项式模型GyD.F4y2Ba.GyD.F4y2Ba |
线性灰色矩形模型GyD.F4y2Ba | 仅与噪声矩阵相关的模型参数GyD.F4y2BaK.GyD.F4y2Ba 不估计。GyD.F4y2Ba |
应用程序中没有灰盒模型估计。GyD.F4y2Ba | |
相关模型GyD.F4y2Ba (脉冲响应模型)GyD.F4y2Ba |
看GyD.F4y2Ba使用系统识别应用程序估计脉冲响应模型GyD.F4y2Ba.GyD.F4y2Ba | ||
频率特性模型GyD.F4y2Ba (估计GyD.F4y2Ba idfrdGyD.F4y2Ba 对象)GyD.F4y2Ba |
看GyD.F4y2Ba在应用程序中估计频率响应模型GyD.F4y2Ba.GyD.F4y2Ba |
在执行估计之前,您可以指定估计选项,例如软件如何处理估计数据的初始条件。要在命令行中执行此操作,请使用与estimate命令对应的估计选项集。例如,假设你想从频域数据估计一个传递函数模型,GyD.F4y2BazfGyD.F4y2Ba
,你还需要估计数据的初始条件。使用GyD.F4y2Batfestoptions.GyD.F4y2Ba
选项集指定估计选项,然后估计模型。GyD.F4y2Ba
选择= tfestOptions (GyD.F4y2Ba“InitialCondition”GyD.F4y2Ba那GyD.F4y2Ba“估计”GyD.F4y2Ba);sys =特遣部队(zf,选择);GyD.F4y2Ba
sysGyD.F4y2Ba
是估计的传递函数模型。有关从模型中提取估计的参数值的信息,请参阅GyD.F4y2Ba提取数值模型数据GyD.F4y2Ba.在执行评估之后,您可以GyD.F4y2Ba验证估计模型GyD.F4y2Ba.GyD.F4y2Ba
笔记GyD.F4y2Ba
时域数据的零初始条件并不意味着相应的频域数据的零初始条件。对于时域数据,零初始条件意味着在开始采集数据之前假设系统处于静止状态。在频域,初始条件可以忽略,只有当收集的数据本质上是周期性的。因此,如果您在零初始条件下收集了时域数据,并将其转换为频域数据来估计模型,那么您也必须估计初始条件。您不能将它们指定为零。GyD.F4y2Ba
不能使用频域数据进行以下估计:GyD.F4y2Ba
估计线性模型的噪声分量,除了ARX模型。GyD.F4y2Ba
非线性模型估计GyD.F4y2Ba.GyD.F4y2Ba
仅使用频谱数据估计时间序列模型。频谱数据是一个信号的功率谱,一般存储在GyD.F4y2BaSpectrumDataGyD.F4y2Ba
财产的GyD.F4y2BaidfrdGyD.F4y2Ba
对象。GyD.F4y2Ba
使用递归算法进行在线估计GyD.F4y2Ba.GyD.F4y2Ba
你可以估计所有的GyD.F4y2Ba金宝app支持的线性模型GyD.F4y2Ba作为离散时间模型,除了过程模型。流程模型仅在连续时间内定义。对于离散时间模型的估计,必须使用离散时间数据。GyD.F4y2Ba
你可以将所有支持的线性模型估计为连续时间模型,除了金宝app相关模型(见GyD.F4y2Ba冲动GyD.F4y2Ba
).您可以使用连续时间和离散时间数据来估计连续时间模型。有关连续时间和离散时间数据的信息,请参见GyD.F4y2Ba连续时间和离散时间频率域数据GyD.F4y2Ba.GyD.F4y2Ba
如果使用离散时间数据估计连续时间模型,则必须指定GyD.F4y2Baintersample行为GyD.F4y2Ba的数据。样本间行为的规范取决于频域数据的类型。GyD.F4y2Ba
离散时间频域输入输出数据(GyD.F4y2BaiddataGyD.F4y2Ba
对象)-指定时域输入信号的样本间行为GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaT.GyD.F4y2Ba)进行傅里叶变换得到频域输入信号GyD.F4y2Ba你GyD.F4y2Ba(GyD.F4y2BaωGyD.F4y2Ba).GyD.F4y2Ba
离散时间频率响应数据(GyD.F4y2BaidfrdGyD.F4y2Ba
该数据是通过计算离散时间模型的频率响应而产生的。将样本间行为指定为离散化方法,以从底层连续时间模型计算离散时间模型。例如,请参见GyD.F4y2Ba指定离散时间频率响应数据的样本间行为GyD.F4y2Ba.GyD.F4y2Ba
您可以指定要分段常量(零阶保持)的字数行为,在样本(一阶保持)或带限制之间线性内插。如果您将系统的离散时间数据指定为带限制(即没有功率高于奈奎斯特频率),则软件通过将采样时间设置为零,将数据视为连续时间。然后,软件估计来自数据的连续时间模型。有关更多信息,请参阅GyD.F4y2Ba输入样本间行为对连续时间模型的影响GyD.F4y2Ba.GyD.F4y2Ba
这个例子显示了样本间行为对使用离散时间频率响应数据估计连续时间模型的影响。GyD.F4y2Ba
生成离散时间频率响应数据。为此,首先构造一个连续时间传递函数模型,GyD.F4y2BasysGyD.F4y2Ba
.然后转换成离散时间模型,GyD.F4y2BasysdGyD.F4y2Ba
,使用GyD.F4y2Ba汇集GyD.F4y2Ba
命令和一阶保持(FOH)方法。使用离散时间模型GyD.F4y2BasysdGyD.F4y2Ba
要产生指定频率的频率响应数据,GyD.F4y2Ba频率GyD.F4y2Ba
.GyD.F4y2Ba
SYS = IDTF([1 0.2],[111 1]);SYSD = C2D(SYS,1,C2DOPTIONS(GyD.F4y2Ba“方法”GyD.F4y2Ba那GyD.F4y2Ba“呸”GyD.F4y2Ba));freq = logspace(-1,0,10);frdata = IDFRD(SYSD,FREQ);GyD.F4y2Ba
FRdataGyD.F4y2Ba
离散数据。软件设置GyD.F4y2BaInterSampleGyD.F4y2Ba
的属性GyD.F4y2BaFRdataGyD.F4y2Ba
来GyD.F4y2Ba“呸”GyD.F4y2Ba
,即采用离散化方法得到GyD.F4y2BasysdGyD.F4y2Ba
从GyD.F4y2BasysGyD.F4y2Ba
.GyD.F4y2Ba
估计来自离散时间数据的三阶连续时间传递函数。GyD.F4y2Ba
model1 =特遣部队(FRdata 3 1)GyD.F4y2Ba
model1 = s + 0.2 ------------------- s^3 + 2 s^2 + s + 1连续时间辨识传递函数。参数化:极点数:3零数:1自由系数:5参数及其不确定性使用“tfdata”、“getpvec”、“getcov”。状态:使用fest对频率响应数据“FRdata”进行估计。拟合估算数据:100% FPE: 5.372e-31, MSE: 2.68e-31GyD.F4y2Ba
model1GyD.F4y2Ba
是一个连续时间模型,使用离散时间频率响应数据进行估计。原始三阶模型的连续时间动力学GyD.F4y2BasysGyD.F4y2Ba
中检索GyD.F4y2Bamodel1GyD.F4y2Ba
因为指定了正确的intersample行为GyD.F4y2BaFRdataGyD.F4y2Ba
.GyD.F4y2Ba
现在,指定样本间行为为零阶保持(ZOH),并估计一个三阶传递函数模型。GyD.F4y2Ba
frdata.intersample =.GyD.F4y2Ba“zoh”GyD.F4y2Ba;model2 =特遣部队(FRdata 3 1)GyD.F4y2Ba
model2 = -15.44 - 3.362 --------------------------------- ^ 3 - 30.03年代^ 2 - 6.825 s - 17.04连续时间确定传递函数。参数化:极点数:3零数:1自由系数:5参数及其不确定性使用“tfdata”、“getpvec”、“getcov”。状态:使用fest对频率响应数据“FRdata”进行估计。拟合估计数据:94.75% FPE: 0.004798, MSE: 0.0016GyD.F4y2Ba
model2GyD.F4y2Ba
没有捕捉到原始模型的动态GyD.F4y2BasysGyD.F4y2Ba
.因此,当样本间行为没有正确指定时,模型估计中引入了抽样相关误差。GyD.F4y2Ba
此示例显示如何将频率响应数据(FRD)模型转换为传输功能模型。您将FRD模型视为估计数据,然后估计传输函数。GyD.F4y2Ba
获取FRD模型。GyD.F4y2Ba
例如,使用GyD.F4y2Ba波德GyD.F4y2Ba
要获得以下第五阶系统的幅度和相位响应数据:GyD.F4y2Ba
使用0.1 rad/s到10 rad/s之间的100个频率点来获得FRD模型。使用GyD.F4y2Ba的朋友GyD.F4y2Ba
创建频率响应模型对象。GyD.F4y2Ba
频率= logspace (1100);Sys0 = tf([1 0.2],[1 1 0.8 0.4 0.12 0.04]);(杂志、相位)=预示(sys0频率);frdModel =朋友(玛格。* exp (1 j *期*π/ 180),频率);GyD.F4y2Ba
通过估计具有3个零点和3个极点的传递函数,得到系统动力学的最佳三阶近似。GyD.F4y2Ba
np = 3;新西兰= 3;sys =特遣部队(frdModel、np、新西兰);GyD.F4y2Ba
sysGyD.F4y2Ba
为估计传递函数。GyD.F4y2Ba
比较FRD模型和估计传递函数模型的响应。GyD.F4y2Ba
波德(frdModel sys,频率(1:50));GyD.F4y2Ba
FRD模型是由五阶系统生成的GyD.F4y2Basys0GyD.F4y2Ba
.尽管GyD.F4y2BasysGyD.F4y2Ba
,这是一个三阶近似,并没有捕获GyD.F4y2Basys0GyD.F4y2Ba
,它捕获响应很好,直到大约0.6 rad/s。GyD.F4y2Ba
在为您的系统评估模型之后,您可以验证它是否在可接受的范围内重新生成系统行为。建议您使用单独的数据集来估计和验证您的模型。您可以使用时域或频域数据来验证使用频域数据估计的模型。如果您正在使用输入-输出验证数据来验证估计的模型,那么您可以将模拟的模型响应与测量的验证数据输出进行比较。如果验证数据是频响数据,则可以将其与模型的频响进行比较。例如,比较一个估计模型的输出GyD.F4y2BasysGyD.F4y2Ba
测量的验证数据GyD.F4y2BazvGyD.F4y2Ba
,使用以下语法:GyD.F4y2Ba
比较(ZV,SYS);GyD.F4y2Ba
您还可以执行残余分析。有关更多信息,请参阅,GyD.F4y2Ba评估后的模型验证GyD.F4y2Ba.GyD.F4y2Ba
当您使用频域数据估计模型时,估计算法最小化损耗(成本)函数。例如,如果您从频率响应数据估计SISO线性模型GyD.F4y2BaFGyD.F4y2Ba
,估计算法使以下最小二乘损失函数最小:GyD.F4y2Ba
这里GyD.F4y2BaW.GyD.F4y2Ba
是你指定的频率相关的权重,GyD.F4y2BaGGyD.F4y2Ba
是要估计的线性模型,ω是频率,和GyD.F4y2BaN.GyD.F4y2BaFGyD.F4y2Ba是数据可用的频率的数目。的数量GyD.F4y2Ba
为频率响应误差。对于频域输入输出数据,该算法使输出误差的加权范数最小化,而不是频率响应误差。有关更多信息,请参阅GyD.F4y2Ba损失函数和模型质量度量GyD.F4y2Ba.在估计期间,数据中的虚假或未捕获的动态可能会影响损失函数,并导致不满意的模型估计。GyD.F4y2Ba
意想不到的,虚假的动力GyD.F4y2Ba-通常在数据的高幅值区域具有低信噪比时观察到。这些部分数据的拟合误差对损失函数有很大的贡献。结果,估计算法可能会过拟合,并在这些区域分配意外的动态噪声。解决此问题的方法如下:GyD.F4y2Ba
提高信噪比—您可以收集多个数据集,并对它们进行平均。如果您有频域输入-输出数据,您可以使用GyD.F4y2Ba合并GyD.F4y2Ba
命令。使用此数据进行估计以获得改进的结果。或者,您可以过滤数据集,并使用它进行估计。例如,在数据上使用移动平均过滤器来平滑测量的响应。仅在数据区域应用了平滑过滤器,在那里您有信心源于噪声,而不是由于系统动态。GyD.F4y2Ba
减少数据的某些部分对丢失函数的影响—您可以指定一个与频率相关的权重。例如,如果您正在估计一个传递函数模型,请在GyD.F4y2BaWeightingFilterGyD.F4y2Ba
估计选项集的选项GyD.F4y2Batfestoptions.GyD.F4y2Ba
.在存在伪动态的频率区域指定一个小权重。或者,在这个频率区域使用更少的数据点。GyD.F4y2Ba
未捕获的动力学GyD.F4y2Ba-通常观察到,当你想要捕获的动态相对于其他数据有一个低幅度。由于对低幅值数据的拟合不佳对损失函数的贡献较小,该算法可能会忽略这些动态以减少其他频率的误差。解决此问题的方法如下:GyD.F4y2Ba
指定频率依赖的权重 - 为您想要捕获动态的频率区域指定大量权重。GyD.F4y2Ba
使用此区域周围的更多数据点。GyD.F4y2Ba
有关这些故障诊断技术的示例,请参见GyD.F4y2Ba故障诊断的频域识别传递函数模型GyD.F4y2Ba.GyD.F4y2Ba
如果使用这些故障排除技术不能获得令人满意的模型,请尝试不同的模型结构或估计算法。GyD.F4y2Ba
在估计模型之后,您可以执行模型转换,提取模型参数,并模拟和预测模型响应。你可以执行的一些任务是:GyD.F4y2Ba
线性模型表示之间的转换GyD.F4y2Ba-在线性参数模型表示之间进行转换,例如在多项式、状态空间和零极点表示之间。GyD.F4y2Ba
提取数值模型数据GyD.F4y2Ba—例如,使用,提取模型的极点和零点GyD.F4y2Ba极GyD.F4y2Ba
和GyD.F4y2Ba零GyD.F4y2Ba
命令分别。计算指定频率集的模型频率响应GyD.F4y2BafreqrespGyD.F4y2Ba
.GyD.F4y2Ba