黃勇
摘 要 本論文的主要內(nèi)容圍繞目標(biāo)跟蹤數(shù)據(jù)融合平臺(tái)系統(tǒng)的開發(fā)所需的技術(shù)來(lái)展開討論。特別是重點(diǎn)分析一些定位準(zhǔn)確,濾波性能好并且程序中使用到的算法。本論文的主要工作,就是利用已有的數(shù)學(xué)模型,對(duì)實(shí)際跟蹤目標(biāo)的過(guò)程做一個(gè)模擬。定位的實(shí)現(xiàn)過(guò)程通常是:用單個(gè)運(yùn)動(dòng)的觀測(cè)站對(duì)輻射源進(jìn)行連續(xù)的測(cè)量,在獲得一定量的定位信息積累的基礎(chǔ)上,進(jìn)行適當(dāng)?shù)臄?shù)據(jù)處理以獲取輻射源目標(biāo)的定位數(shù)據(jù)。幾何學(xué)原理定位,并結(jié)合非線性濾波所獲得的對(duì)固定和運(yùn)動(dòng)輻射源的快速高精度定位和跟蹤。本文采用了KF(Kalman Filter,卡爾曼濾波算法)的實(shí)現(xiàn)方式,然后還探究了距離角度算法的實(shí)現(xiàn)方式,以這兩種方式進(jìn)行濾波定位跟蹤的模擬。
關(guān)鍵詞 無(wú)源定位 卡爾曼濾波算法模型 距離角度算法 仿真模擬
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A
0前言
與傳統(tǒng)的有源雷達(dá)技術(shù)相比較,無(wú)源定位跟蹤技術(shù)自身不發(fā)射電磁波而且探測(cè)距離遠(yuǎn),所以它在現(xiàn)代電子偵察戰(zhàn)中扮演著越來(lái)越重要的角色。本系統(tǒng)就是采用無(wú)源定位跟蹤技術(shù)在西南交大就學(xué)期間以畢業(yè)設(shè)計(jì)形式完成?,F(xiàn)代電子偵察相關(guān)算法層出不窮,但算法各有優(yōu)劣。本系統(tǒng)是用不同算法如卡爾曼濾波算法、距離角度算法等對(duì)無(wú)緣定位技術(shù)進(jìn)行仿真模擬,以確定不同算法的優(yōu)劣。本文主要是對(duì)目標(biāo)跟蹤數(shù)據(jù)融合平臺(tái)系統(tǒng)開發(fā)所需的技術(shù)進(jìn)行剖析,也對(duì)開發(fā)系統(tǒng)中所遇的問(wèn)題以及解決方法進(jìn)行講解。
1緒論
1.1研究的背景和意義
在現(xiàn)代戰(zhàn)爭(zhēng)的信息戰(zhàn)、電子戰(zhàn)環(huán)境中,使用快速高精度、高識(shí)別率的無(wú)源被動(dòng)定位跟蹤技術(shù)作戰(zhàn)場(chǎng)監(jiān)視、遠(yuǎn)程精確打擊已成為一種重要的技術(shù)方向和發(fā)展趨勢(shì)。單站無(wú)源定位與跟蹤技術(shù)對(duì)于C4ISR系統(tǒng)中的空載、星載、艦載電子偵察監(jiān)視以及發(fā)射導(dǎo)彈攻擊預(yù)警機(jī)、航空母艦以及地面雷達(dá)的初始瞄準(zhǔn)具有重要的價(jià)值,應(yīng)用范圍廣。
1.2國(guó)內(nèi)外發(fā)展情況
1.2.1國(guó)外的發(fā)展情況
國(guó)外在單站定位方面早就展開了研究,通過(guò)查看國(guó)外發(fā)表的眾多文獻(xiàn)資料,我們可以知道國(guó)外已經(jīng)在進(jìn)行關(guān)于單站定位系統(tǒng)的試飛試驗(yàn)和工程應(yīng)用。下面我們介紹國(guó)外一些在這種理念下開發(fā)的產(chǎn)品。
(1)“沉默的哨兵”
“沉默哨兵”的核心是“無(wú)源相控定位技術(shù)”。該系統(tǒng)廣泛采用了仿生學(xué)的原理,參考蒼蠅360度“復(fù)眼”的構(gòu)造,設(shè)計(jì)師將四面尺寸在2.5米左右的天線安裝在固定雷達(dá)站基座上,每面探測(cè)范圍均為120度,合在一處則可實(shí)現(xiàn)全方位全天候目標(biāo)監(jiān)視。其有效作用距離達(dá)220km,方位覆蓋60啊?60埃鑰罩心勘甑畝ㄎ瘓扔氬捎枚嗌俑鯰V信號(hào)或FM廣播信號(hào)有關(guān)。
(2)英國(guó)防御研究局(DERA)的無(wú)源跟蹤探測(cè)定位系統(tǒng)
英國(guó)DERA正在開展研究的無(wú)源探測(cè)定位系統(tǒng)也是一種雙基系統(tǒng),它利用英國(guó)BBC的TV發(fā)射機(jī)發(fā)射的TV信號(hào)進(jìn)行對(duì)空中目標(biāo)的探測(cè)和定位。該系統(tǒng)采用了與美國(guó)“沉默的哨兵”系統(tǒng)完全不同的探測(cè)定位技術(shù),即快速傅里葉變換(FFT)加卡爾曼濾波器和擴(kuò)展卡爾曼濾波器技術(shù)。
系統(tǒng)主要由一對(duì)8單元Yagi-Uda天線、下變頻單元和VXI數(shù)字HF接收機(jī)等硬件組成。系統(tǒng)在1997年2月進(jìn)行了三次試驗(yàn),當(dāng)時(shí)其天線置于18m高的移動(dòng)塔上,系統(tǒng)距TV發(fā)射臺(tái)100余千米,能探測(cè)260km遠(yuǎn)的目標(biāo)。
1.2.2國(guó)內(nèi)的發(fā)展情況
國(guó)內(nèi)單站無(wú)源定位技術(shù)的理論基礎(chǔ)研究是從 1994 年底開始的,國(guó)防科技大學(xué)的孫仲康教授領(lǐng)導(dǎo)著大批研究人員從事精確制導(dǎo)技術(shù)、無(wú)源定位技術(shù)的研究,總體來(lái)說(shuō),國(guó)內(nèi)的研究已經(jīng)完成了這項(xiàng)技術(shù)理論和方法的基礎(chǔ)研究,并開始著手深入研究參數(shù)的測(cè)量、定位濾波算法等。通過(guò)近 40 多年的努力,我國(guó)在這一領(lǐng)域得到了長(zhǎng)足發(fā)展,許多先進(jìn)的圖像處理與模式識(shí)別方法被應(yīng)用到這個(gè)領(lǐng)域,并研制了一些實(shí)際的系統(tǒng)。在國(guó)內(nèi)的研究機(jī)構(gòu)中,中國(guó)科學(xué)院北京自動(dòng)化研究所模式識(shí)別國(guó)家重點(diǎn)實(shí)驗(yàn)室對(duì)交通場(chǎng)景的視覺監(jiān)控、人的運(yùn)動(dòng)視覺監(jiān)控和行為模式識(shí)別等方面進(jìn)行了深入研究,分別提出了基于三維線性模型定位、基于擴(kuò)展卡爾曼濾波器的車輛跟蹤算法、基于步態(tài)的遠(yuǎn)距離身份識(shí)別、對(duì)目標(biāo)運(yùn)動(dòng)軌跡和行為特征學(xué)習(xí)的模糊自組織神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法等,在視覺監(jiān)控研究中處于領(lǐng)先地位。
1.3開發(fā)平臺(tái)和目標(biāo)平臺(tái)
1.3.1開發(fā)平臺(tái)
Windows 7操作系統(tǒng);
1.3.2 目標(biāo)平臺(tái)
因?yàn)楸鞠到y(tǒng)的最終成品為演示仿真系統(tǒng),因此不需要真正的物理傳感器。系統(tǒng)會(huì)通過(guò)軟件模擬,最終運(yùn)行環(huán)境為:
硬件要求:
CPU:500MHZ以上
硬盤:5GB以上
內(nèi)存:128M以上
運(yùn)行環(huán)境:
Windows 7/XP及以上版本,Java Runtime Environment,IE4.0以上,Netscape4.0以上。
1.4開發(fā)工具簡(jiǎn)介
1.4.1 Visual C++ 6.0
VC++6.0是Microsoft公司推出的一個(gè)基于Windows系統(tǒng)平臺(tái)、可視化的集成開發(fā)環(huán)境,它的源程序按C++語(yǔ)言的要求編寫,并加入了微軟提供的功能強(qiáng)大的MFC(Microsoft Foundation Class)類庫(kù)。
1.4.2數(shù)學(xué)運(yùn)算工具matlab
MATLAB是由美國(guó)mathworks公司發(fā)布的主要面對(duì)科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語(yǔ)言(如C、Fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)水平。
1.4.3 Matlab和VC++接口設(shè)計(jì)
因?yàn)楸鞠到y(tǒng)的數(shù)學(xué)模型計(jì)算方面非常繁瑣,為了減輕工作負(fù)擔(dān),我們采用專業(yè)的數(shù)學(xué)運(yùn)算引擎matlab來(lái)計(jì)算模型處理的那部分,這樣就必須用到VC和matlab方面的交互。MATLAB包括數(shù)學(xué)函數(shù)和工具箱函數(shù),MCC已經(jīng)將編寫的函數(shù)進(jìn)行編譯,可以遵循MCC編譯后的VC++文件語(yǔ)言規(guī)則直接在VC++中使用。
2系統(tǒng)模塊分析
2.1傳感器管理
在本仿真系統(tǒng)中,為了最大程序的模擬真實(shí)的跟蹤過(guò)程,系統(tǒng)允許用戶設(shè)置傳感器在坐標(biāo)中的位置。因?yàn)樵诂F(xiàn)實(shí)世界坐標(biāo)系中,很有可能多個(gè)傳感器在不同的地方,一個(gè)范圍內(nèi)協(xié)同工作,但本系統(tǒng)中暫不考慮多站的情況。真實(shí)系統(tǒng)中還應(yīng)該可以調(diào)整傳感器的掃描頻率(采樣頻率)等參數(shù)。通過(guò)該管理模塊能夠?qū)鞲衅飨嚓P(guān)參數(shù)做出相應(yīng)的修改,使其能夠通過(guò)不同方式接受信號(hào)。其包括對(duì)傳感器橫坐標(biāo)、縱坐標(biāo)及其傳感器布局等管理。
2.2目標(biāo)管理
在本模塊中用戶可以設(shè)置目標(biāo)的真實(shí)值以模擬我們本應(yīng)該通過(guò)傳感器所得到的帶噪聲的數(shù)據(jù),所以允許用戶輸入的首先應(yīng)該是目標(biāo)的真實(shí)速度和坐標(biāo),但是實(shí)際中我們不可能知道真實(shí)的坐標(biāo)值,所以不能使用這組數(shù)據(jù)計(jì)算,這組數(shù)據(jù)的用途應(yīng)該是模擬添加了噪聲的到達(dá)時(shí)間差和到達(dá)角的數(shù)據(jù)值,因?yàn)閭鞲衅魇菬o(wú)源的,被動(dòng)的接收外來(lái)的數(shù)據(jù),我們只能得到這些數(shù)據(jù)。通過(guò)目標(biāo)管理模塊對(duì)目標(biāo)相關(guān)參數(shù)做出相應(yīng)的修改,使其能夠按照預(yù)期結(jié)果飛行。包括目標(biāo)坐標(biāo)、目標(biāo)飛行速度、目標(biāo)飛行方向、目標(biāo)類型、目標(biāo)飛行家速度、目標(biāo)飛行持續(xù)時(shí)間等進(jìn)行相應(yīng)的更改。
2.3算法管理
現(xiàn)軍事上電子偵察所用算法很多,不同算法抗噪力不同,其準(zhǔn)確率也有所不同。該模塊是為了簡(jiǎn)單模擬一些算法,通過(guò)該模塊對(duì)目標(biāo)算法進(jìn)行相應(yīng)的選擇,使其能夠按照不同算法進(jìn)行相關(guān)測(cè)量,得到對(duì)應(yīng)的結(jié)果。包括對(duì)kalman算法、距離角度算法及其他相關(guān)算法進(jìn)行相應(yīng)的管理。
2.4性能分析
本系統(tǒng)另一個(gè)重要的功能就是研究算法的精度,為了更好的體現(xiàn)算法的精度,我們給出了比較濾波后的值和我們預(yù)先知道的真實(shí)值之間的誤差的方法。再對(duì)誤差比較及相關(guān)參數(shù)進(jìn)一步做出相關(guān)的性能分析。該功能實(shí)現(xiàn)是通過(guò)系統(tǒng)性能分析模塊對(duì)不同算法測(cè)試目標(biāo)得到的結(jié)果進(jìn)行一定的分析比較,能夠通過(guò)比較,得到理想的效果,得到相對(duì)最優(yōu)算法,并得出分析相關(guān)性能分析結(jié)果。
3系統(tǒng)用到的定位算法
3.1卡爾曼濾波器算法
簡(jiǎn)單來(lái)說(shuō),卡爾曼濾波器是一個(gè)最優(yōu)化自回歸數(shù)據(jù)處理算法。對(duì)于解決很大部分的問(wèn)題,他是最優(yōu),效率最高甚至是最有用的。他的廣泛應(yīng)用已經(jīng)超過(guò)30年,包括機(jī)器人導(dǎo)航,控制,傳感器數(shù)據(jù)融合甚至在軍事方面的雷達(dá)系統(tǒng)以及導(dǎo)彈追蹤等等。近來(lái)更被應(yīng)用于計(jì)算機(jī)圖像處理,例如頭臉識(shí)別,圖像分割,圖像邊緣檢測(cè)等等。
由于在直角坐標(biāo)系下的測(cè)量方程是一個(gè)非線性的方程,因此須采用非線性濾波方法。單站無(wú)源定位中傳統(tǒng)的非線性濾波方法是擴(kuò)展的卡爾曼濾波(Extended KF,EKF)方法,即用泰勒級(jí)數(shù)將非線性函數(shù)展開后線性化,然后利用卡爾曼濾波算法,獲得較好的性能。但是由于EKF具有依賴于初始狀態(tài)估計(jì)的缺點(diǎn),并且協(xié)方差易出現(xiàn)病態(tài),導(dǎo)致濾波定位結(jié)果不穩(wěn)定。為此許多研究工作開始致力于研究更加穩(wěn)定的算法。Aidala提出修正極坐標(biāo)條件下的只測(cè)角定位濾波算法,即采用修正極坐標(biāo)系和EKF算法對(duì)輻射源進(jìn)行定位,改進(jìn)了估計(jì)系統(tǒng)的穩(wěn)定性,但是這樣相對(duì)運(yùn)動(dòng)的狀態(tài)方程就變成了一個(gè)非線性方程。
EKF算法和UKF(Unscented KF)通稱為基于參數(shù)方法的濾波算法。EKF算法和UKF算法都是假設(shè)后驗(yàn)概率分布為高斯分布,對(duì)目標(biāo)進(jìn)行定位和跟蹤是典型的動(dòng)態(tài)系統(tǒng)狀態(tài)估計(jì)問(wèn)題,在模型滿足高斯線性條件下,卡爾曼濾波器可獲得最好的跟蹤效果。但在諸如純角度跟蹤的運(yùn)動(dòng)模型中,線性、高斯假設(shè)條件常常不能滿足,EKF算法將出現(xiàn)濾波精度下降和發(fā)散現(xiàn)象。Gordon等提出一種非參數(shù)化的濾波算法粒子濾波(Particle Filter,PF)。粒子濾波算法能解決非線性,非高斯問(wèn)題。將Gordon等提出的粒子濾波方法應(yīng)用到純角度跟蹤問(wèn)題中,獲得了較好的跟蹤精度。隨后,多目標(biāo)跟蹤與傳感器管理問(wèn)題也被研究出來(lái)。粒子濾波用于目標(biāo)跟蹤的成果表明,粒子濾波能較好地處理測(cè)量斷續(xù)、群目標(biāo)跟蹤、雷達(dá)跟蹤多路徑等傳統(tǒng)難題,因此它是目標(biāo)跟蹤中非線性問(wèn)題的數(shù)學(xué)支撐工具之一。
但是傳統(tǒng)的粒子濾波算法存在退化現(xiàn)象,克服退化現(xiàn)象有兩條途徑:一是通過(guò)重采樣,一是通過(guò)選擇更好的參考分布。一個(gè)最直觀的改善參考分布的方法是融合入當(dāng)前的觀測(cè)數(shù)據(jù)。盡管不同的Kalman濾波方法的性能不同,但是它們都有把當(dāng)前觀測(cè)數(shù)據(jù)融合進(jìn)參考分布的能力。因此考慮在樣本產(chǎn)生后,利用Kalman濾波方法,先用本拍的量測(cè)對(duì)樣本進(jìn)行更新,然后再進(jìn)行重采樣。例如可以使用EKF對(duì)每個(gè)粒子點(diǎn)進(jìn)行局部線性化來(lái)完成樣本更新,這種方法稱之為EKPF。而利用UKF算法對(duì)每個(gè)粒子點(diǎn)進(jìn)行樣本更新則稱之為UPF算法。
3.2距離角度算法
類似雷達(dá)定位,主要通過(guò)目標(biāo)的兩個(gè)信息——距離和角度來(lái)進(jìn)行對(duì)目標(biāo)位置、速度等相關(guān)信息進(jìn)行確定。在此我們簡(jiǎn)單介紹相關(guān)測(cè)量方法。
(1)測(cè)量交叉定位法:通過(guò)機(jī)載貨地面單站的移動(dòng),在不同位置多次測(cè)量方位,利用方位線的交叉實(shí)現(xiàn)定位:或者通過(guò)空載或者地面固定多站的測(cè)角系統(tǒng)所測(cè)得的指向交會(huì)來(lái)實(shí)現(xiàn)定位。
(2)距離差測(cè)量法:實(shí)際上就是時(shí)差測(cè)量法,它是通過(guò)處理三站或更多個(gè)測(cè)量站采集到的信號(hào)到達(dá)時(shí)間測(cè)量數(shù)據(jù)進(jìn)行定位的。時(shí)差測(cè)量誤差會(huì)影響輻射源定位的誤差。對(duì)脈沖信號(hào)而言,時(shí)差車輛的誤差主要受測(cè)量信道帶寬的影響。帶寬越寬,誤差越小,所以高精度的時(shí)差測(cè)量系統(tǒng)采用最好窄脈沖。
(3)測(cè)向/測(cè)時(shí)差混合定位法:是將多站無(wú)源測(cè)向定位和測(cè)時(shí)差定位相結(jié)合的一種定位方法,即可保證時(shí)差定位的高精度,又可利用方位角度信息消除定位的模糊性。
本系統(tǒng)的距離角度算法采用測(cè)向/測(cè)時(shí)差混合定位法,可選擇三角布局,或者四角布局。
4本系統(tǒng)詳細(xì)設(shè)計(jì)步驟簡(jiǎn)介
步驟一:做好架構(gòu)設(shè)計(jì)
在設(shè)計(jì)前,必須先設(shè)計(jì)好主框架,做到胸有成圖的程度。對(duì)各模塊間的關(guān)系有個(gè)初步認(rèn)識(shí),對(duì)模塊間相互聯(lián)系的設(shè)計(jì)模式初步的確定。
步驟二:對(duì)系統(tǒng)觸發(fā)所用到的對(duì)話框類進(jìn)行編寫
目標(biāo)管理模塊中需要設(shè)置目標(biāo)相關(guān)參數(shù),則需要建立繼承CDialg的CAddTarDlg和CSetTarDlg類,對(duì)應(yīng)分別是添加新目標(biāo)類和設(shè)置已有目標(biāo)的速度等相關(guān)參數(shù)的類。
傳感器管理模塊中,需要建立繼承CDialg的CSetSenDld類,此類是添加傳感器,以及修改已有傳感器的坐標(biāo)等相關(guān)參數(shù)。
算法管理模塊中,這需要添加繼承CDialg的CArithmSelectDlg類,此類作用是選擇算法,并選擇三角布局或者四角布局等布局方式等。
性能分析模塊中需要添加繼承CDialg的CProfilerDlg類,此類作用是對(duì)相關(guān)算法進(jìn)行繪圖,與實(shí)際軌跡做比較,得出最優(yōu)算法。
步驟三:為類建立聯(lián)系
在視圖類CTargetTrackingView中添加目標(biāo)管理、傳感器管理、算法管理、性能分析、運(yùn)行等菜單選項(xiàng),并添加對(duì)應(yīng)的屬性變量,如CAddTarDlg類的adlg、CSetTarDlg類的dlg、CSetSenDlg類的sdlg、CProfilerDlg類的pd、CArithmSelectDlg類的asd。最后添加對(duì)應(yīng)的觸發(fā)函數(shù)OnAddTar、OnSetTar、OnSetSen、OnProfiler、OnArithmSelect、OnRun。
步驟四:完成后臺(tái)處理
完成CTargetTrackingView相關(guān)觸發(fā)函數(shù)代碼的編寫,并對(duì)其OnDraw函數(shù)進(jìn)行完善,由于繪圖需要適時(shí)刷新則需要定時(shí)器,添加定時(shí)器,并完成默認(rèn)回調(diào)函數(shù)OnTimer。完成相關(guān)繪圖任務(wù),如畫性能分析圖、算法比較圖。
步驟五:調(diào)試并完善
完成代碼編寫后需要對(duì)代碼進(jìn)行測(cè)試,并對(duì)代碼進(jìn)行相應(yīng)的完善。
5系統(tǒng)中相關(guān)問(wèn)題以及解決方案
問(wèn)題一:程序重繪使用invalidate函數(shù)進(jìn)行重繪,屏幕出現(xiàn)閃爍
解決方案:
(1)禁止背景刷新,對(duì)OnEraseBkgnd函數(shù)進(jìn)行修改,直接返回true;
(2)縮小重畫區(qū)域,使用invalidaterect函數(shù)進(jìn)行重繪;
(3)先畫到緩存區(qū),再?gòu)木彺鎱^(qū)一次性畫到目標(biāo)區(qū)(雙緩沖)。
問(wèn)題二:在VC中調(diào)用MATLAB出現(xiàn)問(wèn)題
解決方案:
(1)方法一是調(diào)用Matlab引擎;
(2)方法二是調(diào)用Matlab中M函數(shù)轉(zhuǎn)化成的dll文件;
(3)方法三是調(diào)用Matlab中M函數(shù)轉(zhuǎn)化成c語(yǔ)言的函數(shù)。
參考文獻(xiàn)
[1] 趙新會(huì). 作戰(zhàn)能力與作戰(zhàn)效能的概念開發(fā)[A]. 軍隊(duì)建設(shè)與軍事系統(tǒng)工程[C]第一版,2002:1383-3851.
[2] 孫珠峰,潘應(yīng)華. 基于卡爾曼濾波的目標(biāo)機(jī)動(dòng)判別研究[J ] . 海軍航空工程學(xué)院學(xué)報(bào),2001 (4) :449-451.
[3] 孫仲康,周一宇,何黎星. 單多基地有源無(wú)源定位技術(shù)[M]. 國(guó)防工業(yè)出版社,1996.
[4] 趙濤. 單站無(wú)源定位系統(tǒng)接收機(jī)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 上海交通大學(xué)碩士學(xué)位論文,2008.
[5] 徐瑞恩. 作戰(zhàn)理論基本概念:戰(zhàn)斗力、作戰(zhàn)能力和作戰(zhàn)效能量度[J]. 軍事運(yùn)籌與決策,2002:1158-1701