吳迪 代中華
(上海船舶電子設備研究所 上海市 201108)
隨著海洋技術的不斷發(fā)展與進步,聲納顯控軟件的功能越來越復雜,處理信息的規(guī)模越發(fā)龐大。所以,對場景信息的記錄及回放對海洋技術的研究至關重要。場景信息主要概括為四個方面內容:時間信息、位置信息、環(huán)境信息、目標信息。時間信息是指記錄的數(shù)據(jù)中每一條數(shù)據(jù)的產(chǎn)生時間,包括北京時間的年、月、日、時、分、秒等。位置信息是指船舶所在的位置,包括經(jīng)度、緯度等。環(huán)境信息是指船舶所在的客觀環(huán)境,包括水文氣象環(huán)境、地理環(huán)境、特殊環(huán)境等信息。目標信息是指船舶各個探測設備偵測到的各種目標信息。由于在試驗環(huán)境下現(xiàn)場的場景信息轉瞬即逝,所以需要將場景信息記錄存儲下來供后續(xù)復盤研究。針對于此需求,目前通常采用的方法有外置錄像方法以及場景信息記錄重演模塊化方法。對于外置錄像的方法,有操作簡單、存儲空間大等優(yōu)點,但是物理空間占用較大,并且該方法所生成的視頻文件在數(shù)據(jù)分析、數(shù)據(jù)提取等方面存在不便。場景信息記錄重演模塊化方法可以將此功能以軟件模塊的形式部署于應用軟件中,使操作人員可以在應用軟件運行的過程中根據(jù)實際需求實時記錄及回放場景數(shù)據(jù),具有占有空間小、反應時間短、操作簡單等優(yōu)點,但是該方法所記錄的場景信息文件只能在相應的應用軟件中回放,對回放設備的軟、硬件要求較高。針對以上背景,本文提出了一種基于QT的場景信息文件解析方法,可將嵌入式系統(tǒng)應用軟件記錄生成的場景信息文件進行解析,轉換為Windows 系統(tǒng)下可讀的txt 文件,利用此方法對場景信息進行復盤分析可以避免對設備軟、硬件的依賴,并且在數(shù)據(jù)提取、重點信息量化分析上較為便利。
場景信息文件解析方法包括兩個方面的設計:場景記錄模塊設計、文件解析軟件設計。場景記錄模塊運行于嵌入式Vxworks 操作系統(tǒng),在完成場景記錄后生成場景信息文件。文件解析軟件運行于windows 操作系統(tǒng),將場景信息文件解析轉換為txt 文件??傮w設計圖如圖1所示。
圖1:總體設計圖
場景記錄模塊的硬件環(huán)境為Intel Core Duo低電壓雙核處理器,其主頻為1.66GHz;采用Intel 945GME 及ICH7M 芯片組;板載IDE 電子盤,用于安裝操作系統(tǒng)和應用軟件。場景記錄模塊是在嵌入式Vxworks 操作系統(tǒng)、支持軟件、驅動程序的基礎上所開發(fā)的應用軟件。
場景記錄模塊可完成場景數(shù)據(jù)記錄生成場景信息文件的功能。當操作人員選擇開始記錄后,首先檢查硬盤剩余存儲空間十分足夠,如果剩余空間不足,則輸出錯誤提示信息。若剩余空間充足,則開始記錄數(shù)據(jù)。當操作人員結束記錄或者記錄時長達到4 小時時,文件記錄完畢,生成場景信息文件,存儲于硬盤制定路徑中。后續(xù)可將場景信息文件通過FTP 導出,存至PC 機,供后續(xù)數(shù)據(jù)解析分析。場景記錄流程圖如圖2所示。
圖2:場景記錄流程圖
文件解析軟件開發(fā)、運行于Windows 操作系統(tǒng)PC 機,使用Qt4.8.3 工具及C++語言進行開發(fā)。Qt 是由Qt Company 于1991年開發(fā)的一種跨平臺圖形用戶界面應用程序的開發(fā)框架,它可以開發(fā)GUI 及非GUI 程序。Qt Creator 是用于Qt 開發(fā)的輕量級的跨平臺集成開發(fā)環(huán)境,其包含了一套用于開發(fā)和測試Qt 應用程序的高效工具。Qt 具有良好的跨平臺特性以及封裝機制,非常便于開發(fā)。Qt 提供了一種信號/槽機制可以用來替代傳統(tǒng)消息機制,這種設計使得各個軟件模塊之間的交互變得簡單、可靠。
文件解析軟件根據(jù)功能可劃分為主控模塊、顯示控制模塊、數(shù)據(jù)解析模塊。各模塊間接口關系如圖3所示。
文件解析軟件提供了簡潔、完整、友好的人機交互界面,如圖4所示。
圖4:文件解析軟件界面
主控模塊是文件解析軟件的控制中心,主要完成初始化文件解析軟件內的軟硬件資源、對其他模塊的調用、創(chuàng)建并啟動任務、顯示初始畫面。當文件解析軟件啟動時自動加載主控模塊。通過子類化QMainWindow 類來創(chuàng)建初始應用程序窗口,通過定義QLabel、QPushButon、QLineEdit、QCheckBox 對象來實現(xiàn)軟件初始畫面的顯示。通過派生QThread 線程類來實現(xiàn)數(shù)據(jù)解析任務的創(chuàng)建。
顯示控制模塊主要功能為文件解析軟件狀態(tài)反饋信息的顯示、識別并響應操作人員的控制命令。
狀態(tài)反饋信息顯示于軟件界面下方“提示信息”區(qū)域,軟件啟動后默認顯示“請點擊“選擇路徑”選擇文件路徑”,后續(xù)根據(jù)情況顯示對操作人員的操作提示信息以及數(shù)據(jù)解析情況信息。操作人員點擊“選擇路徑”按鈕后會彈出路徑選擇對話框,根據(jù)操作人員選擇的路徑信息“文件路徑”一欄會顯示此路徑的詳細信息,文件列表一欄QCheckBox 對象會列出此路徑下場景信息文件列表,供操作人員選擇。當操作人員選定某一場景信息文件后,點擊“文件轉換”按鈕,軟件數(shù)據(jù)解析模塊會根據(jù)設定的邏輯對場景信息文件進行解析,并將轉換完畢的txt 文件存入指定路徑。主要示例代碼如下:
數(shù)據(jù)解析模塊主要完成將場景信息文件數(shù)據(jù)內容的解析轉換,解析采用的數(shù)據(jù)格式與記錄數(shù)據(jù)格式保持一致。需要將關注的數(shù)據(jù)內容從場景信息文件中根據(jù)信息標識提取出來,并根據(jù)相應的數(shù)據(jù)格式提取相應字段的內容后寫入文件。主要示例代碼如下:
本文詳細介紹了場景信息文件解析方法的設計與實現(xiàn),克服了傳統(tǒng)場景信息記錄及回放時對于設備軟、硬件環(huán)境的局限性,憑借生成的在Windows 下可讀的txt 文件,操作人員可以方便、快捷的分析數(shù)據(jù)。該方法可應用于自動化、工業(yè)控制等多個方面,具有一定的工程應用價值。