徐文江,林 琳,李妮鍶,姚 成
(中國民用航空飛行學院 民航飛行技術與飛行安全科研基地,四川 廣漢 618307)
近年來我國越來越重視通用航空的發(fā)展,并逐漸開放低空空域,通用航空的發(fā)展在多個地區(qū)已取得明顯成效。近幾年我國運輸飛機的年均增速超過10%,通航飛機數(shù)量也在快速增加。截至2019年,我國在冊的運輸飛機數(shù)量達3818架,通航飛機數(shù)量達2707架,無人機數(shù)量已達39.2萬架[1]。航空器數(shù)量的快速增加,對于空中交通管理來說是一個巨大的挑戰(zhàn)。空中交通警戒與防撞系統(tǒng)(TCAS系統(tǒng))能夠探測在其領域內(nèi)裝有空中交通管制應答機的任何飛機,已成功運用于運輸航空。但TCAS系統(tǒng)不適用于通用航空,因此通用航空飛機在空中飛行時存在安全隱患。已有的數(shù)據(jù)表明,進入本世紀以來90%以上的飛機相撞事故發(fā)生在低空,且大部分為通用航空飛機[2]。可見,通用航空的防撞系統(tǒng)亟待進一步完善。
廣播式自動相關監(jiān)視(ADS-B) 是新航行系統(tǒng)中非常重要的通信和監(jiān)視技術,主要實施地對空及空對空監(jiān)視。ADS-B包括ADS-B OUT和ADS-B IN,前者周期性地廣播飛機的飛行信息,包括飛機的ID、經(jīng)度、緯度、高度、航向等,后者接收周圍的ADS-B信息。ADS-B能夠提高空域利用率,減輕云或能見度造成的限制,改善空中交通管制,防止飛機碰撞和引導其安全飛行[3]。ADS-B的信號源主要有全球衛(wèi)星導航系統(tǒng)、慣性基準系統(tǒng)、慣性導航系統(tǒng)、飛行管理系統(tǒng)和其他機載傳感器系統(tǒng),這些系統(tǒng)均對地面設備沒有依賴性。國際民航組織(ICAO)公布的ADS-B的傳輸數(shù)據(jù)鏈為1090SE模式,在該模式中數(shù)據(jù)的長度達到112位,更新率為2次/秒,有效的廣播范圍達到370400 m。ADS-B把沖突探測、沖突避免、沖突解決、航空交通管制系統(tǒng)(ATC)以及駕駛艙交通顯示信息顯示有機結合起來,為新航行系統(tǒng)增強和擴展了非常豐富的功能[4]。
為適應目前通用航空的發(fā)展特點,本文提出了一種基于ADS-B的空中交通防撞檢測算法。該算法將飛機周圍的區(qū)域劃分為三個保護區(qū):監(jiān)視區(qū)域(SAZ)、保護區(qū)域(PAZ)、沖突區(qū)域(CAZ),可在更大范圍內(nèi)監(jiān)視周圍的飛機。當其他飛機進入SAZ時,對該飛機采用本文提出的算法進行水平方向和最接近距離分析,預判入侵飛機是否會與本機產(chǎn)生碰撞。如果存在碰撞危險,系統(tǒng)立刻發(fā)出警告。
沖突檢測算法是對出現(xiàn)在本機周圍的飛機通過算法進行分析,判斷其是否會與本機發(fā)生沖突。目前已有數(shù)種不同的沖突檢測算法,其中,美國宇航局阿姆斯特朗飛行研究中心開發(fā)的一種Stratway模塊化算法,使用精確的短期ADS-B信息進行速度狀態(tài)軌跡估計,使飛機之間實時有效地保持安全間隔距離[5]。文獻[6]提出了概率網(wǎng)格檢測,該方法是關于飛機同時到達同一扇區(qū)概率的加權網(wǎng)格,每架飛機每秒會產(chǎn)生多個網(wǎng)格,通過概率網(wǎng)格的數(shù)值可以判斷飛機是否會發(fā)生碰撞。閉環(huán)快速探索隨機樹算法檢查預測路徑和移動障礙物之間是否發(fā)生碰撞,每個時刻估算無人機和障礙物之間的距離,通過這種方法來避免飛機發(fā)生碰撞[7]。此外,還有許多學者研究了基于最接近點預測、時間軸、水平和垂直方向的碰撞檢測算法,這些算法大部分是對飛機飛行軌跡的預測,存在一定的缺陷。
本文提出的檢測算法,結合ADS-B監(jiān)視范圍廣和數(shù)據(jù)更新快的特點,擴大監(jiān)視范圍,建立三層球體保護區(qū)模型,將沒有危險的飛機提前排除。當有飛機出現(xiàn)在SAZ時,首先進行水平方向的判斷,判斷兩機的飛行趨勢和航向角關系。若水平方向上兩機仍然具有碰撞危險,再進行最接近距離分析。如果兩機存在碰撞危險,系統(tǒng)立即發(fā)出警告。該算法的算法流程圖如圖1所示,圖1中RCAZ為本機沖突區(qū)域的半徑。
圖1 基于ADS-B算法流程圖
根據(jù)不同的機型設計適當?shù)臎_突區(qū)域,能縮短飛機之間的間隔,確保飛機之間安全距離。對飛機沖突區(qū)域的劃分主要有兩種模型:一種是圓柱體模型;另一種是球體模型。圓柱體模型劃分方式通常是將飛機周圍的區(qū)域劃分為兩個部分: CAZ和PAZ。CAZ 采用ATC 規(guī)定的區(qū)域大小,即以本機為中心,水平面半徑為9.26 km,上下各為0.366 km 的圓柱體區(qū)域。PAZ 的大小根據(jù)不同的機型設定[8-10]。球體模型劃分方式是以本機中心,將每一架飛機周圍的區(qū)域劃分為PAZ和CAZ,PAZ和CAZ均以飛機中心作為球心,較大球體和較小球體分別為PAZ和CAZ[11-12]。多數(shù)沖突探測算法以圓柱體為模型,存在計算量大、虛警和漏警概率高、區(qū)域劃分不準確等問題[13]。
本文提出的算法充分利用ADS-B的優(yōu)勢,建立三層保護區(qū)球體模型,即以本機為中心,向外依次為CAZ、PAZ、SAZ,如圖2所示。圖中三個區(qū)域的半徑根據(jù)ADS-B接收信息的有效距離和ATC的規(guī)定而定。根據(jù)ICAO間隔和空域安全專家組對ADS-B 提供類雷達服務下間隔的安全性所給出的評估結論,航路和終端區(qū)可采用5 n mile的最小間隔[14],本文碰撞區(qū)域的半徑設置為5 n mile。PAZ區(qū)域的半徑在CAZ 區(qū)域的基礎上,根據(jù)入侵飛機航跡和相對速度來動態(tài)設置,即:
圖2 飛機沖突區(qū)域劃分
RPAZ=RCAZ+max(0,v(t))T
(1)
式中:v(t)為本機和入侵飛機在t時刻的相對速度;T為PAZ 的水平和垂直預留時間,取T=10 s[15]。PAZ區(qū)域為CAZ外側到RPAZ的部分。SAZ的半徑RSAZ設置為50 n mile,SAZ區(qū)域為PAZ外側到RSAZ的部分。
在球體保護區(qū)模型上,對入侵到SAZ的飛機進行分析。分析內(nèi)容包括兩機的飛行趨勢、水平方向航向位置關系和最接近的距離,通過三次判斷最終得出入侵飛機是否會與本機發(fā)生碰撞。
當有飛機出現(xiàn)在SAZ時,設本機A的信息包括(xA,yA,hA,vA,ωA,θA),入侵飛機B的信息包括(xB,yB,hB,vB,ωB,θB),其中:(x,y,h)是飛機在WGS-84坐標系下的地理位置;v表示飛機的速度;ω表示飛機此時的航向角;θ表示飛機的俯仰角?;谌缟闲畔?,下面對兩機的水平方向和最接近的距離進行判斷和分析。
1.2.1 水平方向判斷
水平方向的判斷是通過數(shù)據(jù)分析兩機的飛行趨勢,即判斷兩機是接近飛行還是遠離飛行。如果是遠離飛行,入侵的飛機不會與本機發(fā)生碰撞,不再進行碰撞分析。如果是接近飛行,則需對飛機繼續(xù)進行碰撞分析。
將飛機的速度分解為x、y、h三個方向的速度:
vx=vt×sinω
(2)
vy=vt×cosω
(3)
vh=vt×sinθ
(4)
vxA、vyA、vxB、vyB為本機A、入侵飛機B在x,y方向上的速度。t時刻的飛行趨勢采用下式進行判斷:
S1=(xAt-xBt)(vxAt-vxBt)+(yAt-yBt)(vyAt-vyBt)
(5)
根據(jù)式(5),S1>0表示兩機遠離飛行,S1<0表示兩機接近飛行,S1=0表明兩機相對靜止飛行[16]。
將飛行趨勢為接近飛行的入侵飛機做進一步的分析,在水平方向上采用航向角進行判斷。航向線即飛機縱軸的延長線,從飛機所在位置經(jīng)線北端順時量到航向線的角度即為航向角,航向角的范圍為0~360°,如圖3所示。后續(xù)分析采用真航向作為判斷依據(jù)。航向線不相交的兩機不存在碰撞危險,不再進行沖突判斷。
圖3 兩機的水平方向投影圖
根據(jù)兩機t時刻的坐標(xA,yA)和(xB,yB),可得:
Δx=xAt-xBt
(6)
Δy=yAt-yBt
(7)
通過式(6)和(7)并結合本機的航向得出入侵飛機的位置關系:可以為左前側、左后側、右前側和右后側。
根據(jù)兩機的位置關系的不同進行航向角計算,并判斷沖突情況。
1.2.2 最接近的距離分析
對水平方向上具有碰撞危險的入侵飛機進行進一步分析,判斷其與本機的最接近距離。根據(jù)兩機的前一時刻的飛行數(shù)據(jù)和此刻的飛行數(shù)據(jù)構建飛行軌跡公式,通過兩機的飛行軌跡公式計算兩機的最接近的距離d。如果最接近的距離d大于本機的CAZ半徑,兩機不會發(fā)生碰撞,否則兩機具有發(fā)送碰撞的危險。
根據(jù)本機的前一時刻的飛行數(shù)據(jù)點(xAt-1,yAt-1,hAt-1)和此刻的數(shù)據(jù)點(xAt,yAt,hAt)構建一條本機的飛行軌跡:
入侵飛機的前一時刻的飛行數(shù)據(jù)點(xBt-1,yBt-1,hBt-1)和此刻的數(shù)據(jù)點(xBt,yBt,hBt)構建一條入侵飛機的飛行軌跡:
通過式(8)和(9)計算兩機最接近的距離:
式中:vA=(xAt-xAt-1,yAt-yAt-1,hAt-hAt-1);vB=(xBt-xBt-1,yBt-yBt-1,hBt-hBt-1);M1=(xAt,yAt,hAt);M2=(xBt,yBt,hBt)。
最接近的距離d與本機的CAZ半徑為RCAZ的比較:
S2=d-RCAZ(11)
如果S2>0表示兩機不會相撞,如果S2<0表示兩機的最接近的距離小于本機CAZ的半徑,則兩機具有碰撞的危險,系統(tǒng)立即發(fā)出警告。
通過兩機飛行趨勢分析、水平方向和最接近的距離的綜合判斷,若三個沖突均成立,表明兩機確實存在碰撞的危險,需向飛行員發(fā)出警告,引起飛行員注意,使其能夠及時采取措施,避免危險發(fā)生。
為了驗證算法的有效性,利用MATLAB軟件進行算法仿真,采用Monte-Carlo方法進行10000次計算。假設本機的位置為(75,75,900,7500,0,0),即本機在WGS-84坐標系下的地理位置為(75,75,7500),飛行速度為900 km/h,航向角為0°,俯仰角為0°,CAZ的半徑RCAZ為5 n mile,PAZ的半徑RPAZ為15 n mile,SAZ監(jiān)視區(qū)域的半徑RSAZ為60 n mile。
在本機周圍隨機出現(xiàn)22架飛機,首先判斷這些飛機是否處于本機的SAZ內(nèi),再進行沖突檢測判斷。圖4是初始交通態(tài)勢圖,橫坐標的方向為東向,縱坐標的方向為北向。
圖4 初始交通態(tài)勢圖
圖5是10000次Monte-Carlo計算數(shù)據(jù)圖,計算的飛機總量為250000架次。首先判斷相鄰的飛機是否處于本機的SAZ區(qū)域,經(jīng)判斷處在本機SAZ區(qū)域的飛機總數(shù)為208758架次。通過飛行趨勢分析后,存在碰撞危險的飛機數(shù)量為104613架次,無沖突危險的飛機占比為58.1%;通過水平方向分析判斷后存在危險的飛機數(shù)量為38115架次,此時,總的無沖突危險飛機占比為84.7%;最后,通過最接近的距離分析判斷后存在危險的飛機數(shù)量為8049架次,總的無沖突危險飛機占比為96.7%,計算結果還表明,每次計算平均有0.8架入侵飛機與本機存在沖突。
圖6為存在沖突危險入侵飛機的分析示意圖。圖中入侵飛機的三維位置為(83,101,10097),航向角為318°,速度為784 km/h。處在本機的SAZ內(nèi),兩機是接近飛行,入侵飛機處在本機的右前側,且入侵飛機航向角處于能夠發(fā)生碰撞的范圍內(nèi),兩機有發(fā)生碰撞的危險。根據(jù)兩機最接近距離判據(jù),如果兩機間最接近距離小于本機CAZ的半徑,系統(tǒng)則立即發(fā)出警告。
本文基于ADS-B針對復雜的空域管理提出了一種高效的沖突檢測算法。該算法采用三層球體保護模型,通過飛行趨勢、航向角和最接近距離三次判斷后得出入侵飛機與本機的飛行情況。當本機與入侵飛機具有碰撞危險時,立刻發(fā)出警告?;陲w行實際情況和本算法,利用MATLAB軟件采用Monte-Carlo方法進行10000次計算仿真。結果表明:通過飛行趨勢判斷能排除一半無沖突的飛機;通過航向角判斷能夠排除三分之一無沖突的飛機。該算法能夠快速的檢測出存在碰撞危險的入侵飛機,具有沖突的檢測周期短、流程合理、方法簡單高效、檢測準確等優(yōu)點。在實際的空域中飛行情況更加復雜,由于多種因素的綜合影響,存在的沖突情況更多,對于沖突檢測還需要更進一步研究。