PX4 v1.16 源码解读总目录
PX4 飞控 v1.16.0 源码解读系列总目录,涵盖平台层、Commander 决策层、EKF2 状态估计、Navigator 导航和 mc_pos_control 位置控制五大模块,目前共 32 篇文章,还在不断更新中。
PX4 飞控 v1.16.0 源码解读系列总目录,涵盖平台层、Commander 决策层、EKF2 状态估计、Navigator 导航和 mc_pos_control 位置控制五大模块,目前共 32 篇文章,还在不断更新中。
深入解析 PX4 Navigator 的安全与验证层,包括 Geofence 围栏检测、GeofenceBreachAvoidance 预测规避、任务合法性检查 MissionFeasibilityChecker,以及精确降落 PrecLand 的多状态机流程。
深入解析 PX4 PositionControl.cpp 的完整串级控制算法:位置 P 环、速度 PID 环、加速度到推力/姿态的几何映射,以及垂直优先推力分配和抗积分饱和机制。
深入解析 PX4 MulticopterPositionControl.cpp 的主循环 Run(),包括状态预处理、多级滤波原理、EKF 重置鲁棒补偿、起飞状态机与推力斜坡、故障回退策略。
全面梳理 PX4 多旋翼位置控制模块 mc_pos_control 的整体架构、上下游接口关系,以及模块内部从 trajectory_setpoint 到 vehicle_attitude_setpoint 的完整串级控制链路。
解析 PX4 Navigator 主循环 run() 的完整执行流程,说明如何根据 nav_state 选择并驱动各导航模式,以及围栏安全检查、RTL 策略树、MissionBase 执行框架的运行机制。
解析 Commander 中 HomePosition 组件的职责、输入输出接口、Home 点设置时机与质量门限,以及 Home 有效性如何反馈到 failsafe 链路影响 RTL 可用性。
详细解析 PX4 Navigator 的任务数据协议层,包括 NAV_CMD 命令枚举、NAV_FRAME 坐标系、mission_item_s 结构体的完整字段分析,以及各字段在导航链路中的使用位置。
深入解析 Commander.cpp 的核心函数:arm/disarm 完整流程、自动锁定逻辑 handleAutoDisarm()、模式意图与故障安全合成函数 handleModeIntentionAndFailsafe(),以及 MAVLink 命令处理 handle_command()。
全面梳理 PX4 Navigator 模块的分层架构,从任务数据协议层到输出层的完整执行链,明确各层级文件的职责,以及 Navigator 在飞控全链路中的定位。