《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DM368的嵌入式數(shù)據(jù)記錄儀的設計與實現(xiàn)
基于DM368的嵌入式數(shù)據(jù)記錄儀的設計與實現(xiàn)
2018年電子技術應用第3期
石永彪1,2,張 湧2,樓晨風1,2,劉 淳1,2,胡麟苗1,2
1.中國科學院大學,北京100039;2.上海技術物理研究所紅外探測與成像技術重點實驗室,上海200083
摘要: 針對導彈彈上空間有限、對載體的重量和功耗有著嚴格限制等要求,研制了一種具有高可靠性、低功耗、小型化的彈載數(shù)據(jù)記錄儀。本系統(tǒng)主要實現(xiàn)對導彈飛行過程中的場景視頻信息進行H.264格式硬件壓縮存儲以及對飛行姿態(tài)等數(shù)據(jù)進行實時記錄并存儲至高速大容量SD卡,極大地方便了飛行試驗后數(shù)據(jù)的讀出和處理。
中圖分類號: TP216.2
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.173541
Design and implementation of embedded data recorder based on DM368
Shi Yongbiao1,2,Zhang Yong2,Lou Chenfeng1,2,Liu Chun1,2,Hu Linmiao1,2
1.University of Chinese Academy of Sciences,Beijing 100039,China; 2.Key Laboratory of Infrared System Detection and Imaging Technology of Shanghai Institute of Technical Physics, Shanghai 200083,China
Abstract: In view of the limited of the space, the weight of the carrier and the power consumption of the missile, this paper designed a data recorder system with high reliability, low power consumption and small size. The system could receive video data of scene and then realize hardware compressed storage in H.264 format. At the same time, it can also record the flight status data of the missile in real time and store the data in high-speed and large-capacity SD card, which is easy to read back and process the collected data.
Key words : embedded data recorder;video real-time compression in H.264 format;SD card storage;low power consumption

0 引言

    彈載數(shù)據(jù)記錄儀的主要作用是對導彈飛行中的各種數(shù)據(jù)信息進行采集與記錄,通過對數(shù)據(jù)記錄儀的信息進行回讀和分析,可以評估導彈在飛行過程中的性能,從而對其功能進行修改和完善。隨著信息技術的發(fā)展,彈載數(shù)據(jù)記錄儀在導彈的研制過程中有著越來越重要的作用,對其要求也越來越高,低功耗、大容量、小體積、高速度是當前彈載數(shù)據(jù)記錄儀的發(fā)展趨勢[1]。

    基于以上原因和實際指標要求,本文設計了一種基于片上系統(tǒng)(System on Chip,SoC)芯片的數(shù)據(jù)記錄儀,采用高速大容量的Micro SD卡為存儲介質(zhì),使用德州儀器生產(chǎn)的TMS320DM368處理器作為主控芯片,在片上運行嵌入式Linux操作系統(tǒng),進行相關的裁剪和移植,最終實現(xiàn)了1路PAL模擬視頻數(shù)據(jù)的采集及H.264格式壓縮存儲,1路CAN總線和RS422總線與彈載計算機通信和數(shù)據(jù)交互,并通過USB接口進行數(shù)據(jù)在上位機的回讀分析,以此評估飛行器的性能參數(shù)。本系統(tǒng)具有功耗低、成本低、數(shù)據(jù)存儲量大、工作溫度范圍大、可擴展性強等特點。

1 系統(tǒng)組成部分

    彈載數(shù)據(jù)記錄儀主要實現(xiàn)在導彈飛行過程中對環(huán)境信息的視頻信息和飛行姿態(tài)參數(shù)信息的記錄存儲,在導彈落地后,通過配套的地面數(shù)據(jù)讀取設備和地面計算機配合讀出記錄儀中的試驗數(shù)據(jù),最后由上位機軟件對數(shù)據(jù)進行分析處理。地面讀取裝置與地面計算機之間通過USB接口或者百兆網(wǎng)絡接口通信,將數(shù)據(jù)拷貝到本地存儲介質(zhì)。數(shù)據(jù)記錄儀與地面讀取裝置的組成框圖如圖1所示。

ck7-t1.gif

    本數(shù)據(jù)記錄儀實現(xiàn)了對多路信號的采集和記錄,存儲容量可以根據(jù)實際需求通過更換不同容量的SD卡來實現(xiàn),且飛行試驗結束后數(shù)據(jù)回讀的實現(xiàn)方式快捷有效。記錄儀的主要技術指標如下:

    (1)導彈電源系統(tǒng)為數(shù)據(jù)記錄儀提供+12 V的工作電壓,記錄儀的功耗低于6 W;

    (2)采集1路PAL制式視頻數(shù)據(jù),幀頻不低于25幀/s,可硬件實時壓縮存儲;

    (3)包含1路CAN總線和1路RS422總線,實現(xiàn)飛行過程中數(shù)據(jù)實時接收;

    (4)系統(tǒng)啟動時間小于10 s,且具有掉電保護功能;

    (5)系統(tǒng)可正常工作的溫度范圍為-40 ℃~85 ℃。

    數(shù)據(jù)記錄儀的功能框圖如圖2所示。

ck7-t2.gif

2 系統(tǒng)硬件平臺設計

    受導彈艙體內(nèi)空間的限制,同時考慮到導彈飛行過程中振動幅度大,本系統(tǒng)由3塊體積較小的板卡組成,分別為主控板、接口板和電源板,板卡之間由專用的接口連接,可方便固定在載體內(nèi)部,并進行灌封保護。其中主控板負責接收視頻、RS422總線和CAN總線上的數(shù)據(jù),并進行采集和存儲控制,此模塊是數(shù)據(jù)記錄儀的數(shù)據(jù)存儲模塊,會在艙體內(nèi)進行灌封防護處理以保護數(shù)據(jù)安全;接口板負責RS422總線、CAN總線以及USB接口通信的實現(xiàn);電源板負責電壓的轉(zhuǎn)換,給主控板和接口板提供所需的工作電壓。

2.1 主控制器和存儲模塊設計

    本系統(tǒng)主控板上使用TI公司的DM368處理器作為主控芯片,該芯片采用ARM+硬件編解碼器的硬件架構,具有尺寸小、功耗低、編解碼速度快等優(yōu)點[2]。其內(nèi)部包含的ARM926EJ-S處理器工作頻率可達432 MHz,同時具有MJCP和HDVICP兩個協(xié)處理器,可實現(xiàn)MPEG、H.264等格式的壓縮處理,此外內(nèi)部還集成視頻處理子系統(tǒng)及各種其他豐富的外部存儲或通信總線控制器。相比于傳統(tǒng)的基于DSP、FPGA的彈載平臺數(shù)據(jù)記錄儀,該平臺很大程度上減小了系統(tǒng)的復雜度,并且硬件實現(xiàn)視頻數(shù)據(jù)的編解碼,提高了壓縮比,減小了開發(fā)的難度。

    由于板卡尺寸的限制以及考慮到NAND Flash存儲容量較小,系統(tǒng)沒有采用Flash芯片分組級聯(lián)的存儲方案,改用Micro SD卡作為壓縮視頻以及導彈飛行信息數(shù)據(jù)的存儲介質(zhì),將SD卡放置在主控板上。由于彈體在發(fā)射和落地時存在較高的過載和沖擊,為保護記錄儀數(shù)據(jù)的安全,需要對主控板進行整體灌封技術處理[3]。此外,主控板上模擬視頻采集模塊由TVP5150AM1芯片實現(xiàn),這是一款超低功耗,能夠支持NTSC、PAL、SECMA等格式的高性能視頻解碼器,正常工作時的功耗低于120 mW,并且封裝體積較小,完全滿足本數(shù)據(jù)記錄儀的應用需求。使用時通過I2C總線配置其內(nèi)部寄存器,將采集到的CVBS信號轉(zhuǎn)換為8 bit BT.656格式數(shù)據(jù)輸出到DM368的視頻前端(VPFE)圖像采集端口,進行一些預處理后,視頻數(shù)據(jù)經(jīng)過緩存模塊,實現(xiàn)編碼輸出或者壓縮存儲至SD卡,模擬視頻從采集到H.264壓縮存儲的數(shù)據(jù)處理流程如圖3所示。

ck7-t3.gif

2.2 通信模塊的設計

    在數(shù)據(jù)記錄儀的接口板實現(xiàn)了1路RS422串行數(shù)據(jù)總線接口,用于與彈載計算機實現(xiàn)指令的傳送,RS422接口使用MAX3490芯片實現(xiàn)差分方式進行數(shù)據(jù)的傳輸,有效克服了通信過程中干擾、噪聲、傳輸效率低等缺點;1路CAN總線接收彈載計算機發(fā)送的飛行過程中的數(shù)據(jù)信息,接口板上使用帶SPI接口的獨立CAN控制器的MCP2515芯片實現(xiàn),該器件主要由3部分組成:CAN通信協(xié)議模塊、CAN通信控制邏輯模塊、SPI接口協(xié)議模塊[4]。DM368主控芯片通過SPI接口,使用標準的SPI讀寫指令實現(xiàn)對MCP2515的初始化,以及數(shù)據(jù)發(fā)送和數(shù)據(jù)接收的功能操作。CAN總線的實現(xiàn)原理示意圖如圖4所示。此外接口板上有1路USB2.0接口,用于彈體落地后地面計算機從數(shù)據(jù)記錄儀上讀回記錄數(shù)據(jù)。

ck7-t4.gif

3 系統(tǒng)軟件的設計

    本數(shù)據(jù)記錄儀所使用的SoC芯片DM368內(nèi)部集成的ARM926核主頻高達432 MHz,可以運行嵌入式Linux操作系統(tǒng),有效實現(xiàn)對各種外設的控制和應用程序的執(zhí)行。此外,片內(nèi)的協(xié)處理器HDVICP對視頻數(shù)據(jù)進行H.264格式的壓縮編碼,大大減小了數(shù)據(jù)量,方便了傳輸和存儲,并且提高了圖像質(zhì)量[5]。

    嵌入式軟件平臺的設計主要包括對應外設的驅(qū)動程序的開發(fā)、所需功能的應用程序的實現(xiàn)以及系統(tǒng)運行參數(shù)的設置。本系統(tǒng)CAN總線模塊MCP2515的驅(qū)動是基于Socket CAN的網(wǎng)絡設備驅(qū)動,用于設備的初始化配置以及為應用程序提供接口。

    在實際的飛行試驗中導彈發(fā)射后接收到相關指令后開始采集視頻數(shù)據(jù),并記錄存儲一些飛行姿態(tài)參數(shù),在系統(tǒng)斷電之前停止程序的運行,釋放占用的系統(tǒng)資源,確保數(shù)據(jù)正確地寫入存儲介質(zhì),斷電時數(shù)據(jù)不會丟失。根據(jù)以上數(shù)據(jù)記錄儀的任務需求,設計實現(xiàn)了基于Linux的多任務多進程的應用程序,系統(tǒng)初始化后,同時啟動視頻處理、RS422總線指令接收、CAN總線數(shù)據(jù)接收3個進程,由收到的相應指令執(zhí)行對應的操作,提高了軟件執(zhí)行效率,并且確保了功能穩(wěn)定性。飛行狀態(tài)軟件實現(xiàn)流程圖如圖5所示。

ck7-t5.gif

3.1 視頻信號處理多線程實現(xiàn)

    飛行中的場景信息由攝像頭采集到主控板上,在DM368處理器內(nèi)進行H.264格式編碼壓縮,然后以文件的形式寫入到SD卡。對數(shù)據(jù)記錄儀的視頻處理的任務采用多線程技術,程序的實現(xiàn)分為4個交互運行線程:控制線程、采集線程、編碼線程和存儲線程。線程之間通過管道共享緩沖區(qū),設置互斥鎖實現(xiàn)線程間的調(diào)度,提高了程序的執(zhí)行效率。視頻處理多線程流程圖如圖6所示。

ck7-t6.gif

3.2 SD卡存儲掉電保護

    為確保SD卡存儲介質(zhì)中的數(shù)據(jù)可靠安全地記錄下來,除了進行物理上的灌封保護措施,在軟件方面也進行了特殊處理。為了防止系統(tǒng)正常關閉前突然掉電可能導致數(shù)據(jù)丟失的情況發(fā)生,在對SD卡存儲操作的軟件實現(xiàn)上,使用fflush、fsync函數(shù)實現(xiàn)數(shù)據(jù)從緩沖區(qū)到磁盤的寫入,保證文件內(nèi)容的更新速度。

4 系統(tǒng)功能測試

    為對該系統(tǒng)的性能進行測試和評估,在實驗室搭建了模擬環(huán)境,主要針對系統(tǒng)技術指標進行了測試。使用PC向數(shù)據(jù)記錄儀發(fā)送控制指令,通過上位機調(diào)試軟件接收數(shù)據(jù)記錄儀反饋的信息,此外通過USB接口對SD卡存儲的數(shù)據(jù)進行回讀分析,視頻數(shù)據(jù)在SD卡內(nèi)保存為后綴為h264的文件,CAN接收的數(shù)據(jù)保存為文本格式。

    首先在數(shù)據(jù)記錄儀程序內(nèi)記錄300 s內(nèi)所處理的視頻幀數(shù),通過串口將信息發(fā)送給上位機進行分析。實驗數(shù)據(jù)如表1所示。

ck7-b1.gif

    由實驗結果可以計算出數(shù)據(jù)記錄儀平均每秒可以處理的視頻圖像為25.06幀,滿足設計指標的壓縮要求。

5 結論

    本文中所設計的彈載數(shù)據(jù)記錄儀實現(xiàn)了多路數(shù)據(jù)的采集和存儲,具有體積小、功耗低、成本低的優(yōu)點,采用低功耗的SoC作為主控器、高速大容量的SD卡作為存儲介質(zhì),很大程度上提高了數(shù)據(jù)記錄儀的性能。實際應用表明,該記錄儀滿足抗高過載、高沖擊、寬溫度范圍的工程需求,具有較高的可靠性和適用性。

參考文獻

[1] 王暉,高先鋒.彈載記錄系統(tǒng)的發(fā)展趨勢[J].遙測遙控,2009,30(4):69-72.

[2] Texas Instruments.TMS320DM368 digital media system-on-chip(DMSoC),Datasheet SPRS668C[Z].2010.

[3] 孫偉,張會新.基于Miron NAND Flash的彈載數(shù)據(jù)記錄器的設計[J].計算機測量與控制,2014,22(8):2595-2596.

[4] 丁雪靜,許永輝.基于MCP2515的CAN總線通信單元設計[J].現(xiàn)代電子技術,2015,38(21):60-63.

[5] 吳文生.基于DM368的高清IP Camera的軟件系統(tǒng)設計與實現(xiàn)[D].武漢:華中科技大學,2011.



中文引用格式: 石永彪,張湧,樓晨風,等. 基于DM368的嵌入式數(shù)據(jù)記錄儀的設計與實現(xiàn)[J].電子技術應用,2018,44(3):77-80.

英文引用格式: Shi Yongbiao,Zhang Yong,Lou Chenfeng,et al. Design and implementation of embedded data recorder based on DM368[J]. Application of Electronic Technique,2018,44(3):77-80.



作者信息:

石永彪1,2,張  湧2,樓晨風1,2,劉  淳1,2,胡麟苗1,2

(1.中國科學院大學,北京100039;2.上海技術物理研究所紅外探測與成像技術重點實驗室,上海200083)

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