在线工具 · 经典控制 vs 最优控制
倒立摆平衡器 · PID vs LQR
同一台小车倒立摆,左边 PID 右边 LQR:戳一下摆杆、推一下小车,对比两种控制器的恢复过程。拖动 LQR 权重滑杆,最优增益实时重解。
对比场 · 左 PID / 右 LQR(互不相扰)
实时指标
倒下次数 0机体(双方共享)
PID 参数
角度环:摆杆一歪就往歪的方向开车(追着接)。
角度阻尼:抑制摆杆甩过头。
位置环:把小车拉回轨道中央,否则会越漂越远。
消除稳态位置偏差(顶着斜坡/恒力时才看得出来)。
LQR 权重(拖动重解)
越大越强调小车回中,代价是摆杆晃动更多。
越大越强调摆杆竖直,最直观的一个滑杆。
越大则控制力代价越高:出力更小,恢复更慢。
K = [-1.9, -3.2, -39.4, -8.8]
PID 和 LQR 差在哪?
PID — PID:手工设计——「误差乘增益求和」。直观、逐个调、无需模型;但四个状态耦合的系统(小车+摆杆)里,PID 得拆成级联小心翼翼地调,顾此失彼是常态。
LQR — LQR:数学一次性解出——「给定状态权重 Q 和控制代价 R,最优增益 K 是解出来的,不是调出来的」。只要给线性模型,Riccati 方程直接给出全状态最优反馈,耦合问题自动处理。
什么时候用哪个:电机速度环、温度控制这类单变量系统 PID 依然无敌;机器人全身控制、多关节协调、有明确性能指标可写的地方 LQR/现代最优控制更强。实际工程常常底层 PID 上层 LQR。
怎么玩?
- 先戳几下摆杆:PID 版会用小幅来回修正稳住(可能小车漂得远),LQR 版通常一次规划好小车移动,姿态恢复更快。
- 把 R 拉大:LQR 出力变小,恢复变慢、摆杆晃得更久——最优控制里的「代价」是真实代价。
- 把 Q·θ 拉满、Q·x 归零:LQR 只顾摆杆竖直、不管小车漂哪去——这就是「只管摆杆」预设。
- 暴躁 PID 预设:增益拉满后摆杆持续大幅摆动、小车来回冲撞轨道两端——增益不是越大越好。
倒立摆为什么是控制理论的试金石?
它天生不稳定(摆杆一歪重力只会让它更歪)、欠驱动(一个电机管两个自由度)、非线性(角度大了动力学完全变样)。Segway 平衡车、火箭回收姿控、双足机器人行走平衡,本质都是倒立摆。1954 年麻省理工用模拟计算机控制它,成为现代控制理论走向工程的第一批验证平台。
LQR 的 K 是怎么算出来的?(30 秒版)
线性化得到 ẋ = A·x + B·u;最小化 J = ∫(xᵀQx + uᵀRu)dt;最优解是 u = −K·x,K = R⁻¹BᵀP,其中 P 是代数 Riccati 方程 AᵀP + PA − PBR⁻¹BᵀP + Q = 0 的解。本工具在你拖滑杆时实时迭代解离散 Riccati——拖动时底部显示的 K 向量就是它吐出来的。