摘要: 針對當前無人機數據鏈日趨小型化,采用射頻收發(fā)一體化設計,基于FPGA 對零中頻射頻收發(fā)器AD9361 進行配置,實現機載視頻和遙控遙測的無線傳輸。測試結果表明,該設計可以實現無人機與地面站之間數據的可靠傳輸,同時滿足小型無人機對數據鏈體積、重量、功耗和低成本的要求。
無人機數據鏈是實現無人機與地面站之間雙向傳輸信息的無線通信系統(tǒng),主要完成機載視頻的實時下傳、載荷控制及狀態(tài)回報和遙控遙測信息的分發(fā)
[1]。其中射頻收發(fā)系統(tǒng)是無線傳輸的重要組成部分,針對小型無人機數據鏈體積小、重量輕、功耗低等特點,一般的集成式寬帶收發(fā)器解決方案在性能、可調帶寬方面受限,缺乏實現實用性; 而分立式軟件定義無線電( SDR) 的設計成本高昂,缺乏有效的硬件和RF 信號鏈設計技術,從而導致開發(fā)周期過長,因此,需要一款高度集成式軟件定義RF 收發(fā)器
[2]。集成式RF 收發(fā)器AD9361 的優(yōu)勢在于為多種無線電方案提供統(tǒng)一的可再編程軟件無線電平臺,具備出色的靈活性和可配置性以及支持現場升級
[3]。 姜浩等人提出采用PC + FPGA 配置AD9361 的方法,PC 機通過PCIe 接口將配置指令發(fā)送到FPGA,FPGA 通過SPI 接口發(fā)送配置指令到AD9361
[4]。Jorge Santos 等人提出采用FPGA + MicroBlaze的方案配置AD9361,并在Xilinx KC705 開發(fā)板上進行了實現和驗證
[5]。方良提出利用FPGA+ ARM 的方式實現AD9361 的配置,基于Zedboard和AD9361子板建立軟件無線電平臺進行雙向視頻的傳輸
[6]。本文提出一種FPGA 獨立實現AD9361配置的方案,該方案滿足小型數據鏈對于功耗、體積和成本的嚴苛要求,同時不受FPGA 型號的限制,可方便移植于不同的FPGA 平臺。 1 整體系統(tǒng)方案
無人機機載數據鏈設備的系統(tǒng)架構如圖1 所示。
首先,FPGA 通過EMIF 接收DSP 的高清壓縮視頻、通過UART 接收飛控計算機的遙測數據,壓縮后的視頻數據和遙測數據在FPGA 組幀編碼調制后通過LVDS 發(fā)送到AD9361,AD9361 對數據進行上變頻后經由天線發(fā)射出去; 同時,AD9361 對天線接收到的信號進行下變頻后,通過LVDS 將地面的遙控數據發(fā)送到FPGA,數據在FPGA 中經過解調譯碼解幀后通過UART 發(fā)送到飛控計算機中。其中,AD9361 的配置是FPGA 通過SPI 讀寫寄存器完成的。
圖1 無人機機載數據鏈設備的系統(tǒng)架構圖
2 AD9361 配置流程AD9361 有0 - 0x3FF 共1 024 個寄存器,有些寄存器不需要配置,保持上電默認值即可,而有些寄存器需要進行多次寫入,比如fir 濾波器、增益表等[7 - 8]。圖2 給出了AD9361 配置的狀態(tài)轉移圖。
圖2 AD9361 配置狀態(tài)轉移圖
BB - PLL: BB - PLL ( Base Band PLL,基帶鎖相環(huán)) 狀態(tài)是AD9361 初始化配置的起始狀態(tài),該狀態(tài)設置了晶振的輸入類型、參考時鐘頻率、AD9361內部基帶鎖相環(huán)頻率和環(huán)路濾波器參數、單雙通道選擇等。SPI 讀0x5E 寄存器最高位為1 則說明基帶鎖相環(huán)成功鎖定。
Charge Pump: Charge Pump ( 電荷泵) 狀態(tài)是對AD9361 內部電荷泵的電流進行設置并校準,接收電荷泵設置0x23D 寄存器,發(fā)射電荷泵設置0x27D 寄存器。 RF - PLL: RF - PLL ( Radio Frequency PLL,射頻鎖相環(huán)) 狀態(tài)對AD9361 的發(fā)射和接收頻率進行設置,包括射頻鎖相環(huán)的頻率、壓控振蕩器參數、環(huán)路濾波器參數、混頻器增益表等。
其中,壓控振蕩器和環(huán)路濾波器的參數分別寫入到FPGA 的rom ip 核中,通過查找表的方式進行調用。射頻鎖相環(huán)的頻率范圍是6 ~ 12 GHz,發(fā)射和接收頻率范圍是從70~ 6 000 MHz,發(fā)射頻率和接收頻率是獨立的,即使精度設為1 MHz,如果將整個頻率范圍都存入rom ip核,至少需要存11 000 多組數據,無論是工作量還是存儲空間都是巨大的,因此為了優(yōu)化設計,發(fā)射頻率和接收頻率的設置通過式1 ~ 式3 來實現。
以發(fā)射頻率為例,式1:FLO為AD9361 的發(fā)射頻率,FRFPLL為發(fā)射鎖相環(huán)頻率,VCO_Divider 是鎖相環(huán)分頻,根據表1 選擇相應VCO_Divider 的值,例如AD9361 的發(fā)射頻率FLO設置為4 635 MHz,則對應的VCO_Divider 為0,然后根據式1 得到發(fā)射鎖相環(huán)的頻率FRFPLL為9 270 MHz。
由于在BB - PLL 狀態(tài)中已經將FREF參考時鐘設置為40MHz,那么通過式2就可以得到發(fā)射頻率的整數部分NInteger = 0xE7 并寫入到AD9361 的0x271 和0x272 寄存器中,通過公式3 得到發(fā)射頻率的小數部分NFractional = 0x5F_FFF5并寫入0x273 - 0x275 寄存器中。設置接收頻率的公式和發(fā)射頻率相同,不同的是接收頻率的整數部分NInteger要寫入AD9361 的0x231 和0x232 寄存器,NFractional寫入0x233 - 0x235 寄存器。
表1 發(fā)射頻率FLO與鎖相環(huán)分頻VCO_Divider 的對應關系
RX Gain: RX Gain( 接收增益) 狀態(tài)包括對LNA( 低噪聲放大器) 、TIA( 跨阻放大器) 、LPF( 低通濾波器) 、接收增益表、增益控制方式等進行配置。接收增益表分為整體表和分立表,整體表配置簡單,分立表配置復雜但是抗干擾能力更強。不同的頻率范圍又對應著不同的增益表,接收頻率為70 ~ 1 550MHz、1 551 ~ 3 650 MHz、3 651 ~ 6 000 MHz 時需要設置不同增益表來調整輸入信號的增益。
增益控制方式分為自動增益控制( AGC) 和手動增益控制( MGC) ,自動增益控制又分為快速增益和慢速增益,通常情況下,時分雙工模式( TDD) 采用快速自動增益,而頻分雙工模式( FDD) 采用慢速自動增益。
Filter: Filter( 濾波器) 狀態(tài)是對AD9361 內部的數字和模擬濾波器進行配置,發(fā)射和接收端各有4個數字濾波器和2 個模擬濾波器,圖3 給出了發(fā)射端濾波器的通路,經過編碼后的IQ 兩路數據先后經過FIR 濾波器和HB1、HB2、HB3 等3 個半帶濾波器插值后送入DAC 進行數模轉換,接下來用一個3 階巴特沃斯低通濾波器BB LPF 和一個單極低通濾波器2ND LPF 來減小模擬信號的帶外雜散。
圖4 給出了接收端濾波器的通路,天線接到的模擬信號經過一個單極低通濾波器TIA LPF 和一個3 階巴特沃斯低通濾波器BB LPF 后進入到ADC 中進行模數轉換,然后經過HB1、HB2、HB3 等3 個半帶濾波器和FIR 濾波器輸出IQ 兩路數據到后面的數字信號處理模塊。
圖3 AD9361 發(fā)射信號濾波器通道
圖4 AD9361 接收信號濾波器通道
Calibration: Calibration( 校準) 狀態(tài)包括基帶直流偏置校準、射頻直流偏置校準、發(fā)射正交校準、接收正交校準跟蹤、基帶和射頻直流跟蹤校準。校準的目的是通過對直流偏置、增益、相位誤差等進行改善來提高系統(tǒng)的性能,各個校準所需要的時間跟發(fā)射和接收頻率成反比,頻率越高,校準時間越短。
ATTEN&RSSI: ATTEN( Attenuation,衰減控制)和RSSI( Receive Signal Strength Indicator,接收信號強度指示) 狀態(tài)包括發(fā)射信號的衰減值和接收信號強度的指示。衰減值可設置的范圍是0 ~ 89. 75dBm,精度是0. 25 dBm,RSSI 顯示與實際信號大小成反比,信號越強,RSSI 值越小。
FDD/TDD: FDD( Frequency Division Duplex,頻分雙工) 或TDD( Time Division Duplex,時分雙工) 狀態(tài)通過配置0x13 - 0x15 寄存器切換AD9361 內部的ENSM 狀態(tài)機來實現FDD 或者TDD,AD9361 正常工作時的一直保持該狀態(tài)。
當FPGA 接收到切換頻率( FRQ change) 指令時,狀態(tài)機從FDD/TDD 狀態(tài)跳轉到RF - PLL 狀態(tài),改變發(fā)射或接收頻率后再跳轉到FDD/TDD 狀態(tài)正常工作; 當FPGA 接收到切換帶寬( BW change) 指令時,狀態(tài)機從FDD/TDD 狀態(tài)跳轉到Filter 狀態(tài),改變?yōu)V波器帶寬后再跳轉到FDD/TDD 狀態(tài)正常工作;當FPGA 接收到切換衰減( ATTEN change) 指令時,狀態(tài)機從FDD/TDD 狀態(tài)跳轉到ATTEN&RSSI 狀態(tài),改變衰減值后跳轉到FDD/TDD 狀態(tài)正常工作。
3 系統(tǒng)測試
3.1 單音測試
基于Artix7 - 100T FPGA 配置AD9361 發(fā)射和接收頻率1. 7 GHz,發(fā)射和接收帶寬1 MHz,發(fā)射衰減10 dBm,雙工模式為FDD,單發(fā)單收。FPGA 內部生成一個DDS ip 核,DDS 產生720KHz 的正弦波和余弦波作為AD9361 的I 路和Q 路發(fā)射數據,圖5 給出了單音頻譜,可以看出頻譜從1. 7 GHz 向上搬移了720 KHz,輸出功率為- 5. 57dBm。圖6 是ChipScope采集到AD9361 實時接收的數據,正確的還原出了發(fā)射的IQ 兩路信號。
圖5 AD9361 單音頻譜 3.2 寬帶測試
基于Kintex7 - 325T FPGA 配置AD9361 發(fā)射和接收頻率5 GHz,發(fā)射和接收帶寬48MHz,發(fā)射衰減25 dBm,雙工模式為FDD,單發(fā)雙收。FPGA內部產生一個32Mbps 業(yè)務速率的QPSK 信號,符號速率55Mbps,經過成型濾波后送入AD9361 的IQ 兩路,圖7給出了QPSK 調制信號的發(fā)射頻譜,中心頻率為5GHz,通道功率為- 22. 4 dBm。圖8 給出了AD9361接收到信號后經過QPSK 解調的星座圖,能夠看出信號解調正常,可以進行后續(xù)的譯碼解幀等工作。
圖6 ChipScope 采集AD9361 的IQ 兩路數據
圖7 QPSK 調制信號的發(fā)射頻譜
圖8 QPSK 解調后星座圖 3.3 資源占用
分別用ADI 官方提供的FPGA + ARM 方式和本文FPGA 的方式配置AD9361,表2 給出了在Zedboard開發(fā)板上布線后的資源占用情況,通過對比可以看出,本文采用的FPGA 獨立配置AD9361 方式比FPGA + ARM 方式在資源上節(jié)省了60%以上。
表2 不同方式配置AD9361 占用FPGA 資源情況結論本文詳細的介紹了基于FPGA 獨立實現AD9361 射頻收發(fā)器的配置方法和步驟,該方法比ADI 官方提供的FPGA + ARM 或FPGA + MicroBlaze等解決方案更加通用,會大幅降低FPGA 的資源占用率。
本文分別在Xilinx 平臺Artix - 7、Kintex - 7、Zynq - 7000 等三種不同型號FPGA 上實現了AD9361 的配置,說明該方法方便移植于任意型號FPGA,甚至可以通過生成網表文件跨平臺使用。此外由于不需要DDR3 作為緩存,可以節(jié)約硬件電路板卡的面積、整體功耗和成本。本方案可實現機載數據鏈的小型化和低成本,滿足在軍品和民品領域無線視頻傳輸和遙控遙測的需求。
責任編輯:xj
原文標題:FPGA+AD9361 SDR實現機載視頻無線傳輸
文章出處:【微信公眾號:FPGA入門到精通】歡迎添加關注!文章轉載請注明出處。
-
FPGA
+關注
關注
1629文章
21736瀏覽量
603372 -
SDR
+關注
關注
7文章
233瀏覽量
50485 -
AD9361
+關注
關注
8文章
35瀏覽量
37137
原文標題:FPGA+AD9361 SDR實現機載視頻無線傳輸
文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論