欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于HLA的Adams仿真模型集成平臺(tái)及方法

文檔序號(hào):6368619閱讀:431來源:國知局
專利名稱:基于HLA的Adams仿真模型集成平臺(tái)及方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種基于HLA的Adams仿真模型集成平臺(tái)及方法。
背景技術(shù)
復(fù)雜產(chǎn)品的生產(chǎn)過程往往涉及諸多領(lǐng)域,分布式協(xié)同仿真能夠降低問題求解的復(fù)雜性,適用于多學(xué)科協(xié)同,是進(jìn)行復(fù)雜產(chǎn)品性能仿真的有效途徑之一。機(jī)械動(dòng)力學(xué)和運(yùn)動(dòng)學(xué)特性通常是復(fù)雜產(chǎn)品性能仿真關(guān)注的重點(diǎn),因此產(chǎn)品的多體動(dòng)力學(xué)CAE模型往往是協(xié)同仿 真中的重要成員和開發(fā)的焦點(diǎn)所在。ADAMS軟件是世界上具有權(quán)威性的、使用范圍很廣的機(jī)械系統(tǒng)動(dòng)力學(xué)仿真工具。目前,國際上大多數(shù)支持分布式交互仿真的復(fù)雜系統(tǒng)框架,普遍是參照高層體系結(jié)構(gòu)HLA來構(gòu)建的,HLA已經(jīng)成為分布式仿真領(lǐng)域被廣泛認(rèn)可的標(biāo)準(zhǔn)和規(guī)范。HLA標(biāo)準(zhǔn)給出了一系列參與仿真的成員必須遵守的規(guī)則和接口規(guī)范,要想使Adams模型能夠加入HLA架構(gòu)的分布式協(xié)同仿真,就必須對(duì)其進(jìn)行集成,使其成為符合HLA標(biāo)準(zhǔn)的聯(lián)邦成員。然而,由于Adams軟件的開放性不足,關(guān)于Adams模型HLA集成的研究還不是很多,主要的兩類方法分別是第一,基于ADAMS/SDK的模型封裝;第二,基于仿真腳本Solver命令單步推進(jìn)仿真并保存重載系統(tǒng)狀態(tài)實(shí)現(xiàn)模型封裝。第一種方法利用ADAMS/SDK函數(shù)庫中包含的標(biāo)準(zhǔn)應(yīng)用程序接口 API進(jìn)行二次開發(fā),實(shí)現(xiàn)Adams模型封裝。第二種方法采用Adams仿真腳本,通過控制Adams軟件仿真引擎單步推進(jìn)仿真,并在每一單步仿真結(jié)束后利用Save和Reload命令來保存和重載全部模型狀態(tài)信息,來實(shí)現(xiàn)將Adams模型集成到分布式協(xié)同仿真中。發(fā)明人發(fā)現(xiàn),第一種方法的主要缺陷是由于SDK模塊不是Adams套裝中的通用組件,因此不適用于一般用戶和普通科研機(jī)構(gòu);第二種方法的主要缺陷是由于會(huì)將模型全部當(dāng)前狀態(tài)以sav文件的形式保存在硬盤上,因此仿真過程需要頻繁讀寫硬盤,使得交互過程效率很低,因此無法滿足需要頻繁數(shù)據(jù)交互的復(fù)雜產(chǎn)品協(xié)同仿真對(duì)仿真效率的需求。

發(fā)明內(nèi)容
為了克服上述的缺陷,本發(fā)明提供一種有效提聞精度和效率的基于HLA的Adams仿真模型集成平臺(tái)。為達(dá)到上述目的,一方面,本發(fā)明提供一種基于HLA的Adams仿真模型集成平臺(tái),所述平臺(tái)包括依次連接的仿真模型單元、適配器單元和HLA系統(tǒng),其中,仿真模型單元,包括至少一個(gè)Adams仿真模型,每個(gè)Adams仿真模型為一個(gè)聯(lián)邦成員;適配器單元,設(shè)置在所述仿真模型單元和HLA系統(tǒng)之間,實(shí)現(xiàn)Adams仿真模型的HLA集成;所述適配器單元包括用戶自定義模塊、共享內(nèi)存空間模塊和主體模塊,其中,用戶自定義模塊,包括輸入子模塊VARSUB和輸出子模塊REQSUB ;VARSUB用于向Adams仿真模型輸入數(shù)據(jù)以及更改模型參數(shù);REQSUB用于在步長點(diǎn)上輸出數(shù)據(jù);
共享內(nèi)存空間模塊,用于用戶自定義模塊和主體模塊之間的數(shù)據(jù)交互;主體模塊,用于適配器單元與HLA系統(tǒng)之間的數(shù)據(jù)交互,所述數(shù)據(jù)交互包括配置HLA系統(tǒng)基本功能和使用回調(diào)函數(shù);所述HLA系統(tǒng)基本功能至少包括聯(lián)邦管理、聲明管理、對(duì)象管理、所有權(quán)管理、時(shí)間管理和數(shù)據(jù)分發(fā)管理。特別是,所述用戶自定義模塊由Fortran語言或C語言編寫,將其編譯為動(dòng)態(tài)鏈接庫.dll文件后被Adams軟件仿真引擎在運(yùn)行時(shí)調(diào)用。Adams軟件仿真引擎是Adams動(dòng)力學(xué)仿真軟件所提供的仿真求解運(yùn)行程序,可在后臺(tái)調(diào)用。特別是,共享內(nèi)存空間模塊使用內(nèi)存映射文件技術(shù)來實(shí)現(xiàn)數(shù)據(jù)交互。另一方面,本發(fā)明提供一種基于HLA的Adams仿真模型集成方法,所述集成方法包括下述步驟通過添加VARSUB變量修改Adams仿真模型,形成仿真模型在HLA系統(tǒng)交互中的輸 A ;通過添加REQSUB變量修改Adams仿真模型,形成仿真模型在HLA系統(tǒng)交互中的輸出;根據(jù)仿真需求修改用戶自定義子程序;編譯用戶自定義子程序生成動(dòng)態(tài)鏈接庫;在Adams仿真模型中加載用戶自定義子程序的動(dòng)態(tài)鏈接庫;導(dǎo)出用于后臺(tái)求解器調(diào)用的.adm模型文件;生成驅(qū)動(dòng)Adams求解器求解的仿真腳本.acf文件,修改仿真腳本文件設(shè)定各項(xiàng)仿
真參數(shù);根據(jù)仿真需求修改fed文件;啟動(dòng)HLA 運(yùn)行支持環(huán)境或是 RTI 服務(wù)器;RTI (Run-Time Infrastructure)指 HLA標(biāo)準(zhǔn)下進(jìn)行協(xié)同仿真的運(yùn)行支撐環(huán)境,是HLA接口規(guī)范的具體實(shí)現(xiàn),是HLA的核心部件,RTI根據(jù)體系結(jié)構(gòu)的不同又可以分為集中式、分布式、分層式和分層分布式等多種,對(duì)于有中心節(jié)點(diǎn)的RTI體系結(jié)構(gòu)實(shí)現(xiàn),將其中心節(jié)點(diǎn)程序稱為“RTI服務(wù)器”。啟動(dòng)Adams仿真模型HLA集成主程序進(jìn)程,加入聯(lián)邦并與其它聯(lián)邦成員進(jìn)行仿真交互;仿真過程結(jié)束,得到仿真結(jié)果文件。本發(fā)明基于HLA的Adams仿真模型集成平臺(tái)設(shè)置了適配器,實(shí)現(xiàn)了 Adams仿真模型在HLA系統(tǒng)中的應(yīng)用,使用方便,效果良好。本發(fā)明基于HLA的Adams仿真模型集成方法是一種基于用戶自定義子程序的Adams仿真模型HLA集成方法,利用Adams軟件環(huán)境提供的用戶自定義子程序作為二次開發(fā)的內(nèi)部接口,能夠達(dá)到對(duì)Adams仿真模型更高程度的控制,實(shí)現(xiàn)在積分步長點(diǎn)的數(shù)據(jù)交互,有效地提高了仿真精度。同時(shí)結(jié)合了內(nèi)存映射文件技術(shù),實(shí)現(xiàn)進(jìn)程間內(nèi)存通訊,避免了讀寫硬盤上的大文件對(duì)仿真效率造成的影響。保留商用仿真軟件求解器的優(yōu)勢,在不需要修改仿真模型或只需進(jìn)行較少配置的前提下實(shí)現(xiàn)了 Adams模型的封裝,極大地提高Adams模型的重用性。


圖I為本發(fā)明基于HLA的Adams仿真模型集成方法原理示意圖。圖2為基于用戶自定義子程序?qū)崿F(xiàn)Adams仿真模型封裝的仿真推進(jìn)進(jìn)程。圖3為雷達(dá)天線的Adams多體動(dòng)力學(xué)模型優(yōu)選實(shí)施例。圖4為Matlab控制模型示意圖。圖5為學(xué)科交互模型示意圖。圖6為Adams和Matlab基于接口的聯(lián)合仿真示意圖。圖7為基于ADAMS/Contools接口聯(lián)合仿真的輸入力矩隨時(shí)間變化曲線。圖8為基于ADAMS/Controls接口聯(lián)合仿真的輸出方位角隨時(shí)間變化曲線。
圖9為輸入力矩隨時(shí)間變化的仿真結(jié)果數(shù)據(jù)曲線。圖10為輸出方位角隨時(shí)間變化仿真結(jié)果數(shù)據(jù)曲線。
具體實(shí)施例方式下面結(jié)合說明書附圖和實(shí)施例對(duì)本發(fā)明做詳細(xì)描述。如圖I所示,本發(fā)明基于HLA的Adams仿真模型集成平臺(tái)包括依次連接的仿真模型單元、適配器單元和HLA系統(tǒng)。仿真模型單元包括至少一個(gè)Adams仿真模型,每個(gè)Adams仿真模型為一個(gè)聯(lián)邦成員;適配器單元設(shè)置在所述仿真模型單元和HLA系統(tǒng)之間,實(shí)現(xiàn)Adams仿真模型的HLA集成。適配器單元包括用戶自定義模塊、共享內(nèi)存空間模塊和主體模塊。用戶自定義模塊包括輸入子模塊VARSUB和輸出子模塊REQSUB ;VARSUB用于向Adams仿真模型輸入數(shù)據(jù)以及更改模型參數(shù);REQSUB用于在步長點(diǎn)上輸出數(shù)據(jù)。共享內(nèi)存空間模塊用于用戶自定義模塊和主體模塊之間的數(shù)據(jù)交互。主體模塊用于適配器單元與HLA系統(tǒng)之間的數(shù)據(jù)交互,該數(shù)據(jù)交互包括配置HLA系統(tǒng)基本功能和使用回調(diào)函數(shù)。HLA系統(tǒng)基本功能至少包括聯(lián)邦管理、聲明管理、對(duì)象管理、所有權(quán)管理、時(shí)間管理和數(shù)據(jù)分發(fā)管理。本發(fā)明基于HLA的Adams仿真模型集成方法利用Adams軟件提供的運(yùn)行時(shí)用戶自定義子程序作為內(nèi)部接口,實(shí)現(xiàn)仿真參數(shù)的輸入輸出;結(jié)合基于Solver命令的仿真腳本來驅(qū)動(dòng)和控制Adams軟件仿真弓I擎的后臺(tái)運(yùn)行,實(shí)現(xiàn)對(duì)仿真過程的控制;開發(fā)Adams仿真模型HLA集成主程序,完成與RTI交互的功能;主程序與用戶自定義子程序之間通過內(nèi)存映射文件技術(shù),實(shí)現(xiàn)進(jìn)程間內(nèi)存通訊。其中,用戶自定義子程序選擇VARSUB子程序用于向Adams仿真模型輸入數(shù)據(jù)以及更改模型參數(shù)。VARSUB子程序會(huì)在ADAMS求解器每次請(qǐng)求輸入變量值時(shí),通過用戶子程序的方式進(jìn)行函數(shù)調(diào)用。用戶自定義子程序選擇REQSUB子程序用于在步長點(diǎn)上輸出數(shù)據(jù)。REQSUB子程序是在輸出步長點(diǎn)上由Adams軟件仿真引擎自動(dòng)調(diào)用,同時(shí)結(jié)合用戶子程序提供的對(duì)內(nèi)部狀態(tài)變量的訪問函數(shù),就可以實(shí)現(xiàn)向外部程序傳遞輸出數(shù)據(jù)。在Adams仿真模型HLA集成主程序中,由Adams仿真引擎決定推進(jìn)步長的大小,驅(qū)動(dòng)外部主控程序推進(jìn)并實(shí)現(xiàn)與RTI的交互?;赟olver命令的仿真腳本能夠控制仿真引擎的啟動(dòng)暫停終止及模型的修改,也支持對(duì)步長的設(shè)置和單步推進(jìn)。在仿真腳本中通過修改參數(shù)指明需要集成到HLA系統(tǒng)中的Adams仿真模型,實(shí)現(xiàn)多個(gè)Adams模型在HLA集成方法中的即插即用;在仿真腳本中通過修改參數(shù)確定輸出仿真結(jié)果文件的文件名等信息;在仿真腳本中設(shè)定仿真步長、仿真時(shí)長,以及選擇的Adams求解器算法等各項(xiàng)仿真參數(shù)。由于Adams仿真模型的HLA集成需要通過商用仿真軟件軟件提供外部接口,使用該外部接口對(duì)學(xué)科模型進(jìn)行仿真過程控制和參數(shù)輸入輸出,因此要求所用商用仿真軟件的二次開發(fā)能力必須支持(I)仿真軟件的啟動(dòng)和仿真模型的初始化;(2)通過外部編程接口控制模型仿真過程的步進(jìn);(3)從工作空間中獲取仿真模型中各種參數(shù)的數(shù)值;(4)通過外部編程接口設(shè)定仿真模型中各種參數(shù)的數(shù)值。對(duì)Adams軟件仿真引擎的封裝需要完成一系列諸如初始化、啟動(dòng)、單步仿真推進(jìn)、終止等通用化的運(yùn)行控制操作。出于商業(yè)上的種種原因,Adams的對(duì)外API接口并不是十分開放,其二次開發(fā)方法和可開發(fā)程度均受到很大的限制。在Adams所支持的各二次開發(fā)接口中效果好而且方便使用的是基于Solver命令的仿真腳本控制和基于用戶自定義子程序的模型擴(kuò)展。其中,仿真腳本能夠控制仿真引擎的啟動(dòng)暫停終止,模型的修改,也支持對(duì)步長的設(shè)置和單步推進(jìn),同時(shí)支持單步推進(jìn)時(shí)每次 暫停的保存和重載系統(tǒng)狀態(tài)信息。Adams用戶自定義子程序可以分為編譯時(shí)用戶自定義子程序和運(yùn)行時(shí)用戶自定義子程序。編譯時(shí)用戶自定義子程序,也稱為自定義編譯函數(shù),是在建模過程中被view環(huán)境調(diào)用的,可以實(shí)現(xiàn)對(duì)原有函數(shù)計(jì)算功能的擴(kuò)展,構(gòu)建數(shù)學(xué)函數(shù)很難表達(dá)的復(fù)雜函數(shù),主要是對(duì)建模過程進(jìn)行輔助。運(yùn)行時(shí)用戶自定義子程序能夠?qū)崿F(xiàn)復(fù)雜的仿真運(yùn)行控制以及積分步上數(shù)據(jù)內(nèi)部與外部的通訊,功能最為強(qiáng)大。因此,本發(fā)明基于HLA的Adams仿真模型集成方法主要是利用Adams的用戶自定義子程序?qū)崿F(xiàn)數(shù)據(jù)的輸入輸出,同時(shí)結(jié)合基于Solver命令的仿真腳本來驅(qū)動(dòng)和控制Adams軟件仿真引擎的后臺(tái)運(yùn)行。由于Adams沒有提供標(biāo)準(zhǔn)的工作空間,Adams軟件仿真引擎的內(nèi)存空間不能直接訪問,因此仿真過程中數(shù)據(jù)的輸入輸出是基于內(nèi)部接口的適配器開發(fā)需要解決的關(guān)鍵點(diǎn)。外部程序向Adams輸入數(shù)據(jù)有兩種方式第一種是直接修改模型文件,第二種是向共享工作空間中輸入數(shù)據(jù),由Adams軟件仿真引擎來讀取。本發(fā)明基于HLA的Adams仿真模型集成方法中采用第二種方式。Adams提供了一系列功能各異的用戶子程序,根據(jù)需要,我們選擇VARSUB子程序用于向Adams模型輸入數(shù)據(jù)以及更改模型參數(shù),選擇REQSUB子程序用于在步長點(diǎn)上輸出數(shù)據(jù)。VARSUB子程序會(huì)在Adams求解器每次請(qǐng)求輸入變量值時(shí),通過用戶子程序的方式進(jìn)行函數(shù)調(diào)用。REQSUB子程序則是在輸出步長點(diǎn)上由Adams軟件仿真引擎自動(dòng)調(diào)用,同時(shí)結(jié)合用戶子程序提供的對(duì)內(nèi)部狀態(tài)變量的訪問函數(shù),就可以實(shí)現(xiàn)向外部程序傳遞輸出數(shù)據(jù)。Adams用戶自定義子程序可以采用Fortran語言或C語言編寫,將子程序編譯為動(dòng)態(tài)鏈接庫(.dll)文件后即可被Adams軟件仿真引擎在運(yùn)行時(shí)調(diào)用。外部程序可以和Adams用戶子程序通過共享內(nèi)存或者外存文件的方式進(jìn)行數(shù)據(jù)的傳遞。頻繁讀寫外存文件會(huì)降低仿真效率,因此我們采用AdamS_HLA適配器主程序與Adams用戶自定義子程序共享內(nèi)存的方式完成數(shù)據(jù)的交互,其具體實(shí)現(xiàn)中應(yīng)用了內(nèi)存映射文件技術(shù)。同時(shí),我們采用Adams/Solver命令集腳本實(shí)現(xiàn)對(duì)仿真過程的控制。仿真啟動(dòng)后,適配器主程序和用戶自定義子程序需要按照進(jìn)程間通信的方式進(jìn)行協(xié)調(diào),使仿真引擎不斷向前推進(jìn),幾個(gè)進(jìn)程間交互的具體時(shí)序過程如圖2所示。
Adams的用戶自定義子程序是Adams模型仿真過程的內(nèi)部接口,在上述仿真推進(jìn)過程中,是由Adams仿真引擎來驅(qū)動(dòng)外部主控程序推進(jìn)并實(shí)現(xiàn)與RTI的交互。這種方法的主要特點(diǎn)是由Adams仿真引擎決定推進(jìn)步長的大小。由于通過用戶自定義子程序中的函數(shù)可以獲得每次由內(nèi)部算法產(chǎn)生的積分步,并可以在積分步上根據(jù)輸入變量調(diào)整模型參數(shù),因此子系統(tǒng)間可以在積分步點(diǎn)上進(jìn)行數(shù)據(jù)交互,從而在更精確的層次上控制仿真的推進(jìn)。由于基于用戶自定義子程序的封裝方法不需要在每個(gè)步長點(diǎn)都重新啟動(dòng)仿真引擎,因此無須模型當(dāng)前狀態(tài)的保存和重載,也就避免了頻繁讀寫硬盤上的大文件。優(yōu)選實(shí)施例雷達(dá)天線antenna的Adams模型是多體動(dòng)力學(xué)模型,其馬達(dá)上施加的力矩由Matlab/Simulink建立的控制模型給出,因此,對(duì)雷達(dá)天線轉(zhuǎn)動(dòng)過程的仿真分析是典型的多學(xué)科協(xié)同仿真。仿真分析的主要指標(biāo)是雷達(dá)天線最終能否轉(zhuǎn)動(dòng)到要求的角度并停止。雷達(dá)天線的Adams多體動(dòng)力學(xué)模型、Matlab控制模型和學(xué)科交互模型分別如圖3、圖4和圖5所示。Antenna 是一個(gè)用于 ADAMS/Controls 與 MATLAB/Simulink 聯(lián)合仿真的樣例模 型,在該聯(lián)合仿真系統(tǒng)中定義了兩個(gè)Adams輸出到Matlab的變量azimuth_position(方位角)、rotor_velocity (馬達(dá)轉(zhuǎn)速),以及一個(gè)Matlab輸出到Adams中的變量control_torque (控制力矩)。設(shè)仿真總時(shí)間為O. 25s,調(diào)度引擎共推進(jìn)100步,即單步步長為O. 005s, Adams和Matlab通過Adams/Control模塊直接實(shí)現(xiàn)基于接口的聯(lián)合仿真如圖6所示。圖7和圖8分別給出了基于ADAMS/Contrο I s接口聯(lián)合仿真得到的控制力矩、方位角的曲線。采用本發(fā)明中提出的基于HLA的adams仿真模型集成方法,需要對(duì)模型和用戶自定義子程序進(jìn)行少量改動(dòng)。具體實(shí)施步驟如下(I)設(shè)定輸入,由于要用到VARSUB,因此無論哪種類型的輸入,統(tǒng)一為AdamsVaviable 的形式。選擇變量 control torque 的定義方式為 Unser written subroutine 用戶自定義子程序,初值設(shè)定為O。(2)設(shè)定輸出,這里用到REQSUB子程序,因此需要在adams模型中定義一個(gè)Request作為子程序入口,這個(gè)子程序會(huì)在輸出步長點(diǎn)上自動(dòng)被調(diào)用選擇輸出方式為Define Using Subroutine,User Function中可以輸入調(diào)用該用戶自定義子程序時(shí)傳入的變量,這里我們輸入I。(3)修改REQ用戶自定義子程序
VOID—FUNCTION REQSUB(int * id,REAL * time,RE AL *par,int *nPar,B〇OL
*iflag,REAL *value){…
hFileReq=
OpenFileMapping(FILE_MAP_ALL_ACCESS,FALSE,"requests");
lpReq=(double
* )MapViewOfFile(hFileReq,FILE_MAP_ALL_ACCE SS,0,0,0);
ipar
=2;//第一個(gè)輸出變量 rotor—velocity,其 adams 編號(hào)為 2
c—sysfnc(”VARVAL”,ipar,l,&rrreq,&err);//查詢 2 號(hào)更量的值作為輸出 *lpReq=rrreq;ipar
=3;//第二個(gè)輸出變量adams編號(hào)為3
c—sysfnc(”VARYAL”,ipar,l,&rrreq,&err);//查i句 3 號(hào)更量的值作為輸出
IpReq++;
*lpReq=rrreq;
IpReq--;
UnmapYiewOfFile(IpReq);
}(4)編譯用戶自定義子程序生成動(dòng)態(tài)鏈接庫要編譯鏈接用戶自定義子程序,需要安裝Compaq Visual Fortran V6.6b及以上版本,同時(shí)需要將adams安裝路徑中的userPortName. h和utilccallable. h拷貝到工作目錄下,將Fortran安裝目錄中的dformd. Iib和dfport. Iib拷貝到工作目錄下,用adams安裝路徑下的DFORMD. dll覆蓋系統(tǒng)system32目錄下的同名文件。開始-運(yùn)行-cmd轉(zhuǎn)到工作目錄>adams05>cr-u回車VForce. c回車
VForce. dll這樣就在工作目錄中生成了 VForce. dll動(dòng)態(tài)鏈接庫文件。(5)在Adams模型中加載用戶自定義子程序的動(dòng)態(tài)鏈接庫。>>adams05 aview ru~u i_n VForce. dll(6)導(dǎo)出用于后臺(tái)求解器調(diào)用的antenna, adm模型。(7)生成驅(qū)動(dòng)Adams求解器求解的仿真腳本文件antenna, acf,腳本代碼如下antenna, admantenna·
SIMULATE/DYNAMIC, END = 0· 25,STEPS = 100STOP在腳本文件中指定了仿真的模型為antenna, adm,動(dòng)態(tài)仿真,仿真時(shí)長O. 25s,步數(shù)為100步。(8)啟動(dòng)RTI服務(wù)器,啟動(dòng)Adams_HLA適配器進(jìn)程,與Matlab/Simulink實(shí)現(xiàn)的另一聯(lián)邦成員協(xié)同仿真。完成上述步驟后,源Adams仿真模型就實(shí)現(xiàn)了向HLA協(xié)同仿真系統(tǒng)的集成。仿真過程結(jié)束后,得到的仿真結(jié)果數(shù)據(jù)曲線如圖9和圖10所示。將Adams仿真模型HLA集成后進(jìn)行HLA分布式協(xié)同仿真的仿真結(jié)果與前述通過Adams/Control模塊進(jìn)行的集中式仿真的結(jié)果進(jìn)行對(duì)比,可以看出本發(fā)明提出的基于HLA的Adams模型集成方法,可以較好的實(shí)現(xiàn)與基于商用仿真軟件接口的聯(lián)合仿真相同的功倉泛。以上,僅為本發(fā)明的較佳實(shí)施例,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求所界定的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種基于HLA的Adams仿真模型集成平臺(tái),其特征在于所述平臺(tái)包括依次連接的仿真模型單元、適配器單元和HLA系統(tǒng),其中, 仿真模型單元,包括至少一個(gè)Adams仿真模型,每個(gè)Adams仿真模型為一個(gè)聯(lián)邦成員;適配器單元,設(shè)置在所述仿真模型單元和HLA系統(tǒng)之間,實(shí)現(xiàn)Adams仿真模型的HLA集成;所述適配器單元包括用戶自定義模塊、共享內(nèi)存空間模塊和主體模塊,其中, 用戶自定義模塊,包括輸入子模塊VARSUB和輸出子模塊REQSUB ;VARSUB用于向Adams仿真模型輸入數(shù)據(jù)以及更改模型參數(shù);REQSUB用于在步長點(diǎn)上輸出數(shù)據(jù); 共享內(nèi)存空間模塊,用于用戶自定義模塊和主體模塊之間的數(shù)據(jù)交互; 主體模塊,用于適配器單元與HLA系統(tǒng)之間的數(shù)據(jù)交互,所述數(shù)據(jù)交互包括配置HLA系統(tǒng)基本功能和使用回調(diào)函數(shù);所述HLA系統(tǒng)基本功能至少包括聯(lián)邦管理、聲明管理、對(duì)象管理、所有權(quán)管理、時(shí)間管理和數(shù)據(jù)分發(fā)管理。
2.根據(jù)權(quán)利要求I所述的基于HLA的Adams仿真模型集成平臺(tái),其特征在于,所述用戶自定義模塊由Fortran語言或C語言編寫,將其編譯為動(dòng)態(tài)鏈接庫.dll文件后被Adams軟件仿真引擎在運(yùn)行時(shí)調(diào)用。
3.根據(jù)權(quán)利要求I所述的基于HLA的Adams仿真模型集成方法,其特征在于共享內(nèi)存空間模塊使用內(nèi)存映射文件技術(shù)來實(shí)現(xiàn)數(shù)據(jù)交互。
4.一種基于HLA的Adams仿真模型集成方法,其特征在于,所述集成方法包括下述步驟 通過添加VARSUB變量修改Adams仿真模型,形成仿真模型在HLA系統(tǒng)交互中的輸入; 通過添加REQSUB變量修改Adams仿真模型,形成仿真模型在HLA系統(tǒng)交互中的輸出; 根據(jù)仿真需求修改用戶自定義子程序; 編譯用戶自定義子程序生成動(dòng)態(tài)鏈接庫; 在Adams仿真模型中加載用戶自定義子程序的動(dòng)態(tài)鏈接庫; 導(dǎo)出用于后臺(tái)求解器調(diào)用的.adm模型文件; 生成驅(qū)動(dòng)Adams求解器求解的仿真腳本.acf文件,修改仿真腳本文件設(shè)定各項(xiàng)仿真參數(shù); 根據(jù)仿真需求修改fed文件; 啟動(dòng)HLA運(yùn)行支撐環(huán)境服務(wù)器; 啟動(dòng)Adams仿真模型HLA集成主程序進(jìn)程,加入聯(lián)邦并與其它聯(lián)邦成員進(jìn)行仿真交互; 仿真過程結(jié)束,得到仿真結(jié)果文件。
全文摘要
本發(fā)明公開一種基于HLA的Adams仿真模型集成平臺(tái),為解決現(xiàn)有技術(shù)中Adams仿真模型難以HLA集成的缺陷而設(shè)計(jì)。本發(fā)明基于HLA的Adams仿真模型集成平臺(tái)包括仿真模型單元、適配器單元和HLA系統(tǒng)。仿真模型單元包括至少一個(gè)Adams仿真模型。適配器單元包括用戶自定義模塊、共享內(nèi)存空間模塊和主體模塊。用戶自定義模塊包括輸入子模塊和輸出子模塊。本發(fā)明公開一種基于HLA的Adams仿真模型集成方法。本發(fā)明基于HLA的Adams仿真模型集成方法保留了商用仿真軟件求解器的優(yōu)勢,在不需要修改仿真模型或只需進(jìn)行較少配置的前提下實(shí)現(xiàn)了Adams模型的封裝,極大地提高Adams模型的重用性。
文檔編號(hào)G06F17/50GK102915386SQ201210124349
公開日2013年2月6日 申請(qǐng)日期2012年4月25日 優(yōu)先權(quán)日2012年4月25日
發(fā)明者范文慧, 馬成, 肖田元, 王威, 岳英超 申請(qǐng)人:清華大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
胶州市| 泰来县| 尼玛县| 芜湖县| 桃园市| 益阳市| 中江县| 沈丘县| 新竹市| 含山县| 贡觉县| 中宁县| 康保县| 射阳县| 扶风县| 介休市| 乌拉特后旗| 庆云县| 阳信县| 永仁县| 田东县| 章丘市| 赞皇县| 大足县| 如东县| 嘉黎县| 句容市| 乌海市| 苍梧县| 六盘水市| 徐州市| 龙游县| 霍林郭勒市| 西林县| 香格里拉县| 舟曲县| 平南县| 攀枝花市| 崇仁县| 精河县| 阿拉善右旗|