过程:K = 2、T = 5 s、dt = 0.1 s(固定)。仿真时间 15 s。作为对比,对同一对象同时施加 PID(Kp = 2,Ki = 0.4)控制并显示其响应。
上:y(蓝)、r(红虚线)、PID 响应(灰)、预测时域曲线(蓝点线)/下:u(绿)、Nc 个最优输入(黄点)
把一阶过程 $G_p(s) = K/(T s + 1)$ 用前向 Euler 离散化得到 $x_{k+1} = a\,x_k + b\,u_k$($a = e^{-dt/T}$、$b = K(1-a)$)。
$N_p$ 步预测:
$$y_{k+i} = a^{i}\,x_k + \sum_{j=0}^{i-1} a^{i-1-j}\,b\,u_{k+j}$$代价函数(输出误差 + Δu 惩罚,保证无静差跟踪):
$$J = \sum_{i=1}^{N_p} (y_{k+i} - r)^2 + \lambda \sum_{j=0}^{N_c - 1} (\Delta u_{k+j})^2$$无约束 QP 的解析解($\partial J / \partial U = 0$):
$$U = \bigl(H^\top H + \lambda\, L^\top L\bigr)^{-1} \bigl(H^\top (R - F\,x_k) + \lambda\,u_{k-1}\,\mathbf{e}_1\bigr)$$$H$($N_p \times N_c$)与 $F$($N_p \times 1$)由过程系数 $a, b$ 构成,$L$ 为前向差分算子。采用滚动时域策略,仅施加首个 $u_k = U[0]$,下一步重新优化。