飞控是如何控制舵机的角度的?
一、飞控是什么
飞行控制系统(Flight control system)简称 飞控,可以看作飞行器的大脑,是飞行器的核心部件。功能主要是发送各种指令,例如飞行器的姿态变化是由多种传感器将飞行器本身的姿态数据传回飞控,再由飞控通过运算和判断下达指令,由执行机构完成动作和飞行姿态调整。
二、飞控控制舵机基本原理
飞控如何实现对舵机的控制本质上是 飞控通过实时姿态感知与目标姿态计算,输出 PWM 信号驱动舵机,使飞机实现所需的飞行状态控制。以下是详细原理解释,适用于 ArduPilot、INAV 等主流飞控系统。

2.1 飞控感知飞行器姿态
1.姿态传感器输入
飞控通过内置传感器获取飞机的实时姿态数据,包括:
- IMU(惯性检测单元):横滚角(Roll)、俯仰角(Pitch)、偏航角(Yaw)、加速度以及角速度
- 磁力计/GPS:辅助修正航向和位置信息。
- 空速计:测量飞机相对于周围空气的速度,实现精确飞行控制和速度保护。
- 气压计:测量大气压力,从而推算飞机的飞行高度,
2.接收用户/自动导航指令
用户通过遥控器输入控制命令(如左转、爬升),或自动飞行模式下由航点系统提供目标姿态/位置,飞控将此目标姿态与位置作为“期望”。
2.2 飞控计算控制输出
1.误差计算(期望 vs 当前)
飞控实时计算当前姿态与目标姿态之间的差值,生成误差信号,例如:
- 当前俯仰角为 5°,目标为 15°,误差为 +10°
2.PID 控制算法调节
飞控使用 PID控制器,根据姿态误差计算所需舵面偏转量。PID 输出的是一个控制量,代表舵机应该向哪个方向转动、幅度应该多大。
- 比例(P):快速响应误差(如飞机右倾时反向打副翼)。
- 积分(I):消除稳态误差(如长时间的风偏修正)。
- 微分(D):抑制振荡(如防止副翼过度摆动)。
3.舵机控制信号生成
飞控将计算结果转换为 PWM(脉宽调制)信号,一般范围为 1000~2000μs,中位为 1500μs:
- 比如:升降舵中位是 1500μs,若需飞机抬头(上升),则发送 1600μs;
- 若需飞机低头(下降),则发送 1400μs。
2.3 舵机响应控制指令
1.PWM 信号驱动舵机旋转
舵机接收到 PWM 信号后,根据信号脉宽调整角度,通常支持约 ±45° 转动。
2.舵面产生空气力矩
舵面(如副翼、升降舵、方向舵)偏转后,改变机翼局部气流方向,产生气动力矩,使飞机围绕对应轴(Roll/Pitch/Yaw)旋转,实现飞行动作。
三、PWM占空比与舵机角度的关系
PWM信号特点(舵机专用):
- 频率:通常为 50Hz(即一个周期20毫秒)
- 占空比:控制信号的高电平持续时间,单位是微秒(us)
舵机实际响应的是高电平脉冲的绝对时间,因此修改脉宽可以改变舵机的角度
PWM 高电平时间 | 占空比(占周期20ms) | 舵机角度(标准) |
---|---|---|
1000μs | 5% | 0° |
1500μs | 7.5% | 90° |
2000μs | 10% | 180° |
PWM占空比 = 高电平时间 / 总周期时间 ,例如1500μs / 20000μs = 7.5%

注意事项
- 脉宽范围:超出舵机标称范围(如500μs~2500μs)可能导致机械限位损坏。
- 供电电压:电压越高,舵机转速越快,但需注意额定电压
SpeedyBee F405 Wing APP、SpeedyBee F405 Wing MINI以及SpeedyBee F405 Wing APP V2的舵机输出电压默认为5v
- 信号稳定性:PWM信号抖动会导致舵机抖动。
- 多舵机同步:确保所有舵机PWM周期一致(通常50Hz),避免时序冲突。
如果遇到舵机抖动的现象可以进行下列排查:
1.检查舵机排针供电电压是否稳定。
2.检查所有舵机刷新率是否一致。
3.检查舵机信号线是否过于靠近数传、电调、电机等设备。
4.尝试更换舵机,舵机质量较差也会导致抖动。
5.舵机是否安装牢固。