目的和范围
导航模块是 PX4 中的中央自主飞行协调器,负责执行任务、管理返回发射 (RTL) 操作以及协调各种自主飞行模式,包括起飞、降落和巡航。它通过生成位置设定点三元组来驱动飞行器的自主行为,从而将高级飞行计划与低级位置控制连接起来。
系统架构
导航器模块作为中央协调中心,管理多种自主飞行模式并与更广泛的 PX4 飞行堆栈接口:

核心导航器类
该类Navigator作为主协调器,实现根据车辆的导航状态在不同的自主飞行模式之间切换的状态机:
导航模式选择

导航器维护一个导航模式数组( ),并根据 uORB 主题中的字段_navigation_mode_array激活相应的模式。每个模式都实现了、和方法的接口。nav_statevehicle_statusNavigatorModeon_activation()on_active()on_inactive()
车辆指令处理
导航器处理控制自主飞行行为的各种飞行器命令:
| 命令 | 目的 | 处理程序位置 |
|---|---|---|
VEHICLE_CMD_DO_REPOSITION |
动态位置更新 | 导航器主文件.cpp263-414 |
VEHICLE_CMD_DO_CHANGE_ALTITUDE |
海拔调整 | 导航器主文件.cpp415-495 |
VEHICLE_CMD_DO_ORBIT |
环形飞行路线 | 导航器主文件.cpp496-543 |
VEHICLE_CMD_NAV_TAKEOFF |
起飞指令 |
1万+



被折叠的 条评论
为什么被折叠?



