《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于FPGA和ARM的船舶防撞系統(tǒng)設(shè)計(jì)
基于FPGA和ARM的船舶防撞系統(tǒng)設(shè)計(jì)
來源:電子技術(shù)應(yīng)用2013年第4期
靖 朋,王和明,魏 蔚
空軍工程大學(xué) 防空反導(dǎo)學(xué)院,陜西 西安710000
摘要: 研究設(shè)計(jì)了一種基于FPGA和ARM的船舶防碰撞告警設(shè)備。該設(shè)備主要應(yīng)用在中小型船只上,與船上原有經(jīng)濟(jì)型航海雷達(dá)配合使用構(gòu)成一個(gè)新系統(tǒng)。防碰撞告警設(shè)備從原航海雷達(dá)上采集雷達(dá)原始數(shù)據(jù),并將數(shù)據(jù)進(jìn)行變換和二次信息處理,使系統(tǒng)具有自動(dòng)目標(biāo)跟蹤、危險(xiǎn)目標(biāo)自動(dòng)識(shí)別以及各種危險(xiǎn)目標(biāo)告警的功能。在不影響原航海雷達(dá)功能的前提下,為其增加了防撞避碰的功能。
關(guān)鍵詞: ARM FPGA 船舶防撞 航跡跟蹤
中圖分類號(hào): TN959.72;TN41/495
文獻(xiàn)標(biāo)識(shí)碼: B
文章編號(hào): 0258-7998(2013)04-0032-03
Design of marine collision avoidance system based on FPGA and ARM
Jing Peng,Wang Heming,Wei Wei
The Missile Institute, Airforce Engineering University,Xi′an 710000,China
Abstract: A marine collision avoidance alarm equipment based on FPGA is designed in the paper. This equipment is generally used on small and medium ships. It could work together with seafaring radar on the ship and constitute a new system with seafaring radar. The marine collision avoidance alarm equipment could collects data of seafaring radar and processes the data so that it achieves the function of targets tracking, target identification and automatic alarming in all hazard levels. As a result, we achieve the goal of adding function of collision avoidance to the seafaring radar and not affecting its primary function.
Key words : FPGA;ARM;marine collision avoidance;tracking

    我國(guó)目前從事近海捕撈的漁業(yè)船舶和近海運(yùn)輸船數(shù)量眾多,且兩類船舶又多集中在商船航道及其附近海域,導(dǎo)致在近海海域船只密集,撞船事故頻發(fā)。盡管大部分漁船都裝備了航海雷達(dá),但撞船事故率仍居高不下。因?yàn)檫@些雷達(dá)都是經(jīng)濟(jì)型航海雷達(dá),既沒有目標(biāo)跟蹤能力,也沒有自動(dòng)防撞告警功能。因此,設(shè)計(jì)一種具有自動(dòng)防撞告警功能而且成本低廉的系統(tǒng)是非常必要的。

    本文給出了船舶導(dǎo)航雷達(dá)防撞告警系統(tǒng)的實(shí)現(xiàn)方法,設(shè)計(jì)并實(shí)現(xiàn)了具備基于FPGA的雷達(dá)信號(hào)采集單元和基于ARM構(gòu)成的航跡處理及告警單元的防撞告警系統(tǒng),與船上原有經(jīng)濟(jì)型航海雷達(dá)配合使用構(gòu)成一個(gè)新系統(tǒng)。設(shè)備從雷達(dá)上采集目標(biāo)原始數(shù)據(jù),通過對(duì)原始雷達(dá)數(shù)據(jù)的二次信息加工,實(shí)現(xiàn)目標(biāo)跟蹤和防撞報(bào)警功能。
1 系統(tǒng)總體設(shè)計(jì)方案及工作流程
1.1 系統(tǒng)總體設(shè)計(jì)方案

    本系統(tǒng)由信號(hào)檢測(cè)模塊與航跡分析模塊兩部分組成,如圖1所示。信號(hào)檢測(cè)模塊按照雷達(dá)距離同步周期對(duì)雷達(dá)回波信號(hào)進(jìn)行檢測(cè),并對(duì)距離同步脈沖計(jì)數(shù)形成角度坐標(biāo);航跡分析模塊實(shí)時(shí)讀取信號(hào)檢測(cè)模塊的輸出信號(hào),通過對(duì)相鄰距離、角度周期回波信號(hào)進(jìn)行相關(guān)處理,得到目標(biāo)點(diǎn)跡數(shù)據(jù)并對(duì)其進(jìn)行坐標(biāo)跟蹤、平滑處理建立目標(biāo)航跡,通過計(jì)算目標(biāo)航路捷徑和目標(biāo)到達(dá)時(shí)間實(shí)現(xiàn)威脅判斷。當(dāng)發(fā)現(xiàn)危險(xiǎn)目標(biāo)后,輸出報(bào)警信號(hào)。

1.2 系統(tǒng)工作流程
    本系統(tǒng)從雷達(dá)視頻接口處提取目標(biāo)信息,如表1所示,只對(duì)距離目標(biāo)信號(hào)、船首信號(hào)、方位信號(hào)、視頻信號(hào)這4路進(jìn)行轉(zhuǎn)換、采集和處理。其中前3種信號(hào)為電平脈沖信號(hào),故需對(duì)其做相應(yīng)的轉(zhuǎn)換、整形變換為TTL電平的數(shù)字脈沖信號(hào)。視頻信號(hào)即雷達(dá)回波信號(hào)為模擬信號(hào)。由于船用導(dǎo)航雷達(dá)的水平波束較窄,忽略波束寬度對(duì)測(cè)角誤差的影響,采用目標(biāo)回波前沿作為目標(biāo)角信號(hào)的方法進(jìn)行采集、處理。故需對(duì)目標(biāo)信號(hào)進(jìn)行展寬、放大后采集。同時(shí),信號(hào)采集門限值設(shè)定為可調(diào)。

    之后采用對(duì)船首信號(hào)、方位信號(hào)和距離同步信號(hào)進(jìn)行脈沖計(jì)數(shù)的方法來判定目標(biāo)出現(xiàn)時(shí)的方位計(jì)數(shù)值和距離計(jì)數(shù)值,從而得到具體的目標(biāo)距離和方位,并對(duì)獲取的距離和方位進(jìn)行同步存儲(chǔ)。嵌入式處理器(ARM)通過專用傳輸接口對(duì)存儲(chǔ)的目標(biāo)數(shù)據(jù)進(jìn)行讀取,通過軟件處理從數(shù)據(jù)中提取目標(biāo)點(diǎn)跡信息,完成對(duì)目標(biāo)回波的檢測(cè)與預(yù)處理。每幀中的目標(biāo)點(diǎn)跡數(shù)據(jù)由航跡相關(guān)模塊通過航跡關(guān)聯(lián)算法進(jìn)行關(guān)聯(lián)后,完成對(duì)目標(biāo)航跡的連續(xù)跟蹤,進(jìn)而形成目標(biāo)的歷史航跡,并通過濾波算法處理實(shí)現(xiàn)對(duì)目標(biāo)航跡的預(yù)測(cè),最終形成目標(biāo)的航跡。

 


2 系統(tǒng)硬件設(shè)計(jì)
2.1 硬件總體方案設(shè)計(jì)

    系統(tǒng)的硬件部分由以FPGA為核心的雷達(dá)數(shù)據(jù)采集電路板和以ARM為核心的雷達(dá)數(shù)據(jù)處理電路板組成??傮w設(shè)計(jì)方案如圖2所示。本系統(tǒng)的硬件采用ARM+FPGA的結(jié)構(gòu),充分利用了FPGA的特性,同時(shí)又利用了ARM低功耗、高性能比的特點(diǎn),將采集傳入的數(shù)據(jù)在ARM平臺(tái)上加以處理和顯示。

    本系統(tǒng)采用PC104總線標(biāo)準(zhǔn)將FPGA與ARM相連接,使ARM處理器可以直接訪問FPGA的片上RAM和緩存器中的數(shù)據(jù),實(shí)現(xiàn)了FPGA與ARM共享存儲(chǔ)器的系統(tǒng)結(jié)構(gòu),從而使數(shù)據(jù)采集及處理效率大幅提高。
2.2 ARM和FPGA的總線接口設(shè)計(jì)
    FPGA與ARM通過PC104總線標(biāo)準(zhǔn)相連,雙向數(shù)據(jù)總線收發(fā)器采用74HC245芯片,該芯片為8位雙向數(shù)據(jù)總線收發(fā)器,用于數(shù)據(jù)總線間的雙向異步通信。其具備三態(tài)輸出,數(shù)據(jù)傳送方向由DIR腳控制;輸出允許控制端(GN)低電平有效,為高電平時(shí)兩端呈高阻。
2.3 FPGA的功能模塊設(shè)計(jì)與實(shí)現(xiàn)
    FPGA的模塊設(shè)計(jì)是系統(tǒng)硬件設(shè)計(jì)的重要部分,分為目標(biāo)檢測(cè)定位模塊、模擬雷達(dá)信號(hào)時(shí)序模塊、RAM控制模塊三大模塊。目標(biāo)檢測(cè)定位模塊主要完成對(duì)采集到的信號(hào)進(jìn)行處理,以及及時(shí)發(fā)現(xiàn)目標(biāo)并測(cè)定出目標(biāo)距離計(jì)數(shù)值與方位計(jì)數(shù)值;模擬雷達(dá)信號(hào)時(shí)序模塊主要完成對(duì)雷達(dá)的時(shí)序及回波信號(hào)的模擬,使系統(tǒng)在不接雷達(dá)接收機(jī)的情況下可以完成系統(tǒng)的功能檢測(cè)與測(cè)試,便于整個(gè)系統(tǒng)在實(shí)驗(yàn)室條件下的調(diào)試;RAM控制模塊主要完成對(duì)所測(cè)得的目標(biāo)的方位、距離計(jì)數(shù)值進(jìn)行存儲(chǔ),ARM處理器可以通過總線對(duì)存儲(chǔ)器進(jìn)行讀取以及對(duì)控制寄存器的數(shù)據(jù)進(jìn)行寫入。在整個(gè)FPGA的實(shí)現(xiàn)過程中采用VHDL語言與原理圖輸入相結(jié)合的方式進(jìn)行編程設(shè)計(jì),并用QuartusⅡ軟件自帶仿真軟件進(jìn)行功能、時(shí)序仿真驗(yàn)證,最終下載到器件。
    在本系統(tǒng)中,目標(biāo)檢測(cè)定位模塊是重要的一部分。其設(shè)計(jì)關(guān)系到雷達(dá)最終點(diǎn)跡的精度以及航跡濾波的質(zhì)量和精度。目標(biāo)檢測(cè)定位模塊的工作流程圖如圖3所示。

    其工作過程為:(1)來自雷達(dá)收發(fā)機(jī)的探測(cè)信號(hào)與船首信號(hào)經(jīng)過同步整形電路轉(zhuǎn)換為TTL電平進(jìn)入FPGA內(nèi)。(2)整形后的探測(cè)信號(hào)經(jīng)過同步器產(chǎn)生距離起始信號(hào)和距離結(jié)束信號(hào)(中斷信號(hào))。采集的回波信號(hào)到達(dá)FPGA以后,判定其是否在起始距離與結(jié)束距離的區(qū)間上,如果在,則判定該回波信號(hào)為有效回波信號(hào),同時(shí)將該回波信號(hào)送至信號(hào)壓縮電路;如果不在則不輸出有效回波信號(hào)。(3)目標(biāo)壓縮電路對(duì)送入的距離上相近的有效回波信號(hào)進(jìn)行壓縮,并將壓縮后的回波信號(hào)送至計(jì)數(shù)器1。(4)計(jì)數(shù)器1在接收到整形后的探測(cè)脈沖時(shí),開始計(jì)數(shù)(5 MHz),并在下一個(gè)探測(cè)脈沖到來時(shí),將計(jì)數(shù)值清零。當(dāng)接收到壓縮后的回波信號(hào)時(shí),計(jì)數(shù)器1將當(dāng)前的計(jì)數(shù)值送至RAM存儲(chǔ)器進(jìn)行存儲(chǔ),該值為目標(biāo)回波的距離計(jì)數(shù)值;計(jì)數(shù)器2在整形后的船首脈沖信號(hào)到來時(shí),開始以整形后的探測(cè)脈沖為計(jì)數(shù)脈沖進(jìn)行計(jì)數(shù),并在下一船首信號(hào)到來時(shí)對(duì)計(jì)數(shù)值清零。當(dāng)接收到壓縮后的回波脈沖信號(hào)時(shí),將當(dāng)前計(jì)數(shù)值送至RAM進(jìn)行存儲(chǔ),該值為目標(biāo)回波的方位計(jì)數(shù)值;在每個(gè)探測(cè)信號(hào)周期內(nèi),當(dāng)ARM檢測(cè)到距離結(jié)束信號(hào)時(shí),開始讀取RAM內(nèi)存儲(chǔ)的距離、方位計(jì)數(shù)值。
    雷達(dá)信號(hào)仿真單元只著重于各個(gè)信號(hào)的時(shí)序模擬,該單元的作用在于能夠在不接雷達(dá)信號(hào)的前提下對(duì)本系統(tǒng)進(jìn)行功能檢查并模擬所需要的特殊路徑的目標(biāo)。整個(gè)單元采用計(jì)數(shù)器與比較器相結(jié)合?;夭ㄐ盘?hào)模擬的原理為:對(duì)回波信號(hào)的方位計(jì)數(shù)值與距離計(jì)數(shù)值進(jìn)行計(jì)數(shù)器計(jì)數(shù),當(dāng)所設(shè)定的條件完全滿足時(shí)輸出回波脈沖信號(hào),以供本系統(tǒng)使用。
3 系統(tǒng)軟件設(shè)計(jì)
    軟件設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的重要部分,其主要包括航跡處理與跟蹤、告警參數(shù)的設(shè)定、系統(tǒng)相關(guān)的用戶界面的設(shè)計(jì)與報(bào)警控制等相關(guān)內(nèi)容。
3.1 航跡處理與跟蹤
    航跡濾波與預(yù)測(cè)主要用于以目標(biāo)當(dāng)前位置和速度的估計(jì)值來預(yù)測(cè)下一次掃描時(shí)的目標(biāo)數(shù)據(jù)。在目標(biāo)探測(cè)過程中,由于雷達(dá)受自身探測(cè)精度、海面雜波和氣象環(huán)境電子干擾等因素的影響,因此其探測(cè)的目標(biāo)數(shù)據(jù)常常不精確,其結(jié)果往往造成跟蹤系統(tǒng)精度下降或系統(tǒng)跟蹤的發(fā)散。因此,為提高系統(tǒng)對(duì)目標(biāo)船舶的跟蹤精度,采用恰當(dāng)?shù)臑V波技術(shù)對(duì)雷達(dá)探測(cè)的目標(biāo)數(shù)據(jù)進(jìn)行濾波處理是十分必要的。
    本設(shè)計(jì)針對(duì)的船舶運(yùn)動(dòng)系統(tǒng)近似于線性動(dòng)力學(xué)模型,而卡爾曼濾波是為融合數(shù)據(jù)提供唯一統(tǒng)計(jì)意義下的最優(yōu)估計(jì),其遞推特性使系統(tǒng)不需要大量的數(shù)據(jù)存儲(chǔ)與計(jì)算,所以運(yùn)用這種方法實(shí)時(shí)性好,適用于處理動(dòng)態(tài)的、低層次、冗余的數(shù)據(jù)。
    經(jīng)濾波完成目標(biāo)預(yù)測(cè)后,用目標(biāo)的運(yùn)動(dòng)特性對(duì)目標(biāo)進(jìn)行匹配。如果在預(yù)測(cè)的相關(guān)區(qū)搜索時(shí)出現(xiàn)多個(gè)目標(biāo),則在對(duì)相關(guān)區(qū)內(nèi)所有目標(biāo)進(jìn)行中心計(jì)算以后,將目標(biāo)中心位置離預(yù)測(cè)位置最近的那個(gè)物體作為當(dāng)前物體。如搜索不到目標(biāo),則發(fā)出報(bào)警,并使用上一次的速度預(yù)測(cè)下一個(gè)位置,適當(dāng)擴(kuò)大搜索范圍。如果在連續(xù)跟蹤少于5次內(nèi)搜索到目標(biāo),則認(rèn)為這個(gè)目標(biāo)就是跟蹤的目標(biāo),并在下一次搜索時(shí),適當(dāng)減小搜索范圍。如果連續(xù)5次搜索不到目標(biāo),則發(fā)出目標(biāo)丟失信息,并退出目標(biāo)跟蹤程序。
3.2 告警參數(shù)的設(shè)定
    告警區(qū)的劃分為:以本船為中心,按3、6、12海里為半徑劃分為三圈,12海里以外的目標(biāo)不跟蹤、不告警,6~12海里為三級(jí)告警區(qū),3~6海里為二級(jí)告警區(qū),0.2~3海里為一級(jí)告警區(qū)。一、二級(jí)告警區(qū)邊界設(shè)置為6海里的主要依據(jù)是:在航路捷徑為零的情況下,對(duì)于航速為25、30海里/hr的目標(biāo),到達(dá)時(shí)間分別為19.2 min、16 min,因此在最惡劣的情況下,在該邊界告警尚有一定的反應(yīng)時(shí)間。
3.3 顯示與告警控制
    信息顯示/告警控制模塊按照威脅評(píng)判結(jié)果的等級(jí)控制顯示器以圖形和字符兩種方式顯示目標(biāo)信息,同時(shí)控制報(bào)警裝置發(fā)出相應(yīng)的聲/光報(bào)警信號(hào)。
    系統(tǒng)界面的顯示與控制采用液晶彩色平面位置顯示器,以船首向上的顯示方式,且設(shè)備面板上設(shè)有控制鍵。圖4所示為全景目標(biāo)顯示模式。

    系統(tǒng)的告警部分由內(nèi)置蜂鳴器、黃/橙/紅三色告警燈和外置的高亮度紅燈、高音喇叭組成。當(dāng)系統(tǒng)自動(dòng)識(shí)別出危險(xiǎn)目標(biāo)并判斷出其威脅程度后,立即自動(dòng)地分三個(gè)碰撞危險(xiǎn)等級(jí),發(fā)出聲、光報(bào)警信號(hào)。通過報(bào)警控制開關(guān),可以允許/禁止外置報(bào)警的信息輸出,同時(shí),該開關(guān)的關(guān)斷與開啟在顯示屏上有相應(yīng)的“外置聲光告警器已接通”和“外置聲光告警器已關(guān)閉”的提示信息。
    本文基于FPGA+ARM設(shè)計(jì)了船舶防撞系統(tǒng),降低了系統(tǒng)開發(fā)的成本,同時(shí)也便于系統(tǒng)后期的改造升級(jí)。系統(tǒng)以原有的經(jīng)濟(jì)型雷達(dá)為基礎(chǔ),既不干擾原有雷達(dá)的正常工作,又能夠識(shí)別危險(xiǎn)目標(biāo),有效地發(fā)出警報(bào)信號(hào),減少船舶碰撞事故的發(fā)生,在實(shí)際中有很大的實(shí)用價(jià)值,對(duì)保證船舶安全航行與作業(yè)具有重大意義。
參考文獻(xiàn)
[1] SLOSS A N著.ARM嵌入式系統(tǒng)開發(fā)[M].沈建華,譯.北京:北京航空航天大學(xué)出版社,2005.
[2] 羅素云.AIS與雷達(dá)目標(biāo)位置數(shù)據(jù)融合方法的研究[D].武漢:武漢理工大學(xué),2003.
[3] 三恒星科技.ARM9原理與應(yīng)用設(shè)計(jì)—S3C2410嵌入式系統(tǒng)[M].北京:電子工業(yè)出版社,2008.
[4] 穆曄.船用導(dǎo)航雷達(dá)ARPA跟蹤算法研究[D].上海:上海交通大學(xué),2007.
[5] 雷伏容.VHDL電路設(shè)計(jì)[M].北京:清華大學(xué)出版社,2006.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。