2025CUADC多旋翼无人机侦察与救援之投弹的原理--太原理工大学

一、【无人机控制基础】数字 PID 控制器详解:从原理到偏差式 PID 实战(含视觉 PID 应用)

1. 为什么在无人机控制中,PID 依然不可替代?

在学习无人机控制算法时,很多同学会下意识地认为:
PID 只是“经典控制”,真正高端的无人机应该使用 MPC、LQR 甚至强化学习。

但只要真正接触过飞控系统,就会发现一个事实:

几乎所有成熟无人机系统,最底层一定是 PID。

原因并不复杂,而是工程约束决定的:

  • 无人机是 强非线性、强耦合系统
  • 飞控运行在 资源受限的嵌入式平台
  • 控制周期极短(250 Hz ~ 2 kHz)
  • 执行器(电机 + ESC)存在明显延迟和饱和

在这种条件下,稳定性、确定性、可调试性远比算法“高级”更重要
PID 正是目前工程上“性价比最高”的控制方案。


2. 从连续 PID 到数字 PID:无人机为什么必须用离散形式?

经典连续 PID 表达式为:

[
u(t)=K_p e(t)+K_i\int e(t)dt+K_d\frac{de(t)}{dt}
]

但在无人机飞控中,这个公式不会被直接使用,原因是:

  • 控制器运行在 MCU 上
  • 控制是按固定周期采样的
  • 所有信号都是离散的

因此必须将 PID 离散化,形成 数字 PID 控制器


3. 数字 PID 的两种核心实现方式

3.1 位置式 PID(Position PID)

位置式 PID 的离散表达为:

[
u(k)=K_p e(k)+K_i\sum_{i=0}^{k}e(i)+K_d[e(k)-e(k-1)]
]

工程特点:

  • 直接计算当前控制输出
  • 逻辑直观,易于理解
  • 积分项容易累积,存在积分饱和风险

在无人机中的典型应用:

  • 位置控制环
  • 高度控制环
  • 低频、慢变化系统

3.2 偏差式 PID(Incremental PID,无人机核心)

偏差式 PID 不直接计算控制量,而是计算控制量的增量

[
\Delta u(k)=K_p[e(k)-e(k-1)] + K_i e(k) + K_d[e(k)-2e(k-1)+e(k-2)]
]

[
u(k)=u(k-1)+\Delta u(k)
]


4. 为什么偏差式 PID 在无人机中如此重要?

在无人机控制中,偏差式 PID 具有几乎“为飞控量身定制”的优势:

(1)天然抑制积分饱和

控制输出是逐步变化的,即使误差较大,也不会瞬间推到极限。

(2)对执行器更友好

  • 电机转速变化平滑
  • 避免突然拉满油门或急刹

(3)适合高频控制环

角速度环通常运行在 500 Hz ~ 2 kHz,偏差式 PID 在这种条件下非常稳定。


5. 偏差式 PID 在无人机飞控中的典型位置

几乎所有多旋翼飞控结构都遵循:

位置环(PID / P)
 ↓
速度环(PID)
 ↓
姿态角环(PID)
 ↓
角速度环(偏差式 PID)
 ↓
电机混控

越靠近电机,越倾向使用偏差式 PID。


6. 偏差式 PID 实战一:角速度内环(经典案例)

6.1 控制目标

  • 期望角速度:(\omega_{ref})
  • 实际角速度:(\omega)
  • 输出:力矩控制量

误差定义:

[
e(k)=\omega_{ref}(k)-\omega(k)
]

6.2 控制逻辑(伪代码)

e0 = ref - gyro;
du = Kp*(e0 - e1)
   + Ki*e0
   + Kd*(e0 - 2*e1 + e2);
u = u_prev + du;

这段代码几乎可以在 PX4、Betaflight、ArduPilot 中找到对应实现。


7. 偏差式 PID 实战二:视觉调整 PID(重点示例)

7.1 应用背景:基于视觉的无人机对准控制

在很多无人机任务中,会涉及 视觉闭环调整,例如:

  • 目标跟踪
  • 精准降落
  • 视觉引导对准(视觉伺服)

典型场景:
无人机通过摄像头检测目标,目标在图像中的位置偏离中心,需要调整无人机姿态或位置。


7.2 视觉误差的定义方式

假设:

  • 图像宽度为 640
  • 图像高度为 480
  • 目标中心坐标为 ((x_t, y_t))

误差定义为:

[
e_x = x_t - 320
]
[
e_y = y_t - 240
]

这两个误差直接反映了 无人机当前的视觉偏差


7.3 为什么视觉 PID 更适合用偏差式?

视觉系统具有以下特点:

  • 帧率低于 IMU(30~60 Hz)
  • 目标检测存在抖动
  • 数据存在延迟

如果直接使用位置式 PID:

  • 积分容易累积错误
  • 输出抖动明显

偏差式 PID 的优势在此非常突出:

  • 输出变化由“误差变化”决定
  • 对突变和噪声更鲁棒
  • 调整过程更平滑

7.4 视觉对准偏差式 PID 示例

横向对准控制 为例:

ex0 = target_x - img_center_x;
du = Kp*(ex0 - ex1)
   + Ki*ex0
   + Kd*(ex0 - 2*ex1 + ex2);

yaw_cmd += du;

控制结果:

  • 当目标在图像左侧 → 产生正向 yaw 调整
  • 当目标接近中心 → 输出逐渐减小
  • 不会出现剧烈抖动

7.5 工程经验总结(非常重要)

在视觉 PID 中:

  • P 项为主
  • I 项极小或不用
  • D 项用于抑制抖动

这在无人机视觉控制中是非常常见的经验配置。


8. PID 调参在无人机中的基本思路

  • 先关 I、D,只调 P
  • 再加入 D 抑制振荡
  • 最后谨慎加入 I

永远从内环开始调。


9. 总结

  • PID 是无人机控制的基石
  • 偏差式 PID 是飞控内环的核心
  • 视觉闭环控制中,偏差式 PID 更稳定、更工程化
  • 理解 PID,比“会调 PID”更重要