賈文濤,李春濤
(南京航空航天大學(xué) 自動(dòng)化學(xué)院,江蘇 南京 211106)
近年來,隨著無人機(jī)技術(shù)的飛速發(fā)展,其在軍事及民用領(lǐng)域發(fā)揮著越來越重要的作用[1]。例如,軍事中利用無人機(jī)在復(fù)雜環(huán)境下的偵察能力,完成對(duì)威脅目標(biāo)的精確打擊任務(wù);在民用領(lǐng)域,無人機(jī)正逐步代替人類完成繁瑣、枯燥和危險(xiǎn)的工作。無人機(jī)的總體系統(tǒng)架構(gòu)可分為5層[2]:航點(diǎn)規(guī)劃器、動(dòng)態(tài)航跡平滑器、航跡跟蹤器、飛行控制器和無人機(jī)本體。無人機(jī)的航跡跟蹤能力是其安全完成飛行任務(wù)的保障,本文利用航跡優(yōu)化和航跡跟蹤技術(shù),提出了一種精確可靠的航跡跟蹤方法。
在航跡優(yōu)化領(lǐng)域,Dubins提出的由直線段和常曲率圓弧段組成的Dubins曲線被廣泛應(yīng)用于機(jī)器人和無人機(jī)的航跡平滑中。為解決Dubins曲線在直線段和圓弧段連接處的曲率不連續(xù)問題,基于變曲率弧段的Clothoid曲線被提出,可使無人機(jī)得到連續(xù)的制導(dǎo)指令[3]。由于多項(xiàng)式樣條曲線滿足曲率連續(xù)的要求,ANASTASIOS M Lekkas利用Hermite三次樣條曲線實(shí)現(xiàn)對(duì)離散航點(diǎn)的平滑,完成了無人機(jī)對(duì)目標(biāo)航點(diǎn)的跟蹤[4]。ZHAO Shulong利用B樣條曲線,實(shí)現(xiàn)了對(duì)變曲率航跡的擬合,提高了無人機(jī)的跟蹤精度[5]。畢達(dá)哥拉斯矢端曲線(PH曲線)擁有等距線的優(yōu)良性質(zhì),根據(jù)這一特性,可以在PH曲線周圍定義一段安全距離來防止碰撞,用于解決多架無人機(jī)的集群飛行問題[6]。
目前的航跡跟蹤方法可分為兩大類,基于幾何計(jì)算的方法和基于控制理論的方法[7]。傳統(tǒng)的幾何計(jì)算法由導(dǎo)彈制導(dǎo)技術(shù)演變而來,包括純追蹤法、視線法(LOS)[4]以及二者相結(jié)合的方法(PLOS)。這些方法可實(shí)現(xiàn)對(duì)簡單航跡的跟蹤,但對(duì)于復(fù)雜的變曲率航跡跟蹤性能較差。MIT的SANGHYUK Park利用虛擬目標(biāo)點(diǎn),設(shè)計(jì)了一種L1非線性制導(dǎo)律(NLGL)[8-9],該方法設(shè)計(jì)簡單,易于實(shí)現(xiàn),跟蹤性能依賴于虛擬探測(cè)長度的選取。利用控制理論進(jìn)行航跡跟蹤問題研究,易于分析制導(dǎo)律的穩(wěn)定性和魯棒性?;诒壤?積分-微分(PID)的經(jīng)典控制理論可實(shí)現(xiàn)對(duì)簡單航跡的跟蹤[10]?,F(xiàn)代控制理論技術(shù)如:線性二次型調(diào)節(jié)器(LQR)[11]、模型預(yù)測(cè)控制(MPC)[12-13]、自適應(yīng)控制[14]等,也被用于解決航跡跟蹤問題,提高了抗風(fēng)干擾能力,使航跡跟蹤具有較好的魯棒性。
為滿足實(shí)際應(yīng)用中對(duì)航點(diǎn)的跟蹤,本文利用Bezier曲線對(duì)離散航點(diǎn)進(jìn)行動(dòng)態(tài)平滑,形成一條曲率連續(xù)的航跡。在期望航跡上引入一個(gè)具有動(dòng)態(tài)約束的虛擬目標(biāo)點(diǎn)作為跟蹤對(duì)象[15],設(shè)計(jì)非線性制導(dǎo)律,實(shí)現(xiàn)對(duì)期望航跡的跟蹤。
本文主要研究無人機(jī)在二維平面的航跡跟蹤問題。假設(shè)無人機(jī)在二維平面內(nèi)定高、定速飛行,采用文獻(xiàn)[12]中的協(xié)調(diào)飛機(jī)動(dòng)力學(xué)(CFV)模型。CFV模型由常微分方程描述,復(fù)雜度較小,將無人機(jī)運(yùn)動(dòng)簡化為質(zhì)點(diǎn)運(yùn)動(dòng),其動(dòng)力學(xué)表達(dá)式如式(1)所示。
(1)
無人機(jī)若以離散航點(diǎn)兩兩連接形成的直線段航跡進(jìn)行跟蹤,往往會(huì)在航點(diǎn)切換時(shí)無法滿足自身的機(jī)動(dòng)約束造成較大的跟蹤誤差,所以需要利用動(dòng)態(tài)航跡平滑器將離散航點(diǎn)優(yōu)化為一條滿足無人機(jī)運(yùn)動(dòng)約束特別是機(jī)動(dòng)性條件的可飛行航跡。n次貝塞爾曲線的伯恩斯坦(Bernstein)的表達(dá)式[18]如下:
(2)
式中:bj為曲線的控制點(diǎn);Bj,n(t)為伯恩斯坦基函數(shù),其k階導(dǎo)矢為:
(3)
式中Δkbj為k階向前差分矢量,它可由k-1階向前差分矢量遞推得到,其定義如式(4)所示。
(4)
本文采用組合貝塞爾曲線來完成航跡的平滑,引入航跡分段序號(hào),將貝塞爾曲線作為每個(gè)航段的樣條曲線,可得到式(5)中用局部參數(shù)表示的組合n次貝塞爾航跡曲線。貝塞爾曲線具有很多優(yōu)良和寶貴的性質(zhì)[18],使其更利于航跡形狀設(shè)計(jì)。
(5)
式中:i為航段序號(hào),表明整條航路由一個(gè)個(gè)航段組成;控制頂點(diǎn)bni+j中的bni表示各個(gè)離散航跡點(diǎn),每段航路曲線由n+1個(gè)控制點(diǎn)控制。當(dāng)?shù)趇-1段與第i段兩相鄰航路連接時(shí),要求他們?cè)谶B接點(diǎn)處具有直到r階相等的左右導(dǎo)數(shù),稱曲線在該點(diǎn)Cr連續(xù)。航段連接點(diǎn)的左右導(dǎo)矢方程如下:
(6)
(7)
聯(lián)立式(6)和式(7)得到航段連接點(diǎn)處的Cr連續(xù)條件:
Δkbni-k=Δkbni,k=0,1,…,r
(8)
對(duì)于給定的航跡點(diǎn)使用組合3次貝塞爾曲線進(jìn)行航跡平滑得到C2連續(xù)的航跡,可實(shí)現(xiàn)航路曲率的連續(xù)性,由式(8)可推出在連接點(diǎn)的1階導(dǎo)矢連續(xù)確立了無人機(jī)速度的連續(xù)性,2階導(dǎo)矢連續(xù)確立了無人機(jī)側(cè)向加速度的連續(xù)性,得到式(9)。
(9)
引入輔助點(diǎn)di(i=0,1,…,m),如圖1所示,由4個(gè)航跡點(diǎn)q0、q1、q2、q3、q4組成一條航路,將航路分成4段,每條航路由4個(gè)控制點(diǎn)控制,首尾2個(gè)控制點(diǎn)與航跡點(diǎn)重合,得到如下關(guān)系:
圖1 組合3次貝塞爾曲線示意圖
(10)
聯(lián)立式(9)和式(10)可得關(guān)系式(11):
(11)
通過求解輔助點(diǎn),進(jìn)而確定所有的控制點(diǎn),帶入式(5)得到航跡平滑曲線。該方法求解貝塞爾曲線不涉及基函數(shù)的運(yùn)算,通過控制點(diǎn)就可得到航跡曲線,相比于Hermite三次樣條曲線計(jì)算量大大減小。
在實(shí)際的無人機(jī)航跡跟蹤問題中,一般是根據(jù)無人機(jī)執(zhí)行的任務(wù)類型,設(shè)計(jì)任務(wù)目標(biāo)點(diǎn),形成一個(gè)離散的期望航點(diǎn)序列。期望航點(diǎn)如表1所示,利用貝塞爾曲線進(jìn)行航跡平滑,得到的曲線如圖2所示。可以看出經(jīng)過航跡平滑后的航跡曲率連續(xù),更加符合無人機(jī)的機(jī)動(dòng)飛行約束,為制導(dǎo)律的設(shè)計(jì)奠定了基礎(chǔ)。
表1 航點(diǎn)信息
圖2 航跡平滑仿真示意圖
對(duì)于一般的直線和圓弧航跡,可將無人機(jī)在航跡上的垂直投影點(diǎn)作為目標(biāo)跟蹤點(diǎn),求取無人機(jī)與目標(biāo)航跡的側(cè)偏距和航向角偏差,利用這些信息進(jìn)行制導(dǎo)律的設(shè)計(jì)。但對(duì)于一條變曲率航跡,由于其曲率的無規(guī)則變化,利用垂直投影求出的目標(biāo)參考點(diǎn)可能存在多個(gè),同時(shí)目標(biāo)航向與側(cè)偏也可能在短時(shí)間內(nèi)存在較大波動(dòng)。
為了解決這一問題,本文提出了一種動(dòng)態(tài)虛擬目標(biāo)點(diǎn)的設(shè)計(jì)方法。在目標(biāo)航跡上定義一個(gè)動(dòng)態(tài)的虛擬目標(biāo)點(diǎn),該目標(biāo)點(diǎn)的移動(dòng)速度同無人機(jī)地速存在如下關(guān)系:
(12)
其中:Vt為虛擬動(dòng)態(tài)目標(biāo)點(diǎn)在目標(biāo)航線上移動(dòng)的速度;Vg為無人機(jī)地速;L為無人機(jī)距虛擬目標(biāo)點(diǎn)的距離;參數(shù)R*為設(shè)定的虛擬目標(biāo)點(diǎn)與無人機(jī)的最小距離,它的選取可根據(jù)無人機(jī)滾轉(zhuǎn)角的響應(yīng)時(shí)間確定。
由公式(12)可以看出,當(dāng)無人機(jī)遠(yuǎn)離目標(biāo)航跡時(shí),虛擬點(diǎn)移動(dòng)速度很小,幾乎不動(dòng),此時(shí)無人機(jī)追蹤航跡上的一個(gè)固定點(diǎn)快速靠近航跡。當(dāng)無人機(jī)靠近航跡時(shí)(L=R*),虛擬目標(biāo)點(diǎn)的速度增加并與無人機(jī)的速度相等,無人機(jī)與虛擬目標(biāo)點(diǎn)在航路長度上始終相差R*,并緊跟虛擬目標(biāo)點(diǎn)飛行。與傳統(tǒng)的航跡跟蹤方法相比,該方法并沒有將目標(biāo)航跡和無人機(jī)獨(dú)立開來,而是將無人機(jī)與動(dòng)態(tài)虛擬目標(biāo)點(diǎn)通過相對(duì)距離及速度建立起聯(lián)系。
虛擬目標(biāo)點(diǎn)在每個(gè)制導(dǎo)律解算周期內(nèi)進(jìn)行更新,確定下一時(shí)刻無人機(jī)需要跟蹤的虛擬目標(biāo)點(diǎn),對(duì)于直線航跡,更新方法如式(13)所示。
(13)
其中:xt、yt為虛擬目標(biāo)點(diǎn)位置;Vt、ΔT、ψref分別為虛擬目點(diǎn)速度、制導(dǎo)律解算周期及航跡方位角。
跟蹤半徑為Rc、圓心坐標(biāo)為[xo,yo]的圓弧航跡時(shí),定義沿順時(shí)針方向旋轉(zhuǎn)為正方向,虛擬目標(biāo)點(diǎn)的更新如下:
(14)
其中Δψ、ψi-1分別為單位制導(dǎo)律周期內(nèi)虛擬點(diǎn)相對(duì)圓心轉(zhuǎn)動(dòng)的角度和上一時(shí)刻虛擬目標(biāo)點(diǎn)相對(duì)圓心的方位角。
跟蹤一般的離散航點(diǎn)時(shí),首先利用上節(jié)的離散航點(diǎn)平滑方法,得到目標(biāo)航跡的參數(shù)曲線如式(15)所示。
(15)
虛擬目標(biāo)點(diǎn)的更新可利用下式求出:
(16)
其中:ui-1、ui分別為上一時(shí)刻和當(dāng)前時(shí)刻虛擬目標(biāo)點(diǎn)在航跡上的參數(shù)值;ΔS為單位制導(dǎo)律解算周期內(nèi)虛擬目標(biāo)點(diǎn)行進(jìn)的距離??梢岳媒M合辛普森定積分公式和二分迭代法求取參數(shù)ui,當(dāng)前航段剩余距離<ΔS,需要進(jìn)行航段切換,采用分航段積分確定參數(shù)ui的值。
常規(guī)的導(dǎo)彈目標(biāo)攔截模型,導(dǎo)彈只需要擊中目標(biāo)即可完成任務(wù),而無人機(jī)跟蹤虛擬目標(biāo)點(diǎn)的制導(dǎo)模型中,無人機(jī)并不會(huì)與虛擬目標(biāo)點(diǎn)交會(huì),而是一直跟蹤下去,直到到達(dá)最后的任務(wù)航點(diǎn)?;谶@一特點(diǎn),本文設(shè)計(jì)的制導(dǎo)律,在考慮無人機(jī)航向角和視線角的偏差基礎(chǔ)上,加入了虛擬目標(biāo)點(diǎn)的航向角和視線角的偏差,制導(dǎo)律方法如式(17)所示。
(17)
其中acmd、L、γa、γt、λ分別為側(cè)向加速度指令、無人機(jī)與虛擬目標(biāo)點(diǎn)的距離、無人機(jī)航向角、虛擬目標(biāo)點(diǎn)航向角、無人機(jī)與虛擬目標(biāo)點(diǎn)之間的視線角。
當(dāng)無人機(jī)跟蹤直線航跡,到達(dá)航跡上的某點(diǎn)時(shí),若實(shí)際速度方向與該點(diǎn)的虛擬速度方向不同,會(huì)立刻脫離直線航跡,造成擺振現(xiàn)象,航跡跟蹤收斂較慢,跟蹤圓弧或變曲率航跡問題會(huì)更加突出。將虛擬目標(biāo)點(diǎn)的航向信號(hào)引入制導(dǎo)律的設(shè)計(jì)中,這樣在跟蹤航跡時(shí),無人機(jī)會(huì)調(diào)整航向飛向虛擬目標(biāo)點(diǎn)。同時(shí),在到達(dá)虛擬目標(biāo)點(diǎn)前調(diào)整無人機(jī)航向,使其在到達(dá)目標(biāo)航跡時(shí)與虛擬目標(biāo)點(diǎn)速度方向一致,使實(shí)際航跡快速收斂到目標(biāo)航跡。
當(dāng)評(píng)價(jià)一個(gè)制導(dǎo)算法的好壞時(shí)通常的依據(jù)是其航跡跟蹤誤差的收斂速度。定義航跡跟蹤誤差d為無人機(jī)距航跡最近的距離,即通過投影算法得到的側(cè)偏距的大小,無人機(jī)在期望航跡右邊側(cè)偏距為正。下面從直線航跡跟蹤和圓弧航跡跟蹤兩個(gè)方面來進(jìn)行制導(dǎo)律的分析。
1)直線航跡跟蹤
基于小擾動(dòng)假設(shè),當(dāng)無人機(jī)跟蹤直線段,L→R*時(shí),虛擬目標(biāo)點(diǎn)的速度等于無人機(jī)速度,如圖3所示,可得到如下關(guān)系:
圖3 直線航跡跟蹤示意圖
(18)
同時(shí),側(cè)向加速度
(19)
聯(lián)立式(17)-式(19)得:
(20)
其特征多項(xiàng)式的形式是一個(gè)簡單的二階系統(tǒng):
(21)
該二階系統(tǒng)的自然頻率和阻尼比為:
(22)
航跡跟蹤誤差在時(shí)域上的響應(yīng)曲線如式(23)所示。
(23)
(24)
可以看出當(dāng)時(shí)間t→,航跡跟蹤誤差以的速度收斂到0。
2)圓弧航跡跟蹤
假設(shè)無人機(jī)與虛擬目標(biāo)點(diǎn)以相距R*的距離在跟蹤圓弧航跡,如圖4所示。理想情況下,無人機(jī)應(yīng)沿半徑為Rc的圓弧由A點(diǎn)在軌跟蹤飛行到C點(diǎn),但實(shí)際由于受到外界環(huán)境很小的擾動(dòng),無人機(jī)偏離圓弧軌道位于B點(diǎn),進(jìn)行脫軌跟蹤,基于此小擾動(dòng)假設(shè):
(25)
式中:η為航向偏差角;δ為在軌跟蹤和脫軌跟蹤的視線角偏差。圖4中α為線段AC的弦切角。
圖4 圓弧航跡跟蹤示意圖
側(cè)向加速度可以表示如下:
(26)
由圓的幾何關(guān)系可以得到:
(27)
基于小角度假設(shè)并且當(dāng)d?2Rc時(shí):
(28)
聯(lián)立式(17)和式(27),得
(29)
將式(25)、式(26)和式(28)帶入式(29):
(30)
化簡,得
(31)
可以看出它同樣是一個(gè)2階系統(tǒng)的形式,跟蹤誤差的收斂速度如式(32)所示。
(32)
其收斂速度與圓弧半徑無關(guān),說明了該制導(dǎo)律在跟蹤圓弧和直線時(shí)具有一致性,無需進(jìn)行制導(dǎo)律邏輯切換,應(yīng)用起來更加簡單。
從文獻(xiàn)[8]可得出L1非線性制導(dǎo)律,其側(cè)向加速度指令:
(33)
式中L1為一個(gè)固定的探測(cè)步長。當(dāng)無人機(jī)與期望航跡距離>L1時(shí),無法確定虛擬跟蹤點(diǎn),該制導(dǎo)律失效,需要額外的制導(dǎo)邏輯來彌補(bǔ)這一缺陷,而本文提出的R*制導(dǎo)律不存在這個(gè)缺點(diǎn)。為了對(duì)比兩者的收斂速度,令L1=R*,可以得到非線性制導(dǎo)律在跟蹤直線航跡時(shí)的收斂速度:
(34)
跟蹤圓弧航跡時(shí)的收斂速度:
(35)
與式(32)對(duì)比可以看出,R*制導(dǎo)律的跟蹤誤差收斂速度是L1非線性制導(dǎo)律的2倍。在跟蹤圓弧航跡時(shí),其跟蹤誤差收斂速度受到圓弧半徑的影響,R*制導(dǎo)律不受圓弧半徑的影響,可以將這一性質(zhì)應(yīng)用到變曲率航跡的跟蹤上。
為了驗(yàn)證論文提出的航跡跟蹤控制方法的優(yōu)劣,本節(jié)進(jìn)行3種情況的仿真,直線航跡跟蹤、圓弧航跡跟蹤和離散航跡點(diǎn)跟蹤。在前兩個(gè)情況中加入L1非線性制導(dǎo)律的跟蹤對(duì)比仿真。仿真時(shí)采用CFV模型,給定樣例無人機(jī)定常飛行速度為Vg=30 m/s,無人機(jī)運(yùn)動(dòng)狀態(tài)約束最大側(cè)向加速度amax=10 m/s2。
無人機(jī)初始位置為(0 m,0 m),初始航向角為90°,參考航跡起點(diǎn)為(100 m,0 m),期望航跡角90°。分別取2種制導(dǎo)律的參數(shù)L1和R*為100 m和150 m。仿真結(jié)果如圖5所示。從圖5中可以看出,L1制導(dǎo)律在到達(dá)期望航跡后會(huì)出現(xiàn)超調(diào),而R*制導(dǎo)律可以無超調(diào)地收斂到期望航跡。L1制導(dǎo)律在參數(shù)為100 m和150 m的收斂時(shí)間分別為14.43 s和21.09 s,R*制導(dǎo)律在參數(shù)為100 m和150 m的收斂時(shí)間分別為7.22 s和10.51 s,R*制導(dǎo)律的誤差收斂速度大約是L1制導(dǎo)律的2倍,這與理論分析一致。
圖5 直線航跡跟蹤仿真示意圖
無人機(jī)初始位置為(500 m,200 m),初始航向角為45°,參考航跡起點(diǎn)為(400 m,200 m),跟蹤圓心為(200 m,200 m),半徑為200 m的圓弧航跡,其中2種制導(dǎo)律參數(shù)選取L1=R*=50 m,對(duì)于L1制導(dǎo)律,當(dāng)初始位置距離參考航跡較遠(yuǎn)時(shí),選取無人機(jī)在參考航跡上的投影點(diǎn)作為虛擬參考點(diǎn),從圖6可以看出,L1制導(dǎo)律在收斂到參考航跡之前,存在超調(diào)和擺振現(xiàn)象,而R*制導(dǎo)律可以無超調(diào)地收斂到期望航跡。從圖7的側(cè)向加速度指令可以看出,相比于L1制導(dǎo)律,R*制導(dǎo)律中加入了動(dòng)態(tài)虛擬目標(biāo)點(diǎn)的航向角,得到的制導(dǎo)律指令更加平緩,有利于控制回路的跟蹤,避免了無人機(jī)進(jìn)行大機(jī)動(dòng)飛行,加快了航跡跟蹤誤差的收斂速度。
圖6 圓弧航跡跟蹤仿真示意圖
圖7 圓弧航跡跟蹤側(cè)向加速度指令示意圖
使用R*制導(dǎo)律跟蹤1.2節(jié)中經(jīng)過航跡平滑后的期望航跡。無人機(jī)初始位置為(50 m,10 m),初始航向角為45°,R*=20 m,仿真結(jié)果如圖8所示??梢钥闯觯琑*制導(dǎo)律在跟蹤經(jīng)過參數(shù)化的變曲率曲線時(shí),幾乎與期望航跡重合,并且在航段切換過程中跟蹤效果良好,跟蹤誤差在0.5 m以內(nèi)。從圖9的仿真結(jié)果可以看出,無人機(jī)航向角始終緊跟視線角及虛擬點(diǎn)航向角,達(dá)到了精確跟蹤的效果。
圖8 離散航點(diǎn)跟蹤仿真示意圖
圖9 離散航點(diǎn)跟蹤航向角收斂示意圖
本文針對(duì)無人機(jī)航跡跟蹤問題,提出了一種基于動(dòng)態(tài)虛擬目標(biāo)點(diǎn)的R*非線性制導(dǎo)律。在跟蹤離散航點(diǎn)時(shí),采用貝塞爾曲線進(jìn)行航跡優(yōu)化,并提出一種貝塞爾曲線的簡單求解方法,得到了曲率連續(xù)的參數(shù)曲線,解決了航點(diǎn)切換時(shí)出現(xiàn)較大跟蹤誤差的問題。該制導(dǎo)律可以利用無人機(jī)與期望航跡的距離,建立無人機(jī)與動(dòng)態(tài)虛擬目標(biāo)點(diǎn)的聯(lián)系。通過小擾動(dòng)線性化,分析了制導(dǎo)律的跟蹤性能,在跟蹤直線和圓弧航跡時(shí),該制導(dǎo)律跟蹤誤差的響應(yīng)是一個(gè)2階系統(tǒng),與L1制導(dǎo)律相比,跟蹤誤差收斂速度是其2倍。當(dāng)無人機(jī)初始點(diǎn)距離期望航跡較遠(yuǎn)時(shí),不需要設(shè)計(jì)額外的制導(dǎo)邏輯進(jìn)行引導(dǎo)。同時(shí)利用R*制導(dǎo)律不受曲線曲率影響的優(yōu)點(diǎn),對(duì)參數(shù)化的變曲率航跡進(jìn)行跟蹤,仿真結(jié)果顯示R*制導(dǎo)律可以實(shí)現(xiàn)對(duì)變曲率航跡的精確跟蹤。