王玉凡,高玉龍,吳兆平,王愷宇
(中國空間技術(shù)研究院西安分院,西安 710000)
角跟蹤接收機目前廣泛應(yīng)用于我國中繼衛(wèi)星和各類低軌用戶星,主要功能是接收星間鏈路天線饋源輸出的兩路和、差信號,將星間鏈路天線在自跟蹤過程中偏離天線電軸的角位置誤差轉(zhuǎn)換成能夠控制天線運動的誤差信號,在星間天線對準(zhǔn)情況下,誤差信號抖動大小決定天線跟蹤精度。在低信噪比情況下,隨著星間鏈路信息速率越來越大,角跟蹤接收機輸出誤差信號抖動變大,當(dāng)信息速率達到300Mbps時,誤差信號抖動無法滿足自跟蹤系統(tǒng)使用要求。本文提出一種16點加權(quán)滑動窗平滑算法,對角跟蹤接收機誤差信號進行平滑處理,并在FPGA硬件平臺上實現(xiàn),通過系統(tǒng)自跟蹤試驗,能夠滿足工程使用要求。
角跟蹤接收機為適應(yīng)從不同調(diào)制方式(例如BPSK或QPSK)和碼速率(例如100 kbps~300 Mbps)信號中提取角誤差信號,采取小部分帶寬法[1]?;驹砜驁D如圖1所示,通過兩個帶通濾波器(BPF2和BPF3)完成對輸入信號小部分帶寬的提取。提取信號經(jīng)過包絡(luò)檢波器檢波,包絡(luò)檢波器輸出包絡(luò)信號給數(shù)字信號處理單元,完成方位差、俯仰差誤差信號的分離,并轉(zhuǎn)換成電壓電平輸出。在星間鏈路兩端天線對準(zhǔn)時,由于受系統(tǒng)噪聲影響,角跟蹤接收機輸出方位差、俯仰差電壓在0V附近波動,對方位差、俯仰差電壓進行三倍均方根統(tǒng)計,統(tǒng)計結(jié)果定義為誤差信號抖動。
圖1 角跟蹤接收機原理框圖Fig.1 Schematic diagram of angle tracking receiver
角跟蹤接收機中誤差信號解調(diào)時間為64 ms,即每64 ms輸出一次誤差信號電壓值,通過測試設(shè)備對輸出數(shù)據(jù)進行采集存儲,然后進行頻譜分析。使用Matlab工具對方位誤差電壓和俯仰誤差電壓數(shù)據(jù)進行頻譜分析,結(jié)果如圖 2所示。從圖2中可以看出方位差、俯仰差電壓中噪聲比較均勻分布在整個采樣頻率中,而實際上方位差、俯仰差電壓應(yīng)為低頻信號甚至是直流信號。因此選取的平滑算法必須呈現(xiàn)低通特性,濾除高頻噪聲,保留低頻有用信號。
圖2 方位、俯仰差電壓FFT計算結(jié)果Fig.2 Calculation results of error signal voltage FFT
采用16點平滑窗算法,基本實現(xiàn)原理是輸出的誤差信號為當(dāng)前解調(diào)出來的誤差信號與前面15個時刻輸出誤差信號進行累加,然后取平均得到角跟蹤接收機誤差信號輸出值。平滑窗輸入輸出基本表達式如下:
y(n)=(x(n)+x(n-1)+…
+x(n-15))/16
(1)
其中y(n)為當(dāng)前n時刻平滑窗輸出的值,x(n),x(n-1)...x(n-15) 為平滑窗輸入值,式(1)進行Z域變換可得如下表達式:
Y(Z)=(X(Z)+Z-1X(Z)+…Z-15X(Z))/16
(2)
(3)
表1 方位差、俯仰差平滑前后誤差抖動比較Tab.1 Error jitter before and after smoothing
圖3 時域和頻域曲線Fig.3 Time domain and frequency domain diagrams of h(n)
圖4 平滑濾波后方位差、俯仰差FFTFig.4 FFT calculation results of azi and evt after smoothing filtering
通過以上分析,在方位差電壓和俯仰差電壓輸出端增加平滑窗進行平滑處理,能很好降低方位差電壓和俯仰差電壓抖動。在硬件平臺處理器FPGA上對平滑窗算法進行實現(xiàn),從式(1)中可以看出需要進行15次加法運算和1次除法運算。為節(jié)省FPGA資源,實際實現(xiàn)過程采用1次加法運算、1次減法運算以及1次截位操作完成平滑窗功能[7]。具體模塊實現(xiàn)步驟如下:
1)設(shè)置計數(shù)器A,每次新來一個方位差電壓值和俯仰差電壓值,計數(shù)器A加1;
2)生成一個16字節(jié)數(shù)據(jù)長的移位寄存器,完成16個數(shù)據(jù)的移位存儲操作,每新來一個數(shù)據(jù),移位寄存器進行一次移位操作,功能框圖如圖 5所示;
圖5 平滑窗實現(xiàn)框圖Fig.5 Smooth algorithm implementation diagram
3)每新來一個數(shù)據(jù),累加器SUM與輸入數(shù)據(jù)進行累加,累加值寄存在SUM中;
4)計數(shù)器A等于16時,累加器SUM累加值賦值給寄存器B,同時寄存器B進行低位截取,舍棄低4位,對高位輸出,完成除16運算;
5)計數(shù)器A>16時,計數(shù)器停止計數(shù),累加器SUM與新數(shù)據(jù)累加,然后減去移位寄存器輸出的(n-16)數(shù)據(jù),得到的值賦給寄存器B,B進行低位截取,舍棄低4位,對高位輸出,完成除16運算。
采用VHDL語言在FPGA上對上述平滑窗實現(xiàn),使用modelsim仿真工具進行仿真。仿真時設(shè)定azi_fir_in為方位差輸入數(shù)據(jù),evt_fir_in為俯仰差輸入數(shù)據(jù),azi_evt_fir_in_valid為輸入數(shù)據(jù)有效時刻,azi_fir_out為方位差平滑輸出數(shù)據(jù),evt_fir_out為俯仰差平滑輸出數(shù)據(jù),azi_evt_fir_out_valid為輸出數(shù)據(jù)有效時刻,仿真結(jié)果如圖 6所示,從圖6中可以看出FPGA平滑窗代碼實現(xiàn)正確。
圖6 FPGA平滑窗仿真圖Fig.6 FPGA smooth window simulation
實現(xiàn)過程采用桶形數(shù)據(jù)移位的方式替代除法運算,有效的降低了FPGA資源,通過Xilinx ise 開發(fā)工具對兩種實現(xiàn)方式資源占用率進行比對,如表2、表3所列,桶形數(shù)據(jù)移位方式input LUTs 資源相對除法運算方式資源降低84.2%。
表2 桶形數(shù)據(jù)移位方式資源占用量Tab.2 Bucket data shift resource usage
表3 除法運算方式資源占用量Tab.3 Division method resource usage
本文結(jié)合工程實際中方位差、俯仰差抖動大的問題,首先對方位差、俯仰差進行頻譜分析,得到方位差、俯仰差中的噪聲頻譜量,然后構(gòu)建平滑窗的傳輸函數(shù),最后使用桶形數(shù)據(jù)移位方式在FPGA硬件上以較小的資源占用率實現(xiàn)該算法。經(jīng)過試驗驗證該方法能夠有效的解決方位差、俯仰差抖動在低信噪比、高碼速率情況下輸出超差的問題,使方位差、俯仰差誤差信號抖動輸出值降低約77%,顯著提高系統(tǒng)性能。目前該方法隨我國二代中繼衛(wèi)星成功在軌應(yīng)用。