第二章:系统与模型基础

各位同学,大家好。我是你们的老朋友,一个在控制领域摸爬滚打了十几年的工程师。今天咱们来聊聊模型辨识的基石——系统与模型基础。说实话,这部分内容看着有点理论,但你要是真搞懂了,后面实操起来会顺手很多。

我个人习惯,在开始任何辨识工作之前,先问自己三个问题:这个系统是线性的吗?它随时间变化吗?我该用哪种模型来描述它? 这三个问题,就是咱们今天要解决的核心。

2.1 线性时不变系统(LTI)

线性时不变系统,英文叫 LTI,是模型辨识里最亲密的伙伴。为什么?因为它简单、成熟、好用。

线性,说白了就是两个特性:齐次性和叠加性。你给它一个输入,它给你一个输出。输入加倍,输出也加倍。两个输入同时作用,输出就是各自输出的和。嗯,这很符合直觉。

时不变,意思是系统的特性不随时间改变。你今天测它,和明天测它,结果一样。我在项目中遇到过最典型的例子,就是老化的传感器。刚装上去时是线性时不变的,用了两年后,漂移就出来了,变成了时变系统。所以,LTI 是一个理想化的假设,但也是我们最常用的起点。

核心要点: 大多数工业过程,在某个工作点附近,都可以近似为 LTI 系统。这是模型辨识的“安全区”。

2.2 非线性系统

现实世界,其实是非线性的。你想想看,摩擦力、饱和、死区、滞环……这些玩意儿到处都是。

非线性系统有个特点:不满足叠加原理。你给它一个正弦波,它输出可能就不是正弦波了,会多出很多谐波。我曾经调试过一个液压伺服系统,输入是小信号时,响应很漂亮;输入一大,系统就开始抖,怎么调 PID 都没用。后来一分析,是阀的流量饱和特性在作怪。

处理非线性系统,常用的招数有几种:

  • 局部线性化:在工作点附近用泰勒展开,近似成 LTI 模型。这是最常用的工程方法。
  • 分段线性化:把整个工作范围切成几段,每段用一个 LTI 模型。
  • 非线性模型结构:比如 Hammerstein 模型、Wiener 模型,专门用来描述某些特定类型的非线性。

我的建议: 做辨识时,先假设它是线性的。如果残差分析发现不对劲,再考虑非线性。别一上来就搞复杂模型,容易把自己绕进去。

2.3 三种核心模型形式

模型辨识,最终要输出一个数学表达式。常用的有三种:传递函数、状态空间、脉冲响应。它们之间可以互相转换,但各有各的脾气。

2.3.1 传递函数模型

传递函数,是经典控制理论的灵魂。它用拉普拉斯变换,把微分方程变成了代数方程。形式很简单:

G(s) = Y(s) / U(s) = (b_m s^m + ... + b_0) / (s^n + a_{n-1} s^{n-1} + ... + a_0)

我个人习惯,用传递函数来理解系统的频率特性。比如,一个一阶惯性环节,它的带宽、时间常数,一眼就能看出来。在项目里,我经常用阶跃响应测试,直接拟合出传递函数的参数,又快又准。

模型类型 优点 缺点
传递函数 直观、物理意义明确、适合频域分析 只适用于 SISO 系统、处理多变量麻烦
状态空间 适合 MIMO 系统、便于计算机求解 物理意义不直观、参数多
脉冲响应 非参数模型、无需假设结构 参数多、需要长数据

2.3.2 状态空间模型

状态空间模型,是现代控制理论的核心。它用一组一阶微分方程来描述系统内部状态的变化:

dx/dt = A x + B u
y = C x + D u

这里 x 是状态向量,u 是输入,y 是输出。A、B、C、D 是矩阵。

状态空间模型最大的好处,是能处理多输入多输出(MIMO)系统。我记得有一次做飞行器姿态控制,三个轴互相耦合,用传递函数根本搞不定。换成状态空间模型,把耦合项放到 A 矩阵里,一下子就清晰了。

注意: 状态空间模型的状态变量,不一定有物理意义。它只是数学上的一个抽象。所以,辨识出来的状态空间模型,可能需要做相似变换,才能对应到实际的物理量。

2.3.3 脉冲响应模型

脉冲响应模型,是最“原始”的模型。它不假设任何结构,直接记录系统对单位脉冲输入的输出响应。在离散时间下,就是一组系数:

y(k) = sum_{i=0}^{N-1} g(i) * u(k-i)

这里的 g(i) 就是脉冲响应系数。说白了,它就是系统的“记忆”。

脉冲响应模型的好处是无偏,不需要你猜系统的阶次。但坏处也很明显:需要的数据量很大,而且对噪声敏感。我在做化工过程辨识时,经常先用脉冲响应模型看看系统的“长相”,再决定用几阶的传递函数去拟合。

2.4 知识体系总览

为了让大家更直观地理解这些概念之间的关系,我画了一张图。你可以把它当作本章的“导航图”。

系统与模型基础 线性时不变 (LTI) 非线性系统 传递函数模型 状态空间模型 脉冲响应模型 频域分析 MIMO 控制 非参数辨识 非线性处理 线性 非线性

这张图展示了本章的核心逻辑:从系统特性出发,选择合适的模型形式,最终服务于具体的应用场景。你可以在后续的学习中,随时回来看看这张图,确认自己走到了哪一步。

2.5 避坑指南

最后,分享几个我踩过的坑:

  • 不要盲目追求高阶模型:模型越复杂,参数越多,需要的辨识数据也越多。有时候,一个一阶加纯滞后模型,比一个五阶模型好用得多。
  • 注意采样时间:采样太快,数据冗余;采样太慢,会丢失动态信息。我一般建议,采样频率是系统带宽的 5-10 倍。
  • 先做数据预处理:去掉趋势项、滤除高频噪声、剔除异常值。这一步做不好,后面全是白费。

好了,第二章的内容就到这里。记住,模型辨识不是一锤子买卖,而是一个迭代的过程。先假设,再验证,不行就换个模型。这才是工程师的思维。

可可精品资料库