李鵬利,李興成
(空軍工程大學防空反導學院,西安 710051)
隨著雷達的多功能化,雷達系統(tǒng)的設計與實現(xiàn)也愈加復雜,由于對雷達多個處理過程的仿真與測試相對繁瑣,軟件化雷達開始受到重視。相比于單一、固定的測試手段,軟件化雷達仿真測試的靈活性、集成性與簡便性開始顯現(xiàn)出來。把雷達信號處理算法寫入軟件,其處理過程與實際雷達處理過程相同,對各過程進行仿真分析,能夠幫助相關人員更好地了解雷達系統(tǒng)的運作并協(xié)助研究。
雷達信號處理是指在雷達接收目標所反射的射頻回波,經一系列相關處理變?yōu)橹蓄l信號,所要進行的一系列處理過程[3]。主要包括下變頻、脈沖壓縮、動目標顯示(MTI)、動目標檢測(MTD)、恒虛警檢測(CFAR)。雷達信號處理過程如圖1 所示。
圖1 雷達信號處理過程
信號下變頻是關鍵的一步,在此過程中,計算機高效的計算性能將得到充分的利用,對信號進行DSP 處理。它將模擬信號通過中頻直接采樣,而后經正交處理與低通濾波處理,得到正交的基帶數字信號。
脈沖壓縮技術,即匹配濾波器。它能最大限度地提高信號的信噪比,提升雷達的探測性能。匹配濾波器的脈沖響應為:
匹配濾波器輸出的峰值瞬時SNR 寫為:
其中,在td時刻達到最大信噪比,白噪聲功率譜密度為N0/2,S0(t)為濾波器輸出,E 為輸入端信號能量。
雜波處理是雷達信號處理的主要工作之一,雜波形式眾多,如云、雨、地雜波等。動目標顯示技術利用雜波集中于零頻附近的特征,通過脈沖間的對消處理來消除雜波,使運動目標顯示出來。N 脈沖對消器的響應為:
其中,T 為時延,即T=1/f 雷達脈沖重復間隔。
今天的第二張照片是我的家鄉(xiāng),嘉善姚莊的桃源新村。10年前,這里作為嘉興市“兩分兩換”的首批試點,率先實施這項新的土地改革政策。所謂的“兩分兩換”,就是把農民的宅基地和承包地分開,搬遷和土地流轉分開,以宅基地置換城鎮(zhèn)房產,以土地承包經營權置換社會保障。
動目標檢測技術是在動目標顯示技術處理的基礎上對雜波更進一步的處理,使信號通過多普勒濾波器組來對目標進行測速。在信號處理中可直接使用MTD 處理,也可先通過MTI,再作MTD,具體情況由實際來定。
恒虛警檢測技術是經上述處理后需作的最后一步信號處理,在檢測中需計算隨噪聲變化的虛警概率,求得門限因子,并最終得到檢測門限。恒虛警檢測技術有多種算法,根據實際情況來進行選擇,最常用的有單元平均恒虛警檢測(CA-CFAR)與選大單元平均恒虛警檢測(GO-CFAR)[4]。
根據軟件的實際需求分析,以面向對象編程思想為設計方法,應用Python 自帶庫Tkinter 編寫而成。雷達信號處理系統(tǒng)采用分級化管理的設計方法,即各層之間各自執(zhí)行對應功能,系統(tǒng)由人機交互層、數據處理層、數據顯示層3 個層面實現(xiàn)。軟件框架與功能模塊如圖2 所示。
圖2 軟件框架與功能模塊
1)人機交互層即人機交互界面,控制相關仿真模塊與仿真參數。軟件主界面有4 種菜單模塊可供選擇,雷達波形仿真模塊、雷達信號處理過程仿真模塊、數據保存模塊與圖像格式修改模塊,各模塊之間分級管理。雷達波形仿真模塊主要包括雷達四大波形,即簡單脈沖波形、線性調頻波形、相參脈沖串波形與相位編碼波形。根據每種波形的不同特征來輸入不同的參數,如脈寬、帶寬、脈沖重復周期等,實現(xiàn)了不同的分析功能,主要包括時頻域波形分析、模糊函數分析、斜率、模糊函數圖三維切割等功能。
雷達信號處理過程仿真模塊包括目標仿真分析與其他信號處理過程分析,可自定義添加噪聲與雜波,并輸入相關參數如射頻頻率、中頻頻率、速度、目標RCS、目標位置、目標個數,同時可設置雷達實際環(huán)境參數,選擇是否加入干擾等進行仿真,來分析存在誤差情況下的雷達信號處理情況。根據不同波形的選擇,另外添加了對目標回波特征的分析,如線性調頻波形的多普勒失配現(xiàn)象、相位編碼波形的速度敏感性分析等。
數據保存模塊與圖像格式修改模塊考慮到實際需求,為系統(tǒng)設計添加,數據保存功能可對每一部分仿真分析所得數據進行保存,用于數據分析、示波器演示等;圖像格式修改可直接對數據可視化分析后的圖片進行格式轉換,格式眾多,可滿足不同需求,為發(fā)表文章、PPT 演示等所要求不同格式情況提供便利。
2)數據處理層是系統(tǒng)的關鍵與核心所在,系統(tǒng)內部使用執(zhí)行時序控制與系統(tǒng)效率控制對程序運行進行控制。在雷達波形分析模塊中,基本處理步驟首先對輸入參數判斷,若不符合要求則報錯,若符合要求則對參數進行讀取、預處理、而后暫存,等待可視化分析或數據保存。
在雷達信號處理模塊中,除了參數判斷、讀取、預處理外,還加入了算法匹配,即根據不同波形所要仿真內容的不同來自動匹配不同算法,預處理后加入數據反饋對比這一程序步驟,用于判斷實際處理結果是否符合預期結果,來選擇暫存還是報錯。
3)數據顯示層,即可視化分析模塊,基于Python 第三方庫matplotlib[5-6],它 功能強大是Python 最主要的繪圖庫之一,可根據不同模塊選擇進行二維或三維數據可視化[7]。
本軟件基于Python 的Tkinter 庫中的各類控件來搭建軟件框架,在程序實現(xiàn)過程中共用到其自身庫與第三方庫等16 種。
雷達信號處理算法的實現(xiàn),主要使用科學計算Numpy 庫、數據分析Pandas 庫[8]與信號處理Scipy庫,其內部豐富的函數為算法的編寫提供了有力的幫助。
雷達信號處理仿真處理時,處理的數據量一般較大,其處理過程均可進行可視化分析,這就意味著每一步都可進行數據暫存,這無疑加重了計算機CPU 的負擔,所以需對系統(tǒng)內存進行合理、有效的管理設計。Python 作為一種高級編程語言,使用者無法對其內存進行直接操作,本文設計了一種系統(tǒng)能夠通過自動對比數據量大小來選擇合理的數據結構[9]存儲數據,并通過管理數據對象來管理內存的方法。數據對象管理內部結構設計如圖3 所示。
圖3 數據對象管理內部結構
Python 內存管理是通過管理對象與堆來實現(xiàn)的。在雷達信號處理系統(tǒng)中,仿真時參數輸入的數據較小,采用Tuple 結構來接收參數,在Python 中Tuple 所占的字節(jié)數小于List;在雷達信號處理各過程產生數據的方式采用生成器,即調用yield 函數,生成器的運行機制比普通數據生成方式更快且接收內存,然后把生產的數據通過Numpy 庫中的array()函數暫存,通過調用函數計算各部分字節(jié)數大小,如果大于256 K,則通過Dict()類型來集中存儲,并釋放回收[10-11]原有對象占用內存,即將多個對象變?yōu)橐粋€對象。Dict()類型具有映射功能,后期的數據分析能根據key-value 的對應關系很快找到各部分對應數據。Dict()類型本身就是一個占內存較大的結構類型,其字節(jié)的大小由內部對象個數決定,而不是由內部對象字節(jié)大小決定,因為其內部存儲的是對象的地址,而不是對象本身。所以只有當信號處理各部分數據量大時,采用這種方法來管理內存才更為合適。值得一提的是,Python 內部動態(tài)分配內存時的閾值也是256 K。
數據對比分析是通過獲取原有參數與結果比較,如在某個過程中在哪幾個采樣點應該出現(xiàn)預期的結果,這一步是很有必要的,如果使用此系統(tǒng)的人只是為了采集數據,而不進行可視化分析,那么就得保證得到的數據是正確的。在反饋結果正確與否部分,使用Python 的try-except 語法來進行控制。
本軟件設計了基于屏幕分辨率大小來顯示界面,使界面顯示更加人性化。由于仿真波形較多,以相參脈沖串波形為例進行仿真分析,系統(tǒng)參數已設置默認值,可自行修改。雷達波形仿真菜單界面與信號處理界面如圖4 所示。
圖4 雷達信號處理系統(tǒng)界面
雷達波形仿真界面參數較少,功能也較為簡單,主要分析不同波形的相關性質,幫助理解與熟悉。圖4(a)中波形相關參數為脈寬、脈沖重復周期與脈沖個數,可視化圖形為模糊函數圖像與時域波形。
雷達信號處理界面功能與參數較多,由目標位置參數計算時延,由目標速度參數計算多普勒頻率。再結合其他目標信息與波形參數對目標進行仿真,即中頻回波信號。圖4(b)中可視化圖形為經雷達信號處理后的恒虛警檢測后的結果。具體參數信息如下頁表1 所示。
表1 軟件仿真參數(無干擾)
由最后的仿真結果可知,在系統(tǒng)存在一定虛警概率的情況下,所產生的數據是正確的,說明系統(tǒng)運行正常。
雷達波形仿真模塊在上文已基本提及,此處不再對其進行詳細分析。基于表1 中的數據,主要對雷達信號處理系統(tǒng)實驗結果按處理步驟進行可視化分析,如圖5 所示。
圖5 雷達信號處理
圖5 中的可視化圖形功能如圖中標題所示,(a)中在加入噪聲與雜波后,回波信號已無法分辨清楚,雷達信號處理就是從雜亂無章的信號中提取出目標信息;(b)中通過對中頻信號進行下變頻操作,使其降為基帶信號,便于后期處理;(c)中脈沖壓縮用來提高信噪比;(d)中動目標顯示處理后,可以看出,目標的位置信息已顯示出來,而具體速度卻無法判斷,即已經明確有運動目標;(e)中是經過MTI處理后進一步的處理,其具體速度信息已經明確,達到了測速的目的。
表1 中的參數不變,為雷達添加干擾信息與損耗,如下頁表2 所示。
表2 干擾與損耗
圖6 為添加壓制性干擾與雷達、干擾器損耗后的恒虛警檢測效果,當存在干擾時,雷達探測范圍降低為10 km,檢測到的目標的功率已明顯降低,且較遠目標未能檢測到,造成目標丟失,并出現(xiàn)了較多的虛警。
圖6 有干擾時的檢測
圖7 干擾下探測距離與檢測概率關系
在多次改變目標距離參數其他參數不變的情況下,可得出探測距離與檢測概率關系,隨著目標距離的增大,檢測概率會迅速降低,當目標距離超出干擾存在下雷達最大探測距離時,將不能夠檢測到目標(Pd<0.1),導致目標丟失。
本文主要實現(xiàn)了基于雷達信號處理與軟件設計相關理論知識的雷達信號處理系統(tǒng),以Python 為設計開發(fā)語言,設計了一種多功能化同時兼具效率的雷達仿真系統(tǒng),能夠根據不同波形的不同特性進行直觀、高效的可視化仿真分析,具有較強的實用性,可為相關人員提供實質性幫助。通過對軟件的測試分析,從而證實了系統(tǒng)在設計與運行上的有效性。系統(tǒng)在干擾類型中只設計了壓制性干擾中的自屏蔽干擾,后續(xù)還可對其進行拓展豐富。