Vicverse
Published on

动态系统与反馈控制探索 Day 1:建立 PID 的第一层直觉

Authors
  • avatar
    Name
    Vic Wu
    Twitter

今天是方向探索第一周的第一天。

这一天的定位很明确:先建立反馈控制与 PID 的第一层直觉,不追求公式推导,也不急于系统学习控制理论。重点是开始把控制器和“系统真实会怎么动”联系起来。

今日观看材料

为什么开环控制不够

现实环境并不是固定不变的。系统会受到外界扰动、负载变化、误差,以及其他难以提前预测的影响。

因此,只提前规定“系统应该怎么做”的开环控制往往不够。闭环控制会不断读取当前状态,比较目标与实际之间的偏差,再实时修改控制量。

PID 的第一层直觉

部分直觉理解当前记忆方式
P看此时此刻的误差有多大。偏得远,就给更大的修正;偏得近,就减小修正。P 看现在
I关注一个误差是否长期存在,并把过去没有消掉的误差持续累积。I 管欠账
D看误差变化得有多快。若系统正快速冲向目标,就提前抑制控制作用。D 看趋势

对 I 项最关键的理解

虽然每一刻只差一点,但这个错误已经持续很久了。

I 项积分的不是“实际追了多少距离”,而是误差随时间累积了多少。

例如,目标速度是 100 km/h,但系统因为持续的外界阻力一直停在 95 km/h。P 可能只能提供一个刚好抵消阻力的控制量,于是这 5 km/h 的偏差长期存在。I 会不断累积这笔误差,逐渐增加修正,直到长期偏差被消除。

P 为什么可能导致过冲

P 增大后,系统会对当前误差作出更强烈的反应,因此通常响应更快。

但真实系统往往存在惯性和延迟:即使接近目标时控制器已经开始减小作用,此前积累的运动趋势也不会瞬间消失,于是系统可能越过目标。P 过大时,这种过冲还可能反复出现,形成振荡。

D 在做什么

D 根据误差的变化率判断系统当前的变化趋势。如果系统正以很快的速度接近目标,D 会起到类似阻尼或“提前刹车”的作用,减少过冲和振荡。

它不是直接知道未来,而是根据当前变化趋势进行抑制。

今日形成的简化记忆

  • P:现在差多少?
  • I:这个误差已经赖着不走多久了?
  • D:这个误差正在以多快的速度变化?

一句话:P 管眼前,I 管欠账,D 管趋势。

今天实际完成了什么

  • 观看 3 个 PID / 反馈控制入门视频。
  • 理解开环控制在存在未知扰动时的局限。
  • 建立 PID 三项的第一层直觉,而不是只记“比例—积分—微分”名称。
  • 纠正“积分是在计算实际追赶距离”的误解:I 累积的是误差。
  • 理解 P 增大可能导致过冲的原因:系统响应更猛,但真实物理系统存在惯性与延迟。
  • 理解 D 的阻尼作用,以及 I 用于处理长期残留偏差、稳态误差的意义。

今日判断

今天的重点不是掌握控制理论,而是开始把控制器和“系统真实会怎么动”联系起来。

目前对反馈、误差、过冲、趋势和长期偏差已经形成初步动态直觉。编号一板块的探索进入下一步:从“理解 PID 是什么”转向“理解动态系统为什么会稳定或失稳”。

明日任务:动态系统与稳定性

明日不继续堆 PID 定义,转向观察三个对象:

  1. 普通单摆
  2. 倒立摆
  3. 四旋翼

需要回答三个问题:

  1. 什么叫一个系统的“状态”?
  2. 为什么有些系统天然稳定,有些系统天然不稳定?
  3. 什么叫 fully actuated 与 underactuated?

明日完成标准:能够用自己的话解释——为什么普通垂下来的摆不需要持续控制就会回到底部,而倒立摆必须不断反馈控制才能保持竖直。

Discussion

评论

还可输入 1200

正在加载评论...