# 四旋翼PID增益过大且占空比映射受限怎么办？

> 原文链接：https://robotics.hellobike.com/pitfalls/2015-06-04-robotics-se-7415
> 频道：pitfalls | 更新日期：2015-06-04 | 标签：auto, stackexchange, control, quadcopter, pid, matlab
> 核心摘要：四旋翼控制器增益过大、PWM映射困难，答案建议补齐PWM到动力模型并处理油门余量与饱和。

# 四旋翼PID增益过大且占空比映射受限怎么办？

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[Quadcopter PID output and duty cycle conversion](https://robotics.stackexchange.com/questions/7415/quadcopter-pid-output-and-duty-cycle-conversion)（Robotics Stack Exchange #7415）

**状态**：已解决

## 问题

提问者用 Matlab 调 PD/P 控制器得到很大增益，如 `P=8000`、`D=100`，难以直接叠加到 PWM 占空比；同时不确定油门是否应映射满 `[202,2389]`，还是预留机动余量。

## 环境

四旋翼；智能手机 WiFi 控制；姿态估计为 Kalman Filter；采样 `100Hz`；PWM `25KHz`；TIM 周期 `2879`。

## 解决办法

1. 不要把“外 P 环”和“内 D 环”按不同速率分开计算；应对相应误差计算 `P`、`I`、`D` 项，并将各项相加得到控制信号。
2. 在 Matlab 模型中补上从 `PWM` 到转速、以及从转速到升力/扭矩的传递关系；答案认为 `PWM` 到转速可按线性关系近似，再用常数从转速换算升力/扭矩。
3. 油门映射可选择直接用满量程、预留余量用于机动，或用滑动增益处理余量不足；全油门时部分桨无法再加速，会削弱机动响应。
4. 注意执行器饱和问题；原文后续具体处理细节未说明。

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

## 原始参考来源 (Sources)

- [Robotics Stack Exchange #7415：Quadcopter PID output and duty cycle conversion](https://robotics.stackexchange.com/questions/7415/quadcopter-pid-output-and-duty-cycle-conversion)