MATLAB系统辨识:优化序列处理与模型连续化方法

版权申诉
5星 · 超过95%的资源 1 下载量 36 浏览量 更新于2024-10-30 收藏 13KB RAR 举报
资源摘要信息:"在进行系统辨识时,经常遇到不能正确识别外部设备,如u盘的问题,本文档针对在使用Matlab工具进行系统辨识时,采用4M序列(伪随机序列)作为输入信号,详细介绍了系统辨识的一些处理方法。" 知识点一:伪随机序列(4M序列)的使用 伪随机序列,也被称为白噪声,是一种特殊的信号序列,它具有类似噪声的特性,因此在工程上更易于实现。在系统辨识中,4M序列作为输入信号,用于激发系统,获取系统的输出响应。 知识点二:消除零漂 在系统辨识的过程中,通常会遇到输出信号的零漂现象,即输出信号存在一个固定的偏移量。为了解决这个问题,我们需要从原始数据中的输出中减去y(1),即第一个数据点的值,以此消除零漂。 知识点三:周期信号的处理 由于M序列是周期信号,因此在系统辨识的过程中,通常只考虑从第二个周期开始的数据,因为第一个周期的数据往往是不稳定的。同时,输出信号也是周期的,这是由于输入信号和系统响应的共同特性。 知识点四:自相关和互相关 在系统辨识中,我们通常需要计算信号的自相关和互相关。由于MATLAB的指令只能得到有限信号的自/互相关,因此,为了得到准确的结果,我们需要自己编写代码进行计算。在编写代码时,需要考虑到周期信号的特性,对结果进行适当的拓展。 知识点五:Hankel阵的应用 在系统辨识的过程中,通过将脉冲响应转化为Hankel阵,可以得到系统的离散模型。在这个过程中,通常取足够大的维数,例如46*46的Hankel阵,然后基于这个阵进行平衡实现,最后直接截断成5阶。这里需要说明的是,Hankel阵的引入可以有效处理连续系统,使得系统的辨识更加准确。 知识点六:连续化处理和增益调整 由于得到的模型是离散的,因此需要进行连续化处理。同时,为了使辨识结果的低频增益与原始数据的低频增益相同,需要对增益进行相应的修改。这是一个关键的步骤,直接影响到系统的辨识精度。 在处理系统辨识时,还需要注意到"系统识别不了u盘"的问题。这可能涉及到Matlab的硬件驱动问题,或者是USB接口的问题,需要进行相应的检查和修复。