王 瓊 劉嗣勤
(91550部隊,遼寧 大連 116023)
基于CAN總線的雷達網絡測試系統的研究
王 瓊 劉嗣勤
(91550部隊,遼寧 大連 116023)
針對傳統的雷達測試手段無法滿足雷達網絡測試工作的需求,本文設計基于CAN總線的雷達網絡測試系統來解決此類問題。首先對CAN總線進行了詳細的分析,描述其優點和數據幀格式;其次從系統網絡架構和功能模塊兩個方式對系統進行設計;最后給出了系統的部分實現。本文對于網絡管理人員和雷達測試工作人員都具有積極的作用。
CAN總線;雷達;網絡
隨著網絡技術、微電子技術、計算機技術的不斷發展,傳統的雷達測試系統已經不能滿足當前雷達網絡的測試需求。當前,網絡速度的提高已經為雷達網絡測試提供了強大的網絡基礎,網絡傳感器的應用也為雷達遠程測試提供了硬件基礎,大大提高了雷達遠程維護的效率,有力推動了雷達網絡測試技術的發展[1]。
2.1 CAN總線概念
CAN是控制總線(ControllerArea Network)的縮寫,最早是1986年是由德國電氣商博世公司設計,主要應用于汽車行業。經過多年的不斷發展,通過ISO標準化,當前已經成為國際標準的串行通信協議[2]。
CAN總線屬于現場總線的范疇,高可靠性和高性能的優點使之被廣泛應用于工業設備、船舶、工業自動化和醫療設備等各個領域,基于CAN總線設計和開發的控制系統具有以下優點:
(1)通信實時性高
CAN總線模式使得網絡中的各個節點通過總線訪問逐位仲裁的競爭方式發送數據,不同的節點會收到相同的信息,網絡節點之間的通信實時性大大提高。雖然在網絡結構上造成了冗余,但系統的靈活性和可靠性得到加強。
(2)開發周期短
CAN總線上的節點當出現嚴重錯誤時,會關閉輸出功能,不會與其他的節點輸出相沖突,避免了總線短路現象。CAN總線上節點的“死鎖”狀態,可以由CAN的控制芯片完成,大大減小了開發難度,提高了開發效率。
2.2 CAN總線數據格式
CAN總線的通信幀主要分為幀間隔、過載幀、錯誤幀、遠程幀和數據幀五種類型,其中數據幀主要用于發送數據,是系統開發應用最廣泛的。數據幀在結構上由七部分組成,分別是幀起始、仲裁幀、控制段、數據段、CRC段、ACK段和幀結束。根據仲裁段長度的不同,分為CAN2.0A(標準幀)和CAN2.0B(擴展幀)兩種。具體的幀格式如圖1所示[3]。

圖1 CAN數據幀格式
其中幀起始和幀結束在標準幀和擴展幀中都是相同的,幀起始由單個的顯性位組成,幀結束由7個連續的隱性位組成。
在CAN總線上的節點,是處于均等地位的,但通過仲裁段可以區別數據幀的優先級。標準幀的仲裁段幀ID為11位,擴展幀的仲裁段幀ID為29位。
控制段由6位組成,標準幀中由4位DLC、1個保留位r0和1個標志位IDE組成。擴展幀由4位DLC、1個r0和1個r1位組成,其中r0和r1用隱性電平填充。
數據段、CRC段、ACK段在標準幀和擴展幀中是一致的。數據段可以包含0-64位的數據位;CRC段主要用于檢錯,由15位CRC值和1位CRC界定符構成;ACK幀是當發送無錯時,結果為顯性電平。
3.1 系統網絡架構設計
雷達通過CAN總線形成總線型的雷達網絡,為了滿足對雷達網絡的測試功能需求,需要在CAN總線網絡上布置相關的設備儀器(示波器、萬用表、功率計、信號源等),另外還需要有相應的測試設備,并通過CAN總線將數據發送給CAN總線上的計算機[4],對收集到的數據信息進行分析,同時還需要有打印設備,便于輸出測試的結果。雷達網絡測試系統的網絡架構如圖2所示。

圖2 雷達網絡測試系統網絡架構
3.2 系統功能結構設計
雷達網絡測試系統分為硬件和軟件兩部分,硬件主要是雷達和各個設備儀器通過CAN總線相連,具有發送和接收數據的功能;軟件是系統的核心,本文主要介紹軟件的實現。軟件采用C/S結構,設計原則上要符合模塊化、系列化和通用化的開發原則。整個系統功能主要由用戶管理模塊、通信接口模塊、設備管理模塊、數據采集模塊、測試模塊和打印模塊六部分組成。系統功能結構如圖3所示。
用戶管理模塊主要是對系統的用戶進行管理,分為系統管理員和一般管理員,系統管理員可以添加、修改和刪除一般管理員的信息,而一般管理員可以通過用戶名和密碼進入到系統中,對系統進行操作。
設備管理模塊是對系統中與CAN總線相連的所有設備進行管理,包含的設備有雷達、萬用表、示波器、頻譜儀和功率表等,可以進行添加、刪除、修改等操作對設備進行管理,對設備進行分類和存儲。

圖3 系統功能模塊結構圖
通信接口模塊主要是實現計算機、雷達、儀器設備通過CAN總線進行通信,設計統一的通信接口模式,能夠實現模擬信號與數字信號之間的轉換,便于各個設備之間的通信。
測試模塊是通過測試設備對雷達的動態參數進行分析,查找和分析雷達是否正常工作,發現出現異常的雷達,并通過遠程進行維護。
數據采集模塊是對各個設備的信息進行實時動態采集,為測試工作作好準備。
打印模塊主要是對測試的結果進行網絡打印輸出。
4.1 設備采集模塊
為了保障系統能夠準確地對設備進行測試,首先要確保系統中的設備數據能夠正確地被采集。在整個系統中,除了雷達以外,儀器設備的種類比較多,在收集數據以前,要保障每個儀器設備都與服務器準確相連,并且處于打開狀態,根據CAN總線的特點,周期性地向服務器發送數據,當數據在規定的時間內沒有發送自己的相關信息,服務器會主動檢測該設備,查看是否出現故障。
模塊的核心代碼如下所示:
struct CANs*yq=ct(Canjd->i_shb,struct CANs,shb);
struct spi_yqsbie*spi=yq->spi;
struct CANs_pingt_sj*psj=spi->shb.pingt_sj;
file->private_sj=yq;
if(!yq->count)
{
if(psj->zh_enable)
psj->zh_enable(1);
CANs_hw_reset(spi);
CANs_hw_wakeup(spi);
/*禁止中斷*/
CANs_write_reg(spi,CANNB,
CANNB_CWIE|CANNB_TX2IE
|CANNB_TX1IE|CANNB_TX0IE
|CANNB_RX1IE|CANNB_RX0IE);
/*將設備設為打開狀態*/ CANs_write_reg(spi,CANKZ,CANKZ_REQOP_NORMAL);
CANs_write_reg(spi,RXBKZ(0),RXBKZ_BULK); }
yq->count++;
4.2 測試模塊
測試模塊是系統的核心模塊,所有的模塊都是為測試模塊服務的,在測試的過程中,明確各個雷達節點處于哪種模式(主動工作模式、被動工作模式及非法工作模式),便于系統在不同模式下做出準確的測試判斷。
核心代碼如下:
STATUS szdm=OK;
if(qdsl>=pShb->pKz->numChn)
{
cwnoSet(S_can_fm_qd_no);
szdm=CWOR;
}
else
{
switch(mode)
{
case WNCAN_CHN_ZHUDONG:
pShb->pKz->chnMode[qdsl]=WNCAN_CHN_ZHUDONG;
break;
case WNCAN_CHN_BEIDONG:
pShb->pKz->chnMode[qdsl]=WNCAN_CHN_BEIDONG;
break;
default:
cwnoSet(S_can_error);
szdm=CWOR;
break;
}
}
本文針對雷達網絡測試系統展開討論,主要分析了雷達網絡測試系統的設計和部分實現,所設計的系統可以有效地測試CAN總線下的雷達網絡,有效提高了測試工作的效率,也為雷達網絡的協同工作提出了新的思路。由于本文的篇幅所限,在具體的功能描述上略顯不足,請盡見諒。
[1]李寶安,李行善.自動測試系統(ATS)軟件的發展及關鍵技術[J].測控技術,2003,22(1):1-4.
[2]趙晴,鄭敏杰,李麗娜,等.基于RS-485總線的雷達模擬器的硬件研制[J].微型機與應用,2011,30(5):24-26.
[3]梁士龍,王力男,楊嘉偉.用FPGA實現RS-485通信接口芯片[J].系統工程與電子技術,2002,24(4):103-106.
[4]李貴山,戚德虎.PCI局部總線開發者指南[M].西安:電子科技大學出版社,2001.
Research on the Radar Network Testing System Based on CAN Bus
Wang Qiong Liu Siqin
(91550 Forces,Dalian 116000,Liaoning)
In order to meet with the needs of radar testing that the traditional method cannot satisfy,this paper designs a radar network testing system based on CAN bus.Firstly,the CAN bus is analyzed in detail,and its advantages and data frame format are described.Secondly,the system is designed from two aspects of the network architecture and function modules.Finally,partial implementation of the system is given.This paper has a positive effect on network managers and radar test staff.
CAN bus;radar;network
TN953
A
1008-6609(2017)07-0035-03
王瓊(1983-),女,吉林松原人,碩士,研究方向為無線電測量。