- 相關(guān)推薦
基于FPGA和ARM9的低空預警雷達信號處理點(diǎn)跡通網(wǎng)絡(luò )處理論文
摘要:設計了一種使用FPGA和ARM計算機配合的嵌入式雷達信號處理點(diǎn)跡系統。詳細說(shuō)明了系統軟硬件結構和系統軟件設計。實(shí)踐證明該系統能很好地完成雷達控制、點(diǎn)跡處理、通信等功能。
關(guān)鍵詞:FPGA;ARM、QT、點(diǎn)跡處理、通信
雷達的基本組成由天饋線(xiàn)、發(fā)射、接收、信號處理、波控、終端等分系統構成。信號處理處于前端和后端連接的核心子系統在整個(gè)雷達系統具有非常重要的作用。主要完成目標的檢測功能,包括:發(fā)射波束控制、脈沖壓縮、MTD/MTI濾波、恒虛警處理、雜波圖、滑窗檢測、點(diǎn)跡處理等。
隨著(zhù)現代雷達數字處理能力的大幅提升,雷達信號處理需要處理的輸出量日益提高,且大量數據對信息的傳輸實(shí)時(shí)性也有很高的要求。除此之外信號處理還要連接控制其他分系統包括時(shí)序、控制信號等等,F代雷達信號處理一般采取高速并行處理的FPGA、DSP系統和實(shí)時(shí)性很高的嵌入式計算機組成。低空預警雷達是針對國內民防領(lǐng)域和國際市場(chǎng)的需求,研制的一種戰場(chǎng)偵察雷達。該雷達主要對半徑100公里以?xún)鹊牡涂罩鄙龣C和慢速飛行器進(jìn)行監視、定位,并提供目標的距離、方位和高度信息。針對系統規模較小、成本較低特點(diǎn),低空預警雷達的信號處理設計了一種FPGA+ARM9架構處理平臺。在正常工作模式下,雷達前端傳送的和差波束數據通過(guò)線(xiàn)纜進(jìn)入FPGA,在FPGA內完成脈沖壓縮、FIR濾波、雜波圖、恒虛警、滑窗檢測,并將檢測結果送入DSP,將得到的點(diǎn)跡數據送給ARM。ARM系統運行嵌入式Linux系統,完成串口連接外部設備,網(wǎng)絡(luò )接收波控和終端系統命令,驅動(dòng)FPGA實(shí)現對雷達系統的控制,并完成相應數據的通信傳輸。
1系統硬件平臺介紹
1.1整體架構設計
對于低空預警雷達,信號處理需要處理一定量的信號和數據;趯ο到y成本,成熟度,開(kāi)發(fā)周期,及信號處理系統的需求考慮,信號處理分系統在可滿(mǎn)足處理能力的情況下,通過(guò)采用模塊化高可靠性插件,高速DSP處理芯片,超大規?删幊踢壿嫻碳,高性能ARM嵌入式計算機等技術(shù),可使系統設備量大大降低,并有效的提高了系統可靠性,降低了失效率,減少了維修時(shí)間。系統設計為由一塊信號處理板完成信號處理的全部功能,信號處理板的硬件架構如圖1所示。
FPGA模塊采用ALTERA公司的Stratix IV 型FP4SE360模塊,其處理能力等價(jià)邏輯單元353600LE,嵌入式存儲器達到18Mbit,含1040個(gè)18X18乘法器,是具有大量處理能力的較高端FPGA器件,外部存儲器采用了4片221x36bits SSRAM 可以滿(mǎn)足系統存儲使用。DSP使用ADI公司的TS201,主頻達500Mhz。ARM采用的是盛博科技的SAM-3471計算機。整個(gè)信號處理的系統流程圖如圖2。
1 .2 ARM系統介紹
上圖所示是SAM-3471計算機模塊,它采用的是ARM9CPU運行頻率208/416Mhz。配有4片 32MB SDRAM內存。具有3個(gè)UARTs口、2路232串口、1路100M網(wǎng)口等外部通訊接口。板上預留了音頻、LCD、觸摸屏等接口可供調試使用。ARM板以總線(xiàn)形式連接FPGA,通過(guò)驅動(dòng)與FPGA通信。
2 軟件系統設計
ARM計算機上運行的是嵌入式Linux實(shí)時(shí)操作系統軟件。ARM軟件完成的功能是系統上電后,Linux系統啟動(dòng)后完成驅動(dòng)FPGA,對FPGA寄存器數據進(jìn)行初始化。通過(guò)網(wǎng)絡(luò )與終端分系統、波控分系統通信。接收各種操作命令控制FPGA完成功能的實(shí)現。同時(shí)將點(diǎn)跡、方位、系統狀態(tài)信息發(fā)給終端系統顯示。采集波束校正數據平發(fā)送給波控與終端顯示。通過(guò)串口接收GPS授時(shí)和定北數據,獲得基準時(shí)間后為整個(gè)系統對時(shí)等。軟件的流程圖如圖3。
系統軟件采用虛擬機VMware下虛擬Ubuntu10.10操作系統,在QtCreator下開(kāi)發(fā)和編譯程序。將編譯好的程序通過(guò)FTP方式拷入ARM嵌入式系統中,通過(guò)啟動(dòng)腳本調用的方式調試開(kāi)發(fā)和運行。
2.1嵌入式linux和開(kāi)發(fā)工具QT
ARM操作系統采用的是基于2.6內核的嵌入式Linux操作系統,程序采用QT/Embedded開(kāi)發(fā)。QT是Trontech公司開(kāi)發(fā)的一個(gè)多平臺的C++圖形用戶(hù)界面應用程序框架。它具有以下特點(diǎn):
支持多種操作系統,程序可在不同系統下開(kāi)發(fā),并進(jìn)行方便的移植。
QT使用了面向對象技術(shù)組件設計。模塊化的程度非常高,可重用性較好。
QT提供了豐富的API函數和大量的技術(shù)文檔方便用戶(hù)開(kāi)發(fā)自己的應用程序。
QT/Embedded以原始Qt為基礎,并做了許多出色的調整以適用于嵌入式環(huán)境。
2.3 主任務(wù)和數據處理的實(shí)現
主任務(wù)和數據處理主要完成雷達方位的獲取,雷達點(diǎn)跡的獲取,并將獲的相應數據傳送到雷達終端中。數據處理主要是包括系統工作方式、雷達頻點(diǎn)、轉速、雷達工作狀態(tài)等各種雷達監視和控制功能的實(shí)現。程序中創(chuàng )建主任務(wù)類(lèi)CMainProcess,初始化時(shí) 調用語(yǔ)句QCoreApplication a(argc, argv)啟用QT中信號/槽的機制。在主處理類(lèi)的構造函數中創(chuàng )建QTimer定時(shí)器對象PlotTimer,并設置槽函數PlotTimeoutSlot連接(connect)到此對象上,語(yǔ)句PlotTimer->start啟用定時(shí)器。槽函數主要完成對FPGA的讀寫(xiě),獲得方位、點(diǎn)跡數據,解析處理后發(fā)送出去。在設置好的時(shí)間周期內系統會(huì )自動(dòng)調用此槽函數。實(shí)現點(diǎn)跡、方位的不停讀取和處理。
數據處理是通過(guò)創(chuàng )建一個(gè)QObject的派生類(lèi)CDataProcess及其成員函數實(shí)現的。在主函數初始化中定義CDataProcess類(lèi)對象。該類(lèi)的成員函數完成的功能有:調用FPGA完成雷達系統的的控制、完成終端命令數據的處理、GPS定位數據格式的解析處理和發(fā)送、雷達天線(xiàn)伺服的控制等等。程序其他的對象對數據的處理均是調用該類(lèi)的函數實(shí)現的。
2.4 串口通訊的實(shí)現
系統使用了一個(gè)串口,用于接收GPS時(shí)間數據,給整個(gè)雷達對時(shí)。創(chuàng )建一個(gè)QThread的派生類(lèi)QtSerialThread完成整個(gè)串口的操作。對于函數tcgetattr、tcsetattr完成串口設備的操作 。程序初始化時(shí)通過(guò)串口設置參數、串口數據緩存操作、打開(kāi)串口設備文件、配置串口的工作參數的方式初始化串口。編寫(xiě)串口發(fā)送和接收函數。串口接收函數用于按照協(xié)議接收GPS數據。并將此接收的數據作為參數產(chǎn)生一個(gè)信號和數據處理的相應處理槽函數connect連接起來(lái)。創(chuàng )建串口處理線(xiàn)程,使用QThread的start()函數運行線(xiàn)程。在線(xiàn)程運行函數run()中循環(huán)接收和處理串口數據。
2.5 網(wǎng)絡(luò )通訊的實(shí)現
系統使用UDP的方式進(jìn)行網(wǎng)絡(luò )通信。網(wǎng)絡(luò )通信主要實(shí)現網(wǎng)絡(luò )的創(chuàng )建,并與其他的分系統進(jìn)行數據交互。主要是通過(guò)創(chuàng )建一個(gè)UDP處理類(lèi)UDPReciveUtil,創(chuàng )建一個(gè)類(lèi)TsServerProcess和創(chuàng )建一個(gè)QThread的派生類(lèi)ThreadOfTsData類(lèi)和完成整個(gè)網(wǎng)絡(luò )功能的實(shí)現。程序啟動(dòng)后產(chǎn)生類(lèi)ThreadOfTsData的對象產(chǎn)生網(wǎng)絡(luò )線(xiàn)程。在線(xiàn)程初始化時(shí)使用類(lèi)UDPReciveUtil產(chǎn)生UDP Socket并進(jìn)行ip地址和端口號的綁定。線(xiàn)程運行時(shí)使用QT的QUdpSocket成員函數hasPendingDatagrams和readDatagram得到網(wǎng)絡(luò )數據。將數據通過(guò)類(lèi)TsServerProcess進(jìn)行網(wǎng)絡(luò )數據協(xié)議的解析和相應處理,發(fā)送等。
2.6 程序的編譯和加載
將產(chǎn)生的可執行程序,用FTP方式拷到目標機中,同時(shí)將QT庫文件libQtNetwork.so.4、libQtCore.so.4拷入。在profile文件里添加程序運行語(yǔ)句,使系統程序開(kāi)機后自動(dòng)運行。
3 總結
本文設計了一種通過(guò)FPGA和ARM系統實(shí)現雷達通信系統的方式,通過(guò)編程工具QT使通信系統具備網(wǎng)絡(luò )、串口等多線(xiàn)程處理方式。借助FPGA實(shí)現了雷達點(diǎn)跡、方位、系統監控等多種功能。由于采用ARM平臺和Linux系統。雷達通信系統具有實(shí)時(shí)性高、開(kāi)發(fā)便捷,處理功能強大的優(yōu)點(diǎn)。目前該系統已在低空警戒雷達信號處理實(shí)際使用,取得了較好的效果。
參考文獻:
[1] 丁鷺飛,耿富錄.雷達原理[M].西安:西安電子科技大學(xué)出版社,2001.
[2] 魏洪星,胡亮,曲學(xué)樓.嵌入式系統設計與實(shí)例開(kāi)發(fā)實(shí)驗教材II [M].北京:清華大學(xué)出版社, 2005.
[3] 韋東山.嵌入式 Linux 應用開(kāi)發(fā)完全手冊[M].北京:人民郵電出版社,2009.
[4] 李善平,劉文峰,王煥龍,等.Linux與嵌入式系統[M].北京:清華大學(xué)出版社,2003.
[5] 何子述,夏威.現代數字信號處理及其應用[M].北京:清華大學(xué)出版社,2009.
【基于FPGA和ARM9的低空預警雷達信號處理點(diǎn)跡通網(wǎng)絡(luò )處理論文】相關(guān)文章:
基于微處理器的FPGA配置方案10-19
基于FPGA的雙功能多普勒超聲成像儀實(shí)時(shí)信號處理系統設計07-16
多DSP系統實(shí)現雷達極化信號兩對IQ的采集和處理08-07
基于FPGA的正弦信號源設計10-15
基于希爾伯特-黃變換的信號處理方法研究08-28