專利名稱:分布式仿真數(shù)據(jù)處理方法及裝置的制作方法
技術領域:
本發(fā)明涉及大型分布式仿真領域,具體涉及一種分布式仿真數(shù)據(jù)處理方法及裝置。
背景技術:
計算機仿真是通過電子計算機、利用系統(tǒng)模型對真實系統(tǒng)進行試驗以達到分析和研究的目的,近年來計算機仿真已經廣泛應用于科研、教育、商業(yè)、生產開發(fā)等各個領域。隨著復雜大系統(tǒng)仿真應用的不斷擴展以及仿真器的物理分布性的限制,為了將分散在不同地理位置上的各種仿真實體通過網絡聯(lián)系在一起共同完成某項任務的模擬,分布式仿真技術應運而生。1995年,為了提高仿真系統(tǒng)的互操作性及仿真組件的可重用性,美國國防 部(DoD)在其建模與仿真大綱中提出了新一代分布式仿真標準高層體系結構(High LevelArchitecture, HLA)。在HLA體系中,將用于達到某一特定仿真目的的分布式仿真系統(tǒng)稱為聯(lián)邦(Federation),而聯(lián)邦是由若干個相互作用的聯(lián)邦成員(Federate)構成。聯(lián)邦成員通過實體的模型來產生聯(lián)邦中某一類實體的動態(tài)行為,如仿真某類實體(汽車、艦船等)。不同聯(lián)邦成員間的實體通過分布式仿真運行支撐平臺RTI來傳遞交互信息,這些交互信息包含了實體的狀態(tài)以及對外命令、報告等信息,它們是整個聯(lián)邦態(tài)勢的完整體現(xiàn),因此,為了在仿真完成后能夠更好地分析系統(tǒng)、評估仿真效果,這些信息在仿真過程中由專門的數(shù)據(jù)采集模塊采集并保存。在現(xiàn)有的分布式仿真系統(tǒng)中,一個完整的仿真過程為首先利用想定編輯工具制作想定文件,或者根據(jù)已有的想定文件進行微調形成新的想定文件,即仿真系統(tǒng)輸入;然后 將想定輸入系統(tǒng)開始仿真運行,在仿真運行的過程中采集仿真數(shù)據(jù);仿真運行結束后將采集的仿真數(shù)據(jù)進行解析并轉化為各種分析數(shù)據(jù),包括二三維態(tài)勢顯示數(shù)據(jù)、仿真效果評估數(shù)據(jù)、仿真過程各項指標統(tǒng)計數(shù)據(jù)等等;最后根據(jù)這些數(shù)據(jù)回放仿真態(tài)勢,分析指標統(tǒng)計數(shù)據(jù)和效果評估數(shù)據(jù)。但是,現(xiàn)有技術的分布式仿真執(zhí)行方案存在以下不足
首先,仿真效率不高。一個大型分布式仿真系統(tǒng)一次完整的仿真過程需要花費過多的時間,仿真運行階段需要花費1-3個小時,在仿真數(shù)據(jù)解析處理階段需要2-4個小時,從開始仿真運行至仿真人員分析結果數(shù)據(jù)需要3-7個小時(根據(jù)想定的不同具體花費時間不同)。其次,仿真過程比較繁瑣。仿真人員需要通過操作來開始仿真運行,然后等待仿真運行結束,然后再次需要通過操作來進行采集數(shù)據(jù)的解析轉化處理,然后再次等待數(shù)據(jù)轉化結束,最后才能分析數(shù)據(jù),即人員操作——等待仿真運行結束——人員操作——等待數(shù)據(jù)轉化結束——結果分析的過程
發(fā)明內容
本發(fā)明要解決的技術問題是提供一種數(shù)據(jù)轉化處理與聯(lián)邦系統(tǒng)分離,能夠提高聯(lián)邦系統(tǒng)運行效率、減少仿真花費時間,仿真操作簡單方便的分布式仿真數(shù)據(jù)處理方法及裝 置。為了解決上述技術問題,本發(fā)明采用的技術方案為
一種分布式仿真數(shù)據(jù)處理方法,其實施步驟如下
O建立并初始化仿真聯(lián)邦,建立獨立于仿真聯(lián)邦的數(shù)據(jù)處理模塊,啟動仿真;
2)在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù),將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至所述數(shù)據(jù)處理模塊;
3)所述數(shù)據(jù)處理模塊接收所述數(shù)據(jù)文件并進行解析、轉換得到仿真結果數(shù)據(jù)并將所述仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中;
4)注銷仿真聯(lián)邦,結束仿真。作為本發(fā)明上述分布式仿真數(shù)據(jù)處理方法的進一步改進
所述步驟2)中將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至數(shù)據(jù)處理模塊的詳細步驟包括
2. I)獲取已接收仿真數(shù)據(jù)的大?。?br>
2. 2)將已接收仿真數(shù)據(jù)的大小與設定值進行比較,如果已接收仿真數(shù)據(jù)的大小達到設定值則將已接收仿真數(shù)據(jù)保存至新建的數(shù)據(jù)文件,然后將所述數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊,然后轉入下一步;如果已接收仿真數(shù)據(jù)的大小沒有達到設定值則直接轉入下一步;
2. 3)判斷是否收到仿真結束命令,如果收到則轉入下一步,否則返回執(zhí)行步驟2. I);
2.4)創(chuàng)建采集結束標志文件,將采集結束標志文件通過網絡發(fā)送至數(shù)據(jù)處理模塊并結束采集仿真數(shù)據(jù)。所述步驟3)的詳細步驟包括
3.I)所述數(shù)據(jù)處理模塊接收并讀取數(shù)據(jù)文件;
3.2)所述數(shù)據(jù)處理模塊判斷數(shù)據(jù)文件是否為采集結束標志文件,如果是則直接退出,否則執(zhí)行下一步;
3.3)所述數(shù)據(jù)處理模塊讀取并解析數(shù)據(jù)文件中的仿真數(shù)據(jù),將解析后的仿真數(shù)據(jù)進行轉化為符合仿真數(shù)據(jù)庫格式要求的數(shù)據(jù)并存儲至仿真數(shù)據(jù)庫中,返回執(zhí)行步驟3. I)。本發(fā)明還提供一種分布式仿真數(shù)據(jù)處理裝置,包括
實驗控制模塊,用于在仿真開始前建立并初始化仿真聯(lián)邦及啟動仿真、在仿真完成后注銷仿真聯(lián)邦及結束仿真;
數(shù)據(jù)采集模塊,用于在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù)、將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡輸出;
指令處理模塊,用于轉發(fā)執(zhí)行仿真模型的控制命令、轉發(fā)采集的仿真數(shù)據(jù)、控制數(shù)據(jù)采集模塊以及各個仿真模型;
數(shù)據(jù)處理模塊,用于接收、解析、轉換數(shù)據(jù)文件得到仿真結果數(shù)據(jù)并將所述仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中;
所述實驗控制模塊、數(shù)據(jù)采集模塊分別接入仿真聯(lián)邦,所述數(shù)據(jù)處理模塊獨立于仿真聯(lián)邦;所述實驗控制模塊通過指令處理模塊分別與數(shù)據(jù)采集模塊、數(shù)據(jù)處理模塊相連,所述數(shù)據(jù)采集模塊通過網絡與數(shù)據(jù)處理模塊相連。
作為本發(fā)明分布式仿真數(shù)據(jù)處理裝置的進一步改進
所述數(shù)據(jù)采集模塊包括數(shù)據(jù)接收單元、數(shù)據(jù)管理單元和文件傳輸單元,所述數(shù)據(jù)接收單元接入仿真聯(lián)邦,所述數(shù)據(jù)管理單元的控制端通過指令處理模塊與實驗控制模塊相連,所述文件傳輸單元的輸出端通過網絡與數(shù)據(jù)處理模塊相連,所述數(shù)據(jù)接收單元通過仿真聯(lián)邦獲取仿真數(shù)據(jù),所述數(shù)據(jù)管理單元根據(jù)已接收仿真數(shù)據(jù)的大小與設定值進行比較、在未接收到仿真結束命令且已接收仿真數(shù)據(jù)的大小達到設定值則將已接收仿真數(shù)據(jù)保存至新建的數(shù)據(jù)文件,所述文件傳輸單元將所述數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊。所述數(shù)據(jù)處理模塊包括相互連接的數(shù)據(jù)解析單元和數(shù)據(jù)轉化單元,所述數(shù)據(jù)解析單元的輸入端通過指令處理模塊與數(shù)據(jù)采集模塊相連,所述數(shù)據(jù)轉化單元的輸出端與仿真數(shù)據(jù)庫相連,所述數(shù)據(jù)解析單元讀取來自指令處理模塊的數(shù)據(jù)文件并解析數(shù)據(jù)文件中的仿真數(shù)據(jù),且數(shù)據(jù)解析單元根據(jù)數(shù)據(jù)文件是否為采集結束標志文件控制數(shù)據(jù)處理是否直接退出;所述數(shù)據(jù)轉化單元將解析后的仿真數(shù)據(jù)進行轉化為符合仿真數(shù)據(jù)庫格式要求的數(shù)據(jù)并存儲至仿真數(shù)據(jù)庫中。
所述實驗控制模塊包括用于實現(xiàn)人機交互的人機交互單元、用于根據(jù)人機交互指令進行仿真控制的實驗控制單元、用于控制仿真聯(lián)邦的聯(lián)邦控制單元以及用于向仿真模型發(fā)送仿真控制指令的指令傳輸單元,所述實驗控制單元的輸入端與人機交互單元相連,所述實驗控制單元的輸出端分別與聯(lián)邦控制單元、指令傳輸單元相連,所述聯(lián)邦控制單元接入仿真聯(lián)邦,所述指令傳輸單元的輸出端與指令處理模塊相連。本發(fā)明的分布式仿真數(shù)據(jù)處理方法具有下述優(yōu)點本發(fā)明通過建立獨立于仿真聯(lián)邦的數(shù)據(jù)處理模塊使數(shù)據(jù)轉化處理與聯(lián)邦系統(tǒng)分離,由數(shù)據(jù)采集模塊實時采集各個仿真模型的仿真數(shù)據(jù)并將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至數(shù)據(jù)處理模塊,數(shù)據(jù)處理模塊接收數(shù)據(jù)文件并進行解析、轉換得到仿真結果數(shù)據(jù)并將仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中,數(shù)據(jù)轉化與數(shù)據(jù)采集之間采用數(shù)據(jù)文件的方式傳遞仿真數(shù)據(jù),使數(shù)據(jù)轉化模塊脫離仿真聯(lián)邦,不影響仿真聯(lián)邦的運行效率,同時通過采集數(shù)據(jù)與解析處理數(shù)據(jù)同時進行的方式,減少從仿真開始至態(tài)勢及評估數(shù)據(jù)轉化完成的時間,能夠在不影響仿真聯(lián)邦運行效率的條件下提高實驗效率,減少仿真花費時間,在數(shù)據(jù)轉化完成后即可查看綜合態(tài)勢、分析評估結果。本發(fā)明的分布式仿真數(shù)據(jù)處理裝置由于具有與前述分布式仿真數(shù)據(jù)處理方法相對應的物理結構,因此也具有與分布式仿真數(shù)據(jù)處理方法相對應的技術效果,而且仿真人員只需要通過人機交互單元就能夠啟動或停止仿真、設定仿真自動結束時間,整個仿真系統(tǒng)進程的啟動和結束在實驗管理模塊的控制下自動完成;在仿真啟動后,仿真人員只需要等待仿真結束后直接查看仿真態(tài)勢顯示及效果評估數(shù)據(jù),仿真系統(tǒng)的操作使用非常簡單。
圖I為本發(fā)明實施例裝置的框架結構示意圖。圖2為應用本發(fā)明實施例的分布式仿真系統(tǒng)的結構示意圖。圖3為本發(fā)明實施例數(shù)據(jù)采集模塊的工作流程示意圖。圖4為本發(fā)明實施例數(shù)據(jù)處理模塊的工作流程示意圖。圖5為本發(fā)明實施例應用于分布式仿真時的實驗流程示意圖。
圖例說明1、實驗控制模塊;11、人機交互單元;12、實驗控制單元;13、聯(lián)邦控制單元;14、指令傳輸單元;2、數(shù)據(jù)采集模塊;21、數(shù)據(jù)接收單元;22、數(shù)據(jù)管理單元;23、文件傳輸單元;3、指令處理模塊;4、數(shù)據(jù)處理模塊;41、數(shù)據(jù)解析單元;42、數(shù)據(jù)轉化單元。
具體實施例方式本實施例分布式仿真數(shù)據(jù)處理方法的實施步驟如下
1)建立并初始化仿真聯(lián)邦,建立獨立于仿真聯(lián)邦的數(shù)據(jù)處理模塊,啟動仿真;
2)在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù),將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至數(shù)據(jù)處理模塊;
3)數(shù)據(jù)處理模塊接收數(shù)據(jù)文件并進行解析、轉換得到仿真結果數(shù)據(jù)并將仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中;
4)注銷仿真聯(lián)邦,結束仿真。其中,步驟2)中將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至數(shù)據(jù)處理模塊的詳細步驟包括2. I)獲取已接收仿真數(shù)據(jù)的大?。?. 2)將已接收仿真數(shù)據(jù)的大小與設定值進行比較,如果已接收仿真數(shù)據(jù)的大小達到設定值則將已接收仿真數(shù)據(jù)保存至新建的數(shù)據(jù)文件,然后將數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊,然后轉入下一步;如果已接收仿真數(shù)據(jù)的大小沒有達到設定值則直接轉入下一步;2. 3)判斷是否收到仿真結束命令,如果收到則轉入下一步,否則返回執(zhí)行步驟2. 1);2. 4)創(chuàng)建采集結束標志文件,將采集結束標志文件通過網絡發(fā)送至數(shù)據(jù)處理模塊并結束采集仿真數(shù)據(jù)。步驟3)的詳細步驟包括3. I)數(shù)據(jù)處理模塊接收并讀取數(shù)據(jù)文件;3. 2)數(shù)據(jù)處理模塊判斷數(shù)據(jù)文件是否為采集結束標志文件,如果是則直接退出,否則執(zhí)行下一步;3. 3)數(shù)據(jù)處理模塊讀取并解析數(shù)據(jù)文件中的仿真數(shù)據(jù),將解析后的仿真數(shù)據(jù)進行轉化為符合仿真數(shù)據(jù)庫格式要求的數(shù)據(jù)并存儲至仿真數(shù)據(jù)庫中,返回執(zhí)行步驟3. I)。如圖I和圖2所示,本實施例的分布式仿真數(shù)據(jù)處理裝置包括
實驗控制模塊1,用于在仿真開始前建立并初始化仿真聯(lián)邦及啟動仿真、在仿真完成后注銷仿真聯(lián)邦及結束仿真;
數(shù)據(jù)采集模塊2,用于在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù)、將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡輸出;
指令處理模塊3,用于轉發(fā)執(zhí)行仿真模型的控制命令、轉發(fā)采集的仿真數(shù)據(jù)、控制數(shù)據(jù)采集模塊2以及各個仿真模型;
數(shù)據(jù)處理模塊4,用于接收、解析、轉換數(shù)據(jù)文件得到仿真結果數(shù)據(jù)并將仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中;
實驗控制模塊I、數(shù)據(jù)采集模塊2分別接入仿真聯(lián)邦,數(shù)據(jù)處理模塊4獨立于仿真聯(lián)邦;實驗控制模塊I通過指令處理模塊3分別與數(shù)據(jù)采集模塊2、數(shù)據(jù)處理模塊4相連,數(shù)據(jù)采集模塊2通過網絡與數(shù)據(jù)處理模塊4相連,本實施例的網絡具體是指通過局域網,此外也可以通過互聯(lián)網的形式,其形式與本實施例基本相同。本實施例中,實驗控制模塊I用于人機交互,根據(jù)仿真人員的啟動、停止仿真操作發(fā)出控制指令,控制仿真系統(tǒng)中的其他計算機節(jié)點的系統(tǒng)模塊(包括仿真支撐平臺RTI、仿真成員模型、數(shù)據(jù)采集模塊2、數(shù)據(jù)處理模塊4及在線統(tǒng)計模塊等)的啟動和停止;數(shù)據(jù)采集模塊2用于采集仿真數(shù)據(jù),根據(jù)時間順序將采集的數(shù)據(jù)分片管理,并以文件的形式保存,同時將采集的數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊4 ;指令處理模塊3用于接收實驗控制模塊I發(fā)出的控制命令,并根據(jù)命令執(zhí)行相應的處理,啟動各個仿真計算機節(jié)點上的系統(tǒng)模塊,用于接受數(shù)據(jù)采集模塊2傳出的采集數(shù)據(jù)文件;數(shù)據(jù)處理模塊4用于接收、解析、轉化數(shù)據(jù)采集模塊2采集的仿真數(shù)據(jù),將其轉化為態(tài)勢顯示數(shù)據(jù)和統(tǒng)計評估數(shù)據(jù),實驗控制模塊I根據(jù)仿真人員的仿真啟動/停止操作,向指令處理模塊3發(fā)出控制指令,指令處理模塊3接收到指令后啟動數(shù)據(jù)采集模塊2、數(shù)據(jù)處理模塊4等系統(tǒng)模塊,數(shù)據(jù)采集模塊2啟動后開始采集仿真數(shù)據(jù)并保存為數(shù)據(jù)文件,并通過指令處理模塊3將數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊4,本實施例的采集數(shù)據(jù)和數(shù)據(jù)處理同步進行,在仿真結束后數(shù)據(jù)處理也同步結束,從而立即就可以查看仿真數(shù)據(jù)庫中的態(tài)勢數(shù)據(jù)和評估結果數(shù)據(jù),因此數(shù)據(jù)量大、計算量大的數(shù)據(jù)處理不會影響仿真聯(lián)邦的運行速度,能夠提高聯(lián)邦的運行效率、減少整個仿真過程所花費的時間。實驗控制模塊I包括用于實現(xiàn)人機交互的人機交互單元11、用于根據(jù)人機交互指令進行仿真控制的實驗控制單元12、用于控制仿真聯(lián)邦的聯(lián)邦控制單元13以及用于向仿真模型發(fā)送仿真控制指令的指令傳輸單元14,實驗控制單元12的輸入端與人機交互單元 11相連,實驗控制單元12的輸出端分別與聯(lián)邦控制單元13、指令傳輸單元14相連,聯(lián)邦控制單元13接入仿真聯(lián)邦,指令傳輸單元14的輸出端與指令處理模塊3相連。人機交互單元11用于提供人機交互界面,實現(xiàn)人機交互;實驗控制單元12根據(jù)人機交互單元11提交的控制類型,執(zhí)行相應的控制處理;聯(lián)邦控制單元13用于創(chuàng)建仿真控制成員加入仿真聯(lián)邦,實現(xiàn)對仿真聯(lián)邦的監(jiān)控;指令傳輸單元14用于向指令處理模塊3傳輸控制命令,因此仿真人員只需要通過人機交互單元11就能夠啟動或停止仿真、設定仿真自動結束時間,整個仿真系統(tǒng)進程的啟動和結束在實驗管理模塊的控制下自動完成;在仿真啟動后仿真人員只需要等待仿真結束后直接查看仿真態(tài)勢顯示及效果評估數(shù)據(jù),仿真系統(tǒng)的操作使用非常簡單。數(shù)據(jù)采集模塊2包括數(shù)據(jù)接收單元21、數(shù)據(jù)管理單元22和文件傳輸單元23,數(shù)據(jù)接收單元21接入仿真聯(lián)邦,數(shù)據(jù)管理單元22的控制端通過指令處理模塊3與實驗控制模塊I相連,文件傳輸單元23的輸出端通過網絡與數(shù)據(jù)處理模塊4相連,數(shù)據(jù)接收單元21通過仿真聯(lián)邦獲取仿真數(shù)據(jù),數(shù)據(jù)管理單元22根據(jù)已接收仿真數(shù)據(jù)的大小與設定值進行比較、在未接收到仿真結束命令且已接收仿真數(shù)據(jù)的大小達到設定值則將已接收仿真數(shù)據(jù)保存至新建的數(shù)據(jù)文件,文件傳輸單元23將數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊4。本實施例通過數(shù)據(jù)接收單元21從仿真聯(lián)邦中接收仿真數(shù)據(jù)、通過數(shù)據(jù)管理單元22管理數(shù)據(jù)接收單元21采集的仿真數(shù)據(jù),保存仿真數(shù)據(jù)至采集數(shù)據(jù)文件,通過文件傳輸單元23發(fā)送采集數(shù)據(jù)文件并由數(shù)據(jù)處理模塊4所在的計算機節(jié)點上的指令處理模塊3接收,數(shù)據(jù)接收單元21、數(shù)據(jù)管理單元22和文件傳輸單元23與仿真模型分別位于分布式仿真計算的各個計算機節(jié)點內,都由同一個指令處理模塊3啟動。本實施例的指令處理模塊3具體根據(jù)計算機節(jié)點的數(shù)量進行布置。如圖2所示,圖中每一個虛線框代表一個計算機節(jié)點,因此本實施例包含多個指令處理模塊3,此外也可以根據(jù)需要調整計算機節(jié)點的數(shù)量,從而靈活調整指令處理模塊3的數(shù)量,例如將數(shù)據(jù)采集模塊2所在的計算機節(jié)點和仿真模型所在的計算機節(jié)點進行合并作為一個計算機節(jié)點等等,此時指令處理模塊3的數(shù)量也會適應地發(fā)生變化。
數(shù)據(jù)處理模塊4包括相互連接的數(shù)據(jù)解析單元41和數(shù)據(jù)轉化單元42,數(shù)據(jù)解析單元41的輸入端通過指令處理模塊3與數(shù)據(jù)采集模塊2相連,數(shù)據(jù)轉化單元42的輸出端與仿真數(shù)據(jù)庫相連,數(shù)據(jù)解析單元41讀取來自指令處理模塊3的數(shù)據(jù)文件并解析數(shù)據(jù)文件中的仿真數(shù)據(jù),且數(shù)據(jù)解析單元41根據(jù)數(shù)據(jù)文件是否為采集結束標志文件控制數(shù)據(jù)處理是否直接退出;數(shù)據(jù)轉化單元42將解析后的仿真數(shù)據(jù)進行轉化為符合仿真數(shù)據(jù)庫格式要求的數(shù)據(jù)并存儲至仿真數(shù)據(jù)庫中。本實施例通過數(shù)據(jù)處理模塊4通過一個獨立的計算機節(jié)點實現(xiàn),且該計算機節(jié)點通過網絡與數(shù)據(jù)采集模塊2相連,數(shù)據(jù)解析單元41通過數(shù)據(jù)處理模塊4所在計算機節(jié)點內部的指令處理模塊3讀取采集數(shù)據(jù)文件、解析采集數(shù)據(jù),數(shù)據(jù)轉化單元42從數(shù)據(jù)解析單元41獲取解析數(shù)據(jù),經轉化處理后導入仿真數(shù)據(jù)庫。本實施例中仿真數(shù)據(jù)庫包括用于存儲態(tài)勢顯示數(shù)據(jù)的態(tài)勢顯示數(shù)據(jù)庫和用于存儲效果評估數(shù)據(jù)的評估數(shù)據(jù)庫,因此數(shù)據(jù)轉化單元42具體可分為兩類用于將解析數(shù)據(jù)轉化為態(tài)勢顯示數(shù)據(jù)并保存至態(tài)勢顯示數(shù)據(jù)庫的態(tài)勢數(shù)據(jù)轉化單元、用于將解析數(shù)據(jù)轉化為效果評估數(shù)據(jù)并保存至評估數(shù)據(jù)庫的評估數(shù)據(jù)轉化單元;數(shù)據(jù)處理模塊4可以分為態(tài)勢數(shù)據(jù)處理模塊和評估數(shù)據(jù)處理模塊,本實施例通過將數(shù)據(jù)采集模塊2的采集數(shù)據(jù)與數(shù)據(jù)處理模塊4的數(shù)據(jù)處理同步進行,但數(shù)據(jù)處理模塊4的數(shù)據(jù)處理不加入仿真聯(lián)邦,所以能夠在不影響聯(lián)邦運行速度的情況下減少整個過程所花的時間。 如圖2所示,本實施例的分布式仿真系統(tǒng)中,支撐平臺采用分布式仿真支撐平臺RTI,實驗控制模塊I、數(shù)據(jù)采集模塊2分別接入分布式仿真支撐平臺RTI。一個計算機節(jié)點內包含多個仿真模型,且一個計算機節(jié)點內的多個仿真模型通過同一計算機節(jié)點內的指令處理模塊3連接網絡,與實驗控制模塊I通過網絡相連。分布式仿真系統(tǒng)還包括,仿真模型,用于描述仿真實體的行為(如艦船、汽車等);在線統(tǒng)計模塊,用于實時統(tǒng)計各項指標,展現(xiàn)統(tǒng)計結果,保存統(tǒng)計結果至仿真數(shù)據(jù)庫;分布式仿真支撐平臺RTI,用于連接各個仿真模型、在線統(tǒng)計模塊、數(shù)據(jù)采集模塊2,實現(xiàn)模型間的信息傳遞,其中仿真模型是仿真系統(tǒng)中模擬實體的模型實現(xiàn)。實驗控制模塊I發(fā)出控制指令經網絡傳輸至指令處理模塊3,指令處理模塊3接收到控制指令后啟動、停止仿真模型、數(shù)據(jù)采集模塊2和在線統(tǒng)計模塊;在仿真模型啟動加入仿真聯(lián)邦后,實驗控制模塊I通過仿真支撐平臺RTI發(fā)送仿真模型初始化腳本,并控制仿真運行的開始、暫停、繼續(xù)和停止。如圖3所示,本實施例數(shù)據(jù)采集模塊2的數(shù)據(jù)采集與數(shù)據(jù)處理模塊4的數(shù)據(jù)處理同時進行,數(shù)據(jù)處理模塊4不加入仿真聯(lián)邦,不影響仿真聯(lián)邦的運行效率,其中數(shù)據(jù)采集模塊2的數(shù)據(jù)采集具體流程為
步驟Al,數(shù)據(jù)采集模塊2被指令處理模塊3啟動;
步驟A2,數(shù)據(jù)采集模塊2根據(jù)啟動參數(shù),完成初始化設置,加入仿真聯(lián)邦;
步驟A3,接收仿真數(shù)據(jù);
步驟A4,判斷采集的數(shù)據(jù)量是否達到設定值,若達到則將數(shù)據(jù)保存至新建數(shù)據(jù)文件,并將數(shù)據(jù)文件通過網絡發(fā)送至數(shù)據(jù)處理模塊4,然后轉入下一步,若數(shù)據(jù)量沒有達到設定值,則直接進入下一步;
步驟A5,判斷是否接收到仿真停止命令,若是則進入下一步,否則回到步驟A3 ;
步驟A6,創(chuàng)建采集結束標志文件,并將文件發(fā)送至數(shù)據(jù)處理模塊4 ;
步驟A7,退出仿真聯(lián)邦,數(shù)據(jù)采集模塊2自動結束進程。
如圖4所示,數(shù)據(jù)處理模塊4的數(shù)據(jù)處理具體流程為
步驟BI,數(shù)據(jù)處理模塊4被指令處理模塊3啟動;
步驟B2,等待第一個采集數(shù)據(jù)文件;
步驟B3,讀取數(shù)據(jù)文件,判斷是否為采集結束標志文件,若是則數(shù)據(jù)處理模塊4自動結束進程,否則進入下一步;
步驟B4,讀取數(shù)據(jù)文件中的仿真數(shù)據(jù),利用數(shù)據(jù)解析單元41解析數(shù)據(jù);
步驟B5,數(shù)據(jù)轉化單元42轉化解析的仿真數(shù)據(jù),導入仿真數(shù)據(jù)庫;
步驟B6,等待下一采集數(shù)據(jù)文件,下一采集數(shù)據(jù)文件到達時轉入步驟B3。 如圖5所示,本實施例進行仿真實驗的具體操作流程如下
步驟Cl,仿真人員操作實驗控制模塊1,啟動仿真;
步驟C2,實驗控制模塊I創(chuàng)建仿真聯(lián)邦,通過網絡向各個指令處理模塊3發(fā)送啟動命令,在啟動命令中包含了需要啟動的系統(tǒng)模塊信息和啟動參數(shù);
步驟C3,各個計算機節(jié)點上的指令處理模塊3接收到啟動命令后,根據(jù)命令中參數(shù)啟動相應的系統(tǒng)模塊;
步驟C4,各個系統(tǒng)模塊根據(jù)啟動并初始化完成,數(shù)據(jù)采集模塊2、仿真模型根據(jù)啟動參數(shù)加入仿真聯(lián)邦;
步驟C5,實驗控制模塊I解析想定腳本文件,將腳本通過仿真聯(lián)邦發(fā)送給不同的仿真模型;
步驟C6,各個仿真模型接收腳本完成初始化,并通過仿真聯(lián)邦返回報告至實驗控制模塊1,實驗控制模塊I通過仿真聯(lián)邦發(fā)出仿真開始命令;
步驟C7,仿真開始運行,仿真模型開始進行模型計算,數(shù)據(jù)采集模塊2開始采集數(shù)據(jù),在仿真運行過程中,數(shù)據(jù)采集模塊2生成采集的數(shù)據(jù)文件并經網絡發(fā)送至數(shù)據(jù)處理模塊4 ;步驟CS,實驗控制模塊I檢測已到設定仿真結束時間或者仿真人員操作停止仿真,實驗控制模塊I通過仿真聯(lián)邦發(fā)出仿真停止命令;
步驟C9,仿真模型接收到仿真停止命令后退出仿真聯(lián)邦,實驗控制模塊I注銷仿真聯(lián)邦,通過網絡發(fā)出結束仿真模型進程命令,由指令處理模塊3接收并執(zhí)行;
步驟C10,數(shù)據(jù)采集模塊2生成采集結束標志文件,并發(fā)送給數(shù)據(jù)處理模塊4,然后自動結束進程,數(shù)據(jù)處理模塊4完成數(shù)據(jù)處理任務后自動結束進程;
步驟Cl I,仿真人員開始分析仿真結果。以上所述僅是本發(fā)明的優(yōu)選實施方式,本發(fā)明的保護范圍并不僅局限于上述實施例,凡屬于本發(fā)明思路下的技術方案均屬于本發(fā)明的保護范圍。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理前提下的若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
權利要求
1.一種分布式仿真數(shù)據(jù)處理方法,其特征在于其實施步驟如下 1)建立并初始化仿真聯(lián)邦,建立獨立于仿真聯(lián)邦的數(shù)據(jù)處理模塊,啟動仿真; 2)在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù),將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至所述數(shù)據(jù)處理模塊; 3)所述數(shù)據(jù)處理模塊接收所述數(shù)據(jù)文件并進行解析、轉換得到仿真結果數(shù)據(jù)并將所述仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中; 4)注銷仿真聯(lián)邦,結束仿真。
2.根據(jù)權利要求I所述的分布式仿真數(shù)據(jù)處理方法,其特征在于,所述步驟2)中將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至數(shù)據(jù)處理模塊的詳細步驟包括 2. I)獲取已接收仿真數(shù)據(jù)的大小; 2. 2)將已接收仿真數(shù)據(jù)的大小與設定值進行比較,如果已接收仿真數(shù)據(jù)的大小達到設定值則將已接收仿真數(shù)據(jù)保存至新建的數(shù)據(jù)文件,然后將所述數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊,然后轉入下一步;如果已接收仿真數(shù)據(jù)的大小沒有達到設定值則直接轉入下一步; 2. 3)判斷是否收到仿真結束命令,如果收到則轉入下一步,否則返回執(zhí)行步驟2. I); 2.4)創(chuàng)建采集結束標志文件,將采集結束標志文件通過網絡發(fā)送至數(shù)據(jù)處理模塊并結束采集仿真數(shù)據(jù)。
3.根據(jù)權利要求2所述的分布式仿真數(shù)據(jù)處理方法,其特征在于,所述步驟3)的詳細步驟包括 3. I)所述數(shù)據(jù)處理模塊接收并讀取數(shù)據(jù)文件; 3. 2)所述數(shù)據(jù)處理模塊判斷數(shù)據(jù)文件是否為采集結束標志文件,如果是則直接退出,否則執(zhí)行下一步; 3.3)所述數(shù)據(jù)處理模塊讀取并解析數(shù)據(jù)文件中的仿真數(shù)據(jù),將解析后的仿真數(shù)據(jù)進行轉化為符合仿真數(shù)據(jù)庫格式要求的數(shù)據(jù)并存儲至仿真數(shù)據(jù)庫中,返回執(zhí)行步驟3. I)。
4.一種分布式仿真數(shù)據(jù)處理裝置,其特征在于,包括 實驗控制模塊(1),用于在仿真開始前建立并初始化仿真聯(lián)邦及啟動仿真、在仿真完成后注銷仿真聯(lián)邦及結束仿真; 數(shù)據(jù)采集模塊(2),用于在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù)、將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡輸出; 指令處理模塊(3 ),用于轉發(fā)執(zhí)行仿真模型的控制命令、轉發(fā)采集的仿真數(shù)據(jù)、控制數(shù)據(jù)采集模塊(2)以及各個仿真模型; 數(shù)據(jù)處理模塊(4),用于接收、解析、轉換數(shù)據(jù)文件得到仿真結果數(shù)據(jù)并將所述仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中; 所述實驗控制模塊(I)、數(shù)據(jù)采集模塊(2)分別接入仿真聯(lián)邦,所述數(shù)據(jù)處理模塊(4)獨立于仿真聯(lián)邦;所述實驗控制模塊(I)通過指令處理模塊(3)分別與數(shù)據(jù)采集模塊(2)、數(shù)據(jù)處理模塊(4)相連,所述數(shù)據(jù)采集模塊(2)通過網絡與數(shù)據(jù)處理模塊(4)相連。
5.根據(jù)權利要求4所述的分布式仿真數(shù)據(jù)處理裝置,其特征在于所述數(shù)據(jù)采集模塊(2)包括數(shù)據(jù)接收單元(21)、數(shù)據(jù)管理單元(22)和文件傳輸單元(23),所述數(shù)據(jù)接收單元(21)接入仿真聯(lián)邦,所述數(shù)據(jù)管理單元(22 )的控制端通過指令處理模塊(3 )與實驗控制模塊(I)相連,所述文件傳輸單元(23)的輸出端通過網絡與數(shù)據(jù)處理模塊(4)相連,所述數(shù)據(jù)接收單元(21)通過仿真聯(lián)邦獲取仿真數(shù)據(jù),所述數(shù)據(jù)管理單元(22)根據(jù)已接收仿真數(shù)據(jù)的大小與設定值進行比較、在未接收到仿真結束命令且已接收仿真數(shù)據(jù)的大小達到設定值則將已接收仿真數(shù)據(jù)保存至新建的數(shù)據(jù)文件,所述文件傳輸單元(23 )將所述數(shù)據(jù)文件發(fā)送給數(shù)據(jù)處理模塊(4)。
6.根據(jù)權利要求5所述的分布式仿真數(shù)據(jù)處理裝置,其特征在于所述數(shù)據(jù)處理模塊(4)包括相互連接的數(shù)據(jù)解析單元(41)和數(shù)據(jù)轉化單元(42),所述數(shù)據(jù)解析單元(41)的輸入端通過指令處理模塊(3)與數(shù)據(jù)采集模塊(2)相連,所述數(shù)據(jù)轉化單元(42)的輸出端與仿真數(shù)據(jù)庫相連,所述數(shù)據(jù)解析單元(41)讀取來自指令處理模塊(3)的數(shù)據(jù)文件并解析數(shù)據(jù)文件中的仿真數(shù)據(jù),且數(shù)據(jù)解析單元(41)根據(jù)數(shù)據(jù)文件是否為采集結束標志文件控制數(shù)據(jù)處理是否直接退出;所述數(shù)據(jù)轉化單元(42)將解析后的仿真數(shù)據(jù)進行轉化為符合仿真數(shù)據(jù)庫格式要求的數(shù)據(jù)并存儲至仿真數(shù)據(jù)庫中。
7.根據(jù)權利要求4或5或6所述的分布式仿真數(shù)據(jù)處理裝置,其特征在于所述實驗控制模塊(I)包括用于實現(xiàn)人機交互的人機交互單元(11 )、用于根據(jù)人機交互指令進行仿真控制的實驗控制單元(12)、用于控制仿真聯(lián)邦的聯(lián)邦控制單元(13)以及用于向仿真模型發(fā)送仿真控制指令的指令傳輸單元(14),所述實驗控制單元(12)的輸入端與人機交互單元(11)相連,所述實驗控制單元(12)的輸出端分別與聯(lián)邦控制單元(13)、指令傳輸單元(14)相連,所述聯(lián)邦控制單元(13)接入仿真聯(lián)邦,所述指令傳輸單元(14)的輸出端與指令處理模塊(3)相連。
全文摘要
本發(fā)明公開了一種分布式仿真數(shù)據(jù)處理方法及裝置,方法步驟如下1)建立并初始化仿真聯(lián)邦,建立獨立于仿真聯(lián)邦的數(shù)據(jù)處理模塊,啟動仿真;2)在仿真運行過程中通過仿真聯(lián)邦實時采集各個仿真模型的仿真數(shù)據(jù),將采集得到的仿真數(shù)據(jù)分片保存為數(shù)據(jù)文件并通過網絡發(fā)送至所述數(shù)據(jù)處理模塊;3)所述數(shù)據(jù)處理模塊接收所述數(shù)據(jù)文件并進行解析、轉換得到仿真結果數(shù)據(jù)并將所述仿真結果數(shù)據(jù)存儲至仿真數(shù)據(jù)庫中;4)注銷仿真聯(lián)邦,結束仿真;裝置包括實驗控制模塊,數(shù)據(jù)采集模塊,指令處理模塊和獨立于仿真聯(lián)邦的數(shù)據(jù)處理模塊。本發(fā)明數(shù)據(jù)轉化處理與聯(lián)邦系統(tǒng)分離、能夠提高聯(lián)邦系統(tǒng)運行效率、減少仿真花費時間,仿真操作簡單方便。
文檔編號G06F17/50GK102708232SQ20121012161
公開日2012年10月3日 申請日期2012年4月24日 優(yōu)先權日2012年4月24日
發(fā)明者劉寶宏, 楊健, 郝建國, 鐘榮華, 陳彬, 鞠儒生, 黃健, 龔建興 申請人:中國人民解放軍國防科學技術大學