主要内容

表示数据MATLAB工作空间

时域数据表示

时域数据由一个或多个输入变量组成u (t)以及一个或多个输出变量y (t),作为时间的函数进行采样。如果没有输入变量,见时序数据表示

您必须将时域输入/输出数据组织在iddata对象,该对象包含以下格式的数据:

  • 对于单输入/单输出(SISO)数据,采样的数据值必须是长度等于数据样本(测量值)的双列向量。

  • 用于多输入/多输出(MIMO)数据Nu输入和Ny输出,N年代数据样本数量:

    • 输入数据必须是N年代——- - - - - -Nu矩阵

    • 输出数据必须是N年代——- - - - - -Ny矩阵

要使用时域数据进行识别,必须知道采样时间。如果您使用的是均匀采样数据,请使用实验中的实际采样时间。每个数据值分配一个时间瞬间,从开始时间和采样时间计算。方法指定时间瞬间向量,只能在命令行中处理非均匀采样的数据SamplingInstants的属性iddata,如构造时域数据的iddata对象

对于连续时间模型,还必须知道输入样本间行为,例如零阶保持器和一阶保持器。

有关将数据导入MATLAB的更多信息®,请参阅数据导入导出

在MATLAB工作空间中拥有变量后,将它们导入系统识别应用程序或创建用于在命令行中工作的数据对象。有关更多信息,请参见导入时域数据到应用程序使用iddata对象表示时域和频域数据

时序数据表示

时间序列数据是由一个或多个输出组成的时域或频域数据y (t)没有相应的输入。有关如何获取标识数据的详细信息,请参见获取识别数据的方法

您必须按照以下格式组织时间序列数据:

  • 对于单输入/单输出(SISO)数据,输出数据值必须是列向量。

  • 的资料Ny输出,输出是anN年代——- - - - - -Ny矩阵,N年代是输出数据样本(测量值)的个数。

要使用时间序列数据进行识别,还需要样本时间。如果您使用的是均匀采样数据,请使用实验中的实际采样时间。每个数据值分配一个采样时间,采样时间由起始时间和采样时间计算。如果在命令行中处理非均匀采样的数据,则可以使用iddataSamplingInstants属性,如构造时域数据的iddata对象。注意,模型估计不能使用非均匀采样数据进行。

有关将数据导入MATLAB工作区的更多信息,请参见数据导入导出

在MATLAB工作空间中拥有变量后,将它们导入系统识别应用程序或创建用于在命令行中工作的数据对象。有关更多信息,请参见导入时域数据到应用程序使用iddata对象表示时域和频域数据

有关估计时间序列模型参数的信息,请参见时间序列分析

频域数据表示

频域数据由两者之一组成变换输入和输出时域信号系统频率响应作为自变量频率的函数进行采样。

频域输入/输出信号表示

什么是频域输入/输出信号?频域数据是输入和输出时域信号的傅里叶变换。对于连续时间信号,整个时间轴上的傅里叶变换定义如下:

Y w y t e w t d t U w u t e w t d t

在数值计算的背景下,连续方程被其离散等价物所取代,以处理离散数据值。对于具有采样时间的离散时间系统T,为频域输出Y (e信息战和输入U (e信息战为时间离散傅里叶变换(TDFT):

Y e w T T k 1 N y k T e w k T

在这个例子中,k = 1,2,…,N,在那里N为序列中样本的个数。

请注意

这种形式只使时间离散化。频率是连续的。

在实践中,傅里叶变换不能处理所有连续频率,你必须指定有限数量的频率。时域数据的离散傅里叶变换(DFT)N在0和采样频率之间等间隔的频率2π/ N是:

Y e w n T k 1 N y k T e w n k T w n 2 π n T n 0 1 2 N 1

DFT是有用的,因为它可以非常有效地计算使用快速傅里叶变换(FFT)方法。输入和输出数据的傅里叶变换是复数。

有关如何获取标识数据的详细信息,请参见获取识别数据的方法

如何表示频域数据MATLAB必须按照以下格式组织频域数据:

  • 输入和输出

    • 单输入/单输出(SISO)数据:

      • 输入数据必须是包含值的列向量 u e ω k T

      • 输出数据必须是包含值的列向量 y e ω k T

      K = 1,2,…Nf,在那里Nf是频率的个数。

    • 用于多输入/多输出数据Nu输入,Ny输出和Nf频率测量:

      • 输入数据必须是Nf——- - - - - -Nu矩阵

      • 输出数据必须是Nf——- - - - - -Ny矩阵

  • 频率

    • 必须是列向量。

有关将数据导入MATLAB工作区的更多信息,请参见数据导入导出

在MATLAB工作空间中拥有变量后,将它们导入系统识别应用程序或创建用于在命令行中工作的数据对象。有关更多信息,请参见将频域输入/输出信号导入应用程序使用iddata对象表示时域和频域数据

频率响应数据表示

什么是频响数据?频率特性数据,也叫频率函数数据,由以传递函数为特征的线性系统的复频率响应值组成G。频率响应数据告诉你系统如何处理正弦输入。例如,您可以使用频谱分析仪直接测量频率响应数据值,它提供了输入-输出关系的紧凑表示(与独立存储输入和输出相比)。

传递函数G是一个接受输入的运算符吗u线性系统的输出y

y G u

对于连续时间系统,传递函数与输入的拉普拉斯变换有关U(年代)和输出Y(年代)

Y 年代 G 年代 U 年代

在这个例子中,是频率函数G (iw)传递函数是在虚轴上求值的吗年代信息战

对于用时间间隔采样的离散时间系统T,传递函数与输入的z变换有关U (z)和输出Y (z)

Y z G z U z

在这个例子中,是频率函数G (eiwT是传递函数G (z)在单位圆上求值。频率函数的参数G (eiwT是按采样时间缩放的T使频率函数随采样频率周期性变化 2 π T

当系统的输入是一个特定频率的正弦波时,输出也是一个相同频率的正弦波。输出的振幅为 | G | 乘以输入的振幅。从输入位移的相位 φ 参数 G G以输入正弦波的频率求值。

频率响应数据表示输入和输出之间作为频率函数的关系的(非参数)模型。您可以使用这样的模型,它由表格或数值图组成,以研究系统频率响应。然而,该模型并不适合模拟和预测。您应该根据频率响应数据创建参数化模型。

有关如何获取标识数据的详细信息,请参见获取识别数据的方法

如何表示频率响应数据MATLAB您可以用两种方式表示频率响应数据:

  • 复杂值G (e我ω,对于给定频率ω

  • 振幅 | G | 相移 φ 参数 G

你可以在System Identification应用中直接导入这两种格式。在命令行中,你必须使用的朋友idfrd对象。如果数据是幅度和相位格式,则使用h(ω) = A(ω)ejϕ(ω)

您必须按照以下格式组织频率响应数据:

频率响应数据表示 用于单输入单输出(SISO)数据 多输入多输出(MIMO)数据
复杂的值
  • 频率函数必须是一个列向量。

  • 频率值必须是列向量。

  • 频率函数必须是anNy——- - - - - -Nu——- - - - - -Nf数组,Nu是输入的个数,Ny是输出的个数,和Nf是频率测量的次数。

  • 频率值必须是列向量。

振幅和相移值
  • 振幅和相位必须都是列向量。

  • 频率值必须是列向量。

  • 振幅和相位必须都是1Ny——- - - - - -Nu——- - - - - -Nf数组,Nu是输入的个数,Ny是输出的个数,和Nf是频率测量的次数。

  • 频率值必须是列向量。

有关将数据导入MATLAB工作区的更多信息,请参见数据导入导出

在MATLAB工作空间中拥有变量后,将它们导入系统识别应用程序或创建用于在命令行中工作的数据对象。有关将数据导入应用程序的更多信息,请参见将频响数据导入应用程序。要了解有关创建数据对象的更多信息,请参见使用idfrd对象表示频率响应数据