李益民,潘明海
(南京航空航天大學,南京 211106)
隨著雷達技術(shù)的發(fā)展,對用于測試雷達系統(tǒng)的實時仿真工具的需求與日俱增[1]。雷達目標模擬系統(tǒng)可以為設(shè)計人員提供測試雷達關(guān)鍵功能的機會,并降低開發(fā)雷達系統(tǒng)的成本。因此,雷達目標模擬系統(tǒng)廣泛用于現(xiàn)代雷達測試和評估[2-3]。隨著電子技術(shù)的發(fā)展,雷達的工作帶寬越來越寬。為了準確接收和重構(gòu)雷達信號,雷達目標模擬系統(tǒng)需要足夠的帶寬。然而,帶寬越寬,信號通帶內(nèi)的紋波越大,系統(tǒng)重構(gòu)產(chǎn)生的雷達回波信號失真越嚴重。因此,對系統(tǒng)的幅頻響應(yīng)進行校準,使通帶內(nèi)的幅度平坦是十分必要的[4-7]。目前,采用均衡器的方法被廣泛用于校準系統(tǒng)的幅頻響應(yīng),文獻[8-9]介紹了寬帶系統(tǒng)均衡器的設(shè)計以及用均衡器對毫米波接收前端的幅頻響應(yīng)進行校準,但均衡器只能補償校準變化平滑的紋波,無法對劇烈抖動的紋波進行精確校準。文獻[10]采用IIR濾波器結(jié)構(gòu)設(shè)計的數(shù)字均衡器來校準系統(tǒng)的幅頻響應(yīng)起到了不錯的效果,但IIR濾波器的非線性相位特性會使得系統(tǒng)的群時延波動增大影響系統(tǒng)的性能。文獻[11]針對雷達系統(tǒng)利用球形衛(wèi)星在高速運動中的回波,提出了頻域補償方法,該方法只對平滑的紋波有較好的補償作用。本文針對寬帶雷達目標模擬系統(tǒng)幅頻響應(yīng)通帶內(nèi)劇烈抖動的紋波,采用基于免疫粒子群優(yōu)化算法設(shè)計復(fù)雜系數(shù)的FIR濾波器,可以精確地對紋波進行補償,從而降低系統(tǒng)通帶內(nèi)的紋波[12]。
本文算法主要用于補償和校準由系統(tǒng)本身器件影響使得輸出信號產(chǎn)生劇烈變化的紋波。算法首先獲得系統(tǒng)輸出信號的頻譜包絡(luò)數(shù)據(jù),在軟件上根據(jù)信號的包絡(luò)設(shè)計相應(yīng)的FIR濾波器,然后用FIR濾波器系數(shù)在硬件系統(tǒng)中的DSP或FPGA中設(shè)計相應(yīng)的FIR濾波器。信號經(jīng)系統(tǒng)ADC采集后由FIR濾波器進行預(yù)處理再經(jīng)DAC輸出,從而大大降低了系統(tǒng)本身對信號產(chǎn)生的紋波影響。
FIR濾波器可用于設(shè)計具有任意幅頻響應(yīng)的濾波器,可補償寬帶雷達目標模擬系統(tǒng)通帶內(nèi)的紋波。系統(tǒng)幅頻響應(yīng)的校準問題實際上是FIR濾波器系數(shù)的優(yōu)化問題。FIR濾波器的設(shè)計方法很多,如經(jīng)典頻率采樣法和Remez逼近法[13],以及更現(xiàn)代的智能優(yōu)化算法,如粒子群算法、蟻群算法和免疫算法等[14-16]。傳統(tǒng)的FIR設(shè)計方法難以設(shè)計具有復(fù)雜幅頻特性的濾波器,而智能優(yōu)化算法廣泛用于設(shè)計復(fù)雜的FIR濾波器。
粒子群算法是由美國電氣工程師Eberhart 和社會心理學家Kenndy 根據(jù)鳥類的覓食行為提出的。該算法實現(xiàn)方便,收斂速度快,參數(shù)設(shè)置少,全局搜索能力強,是一種快速搜索算法。但是經(jīng)典的粒子群算法缺乏局部搜索能力,而免疫算法通過增加免疫算子可以有效地防止種群退化,從而保持種群的多樣性,具有較強的局部搜索能力。本文研究的免疫粒子群優(yōu)化算法結(jié)合了兩種智能算法的優(yōu)點,使算法不僅保證了全局搜索能力,而且提高了局部搜索能力[17-18]。免疫粒子群優(yōu)化算法的基本原理是使用一個邏輯映射初始化一組粒子,其中每個粒子代表一個隨機解,并通過迭代找到最優(yōu)解。在每次迭代期間,粒子通過跟蹤兩個極值來更新自身: 一個是粒子本身找到的最優(yōu)解,另一個是當前整個群體找到的最優(yōu)解。此外,如果在幾次迭代后全局最優(yōu)解沒有明顯改善,則產(chǎn)生免疫記憶粒子以更新需要被免疫替代的粒子[19]。
本文研究頻率范圍為0.1~1.1 GHz的寬帶雷達目標仿真系統(tǒng)的幅頻響應(yīng)校準。圖1所示為雷達目標模擬系統(tǒng)的幅頻響應(yīng)測試框圖。該系統(tǒng)捕獲由信號源產(chǎn)生的1 GHz帶寬LFM信號,并使用頻譜分析儀分析重建信號的幅頻特性。工業(yè)控制計算機從頻譜分析儀獲得信號頻譜的包絡(luò)數(shù)據(jù),根據(jù)信號頻譜包絡(luò)的紋波,采用免疫粒子群優(yōu)化算法設(shè)計FIR濾波器來補償紋波,使濾波后的信號幅頻響應(yīng)平坦。通過算法獲得FIR濾波器系數(shù)后,將濾波器系數(shù)生成一個.coe文件,用于系統(tǒng)的FPGA中實現(xiàn)FIR濾波器[20-21]。
圖1 雷達目標模擬系統(tǒng)的幅頻響應(yīng)測試框圖
信號源產(chǎn)生一個理想的0.1~1.1 GHz線性調(diào)頻信號,根據(jù)圖1接入系統(tǒng),通過頻譜儀觀測系統(tǒng)重構(gòu)輸出信號頻譜。圖2所示為頻譜儀顯示的經(jīng)系統(tǒng)重構(gòu)輸出信號的幅頻響應(yīng)。將頻譜分析儀中的信號頻譜數(shù)據(jù)輸出到工業(yè)控制計算機,通過MATLAB分析數(shù)據(jù)得到信號通帶中幅頻響應(yīng)的包絡(luò)。圖3為系統(tǒng)輸出信號通帶內(nèi)幅頻響應(yīng)的包絡(luò)。
從圖2~3可以看出,系統(tǒng)的幅頻響應(yīng)在通帶中紋波劇烈,最大幅度波動接近10 dB。
圖2 系統(tǒng)重構(gòu)輸出信號幅頻響應(yīng)
圖3 系統(tǒng)輸出信號通帶內(nèi)幅頻響應(yīng)包絡(luò)
頻譜儀中的頻譜數(shù)據(jù)可以表示為
X(k)=|X(k)|exp(θ(k))k=1, 2, …,L
(1)
式中:L是頻率數(shù);|X(k)|是幅頻響應(yīng)函數(shù)。
通帶中的幅頻響應(yīng)可以表示為
|Xp(k)|=|X(k)|k=ks, …,kg
(2)
式中:ks是通帶中的起始頻率;kg是通帶中的截止頻率。
采用m階FIR濾波器對幅頻響應(yīng)進行校準。濾波器的系統(tǒng)函數(shù)可以寫為
(3)
式中:h(n)是濾波器的系數(shù)序列; 令z=exp(jω),濾波器的頻率響應(yīng)函數(shù)可以寫成
|H(ejω)|exp(φ(ω))
(4)
式中: |H(ejω)|是濾波器的幅頻響應(yīng)函數(shù)。若H(ejω)以0到2π之間的相等間隔進行L點采樣,則H(k)為
(5)
那么,通帶內(nèi)的幅頻響應(yīng)可以表示為
|Hp(k)|=|H(k)|k=ks, …,kg
(6)
將雷達目標模擬系統(tǒng)和濾波器作為一個整體系統(tǒng),校準的目的是使系統(tǒng)的幅度響應(yīng)平坦。理想濾波器的幅度響應(yīng)需滿足:
|Hp(k)Xp(k)|=Ck=ks, …,kg
(7)
式中:C是常數(shù)。設(shè)計一個理想濾波器是非常困難的,可以等效為優(yōu)化h(n)問題,使|Hp(k)Xp(k)|的標準差最?。?/p>
minimise std(|Hp(k)Xp(k)|)
(8)
免疫粒子群優(yōu)化算法優(yōu)化系數(shù)的具體步驟如下:
步驟1: 初始化: 定義粒子的位置。式(4)中的變量是h(n),則粒子的位置矢量可以表示為
x=(h(0),h(1), …,h(M))
(9)
粒子的速度矢量為
v=(v(0),v(1), …,v(M))
(10)
此外,需設(shè)置以下參數(shù): 粒子數(shù)目N; 最大迭代次數(shù)MAX; 學習因子c1,c2; 隨機因子r1,r2; 最大慣性權(quán)重w_max; 最小慣性權(quán)重w_min; 免疫閾值Th; 粒子間最小間距min_d; 免疫替換概率p; 查詢最優(yōu)粒子時間間隔T。
步驟2: 生成初始種群并計算每個粒子的適應(yīng)度。適應(yīng)度函數(shù)可以表示為
fitness=std(|Hp(k)Xp(k)|)
(11)
步驟3: 將每個粒子的當前位置適應(yīng)度與歷史最佳位置適應(yīng)度進行比較。如果當前位置適應(yīng)度更好,則更新粒子的個體極值,否則不更新。
步驟4: 將每個粒子的當前位置適應(yīng)度與全局最優(yōu)位置適應(yīng)度進行比較。如果當前位置適應(yīng)度更好,則更新全局極值,否則不更新。
步驟5: 更新每個粒子的位置和速度:
xi, j(t+1)=xi, j(t)+vi, j(t+1)
(12)
式中:i=1, …N;j=1, …,M。
vi, j(t+1)=w·vi, j(t)+c1r1(pi, j-vi, j(t))+
c2r2(pg, j-xi, j(t))
(13)
式中:t是當前迭代次數(shù);pi, j是粒子自身的極值;pg, j是全局極值。
步驟6: 更新慣性權(quán)重:
式中:t=1, 2, …,MAX。
(14)
步驟7: 每隔時間T檢查全局極值是否顯著改善。滿足式(15),轉(zhuǎn)到步驟7.1開始免疫; 否則,轉(zhuǎn)到步驟2。
pg(t-T+1)-pg(t)
(15)
步驟7.1: 計算粒子適應(yīng)度的概率值:
(16)
步驟7.2: 計算與當前粒子的距離小于min_d的粒子數(shù),表示為num,粒子之間的距離表示為
d(i)=abs(p(j)-p(i))
(17)
那么,粒子的個體濃度可以表示為
pd(i)=num/N
(18)
步驟7.3: 計算粒子被免疫替換的概率:
pr(i)=rand*pf(i)+(1-rand)*pd(i)
(19)
式中:v是均勻分布在0和1之間的隨機數(shù)。
步驟7.4: 若pr(i)>p,按照式(20)替換粒子,否則到步驟5。
xnew(i)=pr(i)*x(i)+(1-pr(i))*pg
(20)
步驟8: 若滿足最大迭代次數(shù),則轉(zhuǎn)到步驟2; 否則,轉(zhuǎn)到步驟9。
步驟9: 尋找群體中的最優(yōu)粒子作為解,終止算法。
對本文提出的免疫粒子群優(yōu)化算法的計算時間復(fù)雜度進行理論分析。假設(shè)對于m階FIR濾波器,粒子的數(shù)目為n,算法滿足收斂條件所需要的迭代次數(shù)為M(m,n)。對于免疫粒子群優(yōu)化算法一個粒子更新一次,需要進行7次加法與7次乘法運算。如果每隔T次檢查粒子需要進行免疫處理,則一個粒子免疫處理一次需要n+4次加法與5次乘法,需要免疫的概率與免疫閾值有關(guān),設(shè)為P(r),假設(shè)一次乘法運算的時間為tm,加法運算的時間為ta,則免疫粒子群優(yōu)化算法完成m階FIR濾波器優(yōu)化設(shè)計所需要的時間t為
(5tm+(n+4)ta)
(21)
采用免疫粒子群優(yōu)化算法設(shè)計了不同階的FIR濾波器,并比較了不同階數(shù)的FIR濾波器對系統(tǒng)幅頻響應(yīng)的補償效果。由于免疫粒子群優(yōu)化算法的參數(shù)對優(yōu)化結(jié)果有影響,因此對其進行了細致的設(shè)置。考慮到問題的復(fù)雜性,免疫粒子群優(yōu)化算法的參數(shù)設(shè)置如下: 種群大小N=256; 最大迭代次數(shù)MAX=500; 學習因子c1=2,c2=2.5; 最大慣性權(quán)重w_max=0.8; 最小慣性權(quán)重w_min=0.8; 免疫閾值Th=0.1; 粒子間最小間距min_d=0.1; 免疫替換概率p=0.2; 查詢最優(yōu)粒子時間間隔T=10。
圖4所示為采用免疫粒子群優(yōu)化算法設(shè)計的不同階數(shù)FIR濾波器對系統(tǒng)的幅頻響應(yīng)補償校準后通帶內(nèi)的紋波。由圖可知,F(xiàn)IR濾波器的性能隨著濾波器階數(shù)的增加而提高。然而,當濾波器的階數(shù)大于64階時,濾波器的性能沒有顯著提高,而且階數(shù)越高,算法需要迭代的次數(shù)會顯著增加,需要的時間也會成倍增長,在FPGA中也需要使用更多的硬件資源。圖5所示為64階FIR濾波器幅頻響應(yīng)、未使用濾波器進行校準和使用了FIR濾波器進行補償校準的信號幅頻響應(yīng)。由圖可知,在使用FIR濾波器校準后,系統(tǒng)的幅頻響應(yīng)得到了顯著改善,使得系統(tǒng)輸出信號通帶內(nèi)幅頻響應(yīng)在1 dB以內(nèi)。
圖4 不同階數(shù)濾波器校準后信號紋波
圖5 使用與不使用濾波器校準的信號幅頻響應(yīng)比較圖
濾波器系數(shù)是通過免疫粒子群優(yōu)化算法仿真得到的,但系統(tǒng)實現(xiàn)需要在FPGA中設(shè)計濾波器,因此有必要生成.coe文件,并將獲得的濾波器系數(shù)導(dǎo)入FPGA中設(shè)計的FIR濾波器IP核中。系統(tǒng)測試是按照圖1所示的系統(tǒng)框圖進行實驗,通過頻譜儀觀測加入FIR濾波器之后系統(tǒng)輸出信號通帶內(nèi)的幅頻響應(yīng),并與仿真結(jié)果進行比較。圖6為分別加入64階和128階FIR濾波器校準后的雷達目標仿真系統(tǒng)幅頻響應(yīng)的實驗測試結(jié)果。
圖6 FIR濾波器校準后信號幅頻響應(yīng)
與圖2相比,圖6在加入FIR濾波器后明顯改善了系統(tǒng)輸出信號通帶內(nèi)的幅頻響應(yīng),加入64階濾波器使得通帶內(nèi)起始頻率與終止頻率信號的紋波在1 dB左右,加入128階濾波器信號的紋波在0.5 dB左右,但從整個通帶內(nèi)的平坦度來看,128階的濾波器并不明顯優(yōu)于64階濾波器,而且設(shè)計128階濾波器算法所花費的時間是64階的好幾倍,所占用系統(tǒng)硬件FPGA資源也遠超過64階,濾波器階數(shù)的選擇與系統(tǒng)紋波變化的劇烈程度有關(guān)。對于一般寬帶系統(tǒng),64階濾波器可以滿足需求。
由圖6可知,校準之后輸出的幅頻響應(yīng)在-25 dB左右,這是因為未校準前信號經(jīng)系統(tǒng)輸出在1.1 GHz處的幅頻響為-25 dB左右,算法所設(shè)計的FIR濾波器為無源濾波器,因此,校準后系統(tǒng)整個通帶內(nèi)的幅頻響應(yīng)在-25 dB左右。系統(tǒng)幅頻響應(yīng)的降低會使系統(tǒng)的無雜散動態(tài)范圍減小,對系統(tǒng)性能有一定影響,后續(xù)將研究采用加入有源均衡器進行粗校準,再采用FIR濾波器進行精校準,在降低系統(tǒng)紋波的同時提高系統(tǒng)的幅頻響應(yīng)。
本文采用免疫粒子群優(yōu)化算法,設(shè)計了用于校準雷達目標模擬系統(tǒng)通帶內(nèi)幅頻響應(yīng)的FIR濾波器。設(shè)計的FIR濾波器和適應(yīng)度函數(shù)有效補償了通帶中的幅度變化。免疫粒子群優(yōu)化算法避免了粒子群算法中的早熟收斂問題,并增強了局部搜索能力。從實驗和仿真結(jié)果可以證明,采用免疫粒子群優(yōu)化算法設(shè)計的FIR濾波器對信號進行校準后,信號通帶內(nèi)幅頻響應(yīng)的紋波小于1 dB。采用該方法可以顯著提高雷達目標模擬系統(tǒng)的幅頻響應(yīng),從而有效減小系統(tǒng)重構(gòu)信號的失真。