国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種航空交換機(jī)中CAN總線的自動(dòng)化測(cè)試方法

2016-04-14 13:58楊可
電腦知識(shí)與技術(shù) 2016年5期
關(guān)鍵詞:自動(dòng)化測(cè)試CAN總線交換機(jī)

楊可

摘要:針對(duì)某航空交換機(jī)中CAN總線的測(cè)試,提出了一種自動(dòng)化測(cè)試方法。首先描述了CAN總線的傳輸方案和功能要求,在此基礎(chǔ)上介紹了自動(dòng)化測(cè)試方法的實(shí)現(xiàn)架構(gòu),設(shè)計(jì)了針對(duì)功能和數(shù)據(jù)分析的測(cè)試流程,并詳細(xì)介紹了針對(duì)各種功能的測(cè)試方法,最后通過在實(shí)際驗(yàn)證環(huán)境中的測(cè)試表明了該方法的正確性。

關(guān)鍵詞:航空; 交換機(jī); CAN總線; 自動(dòng)化測(cè)試

中圖分類號(hào):TP336 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)05-0253-03

Abstract:Aiming at the test of CAN bus in one aviation switch, an automation test method is proposed. First describes the transmission scheme and function requirements of CAN bus. On this basis introduces the implementation architecture of automation test method. Then designs test process aiming at the function and data analysis, detailed introduces the test method for every functions. Finally, through the verify in the real environment shows that this method is correct.

Key words:aviation; switch ; CAN bus; automation test

1 應(yīng)用背景

交換機(jī)是寬帶網(wǎng)絡(luò)中的核心部件,對(duì)滿足航空電子系統(tǒng)對(duì)信息交換的需求起著關(guān)鍵性作用。[1]交換機(jī)的狀態(tài)和性能影響整個(gè)航空網(wǎng)絡(luò)的運(yùn)行。在某FC網(wǎng)絡(luò)中,為了在實(shí)時(shí)檢測(cè)交換機(jī)狀態(tài)的同時(shí),又不影響交換機(jī)的正常交換功能,需要選擇一種可靠性、實(shí)時(shí)性和靈活性高的總線[2]進(jìn)行狀態(tài)信息的傳輸。

CAN是一種多主從方式的串行數(shù)據(jù)通信總線,傳輸速率高,抗電磁干擾性強(qiáng),能檢測(cè)通信錯(cuò)誤。作為一種技術(shù)先進(jìn)、可靠性高、功能完善、成本合理的網(wǎng)絡(luò)通信控制方式已被廣泛應(yīng)用到各個(gè)自動(dòng)化領(lǐng)域。[3]CAN總線滿足交換機(jī)狀態(tài)信息傳輸?shù)囊蟆?/p>

本文在分析CAN總線特點(diǎn)的基礎(chǔ)上,描述了某FC網(wǎng)絡(luò)中CAN總線的傳輸方案,根據(jù)傳遞的各種信息的要求,設(shè)計(jì)了一種自動(dòng)化的測(cè)試方法。該測(cè)試方法在測(cè)試CAN總線是否滿足功能要求的同時(shí),自動(dòng)對(duì)測(cè)試的結(jié)果進(jìn)行解析、比對(duì)和顯示。

2 CAN功能分析

2.1 CAN總線特點(diǎn)

CAN總線通信協(xié)議中,沒有節(jié)點(diǎn)地址的概念,也沒有任何與節(jié)點(diǎn)地址相關(guān)的信息存在,它支持的是基于數(shù)據(jù)的工作方式。[4]

在CAN總線中,數(shù)據(jù)以數(shù)據(jù)幀的格式進(jìn)行傳輸。CAN數(shù)據(jù)幀由7種不同的位域組成:幀起始、仲裁域、控制域、數(shù)據(jù)域、CRC、應(yīng)答域和幀結(jié)束。CAN網(wǎng)絡(luò)中有4中不同類型的幀:數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀和過載幀。[5]

2.2 傳輸方案

在本交換機(jī)中,使用可編程器件FPGA實(shí)現(xiàn)數(shù)據(jù)的交換功能,同時(shí)實(shí)現(xiàn)對(duì)交換機(jī)運(yùn)行信息的檢測(cè)和記錄。FPGA中設(shè)置版本處理單元、工作狀態(tài)處理單元和工作時(shí)間處理單元來處理版本信息、工作狀態(tài)信息和工作時(shí)間信息。

版本處理單元:將版本信息進(jìn)行存儲(chǔ)和發(fā)送,版本信息包括交換機(jī)軟件和邏輯版本,用于指示交換機(jī)的軟硬件版本是否為最新狀態(tài);

工作狀態(tài)處理單元:將收集到的狀態(tài)信息進(jìn)行轉(zhuǎn)化、存儲(chǔ)和發(fā)送,工作狀態(tài)信息包括核心FPGA的實(shí)時(shí)溫度和交換機(jī)的關(guān)鍵電壓信息,用于檢測(cè)交換機(jī)的溫度和電壓是否超出了允許的工作范圍;

工作時(shí)間處理單元:對(duì)交換機(jī)的工作時(shí)間信息進(jìn)行維護(hù)和上報(bào),工作時(shí)間信息包括單次加電時(shí)間和累計(jì)加電時(shí)間,用于指示交換機(jī)是否正常工作以及正常工作的總時(shí)長(zhǎng)。單次加電時(shí)間掉電清零,累積加電時(shí)間需要掉電保存并在上電時(shí)繼續(xù)累加。

由于交換機(jī)信息已經(jīng)超出了CAN總線標(biāo)準(zhǔn)數(shù)據(jù)幀的長(zhǎng)度,使用擴(kuò)展數(shù)據(jù)幀進(jìn)行信息傳輸。在本設(shè)計(jì)中使用MCU實(shí)現(xiàn)CAN數(shù)據(jù)幀的解析和收發(fā)。根據(jù)CAN總線主從方式的特點(diǎn),使用查詢+應(yīng)答的模式進(jìn)行通信。

對(duì)于版本信息,使用版本查詢和版本應(yīng)答兩條命令。對(duì)于工作狀態(tài)信息,使用狀態(tài)查詢和狀態(tài)應(yīng)答兩條命令。對(duì)于工作時(shí)間信息,使用加電時(shí)間查詢和加電時(shí)間應(yīng)答兩條命令,為了防止計(jì)時(shí)寄存器溢出,使用加電時(shí)間清零命令將工作時(shí)間進(jìn)行清零。同時(shí)使用復(fù)位控制命令在交換機(jī)出現(xiàn)異常時(shí)控制交換機(jī)進(jìn)行復(fù)位,該復(fù)位不清除累計(jì)加電時(shí)間。

3 測(cè)試方法設(shè)計(jì)及驗(yàn)證

3.1 測(cè)試方法設(shè)計(jì)

基于標(biāo)準(zhǔn)測(cè)試設(shè)備的測(cè)試能完整的捕獲、解析并顯示CAN數(shù)據(jù)包中的信息,在前期驗(yàn)證中可以方便的定位故障,其缺點(diǎn)在于需要手動(dòng)輸入測(cè)試命令。

為了使交換機(jī)在等效的真實(shí)環(huán)境中完成CAN總線傳輸?shù)臏y(cè)試,將測(cè)試部件設(shè)計(jì)成一個(gè)總線節(jié)點(diǎn),模擬總線上除待測(cè)節(jié)點(diǎn)外的其他節(jié)點(diǎn),成為模擬器或等效器,和待測(cè)節(jié)點(diǎn)通信,并把接收的數(shù)據(jù)上傳處理,實(shí)現(xiàn)測(cè)試功能。[6]

使用帶嵌入PPC440處理器的可編程器件FPGA實(shí)現(xiàn)模擬CAN命令發(fā)送和解析的測(cè)試節(jié)點(diǎn),測(cè)試節(jié)點(diǎn)的實(shí)現(xiàn)框圖見圖2。由FPGA通過邏輯實(shí)現(xiàn)CAN協(xié)議的處理和CAN數(shù)據(jù)的收發(fā),由PPC440處理器通過測(cè)試程序控制CAN命令的收發(fā)和測(cè)試結(jié)果的顯示。這樣既能完成CAN命令解析,又能自動(dòng)發(fā)送命令進(jìn)行全部CAN功能測(cè)試。

為了使設(shè)計(jì)的自動(dòng)化測(cè)試方法同時(shí)滿足功能測(cè)試和數(shù)據(jù)分析的要求,測(cè)試節(jié)點(diǎn)上運(yùn)行的測(cè)試程序需要根據(jù)CAN功能測(cè)試的結(jié)果自動(dòng)進(jìn)行選擇。測(cè)試程序首先判斷是否執(zhí)行數(shù)據(jù)分析,如果是,執(zhí)行分支A,則循環(huán)將獲取的狀態(tài)信息進(jìn)行顯示。否則執(zhí)行分支B,開始測(cè)試各種功能,如果測(cè)試正確則循環(huán)執(zhí)行功能測(cè)試,如果測(cè)試錯(cuò)誤則執(zhí)行數(shù)據(jù)分析。測(cè)試程序流程圖如圖3所示。

版本數(shù)據(jù)顯示:使用版本查詢命令獲取交換機(jī)的軟件和邏輯版本,將讀取到的數(shù)據(jù)直接打印出來;

工作狀態(tài)數(shù)據(jù)顯示:使用狀態(tài)查詢命令獲取實(shí)時(shí)溫度和關(guān)鍵電壓,將讀取到的數(shù)據(jù)直接打印出來;

加電時(shí)間數(shù)據(jù)顯示:使用加電時(shí)間查詢命令獲取單次加電時(shí)間和累計(jì)加電時(shí)間,將讀取到的數(shù)據(jù)直接打印出來;

復(fù)位功能測(cè)試:使用復(fù)位控制命令可以清除單次加電時(shí)間。在計(jì)時(shí)一段時(shí)間后使用加電時(shí)間查詢讀取單次加電時(shí)間,然后發(fā)送發(fā)送復(fù)位控制命令,隨后再次發(fā)送加電時(shí)間查詢命令。第二次讀出的單次加電時(shí)間值應(yīng)該比第一次的時(shí)間值小,根據(jù)對(duì)比的結(jié)果判斷復(fù)位功能是否正確;

工作狀態(tài)獲取功能測(cè)試:使用狀態(tài)查詢命令獲取實(shí)時(shí)溫度和關(guān)鍵電壓。對(duì)比實(shí)時(shí)溫度是否在允許的工作范圍內(nèi)且隨著時(shí)間逐漸增大,對(duì)比關(guān)鍵電壓是否在預(yù)期電壓的允許范圍內(nèi),根據(jù)對(duì)比的結(jié)果判斷工作狀態(tài)獲取功能是否正確;

版本獲取功能測(cè)試:使用版本查詢命令獲取交換機(jī)的軟件和邏輯版本,對(duì)比讀取到的版本是否與最新的軟件和邏輯版本一致,根據(jù)對(duì)比的結(jié)果判斷版本獲取功能是否正確;

加電時(shí)間功能測(cè)試:使用加電時(shí)間查詢命令獲取單次加電時(shí)間和累計(jì)加電時(shí)間,在計(jì)時(shí)一段時(shí)間后再次使用加電時(shí)間查詢命令獲取時(shí)間值,第二次讀出的加電時(shí)間值應(yīng)該比第一次的時(shí)間值大。隨后發(fā)送加電時(shí)間清零命令,然后使用加電時(shí)間查詢命令獲取時(shí)間值,第三次讀出的加電時(shí)間值應(yīng)該比第二次的時(shí)間值小。根據(jù)對(duì)比的結(jié)果判斷加電時(shí)間功能是否正確。

3.2 驗(yàn)證

搭建測(cè)試環(huán)境對(duì)設(shè)計(jì)的測(cè)試方法進(jìn)行驗(yàn)證,測(cè)試環(huán)境見圖4。直流電源分別給交換機(jī)和CAN測(cè)試節(jié)點(diǎn)供電,交換機(jī)和CAN測(cè)試節(jié)點(diǎn)間通過CAN電纜進(jìn)行通信,按照?qǐng)D3的測(cè)試流程圖執(zhí)行測(cè)試程序,測(cè)試的結(jié)果通過串口線送給PC機(jī)進(jìn)行顯示。

通過測(cè)試可以看出,該測(cè)試方法可以完成功能測(cè)試和數(shù)據(jù)分析的要求。

4 總結(jié)

本文設(shè)計(jì)的自動(dòng)化測(cè)試方法在測(cè)試功能正確性的基礎(chǔ)上,自動(dòng)對(duì)測(cè)試的結(jié)果進(jìn)行解析、比對(duì)和顯示。測(cè)試結(jié)果表明該方法適用于航空交換機(jī)CAN總線節(jié)點(diǎn)的測(cè)試,為同類應(yīng)用提供了一個(gè)值得借鑒的解決方案。

參考文獻(xiàn):

[1] 羅海榮,羅慶,陳曉晨. AFDX交換機(jī)測(cè)試分析系統(tǒng)設(shè)計(jì)[J].飛機(jī)設(shè)計(jì),2014,34(3):59-62.

[2] 黃勇. CAN總線在航天領(lǐng)域的應(yīng)用[J].電訊技術(shù),2005(5):172-174.

[3] 徐榕,何首文,朱昌明. CAN總線網(wǎng)絡(luò)測(cè)試研究[J]. 微型機(jī)與應(yīng)用,2010,29(22):55-57.

[4] 馮源,向桂林,李軍. 基于C8051的冗余CAN總線智能節(jié)點(diǎn)設(shè)計(jì)[J]. 航空計(jì)算技術(shù),2008,38(5):107-111.

[5] 王邦繼,劉慶想,李相強(qiáng). CAN總線應(yīng)用層協(xié)議的研究與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與應(yīng)用,2011,47(20).

[6] 王海瑞,翟成瑞,王紅亮. 基于FPGA的CAN總線通信事務(wù)的現(xiàn)場(chǎng)測(cè)試系統(tǒng)設(shè)計(jì)[J]. 科學(xué)技術(shù)與工程,2013, 13 (30):9078-9082.

[7] 程躍,康勁松,徐國(guó)卿. 一種車用CAN總線網(wǎng)絡(luò)測(cè)試系統(tǒng)的研究[J]. 電氣應(yīng)用,2008,27(1):83-86.

猜你喜歡
自動(dòng)化測(cè)試CAN總線交換機(jī)
修復(fù)損壞的交換機(jī)NOS
使用鏈路聚合進(jìn)行交換機(jī)互聯(lián)
淺談空調(diào)控制器自動(dòng)化測(cè)試
基于嵌入式的汽車輔助制動(dòng)系統(tǒng)研究
PoE交換機(jī)雷擊浪涌防護(hù)設(shè)計(jì)
羅克韋爾自動(dòng)化交換機(jī)Allen-Bradley ArmorStratix 5700
自贡市| 隆回县| 加查县| 大同县| 新营市| 富民县| 鹿邑县| 温泉县| 连江县| 西藏| 土默特右旗| 泽普县| 黎城县| 清流县| 古田县| 滁州市| 庆安县| 广平县| 阿瓦提县| 行唐县| 灵丘县| 和平区| 长武县| 东莞市| 滨海县| 榆树市| 盘锦市| 繁昌县| 察隅县| 临安市| 马龙县| 金溪县| 台东县| 辉县市| 阿图什市| 禹州市| 澄城县| 呼和浩特市| 利辛县| 清水河县| 溧阳市|