水箱 GPC 实验笔记

系统辨识 · CARIMA · 丢番图递推 · 阶梯式 GPC · RLS 在线辨识 · 调参指南
实验数据:6_517_1.txt(1944点)· 代码:gpc_na1.py / gpc_na1.cpp

§1 系统辨识

ARX 模型结构、时延估计(k=24)、AIC 阶次选择、归一化空间重辨识。重点:为什么必须在归一化空间辨识,以及符号约定的一致性。

→ 进入 §1

§2 CARIMA 与丢番图递推

CARIMA 模型的积分补偿原理、丢番图恒等式、F/G 递推公式、na=1 时的具体形式。包含两个实际 bug 的分析与修复。

→ 进入 §2

§3 GPC 控制律

预测分解、柔化设定值轨迹、目标函数与最优解、阶梯式 GPC(无矩阵求逆)、控制量限幅。三个旋钮(α/β/λ)的作用维度与常见误解。

→ 进入 §3

§4 RLS 在线辨识

递推最小二乘算法、遗忘因子选择(λ=0.995)、自校正 GPC 每步执行流程、C++ 实现细节。参数漂移 bug 的根因与修复。

→ 进入 §4

§5 调参指南

参数总览、推荐调参顺序(稳态→响应速度→超调→平滑)、常见故障诊断表。实验前必读。

→ 进入 §5

§6 补充答疑

6个深挖问题:一/二阶惯性纯滞后的物理含义、AIC 量化依据、最小二乘推导与归一化、CARIMA 与教材的差异、$\tilde A$ 为何是二阶、RLS 对 GPC 推导的影响。

→ 进入 §6

§7 代码对照

gpc_na1.py 每个函数与教材公式、笔记章节的逐行对照。包含:归一化、丢番图递推、自由响应、柔化设定值、阶梯式 GPC、RLS 更新、主循环逐行注解。

→ 进入 §7

关键数值速查

模型:na=1, nb=0, k=24
A = [1, −0.9846],B = [0.02436]
Kss = 1.577,τ ≈ 64 步
推荐参数:p=40, pu=5, β=0.7, λ=2, α=0.9
RLS:λ=0.995,初值 θ=[0.9846, 0.02436]