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