999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Socket的ADAMS與HLA/RTI適配器開發

2017-04-28 02:21:16王增全黃夏旭申焱華
導彈與航天運載技術 2017年2期
關鍵詞:用戶模型

王增全,黃夏旭,吳 艷,申焱華

(1. 北京航天發射技術研究所,北京,100076;2. 北京科技大學,北京,100083)

基于Socket的ADAMS與HLA/RTI適配器開發

王增全1,黃夏旭2,吳 艷1,申焱華2

(1. 北京航天發射技術研究所,北京,100076;2. 北京科技大學,北京,100083)

高層體系結構(High Level Architecture,HLA)/運行實時支撐環境(Run Time Infrastructure,RTI)是一種先進的仿真體系結構,由于其較好的可重用性和互操作性被廣泛用作協同仿真中的仿真軟總線。ADAMS作為多體動力學軟件,是進行多學科聯合仿真的常用軟件,但是本身并不支持HLA/RTI,無法直接參與基于HLA/RTI的協同仿真。從分布式協同仿真需求出發,提出了一種基于Socket的ADAMS與HLA/RTI適配器實現思路,詳細介紹了實現途徑,并進行了驗證。結果表明:該適配器的開發實現了工程應用系統在分布異構的虛擬試驗運行支撐環境下的即插即用和互操作。

Socket;ADAMS;高層體系結構;運行實時支撐環境;接口開發

0 引 言

由于產品越來越高的復雜性,需要將原有的單領域仿真(多體動力學、控制系統和液壓系統仿真等)聯合起來,進行多領域協同仿真,實現不同領域的知識共享和設計交流,降低設計對大型試驗、調試試驗的依賴程度,縮短研制周期,提高設計效率。目前,多學科聯合仿真可以采用基于統一語言、模型接口和軟總線的3種實現方式。其中基于軟總線的多學科聯合仿真技術能夠實現多領域、分布異構模型的重用和互操作,是近年來復雜聯合仿真技術發展的重點方向之一。

基于軟總線的多學科協同仿真將多種仿真應用聯合在一起進行分布協同仿真,可完成功能更為復雜的系統仿真,但是也面臨著一些問題,比如如何將各種商用仿真軟件改造成分布式仿真所要求的形式等[1]。目前,多體動力學軟件ADAMS在機械動力學仿真應用中較為廣泛,但是對于其參與軟總線分布式仿真的研究較少,若開發一種其與軟總線分布協同仿真中間適配器,將ADAMS在多體領域的專業技術應用到多學科協同仿真中具有重要意義[2,3]。

基于Socket的數據通信機制[4],開發了多體系統動力學軟件 ADAMS與高層體系結構(High Level Architecture,HLA)/運行實時支撐環境(Run Time Infrastructure,RTI)仿真軟總線之間數據交互和仿真過程驅動接口,在軟總線平臺基礎上實現軟件的開啟、仿真時間和步長控制及數據傳輸等功能。實現工程應用系統在分布、異構的虛擬試驗運行支撐環境下的即插即用和互操作。

1 實現思路

ADAMS與其它學科的數據交互接口主要集中在ADAMS/View 和 ADAMS/Solver兩 個 模 塊 。ADAMS/Solver主要是通過用戶子程序[5](Subroutine)獲取求解器在計算時的狀態量(如位移、速度、加速度等)向外傳輸,同時向求解器返回所需的外界值。而ADAMS/View主要是通過調用ADAMS/Controls接口模塊實現數據的傳輸和對求解器仿真計算的控制。

ADAMS開放了其Controls接口與其它學科軟件進行數據交換和聯合仿真,但是該接口不具有標準性、開放性,接口擴充困難、調用方式單一,且不支持基于軟總線的分布式仿真方法,缺乏通用性和靈活性。ADAMS/Solver通過Subroutine方式實現外部仿真過程對ADAMS核心算法的調用,可用于用戶函數開發、仿真過程控制等,能夠支持大部分的用戶二次開發。Subroutine利用通用程序設計語言[6](FORTRAN或C語言)開發和編譯,依據多學科協同仿真提出的數據交換流程、內容、方式、軟件內部仿真的控制等要求,通過程序開發實現其與軟總線之間的通信。

目前,ADAMS沒有提供與HLA/RTI的接口,為了實現基于HLA的多領域協同仿真,需要通過一個中間件(適配器),將RTI與ADAMS軟件連接起來,負責數據交換和時間同步。通過一個能夠與遠程計算機相互通信的底層API(即Socket服務器),采用Socket服務器與客戶端通信方式,實現ADAMS軟件與仿真軟總線之間的通信、數據交換以及仿真控制權的轉移,從而實現聯合仿真,適配器與ADAMS、RTI的關系如圖1所示。

2 基于Socket的數據通信機制

Socket通常稱作“套接字”,Socket套接字主要用于描述IP地址與端口,作為一個通信鏈的句柄,其目的在于實現不同計算機設備之間的網絡通信。

基于Socket的通信機制如圖2所示。首先啟動服務器,服務器通過調用Socket函數建立一個套接字,并將該套接字和本地網絡地址聯系在一起,同時做好監聽準備。客戶端在建立套接字后通過調用 Connect函數和服務器建立連接。基于Socket的通信機制支持數據的雙向交互,并可實現異地數據的一致性和同步性,解決ADAMS軟件與軟總線之間的數據交互。

3 實現途徑

ADAMS適配器分兩部分:客戶端與服務端。客戶端為ADAMS軟件用戶子程序,實現與Socket服務器的連接,獲得 ADAMS模型計算所需數據,在ADAMS模型求解完成后將計算數據輸出的功能;服務端為Socket服務器,實現與客戶端的數據接收與發送,通過仿真軟總線將服務端接收到的數據提供給其它邦員,將從其它邦員獲得的數據放入Socket服務端。

3.1 ADAMS客戶端接口程序

ADAMS客戶端接口程序核心內容有兩部分:CONSUB子程序與非CONSUB子程序。CONSUB子程序控制求解器,實現仿真命令的修改,以及返回是否達到指定時間;非CONSUB子程序(如SFOSUB子程序)獲取求解器中指定數據(指定構件的位移、速度等)并上傳到服務器,從服務器獲取所需數據。圖3為ADAMS客戶端接口程序框圖。

ADAMS適配器客戶端實現用戶模型封裝、子程序的編寫、編譯及仿真腳本文件的編寫。

a)用戶模型封裝。

用戶模型封裝是以用戶建立的動力學模型為基礎,針對其中的輸入、輸出內容,采用非CONSUB用戶子程序完成輸入、輸出標準化接口的開發工作。以Sforce為例,用戶模型封裝過程為:將Sforce中參數設置選項中Define Using項設置為Subroutine,在User parameter中鍵入需要傳遞給子程序的數組。用戶模型封裝完畢后,將生成擴展名為adm的模型文件,供仿真過程調用。

b)用戶子程序編寫及編譯。

ADAMS用戶子程序的作用是實現對仿真模型求解器的控制,進而實現外部仿真系統對仿真過程、仿真時間的控制,將仿真的輸出數據(指定構件的位移、速度、力等)上傳到服務器,同時從服務器獲取下一時刻仿真輸入數據和控制信息。

ADAMS子程序的編寫按照.C文件的格式進行編寫,ADAMS子程序并沒有整體的邏輯結構,因為它最終是作為.dll文件被求解器調用,只需在每個單獨的函數中實現特定的功能。

以SFOSUB為例,介紹ADAMS非CONSUB用戶子程序的主要內容:

1)定義SFOSUB子函數數據結構體類型,用于存儲不同函數數據;

2)定義發送接收消息的SEND、GET_MSG函數,完成 Socket端口、IP地址等的初始化,連接 Socket服務器,發送、接收消息;

c)定義CONSUB函數,實現對求解器的控制,獲得ADAMS求解器中的數據(如速度、位移等),并返回模型求解所需要的數據。

ADAMS用戶子程序的編譯是指將編寫完成的.C文件編譯成被求解器調用的.dll文件,實現途徑為在ADAMS-Command dos界面下生成。

3.2 ADAMS服務端接口程序

ADAMS適配器服務端接口程序主要有兩個功能:接收ADAMS求解器發送的數據,經處理后提供給其它邦員,并接收其它邦員返回數據,然后發送到ADAMS求解器。圖4為適配器服務端接口程序框圖。

ADAMS服務端程序、邦員函數的編寫環境與客戶端相同,包含兩部分內容代碼的編寫:ADAMS sever.h及ADAMS sever.cpp文件。

ADAMS sever.h文件主要定義所需的頭文件、消息頭結構體、數據結構體,.cpp文件中所需要實現的函數等。ADAMS sever.cpp文件有兩部分內容,實現按頭文件中的定義對消息進行處理與開啟Socket的線程函數。

4 應用示例

本文建立某牽引車及牽引裝置的ADAMS模型,采用BH-RTI2.3軟總線平臺對ADAMS適配器進行測試。在同一局域網不同計算機上安裝ADAMS軟件及BH-RTI2.3軟總線平臺(每臺計算機都安裝),其中一臺計算機為RTI服務器,另一臺為客戶機,首先開啟BH-RTI2.3中心服務器運行版,然后啟動客戶機上的BH-RTI2.3運行版,BH-RTI2.3軟總線平臺啟動后,在客戶機上開啟適配器服務端程序加入聯盟并等待求解器計算,運行ADAMS仿真腳本文件即可運行仿真。仿真運行中間文件及結果如圖 5~圖9所示。圖 9中ADAMS機械系統模型接收到服務端傳來的力后打開抓桿,并將抓桿打開角度值返回,達到對整個過程的實時控制。

5 結束語

本文按照Socket的數據通信機制,完成了一種基于 Socket的 ADAMS仿真工具適配器開發,解決了ADAMS軟件與仿真軟總線之間數據交互及仿真過程驅動接口的通用性問題;

本文開發的適配器實現方法與ADAMS中的具體模型不存在緊密耦合,可通過適配器將ADAMS作為一個聯邦成員加入RTI聯邦中,參與協同仿真;

該適配器實現方法解決了ADAMS軟件與仿真軟總線之間數據的接口標準,該適配器開發方法可推廣到其它商用軟件接口適配器的開發。

[1] 郭斌, 熊光楞, 等. MATLAB與HLA/RTI通用適配器研究與實現[J]. 系統仿真學報, 2004, 16(6): 1275-1279.

[2] 張志娟, 關曉東. MSC Adams用戶自定義子程序在衛星姿控系統仿真分析中的應用[J]. 計算機輔助工程, 2006, 15(S1): 4-5.

[3] 薛運鋒, 石明全. 基于 ADAMS的列車系統參數化建模的二次開發研究[J]. 鐵道機車車輛, 2006, 26(3): 30-33.

[4] 譚翀. 基于 Socket的跨平臺多服務器通信系統的設計與實現[J]. 艦船電子工程, 2009 (08): 101-103.

[5] 梁思率, 張和明. ADAMS二次開發技術在分布式仿真中的應用[J]. 系統仿真學報, 2009 (10): 2940-2944.

[6] 紀玉杰, 楊強, 等. 應用C語言編寫ADAMS用戶自定義函數的研究[J].機械設計與制造, 2006 (01): 101-103.

Development of ADAMS and HLA/RTI Adaptor Based on Socket

Wang Zeng-quan1, Huang Xia-xu2, Wu Yan1, Shen Yan-hua2
(1. Beijing Institute of Space Launch Technology, Beijing, 100076; 2. University of Science and Technology Beijing, Beijing, 100083)

High level architecture (HLA) is a kind of very advanced simulation architecture, which is widely used as the software bus of collaborative simulation due to its better reusability and interoperability. ADAMS is virtual prototype analysis software that is often used in co-simulation. However, ADAMS doesn’t support HLA/RTI, so it can not participate in collaborative simulation based on HLA/RTI. This paper presents a new general adaptor of ADAMS based on Socket and HLA/RTI. In addition, this paper describes implementation of prototype of the adaptor in detail, and the adaptor code was validated by an example. The development of the adapter for engineering application system in distributed and heterogeneous run-time infrastructure of virtual experiment support plug and interoperability.

Socket; ADAMS; High level architecture; Run time infrastructure; Interface development

TP319

A

1004-7182(2017)02-0072-04

10.7654/j.issn.1004-7182.20170216

2016-07-26;

2016-12-09

王增全(1986-),男,工程師,主要研究方向為機電液一體化系統建模與仿真技術

猜你喜歡
用戶模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 四虎影视永久在线精品| 3D动漫精品啪啪一区二区下载| 666精品国产精品亚洲| 无码精品国产VA在线观看DVD| 欧美日韩国产在线人成app| 97一区二区在线播放| 国产香蕉在线| 欧美日韩一区二区三| 国产女人综合久久精品视| 欧美精品影院| 国产打屁股免费区网站| 午夜日韩久久影院| 久久99国产综合精品1| 高清国产va日韩亚洲免费午夜电影| 制服丝袜亚洲| 日韩欧美在线观看| 日韩一区二区在线电影| 久无码久无码av无码| 亚洲天堂高清| a级毛片免费播放| 91成人在线观看视频| 久草中文网| 五月天福利视频| 久久国产拍爱| 97超碰精品成人国产| 亚洲国产综合第一精品小说| 欧美69视频在线| 无遮挡国产高潮视频免费观看| 曰韩人妻一区二区三区| 又污又黄又无遮挡网站| 性视频一区| 99福利视频导航| 国产农村妇女精品一二区| 黑色丝袜高跟国产在线91| www.亚洲天堂| 国产成人a毛片在线| 日本五区在线不卡精品| 国产真实自在自线免费精品| 99久久精品免费观看国产| 免费国产小视频在线观看| 久久国产高清视频| www.亚洲一区| 欧美精品三级在线| av尤物免费在线观看| 国产精品无码作爱| 国产性生交xxxxx免费| 男人的天堂久久精品激情| 日韩东京热无码人妻| 98超碰在线观看| 国产丰满大乳无码免费播放 | 国产成人免费观看在线视频| 青青草原偷拍视频| 乱系列中文字幕在线视频| 久久一日本道色综合久久| 国产真实乱了在线播放| www.av男人.com| 久久天天躁狠狠躁夜夜躁| www.日韩三级| 欧美高清日韩| 国产精品尤物铁牛tv| 国产高颜值露脸在线观看| 亚洲日本中文字幕乱码中文| 国产激情国语对白普通话| 国产精品午夜福利麻豆| av在线手机播放| 国产成人综合在线观看| 国产在线自在拍91精品黑人| 风韵丰满熟妇啪啪区老熟熟女| 亚洲中文字幕av无码区| 国产99精品久久| 视频在线观看一区二区| 国产成人精品日本亚洲| 国产波多野结衣中文在线播放| 日韩天堂网| 欧美午夜在线视频| 一级香蕉视频在线观看| 中文字幕亚洲乱码熟女1区2区| 精品国产福利在线| 91青青草视频在线观看的| 国产欧美日韩精品综合在线| 日韩毛片在线播放| 91热爆在线|