L1導航算法是非常經典的非線性無人機路徑跟随算法,最早由MIT于2004年提出,其導航算法中是先選點,生成一段為L1的路徑。
1 直線路徑跟蹤

L1路徑跟随算法的基本思想就是在期望軌迹上選擇一個參考點,并且用這個産生一個橫向的加速度,加速度表示為,
固定翼無人機在橫向加速度作用下飛圓弧接近期望軌迹,公式很容易推導,可以看出,加速度與目前空速、空速與L1期望點夾角,以及無人機與L1期望點之間的距離有關。空速可以觀測,故橫向加速度的求解主要是要确定L1長度,求解η \etaη角。
對于直線期望路徑,如下圖所示,所求夾角可以表示為,
2 圓弧路徑跟蹤
圓弧期望加速度求解主要是幾何上的一些推導,具體可以看論文中的推導,主要涉及三個角度空速與該點切線的夾角η2 ,該點到L1連線與L1對應弦的夾角η1,2η3相當于是L1所對應于的圓心角。
3 個人對算法的了解
(1)L1軌迹跟蹤是非線性的導航算法,在實際的使用中,主要就是要解決L1的取值問題和sin η \sin \etasinη的求解,因為是基于角度正弦的,是以相比于基于偏距的線性算法,在初始偏差比較大的時候,不會出現過激調節,可以比較平滑的向期望路徑過渡,而在進入期望路徑後,其控制效果較偏距控制更好,尤其是在圓形軌迹跟蹤。
(2)L1軌迹跟蹤相當于在跟蹤一個L1點,這個點的軌迹就是期望路徑,點按一定頻率重新整理,按一定頻率計算角度,重新整理側向加速度輸出。
(3)對sin η \sin \etasinη進行小角度線性化,可以得到在期望路徑附近的加速度線性化的形式,以跟蹤直線為例,實際上就是一個二階系統,
這個二階系統固有頻率和速度以及L1長度有關,阻尼實際上是與那個增益就是那個2倍有關,在論文中,L1取了固定值150m,而V也隻測試了25m/s的速度。對于圓的跟蹤和直線差不多,隻是固有頻率也與盤旋半徑有關。
1 matlab版本
2014a
2 參考文獻
[1] 包子陽,餘繼周,楊杉.智能優化算法及其MATLAB執行個體(第2版)[M].電子工業出版社,2016.
[2]張岩,吳水根.MATLAB優化算法源代碼[M].清華大學出版社,2017.
[3]張萍.四旋翼飛行器姿态控制模組化與仿真[J].電機與控制應用. 2019,46(12)
[4]劉岩,楊牧.四旋翼飛行器飛行控制系統研究與設計[J].山東工業技術. 2019,(07)