飞行控制系统基础:飞控系统组成、传感器、执行机构、控制律基本概念,以及HIL仿真在飞控开发流程中的定位
飞行控制系统(Flight Control System, FCS)是无人机和有人机的“神经中枢”,其核心任务是通过传感器感知飞行状态、由控制律计算控制指令、再由执行机构驱动舵面或电机改变气动力和力矩,从而实现对飞行姿态、航迹和速度的稳定与控制。理解飞控系统的硬件组成、信号流向和控制律设计的基本逻辑,是开展硬件在环(HIL)仿真的前提。HIL仿真并非孤立工具,而是嵌入在飞控开发V字流程中的关键验证环节,其定位决定了仿真模型的保真度要求和接口设计方式。本章将从系统组成、核心部件、控制律概念和HIL定位四个维度展开,为后续章节的仿真建模和实验操作奠定基础。
2.1 飞控系统组成与信号链路
飞控系统的物理组成可以划分为四个主要模块:传感器组、飞控计算机(Flight Computer, FC)、执行机构和飞机本体。这四个模块通过信号链路构成闭环,其信号流向是理解HIL仿真接口设计的关键。传感器组负责感知飞机的运动状态和外界环境,包括惯性测量单元(IMU,内含三轴加速度计和三轴陀螺仪)、磁力计、气压高度计、GNSS接收机、空速管等。这些传感器输出模拟电压、数字总线(如I2C、SPI、UART)或PPS脉冲信号,飞控计算机通过ADC采样或总线读取获取原始数据。
飞控计算机是系统的核心处理单元,通常基于ARM Cortex-M系列或更高性能的处理器,运行实时操作系统(RTOS)。其内部完成三大任务:信号调理与滤波(去除噪声和异常值)、状态估计(通过AHRS或扩展卡尔曼滤波EKF融合多传感器数据,得到姿态角、角速率、位置和速度)、控制律解算(根据控制目标和当前状态计算舵面指令)。控制律解算的输出经过限幅、速率限制和优先级管理后,通过PWM信号或CAN/RS422总线发送给执行机构。
执行机构包括舵机、电机调速器、前轮转向机构等。舵机接收PWM脉宽信号(通常1~2ms对应-45°~+45°),通过内部电机和减速齿轮驱动舵面偏转。电机调速器(ESC)接收PWM或DShot协议信号,控制无刷电机的转速。执行机构的动态响应特性(带宽、延迟、死区)直接影响控制品质,因此在HIL仿真中必须建立执行机构的数学模型或使用真实舵机进行测试。
| 模块 | 典型器件 | 输出信号类型 | HIL仿真接口方式 |
|---|---|---|---|
| 传感器组 | IMU(MPU6000)、气压计(MS5611) | SPI/I2C数字信号 | 仿真器模拟SPI/I2C时序,注入虚拟传感器数据 |
| 飞控计算机 | STM32F427、STM32H743 | 内部处理,输出PWM/总线 | 真实飞控硬件,运行实际固件 |
| 执行机构 | 数字舵机、ESC+无刷电机 | PWM脉宽信号 | 采集PWM信号,转换为舵面偏角/推力输入到仿真模型 |
| 飞机本体 | 气动模型、发动机模型 | 状态量(姿态、位置、速度) | 在仿真主机中运行六自由度动力学模型 |
2.2 传感器与执行机构的关键特性
传感器和执行机构的特性参数对控制律设计和HIL仿真建模至关重要。对于IMU,需要关注量程、零偏稳定性、噪声密度和带宽。例如,一个典型的MEMS陀螺仪量程为±500°/s,零偏稳定性为10°/h,噪声密度为0.01°/s/√Hz。在HIL仿真中,需要向飞控注入包含噪声和偏置的传感器数据,以测试飞控的滤波和估计性能。如果仿真数据过于理想(无噪声),则无法暴露飞控在真实传感器条件下的性能缺陷。
执行机构的动态特性通常用一阶惯性环节近似,其时间常数τ决定了响应速度。例如,一个标准舵机的时间常数约为50ms,带宽约20Hz。在HIL仿真中,如果使用真实舵机,需要测量其实际响应曲线;如果使用虚拟舵机模型,则需要设置合理的τ和死区参数。此外,执行机构的速率限制(如最大舵面偏转速率60°/s)和饱和特性(如最大偏角±30°)也必须建模,否则控制律可能在仿真中表现良好,但在实际飞行中因执行机构饱和而失效。
2.3 控制律基本概念与设计流程
控制律是飞控系统的“大脑”,其基本任务是使飞机的实际状态跟踪期望状态。常见的控制律结构包括:内环(角速率环/姿态环)和外环(位置环/速度环)。内环通常采用PID控制器,以角速率反馈为主,实现姿态稳定;外环则根据位置误差生成姿态指令,形成级联控制结构。以固定翼无人机为例,其纵向控制律通常包含俯仰角速率反馈(阻尼)、俯仰角反馈(姿态保持)和高度反馈(高度保持),三者通过加权组合生成升降舵指令。
控制律设计的一般流程为:首先建立飞机的线性化模型(小扰动方程),然后根据频域或时域指标设计PID增益,最后通过非线性仿真和HIL仿真验证。在HIL仿真中,控制律运行在真实飞控硬件上,因此可以验证代码实现是否正确、时序是否满足要求、是否存在数值溢出等问题。例如,某型无人机在纯数字仿真中俯仰角跟踪误差小于0.5°,但在HIL仿真中发现由于飞控CPU负载过高导致控制周期抖动,实际误差增大到2°。这一案例说明HIL仿真在验证控制律实时性方面不可替代。
// 典型内环PID控制律伪代码(俯仰角速率环)
float pitch_rate_control(float cmd_rate, float measured_rate) {
float error = cmd_rate - measured_rate;
float P_term = Kp_rate * error;
float I_term = Ki_rate * integral_rate;
float D_term = Kd_rate * (error - prev_error) / dt;
integral_rate += error * dt;
// 限幅
if (integral_rate > I_MAX) integral_rate = I_MAX;
if (integral_rate < -I_MAX) integral_rate = -I_MAX;
float output = P_term + I_term + D_term;
// 输出限幅
if (output > ELEVATOR_MAX) output = ELEVATOR_MAX;
if (output < -ELEVATOR_MAX) output = -ELEVATOR_MAX;
prev_error = error;
return output;
}
2.4 HIL仿真在飞控开发流程中的定位
飞控开发遵循经典的V字模型:需求分析→系统设计→软件实现→单元测试→集成测试→系统验证。HIL仿真位于V字模型的右侧,即软件实现完成之后、真机试飞之前。其核心定位是:在真实飞控硬件上运行实际固件,与虚拟飞机模型构成闭环,验证飞控软件的功能正确性、性能指标和故障处理能力。相比纯数字仿真(MIL/SIL),HIL仿真能够覆盖硬件接口时序、CPU负载、内存使用、中断优先级等真实运行环境问题;相比真机试飞,HIL仿真成本低、可重复、无安全风险,且能模拟极端飞行条件(如传感器故障、执行机构卡死)。
在HIL仿真中,需要明确三个关键接口:传感器接口(仿真器向飞控注入虚拟传感器数据)、执行机构接口(飞控输出的PWM信号被采集并转换为模型输入)、通信接口(地面站指令、遥测数据)。这三个接口的保真度直接决定了HIL仿真的有效性。例如,如果传感器仿真数据更新率低于飞控的采样率,会导致飞控读到重复数据,影响状态估计性能。因此,HIL仿真系统需要具备高精度定时和低延迟通信能力。
2.5 案例拆解:某小型固定翼无人机HIL仿真环境搭建
以某型翼展2.4m、起飞重量5kg的固定翼无人机为例,其飞控采用Pixhawk Cube Orange(STM32H753),传感器包括内置IMU和外部空速计,执行机构为4个数字舵机(副翼×2、升降舵×1、方向舵×1)和1个电机调速器。开发团队需要在首飞前验证飞控的增稳控制律和失效保护逻辑。
初始现象:在纯数字仿真中,控制律表现良好,俯仰角阶跃响应超调量12%,调节时间1.8s,满足指标要求。但团队担心真实硬件上的时序问题,决定进行HIL仿真。
关键参数与操作步骤:
- 搭建HIL仿真平台:选用Speedgoat实时仿真机运行飞机六自由度模型,通过串口(UART)与飞控连接,模拟GPS和遥测数据;通过SPI接口模拟IMU数据;通过PWM采集卡读取飞控输出的舵机指令。
- 配置传感器仿真:设置IMU更新率1kHz,加入高斯白噪声(陀螺仪噪声密度0.008°/s/√Hz,加速度计噪声密度0.0005g/√Hz),模拟真实传感器特性。
- 执行机构建模:使用一阶惯性环节模拟舵机响应,时间常数τ=45ms,速率限制80°/s,饱和角度±25°。
- 运行测试用例:包括俯仰角阶跃响应、滚转指令跟踪、阵风扰动抑制、GPS信号丢失后的姿态保持等。
分析判断过程:HIL仿真发现,在GPS信号丢失场景下,飞控切换到姿态模式后,俯仰角出现持续振荡,振幅逐渐增大至±8°。进一步分析发现,原因是飞控在姿态模式下使用气压计估计高度,而仿真中气压计数据更新率仅为10Hz,且存在量化噪声,导致高度估计抖动,进而通过外环反馈引起俯仰振荡。
实际操作与结果对比:团队修改了仿真中气压计的更新率至50Hz,并加入低通滤波,振荡现象消失。同时,将舵机模型的时间常数从45ms调整为实测的60ms后,发现相位裕度下降,超调量增大至18%,团队据此调整了控制律的微分项增益。最终HIL仿真结果:俯仰角阶跃超调量9%,调节时间2.0s,满足指标要求。
风险与代价:该次HIL仿真耗时2天,相比真机试飞(需申请空域、准备场地、风险评估)节省了约2周时间和数万元成本。更重要的是,避免了在真实飞行中可能出现的振荡失控风险。