Copilot said: 你需要梳理Ego-Planner模式下5通道、6通道與無人機模式的關系,以及軌跡跟隨、緊急情況和人工接管的流程。下面結合你的描述和三張圖片,對核心邏輯進行總結和整理: --- ## 一、狀態組合與對應模式(見圖1) | 5通道狀態 | 6通道狀態 | 無人機模式
你需要梳理Ego-Planner模式下5通道、6通道與無人機模式的關系,以及軌跡跟隨、緊急情況和人工接管的流程。下面結合你的描述和三張圖片,對核心邏輯進行總結和整理:
一、狀態組合與對應模式(見圖1)
5通道狀態 | 6通道狀態 | 無人機模式 |
---|---|---|
關閉/中位 | 任意 | 手動模式(stabilized/manual,手動/穩定模式) |
內側??里面 | 上側 | 輔助懸停(API懸停) |
內側??里面 | 下側 | 軌跡跟隨/程序控制(Ego Planner控制,OFFBOARD模式) |
核心要點:
- 5通道為自動控制總開關,關閉時始終是手動模式。
- 6通道控制是否進入Ego-Planner軌跡跟隨,只有5通道為內側時6通道才有效。
二、實驗流程梳理(見圖2、圖3)
1. 起飛/準備自動飛行
- 5通道撥到內側(is_hover_mode = true)
5 通道撥到內部(is_hover_mode = true) - 6通道撥到下側(is_command_mode = true)
6 通道撥到下側(is_command_mode = true) - 油門中位
- 此時進入Ego-Planner軌跡跟隨,PX4飛控進入OFFBOARD模式,飛機受程序控制。
2. 切換軌跡跟隨
- 6通道下側,Ego-Planner繼續控制軌跡飛行
3. 遇到障礙需人工介入
- 6通道撥回上側(is_command_mode = false)
上面的 6 路通道(is_command_mode = false) - 飛機立刻從程序控制(CMD_CTRL)退回到輔助懸停(AUTO_HOVER),Ego-Planner暫停
- 飛機自主懸停,等待人工干預或進一步指令
4. 遇到嚴重異常需完全人工接管
- 5通道撥回中位(is_hover_mode = false),無論6通道狀態如何
- 飛機回到手動模式(MANUAL_CTRL),遙控器直接控制,最大限度保證安全
三、邏輯流程圖梳理
進入Ego-Planner軌跡跟隨(CMD_CTRL)條件:
- 5通道 = 內側(is_hover_mode = true)
5 通道 = 中部(is_hover_mode = true) - 6通道 = 下側(is_command_mode = true)
6 通道 = 下側(is_command_mode = true) - Ego-Planner已下發有效軌跡命令
- 5通道 = 內側(is_hover_mode = true)
軌跡跟隨中遇到緊急情況:
- 6通道撥回上側(is_command_mode = false)
上面的 6 路通道(is_command_mode = false) - 飛機立刻退出程序控制,進入輔助懸停(AUTO_HOVER),等待處理
- 6通道撥回上側(is_command_mode = false)
需要完全人工接管:
- 5通道撥回中位(is_hover_mode = false)
5 通道撥回中位(is_hover_mode = false) - 無論6通道狀態,飛機都進入手動模式(MANUAL_CTRL),遙控器全權接管
- 5通道撥回中位(is_hover_mode = false)
四、代碼/狀態映射說明
- is_hover_mode?(5通道):控制API/自動控制是否允許
- is_command_mode?(6通道):控制軌跡跟隨/程序控制是否激活
- 只有兩者都為true且收到軌跡指令,才進入CMD_CTRL(程序控制)狀態,否則處于AUTO_HOVER(懸停)或MANUAL_CTRL(手動)