程耀 謝華 朱長發 劉泉晶 霍鵬舉
摘要:本文通過結合武器系統發展的狀況,針對關于某型武器音視頻記錄模塊經常遇到異常關機或掉電現象,導致文件系統損壞的問題,通過分別以音視頻記錄模塊軟件架構和模塊電源電路的硬件方面進行有效的設計與實現。提出了系統文件flash分區保護機制和串聯超級電容延時掉電保護的硬件設計方案,保證了運行的安全可靠,增強了系統的穩定性,這將有利于提高部隊訓練水平,加快武器設備戰斗力的形成。
關鍵詞:武器系統;音視頻記錄模塊;掉電保護;flash分區;超級電容
中圖分類號:TP3? ?文獻標識碼:A
文章編號:1009-3044(2019)18-0247-03
Abstract: In this paper,accoring to the development of weapon system,aiming at the problem of file system damage caused by abnormal shutdown of power failure of theaudio and video recording module of a certain weapon, the softare architecture of the audio and video recording module and the hardware of the module power supply circuit are designed and implemented conveniently. The system file flash zoning protection mechanism the hardware design scheme of series super capaitor delay power-off protection are proposed, which ensure the safety are reliability of the operation system and enhance the stability of the system. This will help to improve the training level of troops and accelerate the formation of combat effectiveness of weapons and equipment.
Key words: Weapons system; Audio and video recording module; Power failure protection; Flash partition; Supercapacitor
隨著我國武器型號的不斷發展豐富,武器裝備數量的不斷提高,但所培養的專業人員相對較少,并且部隊普遍存在專業人員少,缺乏經驗的實際困難,加之武器系統本身的局限型,使得在武器裝備在研制過程[1]、戰備訓練及實彈射擊過程中,出現問題時不能夠快速有效,精確定位到故障原因,在很大程度上將影響試驗的下一步的訓練水平,不利于快速提高戰斗力。
針對上述情況,研制一款高性能,高可靠性的應用于武器系統的音視頻記錄模塊,就具有了重要的軍事和經濟意義了[2]。音視頻記錄模塊可以輸入兩路標準VGA信號(通過主、副加固液晶顯示器的VGA接口環出),輸入一路標準音頻信號;在進行記錄時,音視頻記錄模塊將主、副顯VGA信號和音頻轉換為數字信息保存在音視頻記錄模塊的固態硬盤中,應用于武器系統實時操作記錄和后期數據分析。音視頻記錄模塊結構示意圖如圖1所示。
由圖1可知,通過音視頻記錄模塊可獲得武器控制臺實時操作情況、武器系統顯控界面上各設備運行工作情況,及武器控制臺周圍環境語音對話內容等工作的重要數據。故障排故人員可以利用這些音視頻文件數據將武器操作手與武器艙室聯系起來,將顯控界面與設備工作情況關聯起來,進而進行有效的鑒別和判斷,提供分析研究的依據,以便對問題做出正確的結論。
因此武器系統的音視頻記錄模塊的穩定性、可靠性對型號武器的發展就有了很重要的意義。而在武器系統的整個開發使用過程中,會經常遇到系統突然掉電的現象,在這時,音視頻記錄模塊的有些重要數據或操作會來不及進行保護而導致數據丟失,甚至有時會出現模塊系統文件損壞,導致系統崩潰。本文通過分別在音視頻記錄模塊的軟件架構和硬件電路的設計,來避免由于突然掉電帶給模塊的損害。
1 掉電保護軟件架構的設計
音視頻記錄模塊軟件采用linux嵌入式系統,完成兩路VGA視頻采集、一路音頻采集與壓縮編碼存儲工作。
軟件的整體架構是基于Linux核心系統上利用Linux優越的多核優化調度技術,實現優化的多線程/進程操作;利用Linux內置的V4L驅動程序,實現視頻采集、編碼、壓縮、存儲操作;利用ext4、FAT32、NTFS等文件系統支持,實現對SATA接口大容量存儲設備的高效文件管理[3]。音視頻記錄模塊的軟件設計包含u-boot移植,Linux內核裁剪,Linux驅動移植,構建根文件系統以及音視頻采集應用程序。音視頻記錄模塊軟件流程圖如圖2所示。
音視頻記錄模塊系統啟動過程中,需要從外部閃存Nand Flash讀取文件系統,判斷相關參數是否設置,如果沒有,則寫入默認參數數據,當突然強制關機或者異常斷電時,相關的寫入操作命令可能沒有執行成功,就會出現數據缺失、數據寫入出錯的情況,破壞了數據的一致性,從而導致文件系統中的文件結構損壞。當系統重新開機時,就會有一定概率存在部分文件無法正常讀取的現象,導致記錄模塊無法正常工作[4]。
正對上述情況,將Nand Flash分為三個區:
第一分區燒寫Linux內核,負責管理系統的進程、內存、設備驅動程序,引導加載文件和網絡系統,Linux內核加載方式為只讀,不進行寫FLASH操作,異常斷電不會影響[5];
第二分區單獨燒寫Ramdisk根文件系統,Ramdisk并非是一個實際的文件系統,而是一種將實際的文件系統裝入內存的機制[6] 。將Linux系統啟動所需要的網絡驅動、音視頻采集庫文件、bonding driver及其他opt目錄下的文件制作為根文件系統,采用Ramdisk方式進行加載,Ramdisk是基于內存的文件系統,具有斷電不保存的特性,Linux啟動時將Ramdisk根文件系統拷貝到內存上運行,即使有寫操作,也是在內存中進行的,并不會影響到真實Nand Flash。假設啟動時異常斷電或者對文件系統做了什么破壞導致系統崩潰,只要重新上電即可恢復,并不影響Nand Flash真實存在的Ramdisk根文件系統,保證了Linux系統的正常啟動。加載方式為讀寫,異常斷電不會影響Ramdisk根文件系統,不進行寫Flash操作;
第三分區燒寫了包含音視頻采集程序及網絡和視頻采集參數配置文件的文件系統,負責音視頻采集錄制及后期參數配置的功能實現。在Ramdisk加載完成后加載。第三分區中的app_main音視頻采集程序只有在保存配置參數的情況下才進行寫Flash操作,即使寫Flash出錯,也只是配置參數文件出錯,并不會影響別的文件,也不會破會整個文件系統的完整性。加載方式為讀寫,異常斷電文件系統損壞的概率極低[7]。
系統啟動時,先啟動Uboot程序,引導加載第一分區中的Linux內核文件。Linux內核文件啟動后,引導加載第二分區的Ramdisk文件系統,完成Linux系統的正常啟動。當Ramdisk文件系統加載完成后,開始加載第三分區中的包含音視頻采集程序的文件系統,進行音視頻采集錄制。由于是在RAM中加載Ramdisk系統,所以不會改變真實Nand Flash中的Ramdisk根文件系統和包含音視頻采集程序的文件系統,避免了異常掉電過程中由于對Nand Flash的寫操作導致的文件系統損壞。
2 掉電保護電源電路的設計
在傳統的掉電保護電路設計中通常采用增加一個備用電源(如紐扣電池等)來解決系統突然斷電后,外接電池可以持續供電,完成正在進行的重要數據或操作的保護。但作為武器系統本身局限性,產品設備要滿足“七性”要求,同時要進行各種環境試驗測試(如高低溫、濕熱、振動、沖擊試驗等),因此本文中通過采用串聯5個超級電容給模塊延時供電,以此實現掉電保護電路的設計[8]。
音視頻記錄模塊的供電電源為直流12,因此采用5個2.7V /100F的超級電容串聯給底板進行延時供電,通過穩壓電路將實際電容容量等效為12V /20F,充電時,為了保證電流過大,增加限流電路進行保護[9] 。為了保證每個超級電容工作的穩定性,通過均勻電路,保證每個超級電容充電穩定后電壓小于2.7V額定電壓,并單獨制作一個超級電容供電電路板固定在外殼上,給底板12V進行供電,在底板的CPU管腳接入掉電反饋信號。
根據電容電壓和容量(12V 20F),音視頻記錄模塊的工作電流以及負載電阻的大小,利用電容放電公式[10],預計電容在12V電壓下的放電時間為25-30秒,有足夠的時間停止寫操作和正常關機操作,減少了因異常掉電導致文件系統損壞的情況 。帶有掉電保護的音視頻記錄模塊電源電路原理圖如圖3所示。
超級電容的選型為錦州凱美能源公司生產的高溫85℃系列超級電容,型號為HT-2R7-J107UY,在常溫25℃循環壽命,由VR到1/2VR循環100萬次,容量衰減≤30%,內阻變化≤4倍。
3 總結
武器系統的音視頻記錄技術的研究是一個實用性非常廣的研究課題,具有非常高的軍事研究和應用價值。本文通過在軟件架構上對外部閃存Nand Flash進行分區保護設計,對模塊的電源模塊進行串聯超級電容延時放電的設計,很大程度上減少了模塊在異常掉電情況下出現的文件系統受損的故障現象。模塊經綜合測試和長時間的應力測試,工作性能良好,穩定性、可靠性增強。
參考文獻:
[1] 薄玉成.武器系統設計[M].北京:北京理工大學出版社,2010.
[2] 徐小林,桂先州. 武器系統的數據記錄技術研究[J].中國科技信 息,2007,(12),294-297.
[3] 于海生.微型計算機控制技術[M].北京:清華大學出版社.1999.
[4] 李鑫旺,張丕狀.基于非易失存儲器的數據存儲于管理方法[J].探測與控制學報.2010,32(1).
[5] 劉東海,任勇峰,儲成君.基于FPGA控制的NAND Flash存儲設計[J].科學技術與工程.2013,13(34).
[6] 萬鴻基.基于 M25P32 SPI Flash 的 TFFS 設計與實現[J].電子元器件應用.2010,(04).
[7] 扶小飛,鄭善賢. 一種 Flash 文件系統的設計和實現[J]. 微計算機信息.2010,(04).
[8] 王久文.低電壓超大容量電容器的發展綜述[J].世界電子元器件,1997,(8):24-25.
[9] 陳粵初、竇振中.單片機應用系統設計與實踐[M].北京:北京航空航天大學出版社, 1993.
[10] 陳衛兵, 束慧.單片機系統中的掉電檢測和數據保護[J].儀表技術,2003,(2):26-27.
【通聯編輯:梁書】