[發明專利]一種實時高效的分布式半實物仿真系統構建方法有效
| 申請號: | 201310046765.4 | 申請日: | 2013-02-05 |
| 公開(公告)號: | CN103093059A | 公開(公告)日: | 2013-05-08 |
| 發明(設計)人: | 武超;張宇;劉科科 | 申請(專利權)人: | 中國電子科技集團公司電子科學研究院 |
| 主分類號: | G06F17/50 | 分類號: | G06F17/50 |
| 代理公司: | 北京慧泉知識產權代理有限公司 11232 | 代理人: | 王順榮;唐愛華 |
| 地址: | 100041 北京市石*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 高效 分布式 實物 仿真 系統 構建 方法 | ||
1.一種實時高效的分布式半實物仿真系統的構建方法,其特征在于:該方法具體步驟如下:
步驟一、將仿真系統和半實物仿真接口分別部署在不同主機上,與實物系統共同構成分布式半實物仿真系統;整個系統由局域網連接起來的仿真系統、半實物仿真接口系統和實物系統組成,其中仿真系統包括多個仿真子系統,將這些仿真子系統和半實物仿真接口系統分別部署在不同主機上運行;仿真系統與實物系統之間的相互作用和彼此聯系通過半實物仿真接口系統的數據交互處理實現即包括虛擬數據向真實數據轉換和真實數據向虛擬數據轉換;
步驟二、半實物仿真接口設置為時間控制成員;
仿真系統、半實物仿真接口系統和實物系統都具有自治性,具有控制和管理本節點運行的內部時間機制;半實物仿真接口系統設置為整個半實物仿真系統的時間控制成員,其程序采用C++編程語言,在Windows?XP操作系統Microsoft?Visual?C++環境下開發,實現對整個系統的時鐘同步管理;
步驟三、半實物仿真接口主機串口連接GPS接收器,串口初始化;
選擇GPS?OEM硬件接收器,半實物仿真接口系統主機通過串口連接GPS接收器,半實物仿真接口系統程序主線程直接使用Win32API函數打開串口,對其進行初始化參數配置,設置串口通信模式為異步通信方式,波特率為9600比特/秒,GPS接收器接通電源,使其處于工作狀態;
步驟四、半實物仿真接口程序主線程與GPS時鐘同步;
處于工作狀態的GPS接收器不斷地把接收的NMEA0183通信標準格式的$GPRMC信息通過串口傳送到半實物仿真接口主機中,半實物仿真接口主機把從串口接收的數據放置于緩存,在沒有作處理之前,緩存中的原始數據是一長串字節流,如:“$GPRMC,020310,V,0000.0000,N,00000.0000,W,000.0,000.0,311005,007.2,W*62”;
半實物仿真接口主機程序主線程使用Win32API函數打開串口,從串口接收信息,讀取由GPS傳送的$GPRMC信息,通過使用串口類Com提取UTC時間即世界統一時間作為半實物仿真接口系統的邏輯時間,使其邏輯時鐘無條件地隨物理時鐘的推進而推進;
步驟五、半實物仿真接口程序主線程定期向仿真系統和實物系統發送同步信息包;
半實物仿真接口程序主線程采用“報時”機制,每隔30ms將提取出的UTC時間作為標準時間通過局域網接口即以太網接口100BaseT廣播給各仿真子系統和實物系統;
步驟六、完成半實物仿真系統各成員時鐘同步;
仿真系統和實物系統通過局域網接口被動接收半實物仿真接口發送的時間同步信息包,并通過PCS即Probabilistic?Synchronization?Algorithm概率性同步方法來對半實物仿真接口主機的邏輯時鐘進行估計;即:在每個同步周期30ms中,半實物仿真接口主機向網絡廣播帶有自己時間戳的消息包,仿真系統和實物系統主機被動接收這些消息;假定這些網絡同步消息包的網絡延遲是統計獨立的,且該隨機變量的均值和方差是事先測定的;設某一目標節點收到n個半實物仿真接口主機的消息包,則仿真系統主機或實物系統主機到半實物仿真接口主機的時鐘差為:
式(1)中,d為主節點到目標節點的網絡延遲的均值;Ti為主節點在第i個消息包中所打的時間戳;Ri為目標節點在接收到第i個消息包時的本地時間;PCS方法按下式所給出的概率達到給定的同步精度γ:
式(2)中,n為同步過程所需要傳送的消息的數目;ε為算法的同步誤差;Ed為網絡傳輸的均值;σd為網絡傳輸延遲的方差,Φ(·)為余誤差函數,根據式(1)和(2)計算同步誤差和失效概率,據此調整仿真系統和實物系統的本地邏輯時鐘;
步驟七、半實物仿真接口程序從線程完成通信數據處理;
半實物仿真接口程序采用單進程多線程設計模式,主線程完成系統內時間同步管理,從線程采用線程池設計模式,完成仿真系統與實物系統之間的數據接收、解析、響應和發送;
半實物仿真接口程序將所有系統I/O即輸入輸出資源的訪問封裝成統一接口,同時不再讓所有從線程同時偵聽I/O事件即數據輸入輸出;在任意時刻t讓一個線程去偵聽I/O句柄的事件,其他線程處于等待狀態,稱偵聽的線程為L線程,等待的線程為F線程;L線程在偵聽到I/O事件后,從I/O句柄接收消息,然后一邊通知等待的線程來接管I/O句柄,一邊繼續處理該消息,此時,原來的L線程交出了控制權,在處理完消息后成為F線程;
L線程在等待I/O事件時其他F線程全部處于等待狀態,當L線程獲得I/O事件的處理權后,L線程立刻發起promote_new_leader過程,以產生新的L線程繼續偵聽新的I/O事件;此時,L線程只是給出一個信號,只會占用很少的時間,該線程對數據的處理基本和新的L線程同步進行;L線程在處理完I/O事件后重新加入線程池,此時,該線程的句柄排序是最后的,從而消除排序開銷。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電子科技集團公司電子科學研究院,未經中國電子科技集團公司電子科學研究院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310046765.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種制冷螺桿壓縮機能調位置指示裝置
- 下一篇:盛裝舞步騎術賽場地圍欄





