本教程针对应用广泛的串级PID控制器(外环控制姿态角、内环控制姿态角速率,遵循时标分离假设,即内环响应远快于外环),聚焦多旋翼飞机(垂起飞行器旋翼部分),以PX4固件为例讲解调参方法,为用户提供参考。
固定翼、直升机、多旋翼的调参逻辑类似,但参数敏感性差异显著——直升机对参数极度敏感,固定翼参数适应范围广、最易调试,多旋翼介于两者之间。
本教程整理于网络,参考来源如下,感谢作者分享!
参考文献一:http://www.360doc.com/content/22/0206/22/70238708_1016223765.shtml
参考文献二:https://www.bookstack.cn/read/TranslationPx4/3_Tutorial-multicopter-PID-tuning.md
PX4通过multirotor_att_control应用程序实现姿态控制,核心分为内外环结构:
试飞全程使用Manual/Stablized模式,禁止Acro模式
参数调整需循序渐进,每次增加10%-30%(微调阶段可降至10%),每次调整后落地确认设置,再试飞验证,避免一次性大幅修改。
THR_MDL_FAC参数是用来修正升力和PWM输出值的关系的,我们经常发现在悬停状态时飞机的姿态控制好好的,但是到了快速爬升和下降时,飞机就出现姿态不稳的现象,就是因为力和PWM的输出不是线性关系,所以会出现不同油门值的时候控制效果不一样,这个参数用于解决悬停时姿态稳定,但快速爬升 / 下降时姿态不稳的问题。可使用Flight Review或QGroundControl分析数据,核心关注角度/角速率跟踪情况及电机是否饱和。以下为不同控制效果的曲线参考(注:除第一张图外,其余均为大尺寸飞机曲线,响应速度慢于小尺寸飞机):
Flight Review网站地址:https://logs.px4.io/
1. 角速率跟踪良好:曲线贴合期望指令

2. 角速率跟踪不良:曲线围绕期望指令振荡,需调整P/D增益

3. 姿态跟踪良好:角度曲线快速贴近期望指令

4. 姿态跟踪不良:角度曲线偏离期望指令,或超调量过大,需调整外环P增益

| 参数类别 | 参数名称 | 核心功能 | 典型取值范围 |
|---|---|---|---|
| 外环姿态角控制(P参数) | MC_ROLL_P | 滚转角比例控制,输出期望滚转角速率 | 3.0左右 |
| 外环姿态角控制(P参数) | MC_PITCH_P | 俯仰角比例控制,输出期望俯仰角速率 | 3.0左右 |
| 外环姿态角控制(P参数) | MC_YAW_P | 偏航角比例控制,输出期望偏航角速率 | 2.0-3.0 |
| 内环角速率控制(P参数) | MC_ROLLRATE_P | 滚转角速率核心控制,影响灵敏度与误差响应速度 | 0.02(初始)→ 0.1(典型) |
| 内环角速率控制(P参数) | MC_PITCHRATE_P | 俯仰角速率核心控制,影响灵敏度与误差响应速度 | 0.02(初始)→ 0.1(典型) |
| 内环角速率控制(P参数) | MC_YAWRATE_P | 偏航角速率核心控制,对抗偏航转动扰动 | 0.1(初始)→ 0.2-0.3(典型) |
| 内环角速率控制(I参数) | MC_ROLLRATE_I | 消除滚转角速率跟踪静差,应对持续扰动 | MC_ROLLRATE_P的5%-10% |
| 内环角速率控制(I参数) | MC_PITCHRATE_I | 消除俯仰角速率跟踪静差,应对持续扰动 | MC_PITCHRATE_P的5%-10% |
| 内环角速率控制(I参数) | MC_YAWRATE_I | 消除偏航角速率跟踪静差,应对持续扰动 | 初始设为0,按需微调 |
| 内环角速率控制(D参数) | MC_ROLLRATE_D | 抑制滚转角速率振荡与超调,与噪声相关 | 0.01-0.02 |
| 内环角速率控制(D参数) | MC_PITCHRATE_D | 抑制俯仰角速率振荡与超调,与噪声相关 | 0.01-0.02 |
| 内环角速率控制(D参数) | MC_YAWRATE_D | 抑制偏航角速率振荡与超调,与噪声相关 | 初始设为0,按需微调 |
| 前馈控制参数 | MC_ROLLRATE_FF | 滚转角速环输出直接反馈至电机,提升响应速度 | 按需调整(响应慢则增大,灵敏则降低) |
| 前馈控制参数 | MC_PITCHRATE_FF | 俯仰角速环输出直接反馈至电机,提升响应速度 | 按需调整(响应慢则增大,灵敏则降低) |
| 前馈控制参数 | MC_YAW_FF | 偏航速度控制器前馈比例,影响偏航响应灵敏度 | 0.5(初始)→ 0.8-0.9(典型),航拍可偏小 |
| 最大角速率限制 | MC_ROLLRATE_MAX | 限制最大滚转角速率 | 按电机性能调整 |
| 最大角速率限制 | MC_PITCHRATE_MAX | 限制最大俯仰角速率 | 按电机性能调整 |
| 最大角速率限制 | MC_YAWRATE_MAX | 限制最大偏航角速率 | 按电机性能调整 |
| 辅助参数 | PWM_MIN | 保证电机最低转速,避免极端姿态时停转 | 需验证(解锁后电机持续运转) |
| 辅助参数 | SDLOG_PROFILE | 开启high rate选项,便于姿态控制效果分析 | 开启对应选项 |
| 辅助参数 | MC_AIRMODE | 电机饱和时优先保障姿态控制 | 置0 |
| 辅助参数 | THR_MDL_FAC | 修正升力与PWM输出的非线性关系 | 按需调整(解决爬升/下降时姿态不稳) |