BetaFlight代码解析(4)- 飞行控制系统

飞行控制系统是Betaflight的核心组件,负责实时飞行控制算法和数据处理。它实现了主控制回路,该回路处理传感器数据、执行控制算法并生成电机指令,以维持飞行器的稳定性和响应性。该系统在严格的实时约束下运行,以确保飞行行为的可预测性。

核心飞行控制架构

飞行控制系统采用包含多个集成子系统的实时控制回路:

实时处理流水线

飞行控制系统在一个具有精确时间要求的确定性任务调度器中运行:

该系统通过targetPidLooptime参数和任务优先级来维持确定性时间,以确保控制回路的稳定性。

PID控制器概述

PID控制器(pidController())是核心稳定算法,用于处理姿态误差并生成控制信号。它在三个轴(横滚、俯仰、偏航)上运行,每个轴都有单独的调节参数。

PID算法结构

关键PID数据结构

结构 目的 地点
pidProfile_t PID增益、限制、高级功能 src/main/flight/pid.h192-290
pidAxisData_t 每轴的运行时 P、I、D、F 值 src/main/flight/pid.h318-324
pidRuntime_t 运行时状态和配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值