商妮
【摘要】 基于雙基前視SAR雷達制導系統的空間同步過程,借助Matlab GUI編輯功能,設計了用于此類實驗系統的窗口界面,能夠完成參數的設置、彈道信息的選擇、輸出系統的選擇、數據分析和呈現等。
【關鍵詞】 Matlab GUI 雙基地雷達 窗口設計 數據分析
一、引言
雙基地雷達以其良好的抗“四大威脅”的特性,在軍事舞臺上得到了高度重視并獲得迅猛發展,雙/多基地雷達空間同步問題則是系統中首要的技術難題,其解決、測試和實驗都具有較高的難度。
雷達空間同步系統測試、仿真、實驗涉及到雷達各個組件,是一個較復雜的過程,在這個過程中需要能夠發現并解決問題、通過不斷調整參數驗證系統的可行性并改進,并直觀簡潔的顯示出系統的性能分析結果。
雷達系統常采用VB、VC等語言進行編譯,對于測試和實驗過程而言,這種編譯語言復雜程度高,要求專業的知識儲備和對所編譯系統的高度熟悉,不利于實時測試和實驗。
Matlab語言編譯較簡便,在基于雷達系統程序編譯的基礎上,借助其特有的GUI 功能,可將雙基地雷達空間同步系統中的各模塊整合,系統設置、計算、數據處理、繪圖等功能在用戶界面上同時顯示,極大的簡化了測試過程,并直觀的展示出系統運行過程,方便實驗的進行。
二、雙基雷達空間同步原理
該界面基于雙基前視雷達制導系統,系統由三個重要模塊構成:輸入模塊、空間同步實現模塊和跟蹤濾波模塊,其中波束的空間同步實現模塊以誤差模型為核心,需要計算出接收波束指向,并以此結果控制收發波束瞄準目標區域,主要受發射波束指向誤差、平臺定位誤差等輸入參量的影響。系統計算流程如圖1所示。
雷達系統功能復雜、實現難度大,在對于調試和實驗過程需要極高的專業編譯知識,因此以系統為核心,設計界面本文所實現的軟件基于以上原理和Matlab語言的雙基地雷達空間同步系統,將參數設置、系統計算、結果呈現等核心模塊整合為一。
三、同步界面設計
3.1界面需求分析
界面程序是將系統的核心模塊整合的過程,通過分析雷達系統工作過程發現,它需要滿足以下幾個需求:(1)通過分析各組成模塊的數據,能夠有排查故障的能力。(2)在系統計算的過程中可能會有故障出現,界面需具有實時掌控計算過程的能力(3)雷達系統在實際應用中對速度有較高的要求,因此需要該界面不影響系統的整體速度。
根據需要實現的功能將界面的工作流程設計如圖2所示。
如圖2為雙/多基地雷達空間同步界面分析的工作流程圖,由圖可以看出,操作者需要依次輸入雷達的基本參數以及當前實驗設置的約束條件、選取當前需要實驗的彈道信息文件(該界面基于雙基前視SAR雷達制導系統,收發平臺均位于高速運動的子母彈上,需根據模擬或現實的彈道軌跡進行實驗),通過進一步讀取和分析數據文件,最終得到相關的顯示結果。
3.2同步界面的實現
首先設計界面控件及布局,根據功能分區,將整個界面劃分為三個部分:(1)參數設置區。工作人員可在此處對雷達系統參數進行設置,并預設系統的誤差等量;(2)功能選擇區。包括輸出參量的選擇、導彈彈道的選擇、界面開關的選擇等;(3)坐標軸區。通過Axes坐標軸調用,顯示不同數據曲線的變化。
根據上文的劃分,選擇Matlab Guide中的功能模塊,搭建基本的雷達空間同步分析界面。采用若干個text和edit控件,分別用于顯示數據信息和改變輸入參數,并對edit控件設置缺省值,在不輸入任何數值時使用(如雷達收發平臺照射波束寬度一般采用6°)。其次采用popu-menu或radiobutton控件,前者為彈出式菜單,可在下拉菜單中設置波束覆蓋率、增益損失、波束指向誤差、目標回波信噪比、波束投影圖等多個輸出選項,值得注意的是每個選項在設置時務必保持相同的格式;有時需要多個選項同時輸出可采用checkbox復選框控件來實現。最后采用pushbutton控件控制彈出彈道文件選擇窗口,并控制整個界面的start、restart、exit等操作。
至此界面的搭建工作完成,需要通過后臺函數的編寫實現各控件的控制和聯系。每一個數據輸入控件都需要通過Callback回調函數編譯語句來控制該控件的每一個動作,包括數據的讀寫、顯示、選擇及鼠標的點擊等,以實現各控件和控件聯合的功能。
例如彈道文件選擇:
[filename, pathname] = uigetfile(‘*.mat,File Selector);
fullpath = fullfile(pathname, filename);%獲取文件路徑
load (fullpath);% 讀取彈道文件
save mydata.mat;
以上函數當單擊選擇文件開關時會觸發自動尋找彈道信息所在路徑,在操作者選擇相應的文件后讀取并將其保存為主函數調用的文件名以備調用。
例如popu-menu的部分控制句柄,設置所需計算的性能指標,通過選擇語句,由畫圖函數顯示出來:
switch str{val}
case {‘波束覆蓋率}
huatu_boshu(hObject,eventdata,handles,rm,bcc,dlt_ stt1_1,kp);%畫圖函數整體調用
例如坐標系中接收波束指向誤差的顯示函數:
cla(handles.axes1,reset);%清除坐標軸
h1=plot(rm,d_str(:,2),r-);
h2=plot(rm,d_ftr(:,2),b.);%分別計算出兩條曲線的變化并在同一坐標系下顯示
set(handles.axes1,XminorTick,on);
對于動態參數輸入控件edit,可采用簡單的回調語句來控制,例如:
user_entry = str2double(get(hObject,String));
if isnan(user_entry)
errordlg(‘You must enter a numeric value,Bad Input,modal)%錯誤提醒
其他控件的實現與上述功能相似,在調回函數的控制下實現功能。該界面可通過.m文件或.fig文件直接執行,或通過生成的.exe文件在脫離Matlab的環境下執行。
四、界面運行及應用
為了驗證該界面程序的可行性,選擇不同彈道信息,并設置不同的雷達參數進行計算。以圖3所示不同情況下增益損失與彈目距離之間的關系為例。
五、結束語
本文通過Matlab GUI設計雙/多基地雷達空間同步系統界面軟件。實驗證明,對實驗系統進行統一整合,通過完整的界面軟件對系統程序進行條件設置和選擇、同步系統分析、數據處理等,極大程度的提高了系統的測試和實驗效率。也可以根據不同雷達系統的需求進行再次開發,加入其它參數及功能。
參 考 文 獻
[1]杜世民,楊潤萍.基于Matlab GUI的“信號與系統”教學仿真平臺開發[J].實驗技術與管理,2012,29(3):87-90.
[2]邱金蕙,王菊輝,李振全.基于Matlab GUI的新型界面開發方式[J].河北工業科技,2008(8):233-235.
[3]徐曉靖.基于運動平臺的雙/多基地雷達系統及其關鍵技術[J].艦船電子對抗,2011,34(3): 43-45.
[4]李念念,張紅梅.基于Matlab GUI的信號與系統分析軟件開發[J].工業控制計算機,2011(24):19-21.