文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.173541
0 引言
彈載數(shù)據(jù)記錄儀的主要作用是對導(dǎo)彈飛行中的各種數(shù)據(jù)信息進行采集與記錄,通過對數(shù)據(jù)記錄儀的信息進行回讀和分析,,可以評估導(dǎo)彈在飛行過程中的性能,,從而對其功能進行修改和完善。隨著信息技術(shù)的發(fā)展,,彈載數(shù)據(jù)記錄儀在導(dǎo)彈的研制過程中有著越來越重要的作用,,對其要求也越來越高,低功耗,、大容量,、小體積、高速度是當(dāng)前彈載數(shù)據(jù)記錄儀的發(fā)展趨勢[1],。
基于以上原因和實際指標(biāo)要求,,本文設(shè)計了一種基于片上系統(tǒng)(System on Chip,SoC)芯片的數(shù)據(jù)記錄儀,,采用高速大容量的Micro SD卡為存儲介質(zhì),,使用德州儀器生產(chǎn)的TMS320DM368處理器作為主控芯片,在片上運行嵌入式Linux操作系統(tǒng),,進行相關(guān)的裁剪和移植,,最終實現(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)在導(dǎo)彈飛行過程中對環(huán)境信息的視頻信息和飛行姿態(tài)參數(shù)信息的記錄存儲,在導(dǎo)彈落地后,,通過配套的地面數(shù)據(jù)讀取設(shè)備和地面計算機配合讀出記錄儀中的試驗數(shù)據(jù),,最后由上位機軟件對數(shù)據(jù)進行分析處理,。地面讀取裝置與地面計算機之間通過USB接口或者百兆網(wǎng)絡(luò)接口通信,,將數(shù)據(jù)拷貝到本地存儲介質(zhì)。數(shù)據(jù)記錄儀與地面讀取裝置的組成框圖如圖1所示,。
本數(shù)據(jù)記錄儀實現(xiàn)了對多路信號的采集和記錄,,存儲容量可以根據(jù)實際需求通過更換不同容量的SD卡來實現(xiàn),且飛行試驗結(jié)束后數(shù)據(jù)回讀的實現(xiàn)方式快捷有效,。記錄儀的主要技術(shù)指標(biāo)如下:
(1)導(dǎo)彈電源系統(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所示,。
2 系統(tǒng)硬件平臺設(shè)計
受導(dǎo)彈艙體內(nèi)空間的限制,同時考慮到導(dǎo)彈飛行過程中振動幅度大,,本系統(tǒng)由3塊體積較小的板卡組成,,分別為主控板、接口板和電源板,,板卡之間由專用的接口連接,,可方便固定在載體內(nèi)部,并進行灌封保護,。其中主控板負(fù)責(zé)接收視頻,、RS422總線和CAN總線上的數(shù)據(jù),并進行采集和存儲控制,,此模塊是數(shù)據(jù)記錄儀的數(shù)據(jù)存儲模塊,,會在艙體內(nèi)進行灌封防護處理以保護數(shù)據(jù)安全;接口板負(fù)責(zé)RS422總線,、CAN總線以及USB接口通信的實現(xiàn),;電源板負(fù)責(zé)電壓的轉(zhuǎn)換,給主控板和接口板提供所需的工作電壓,。
2.1 主控制器和存儲模塊設(shè)計
本系統(tǒng)主控板上使用TI公司的DM368處理器作為主控芯片,,該芯片采用ARM+硬件編解碼器的硬件架構(gòu),具有尺寸小,、功耗低,、編解碼速度快等優(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)的復(fù)雜度,,并且硬件實現(xiàn)視頻數(shù)據(jù)的編解碼,,提高了壓縮比,減小了開發(fā)的難度,。
由于板卡尺寸的限制以及考慮到NAND Flash存儲容量較小,,系統(tǒng)沒有采用Flash芯片分組級聯(lián)的存儲方案,改用Micro SD卡作為壓縮視頻以及導(dǎo)彈飛行信息數(shù)據(jù)的存儲介質(zhì),,將SD卡放置在主控板上,。由于彈體在發(fā)射和落地時存在較高的過載和沖擊,為保護記錄儀數(shù)據(jù)的安全,,需要對主控板進行整體灌封技術(shù)處理[3],。此外,主控板上模擬視頻采集模塊由TVP5150AM1芯片實現(xiàn),,這是一款超低功耗,,能夠支持NTSC、PAL,、SECMA等格式的高性能視頻解碼器,,正常工作時的功耗低于120 mW,并且封裝體積較小,,完全滿足本數(shù)據(jù)記錄儀的應(yīng)用需求,。使用時通過I2C總線配置其內(nèi)部寄存器,將采集到的CVBS信號轉(zhuǎn)換為8 bit BT.656格式數(shù)據(jù)輸出到DM368的視頻前端(VPFE)圖像采集端口,,進行一些預(yù)處理后,,視頻數(shù)據(jù)經(jīng)過緩存模塊,實現(xiàn)編碼輸出或者壓縮存儲至SD卡,,模擬視頻從采集到H.264壓縮存儲的數(shù)據(jù)處理流程如圖3所示,。
2.2 通信模塊的設(shè)計
在數(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接口,,使用標(biāo)準(zhǔn)的SPI讀寫指令實現(xiàn)對MCP2515的初始化,,以及數(shù)據(jù)發(fā)送和數(shù)據(jù)接收的功能操作,。CAN總線的實現(xiàn)原理示意圖如圖4所示,。此外接口板上有1路USB2.0接口,用于彈體落地后地面計算機從數(shù)據(jù)記錄儀上讀回記錄數(shù)據(jù),。
3 系統(tǒng)軟件的設(shè)計
本數(shù)據(jù)記錄儀所使用的SoC芯片DM368內(nèi)部集成的ARM926核主頻高達432 MHz,,可以運行嵌入式Linux操作系統(tǒng),有效實現(xiàn)對各種外設(shè)的控制和應(yīng)用程序的執(zhí)行,。此外,,片內(nèi)的協(xié)處理器HDVICP對視頻數(shù)據(jù)進行H.264格式的壓縮編碼,大大減小了數(shù)據(jù)量,,方便了傳輸和存儲,,并且提高了圖像質(zhì)量[5]。
嵌入式軟件平臺的設(shè)計主要包括對應(yīng)外設(shè)的驅(qū)動程序的開發(fā),、所需功能的應(yīng)用程序的實現(xiàn)以及系統(tǒng)運行參數(shù)的設(shè)置,。本系統(tǒng)CAN總線模塊MCP2515的驅(qū)動是基于Socket CAN的網(wǎng)絡(luò)設(shè)備驅(qū)動,用于設(shè)備的初始化配置以及為應(yīng)用程序提供接口,。
在實際的飛行試驗中導(dǎo)彈發(fā)射后接收到相關(guān)指令后開始采集視頻數(shù)據(jù),,并記錄存儲一些飛行姿態(tài)參數(shù),在系統(tǒng)斷電之前停止程序的運行,,釋放占用的系統(tǒng)資源,,確保數(shù)據(jù)正確地寫入存儲介質(zhì),斷電時數(shù)據(jù)不會丟失,。根據(jù)以上數(shù)據(jù)記錄儀的任務(wù)需求,,設(shè)計實現(xiàn)了基于Linux的多任務(wù)多進程的應(yīng)用程序,系統(tǒng)初始化后,,同時啟動視頻處理,、RS422總線指令接收、CAN總線數(shù)據(jù)接收3個進程,,由收到的相應(yīng)指令執(zhí)行對應(yīng)的操作,,提高了軟件執(zhí)行效率,并且確保了功能穩(wěn)定性,。飛行狀態(tài)軟件實現(xiàn)流程圖如圖5所示,。
3.1 視頻信號處理多線程實現(xiàn)
飛行中的場景信息由攝像頭采集到主控板上,在DM368處理器內(nèi)進行H.264格式編碼壓縮,,然后以文件的形式寫入到SD卡,。對數(shù)據(jù)記錄儀的視頻處理的任務(wù)采用多線程技術(shù),程序的實現(xiàn)分為4個交互運行線程:控制線程,、采集線程,、編碼線程和存儲線程。線程之間通過管道共享緩沖區(qū),,設(shè)置互斥鎖實現(xiàn)線程間的調(diào)度,,提高了程序的執(zhí)行效率,。視頻處理多線程流程圖如圖6所示。
3.2 SD卡存儲掉電保護
為確保SD卡存儲介質(zhì)中的數(shù)據(jù)可靠安全地記錄下來,,除了進行物理上的灌封保護措施,,在軟件方面也進行了特殊處理。為了防止系統(tǒng)正常關(guān)閉前突然掉電可能導(dǎo)致數(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)技術(shù)指標(biāo)進行了測試,。使用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所示,。
由實驗結(jié)果可以計算出數(shù)據(jù)記錄儀平均每秒可以處理的視頻圖像為25.06幀,,滿足設(shè)計指標(biāo)的壓縮要求。
5 結(jié)論
本文中所設(shè)計的彈載數(shù)據(jù)記錄儀實現(xiàn)了多路數(shù)據(jù)的采集和存儲,,具有體積小,、功耗低、成本低的優(yōu)點,,采用低功耗的SoC作為主控器,、高速大容量的SD卡作為存儲介質(zhì),很大程度上提高了數(shù)據(jù)記錄儀的性能,。實際應(yīng)用表明,,該記錄儀滿足抗高過載、高沖擊,、寬溫度范圍的工程需求,,具有較高的可靠性和適用性。
參考文獻
[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ù)記錄器的設(shè)計[J].計算機測量與控制,,2014,22(8):2595-2596.
[4] 丁雪靜,,許永輝.基于MCP2515的CAN總線通信單元設(shè)計[J].現(xiàn)代電子技術(shù),,2015,,38(21):60-63.
[5] 吳文生.基于DM368的高清IP Camera的軟件系統(tǒng)設(shè)計與實現(xiàn)[D].武漢:華中科技大學(xué),,2011.
中文引用格式: 石永彪,張湧,,樓晨風(fēng),,等. 基于DM368的嵌入式數(shù)據(jù)記錄儀的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,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,樓晨風(fēng)1,,2,,劉 淳1,2,,胡麟苗1,,2
(1.中國科學(xué)院大學(xué),北京100039,;2.上海技術(shù)物理研究所紅外探測與成像技術(shù)重點實驗室,,上海200083)