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
主站蜘蛛池模板: 91精品国产自产在线老师啪l| 国产精品自拍露脸视频| 亚洲男人天堂网址| 伊人精品成人久久综合| 新SSS无码手机在线观看| 国产黑丝视频在线观看| a亚洲视频| 在线免费无码视频| 欧美激情网址| 免费一级毛片在线播放傲雪网| 欧美午夜网| 色老头综合网| 九九九精品成人免费视频7| 综合网久久| 国产欧美日韩资源在线观看| 精品第一国产综合精品Aⅴ| 免费视频在线2021入口| 久久黄色免费电影| 凹凸精品免费精品视频| 成人日韩视频| 国产亚洲高清在线精品99| 精品一区二区三区自慰喷水| 国外欧美一区另类中文字幕| 久久精品欧美一区二区| 女人18毛片一级毛片在线 | 日韩123欧美字幕| 亚洲国产午夜精华无码福利| 亚洲国产精品一区二区第一页免| 伊人丁香五月天久久综合 | 国产成人综合亚洲欧美在| 国产一区二区人大臿蕉香蕉| 亚洲av无码久久无遮挡| 欧美伊人色综合久久天天| 思思99思思久久最新精品| 日韩黄色在线| 久久香蕉国产线看观看式| 欧美成人综合视频| 亚洲国产无码有码| 国产在线观看91精品| 91久久夜色精品国产网站| 欧美午夜在线观看| 无码啪啪精品天堂浪潮av| 亚洲第一中文字幕| 青青草原国产免费av观看| 毛片视频网址| 欧美激情成人网| 亚洲欧美日韩中文字幕一区二区三区 | 高h视频在线| 亚洲乱强伦| 亚洲人成电影在线播放| 全色黄大色大片免费久久老太| 97se亚洲综合不卡| 日本a∨在线观看| 亚洲VA中文字幕| 日韩免费毛片| 日韩精品一区二区三区大桥未久| 她的性爱视频| 欧美不卡在线视频| 香蕉视频在线观看www| 日韩欧美91| vvvv98国产成人综合青青| 国产精品成人AⅤ在线一二三四| 国产精品美女在线| 欧美特级AAAAAA视频免费观看| 国模视频一区二区| 九九精品在线观看| 搞黄网站免费观看| 五月综合色婷婷| 久久精品国产精品一区二区| 中文字幕有乳无码| 老熟妇喷水一区二区三区| 日本欧美一二三区色视频| 日本影院一区| 国产黄在线观看| 成人精品区| 夜夜操天天摸| 欧美性色综合网| 中文字幕在线日韩91| 中文字幕在线播放不卡| 色婷婷啪啪| 久久国产精品77777| 亚洲天堂免费在线视频|