近期,我們在FMT固定翼平臺進行了目標搜尋和目標投擲實驗,從實驗結果來看,F(xiàn)MT固定翼的自穩(wěn)、定高、定點、航點及返航功能均滿足預期,最終成功完成了此次實驗,下面我們通過視頻一起來了解本次實驗的情況。
從視頻中大家可以看到,F(xiàn)MT固定翼能夠按照既定路線飛行,通過 Mini Homer圖數傳鏈路實現(xiàn)圖像傳輸,從而在地面站看到數字標靶位置,對1、2號數字執(zhí)行搜尋任務,對3、4號數字先執(zhí)行搜尋任務,再通過手動操作執(zhí)行拋投任務。實驗中最關鍵的環(huán)節(jié)便是航點功能,下面我們就詳細介紹一下FMT的航點功能具體是如何實現(xiàn)的。
FMT固定翼航點飛行功能主要在FMS(飛行管理系統(tǒng))中實現(xiàn),其算法模型主要包含兩個部分,分別為狀態(tài)機(FMS State Machine)和指令生成器(FMS Commander)。
其中狀態(tài)機主要負責模式的切換邏輯。與航點相關的模式包括 Mission 模式、Takeoff 模式、Return 模式和 Hold 模式等。Mission 模式主要負責處理輸入 FMS 的航點數據 Mission_Data ,并依次將各航點數據解析發(fā)送給 Commander 進行控制。Mission 模式的狀態(tài)機邏輯如下所示:
在 NextWP 狀態(tài)下取出下一個航點數據,這里的航點數據可以是 Takeoff 航點、Return 航點或者普通的 Waypoint 航點(Land 航點暫未支持)均可。根據航點的類型進入到對應的狀態(tài)中,比如 Waypoint 狀態(tài)。然后由對應的狀態(tài)對原始的航點數據進行解析,并生成目標航點數據 Cmd_In.sp_waypoint 。下圖為 Waypoint 狀態(tài)生成目標航點數據:
狀態(tài)機生成了目標航點數據后,再由 Commander 負責執(zhí)行,生成 Controller 的控制信號。
這里巡航速度 u_cmd 通過 FMS 的參數設置,例如默認為13m/s,用戶可以通過調節(jié)參數來修改固定翼的巡航速度。位置控制產生 y 方向的加速度信號 ay_cmd ,來控制固定翼的橫滾角,從而改變固定翼的飛行軌跡及航向角。而高度控制則是生成高度方向的速度 w_cmd 來控制飛機的高度。
我們再來看一下 Position Command 位置控制,其內部框圖如下所示:
其中 WayPoint 負責選出三個航點數據P1(當前航點)、P2(目標航點)和P3(飛機的位置)。然后通過 L1 算法輸出 y 方向的加速度指令 ay_cmd_mPs2 。
高度控制器的算法比較簡單,就是一個 P 控制器,由高度誤差輸出高度方向的速度指令 w_cmd 。
通過此次實驗可以看出FMT固定翼飛控系統(tǒng)已經比較成熟,各種任務及動作均能穩(wěn)定執(zhí)行。目前FMT國產開源飛控系統(tǒng)已經支持了四旋翼和固定翼,感興趣的朋友可以訪問FMT項目地址或查看阿木實驗室官網課程進行學習。
也歡迎對FMT感興趣的開發(fā)者加入開源生態(tài),為國產開源飛控系統(tǒng)添磚加瓦。
2025-09-09 10:52
2025-09-04 21:58
2025-08-28 11:13
2025-08-27 14:14
2025-08-26 13:50
2025-08-23 20:37
2025-08-22 10:33
2025-08-18 14:20
2025-08-13 11:12
2025-08-13 10:55