# 四旋翼仅用角度PID出现±10°振荡

> 原文链接：https://robotics.hellobike.com/pitfalls/2016-05-01-robotics-se-8895
> 频道：pitfalls | 更新日期：2016-05-01 | 标签：auto, stackexchange, control, quadcopter, pid, raspberry-pi
> 核心摘要：四旋翼单环角度PID稳定时±10°振荡，改用级联PID先调角速度内环再调角度外环实现稳定飞行。

# 四旋翼仅用角度PID出现±10°振荡

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[Quadcopter PID Control: Is it possible to stabilize a quadcopter considering only angle measurements?](https://robotics.stackexchange.com/questions/8895/quadcopter-pid-control-is-it-possible-to-stabilize-a-quadcopter-considering-onl)（Robotics Stack Exchange #8895）

**状态**：已解决

## 问题

四旋翼以0°或7°为俯仰设定值时，单环PID使用互补滤波角度误差作为输入，最佳仍出现约±10°持续角度振荡；疑问是仅角度测量能否稳定、是否需角速度环。

## 环境

自主四旋翼项目；互补滤波`FilteredAngle=(0.98)*(FilteredAngle + GyroAngleVel*dt) + (0.02)*(AccelAngle)`；控制频率`530Hz`。

## 解决办法

1. 原文确认仅用角度测量的单环PID可以稳定四旋翼，但更难调。
2. 改用级联PID：先用陀螺仪角速度读数调内环`rate PID`。
3. 再用角度设定值与传感器融合角度测量调外环`stabilize PID`；融合角度来自加速度计角度和陀螺仪角速度积分角度。
4. 提问者表示该方法配合当前`530Hz`控制循环最容易实现稳定飞行。

原问题作者：user123456098；采纳答案作者：user123456098。原内容依 CC BY-SA 4.0 授权，本页摘要同样依 CC BY-SA 4.0 授权。
:::

## 原始参考来源 (Sources)

- [Robotics Stack Exchange #8895：Quadcopter PID Control: Is it possible to stabilize a quadcopter considering only angle measurements?](https://robotics.stackexchange.com/questions/8895/quadcopter-pid-control-is-it-possible-to-stabilize-a-quadcopter-considering-onl)