亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種采用iosem接口方式的緊耦合仿真通用模型實現(xiàn)方法

文檔序號:6366549閱讀:357來源:國知局
專利名稱:一種采用iosem接口方式的緊耦合仿真通用模型實現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機仿真方法技術(shù)領(lǐng)域,具體為一種采用IOSEM接口方式的緊耦合仿真通用模型實現(xiàn)方法。
背景技術(shù)
緊耦合仿真是指仿真應(yīng)用中,仿真模型間的數(shù)據(jù)交互關(guān)系復(fù)雜,數(shù)據(jù)交互頻率高,交互量大,具有緊密的對應(yīng)關(guān)系。在建模仿真過程中,仿真模型接受仿真軟件的調(diào)度,要完成建模、仿真以及其它一些應(yīng)用需求的多種功能,客觀上要求模型接口具有一定的靈活性 和通用性。而目前緊耦合模型間的接口一般都是根據(jù)需求自定義接口,還沒有一個統(tǒng)一的接口技術(shù),這就使得現(xiàn)有仿真過程中的接口復(fù)雜,不同功能模塊的模型可移植性差,可重用性差。

發(fā)明內(nèi)容
要解決的技術(shù)問題為解決現(xiàn)有技術(shù)中存在的問題,提供一種標準化的仿真模型接口,本發(fā)明提出了一種采用IOSEM接口方式的緊耦合仿真通用模型實現(xiàn)方法。技術(shù)方案本發(fā)明中IOSEM指的是輸入?yún)?shù)(Input)、輸出參數(shù)(Output)、狀態(tài)參數(shù)(State)、事件響應(yīng)接口(Event)和消息(Message)。本發(fā)明的技術(shù)方案為所述一種采用IOSEM接口方式的緊耦合仿真通用模型實現(xiàn)方法,其特征在于包括以下步驟步驟I :在C語言或C++語言環(huán)境中,建立動態(tài)庫編譯環(huán)境;步驟2 :定義仿真模型的接口函數(shù),函數(shù)參數(shù)由外部系統(tǒng)向仿真模型發(fā)出的事件消息、外部系統(tǒng)向仿真模型傳遞的消息參數(shù)、當前仿真時間、當前仿真步長、仿真狀態(tài)變量、輸入變量、輸出變量和仿真狀態(tài)變量的導(dǎo)數(shù)變量組成;步驟3 :根據(jù)仿真模型的功能,在仿真模型的接口函數(shù)中構(gòu)建以下事件中的單個事件或多個事件仿真模型信息事件、仿真初始化事件、狀態(tài)遷移事件、模型輸出事件、仿真結(jié)束事件和自定義事件;接口函數(shù)中的事件響應(yīng)采用switch-case結(jié)構(gòu);步驟4 :編譯仿真模型,生成IOSEM接口方式的仿真模型。有益效果一個復(fù)雜系統(tǒng)的模型,必然包含了若干子系統(tǒng)模型,即一個復(fù)雜大系統(tǒng)模型事實上是由若干子模型功能組成的。采用本發(fā)明提出的緊耦合仿真通用模型實現(xiàn)方法,可以使得每一個子模型成為一個標準化的模型配件,進而通過對所有子模型進行合理裝配得到復(fù)雜系統(tǒng)的模型。這樣不僅可以實現(xiàn)每個模型的接口標準化、透明化,便于實現(xiàn)模塊化建模,還提高了模型的可移植性和重用性,大大降低復(fù)雜系統(tǒng)的建模仿真難度。


圖I :仿真模型的信息描述
具體實施例方式下面結(jié)合具體實施例描述本發(fā)明實施例本實施例以一個自由落體數(shù)學(xué)模型為例(向上為正),其中D為下降過程中的阻力加速度,則其仿真模型微分方程為
\v = —g — D. δ
[H = V要構(gòu)建采用IOSEM接口方式的仿真模型,主要采用以下步驟步驟I :在C語言或C++語言環(huán)境中,建立動態(tài)庫編譯環(huán)境;步驟2 :定義仿真模型的接口函數(shù),函數(shù)參數(shù)由外部系統(tǒng)向仿真模型發(fā)出的事件消息、外部系統(tǒng)向仿真模型傳遞的消息參數(shù)、當前仿真時間、當前仿真步長、仿真狀態(tài)變量、輸入變量、輸出變量和仿真狀態(tài)變量的導(dǎo)數(shù)變量組成;參照附圖1,仿真模型的接口分為以下幾個部分輸入?yún)?shù)(Input):仿真模型需要的輸入數(shù)據(jù),可以是多維,包括數(shù)據(jù)維數(shù)和數(shù)據(jù)說明。輸出參數(shù)(Output):仿真模型的輸出數(shù)據(jù),可以是多維,包括數(shù)據(jù)維數(shù)和數(shù)據(jù)說明。狀態(tài)參數(shù)(State):對于緊耦合仿真模型,狀態(tài)參數(shù)表示了系統(tǒng)或模型當前運行的狀態(tài)參數(shù),包括當前時間,運行步長,微分方程組的狀態(tài)和微分值。事件響應(yīng)接口(Event):仿真軟件平臺采用消息驅(qū)動機制驅(qū)動模型運行,仿真模型根據(jù)平臺發(fā)送的消息進行相應(yīng)的計算,事件響應(yīng)接口是響應(yīng)系統(tǒng)消息的計算部分。由于平臺向模型發(fā)送的消息種類比較多,為每個消息定制響應(yīng)的接口函數(shù)將導(dǎo)致編程過程復(fù)雜,因此,事件響應(yīng)接口采用統(tǒng)一的接口,在該接口內(nèi),用戶可以處理各種系統(tǒng)或自定義消肩、O消息(Message):仿真模型向仿真軟件或其它仿真模型發(fā)送的信息,進行仿真模型間的協(xié)調(diào)運行和數(shù)據(jù)交互。仿真模型接口的形式為extern" C" int_exportInterface(int msg,int param,double time,double氺step,double氺x,double氺u,double氺y,double氺f)各參數(shù)的意義為msg :系統(tǒng)向仿真模型發(fā)出的事件消息;param :系統(tǒng)向仿真模型傳遞的消息參數(shù),根據(jù)不同的消息,傳遞參數(shù)類型不同;time :當前仿真時間;step:當前仿真步長;
X :仿真狀態(tài)變量;U :輸入變量,外部的輸入?yún)?shù);
y :輸出變量,計算結(jié)果通過該參數(shù)輸出;f :狀態(tài)變量的導(dǎo)數(shù)變量指針,用來計算狀態(tài)變量的導(dǎo)數(shù);由該接口可以看出在模型中,通過響應(yīng)各種仿真消息,實現(xiàn)仿真平臺對仿真模型的驅(qū)動;Param參數(shù)為模型數(shù)據(jù)的保存、維護等提供了支持;仿真時間和仿真步長是由平臺維護的,仿真模型可以直接使用;通過X、U、y、f這四個參數(shù)為仿真模型的計算提供了支持;通過參數(shù)u可以得到仿真模型的輸入,通過X可以得到當前的積分狀態(tài)值,通過設(shè)定f以設(shè)定積分的導(dǎo)數(shù)值,通過設(shè)定I給出模型的輸出值。那么在本實施例中,完成仿真模型功能的接口元素為輸入變量D (阻力加速度);輸出變量V,H(速度、高度);仿真狀態(tài)變量V,H (速度、高度);步驟3 :根據(jù)仿真模型的功能,在仿真模型的接口函數(shù)中構(gòu)建以下事件中的單個事件或多個事件仿真模型信息事件、仿真初始化事件、狀態(tài)遷移事件、模型輸出事件、仿真結(jié)束事件和自定義事件;接口函數(shù)中的事件響應(yīng)采用switch-case結(jié)構(gòu);在仿真模型接口函數(shù)中,通過響應(yīng)msg事件消息,完成相應(yīng)的事件行為仿真模型信息事件通過該事件填充模型的信息,如模型名、輸入輸出信息等;仿真初始化事件在仿真前進行的初始化過程,如賦狀態(tài)初值、打開文件讀取數(shù)據(jù)等;狀態(tài)遷移事件狀態(tài)的變化,求解狀態(tài)變量的微分;模型輸出事件輸出本模型的數(shù)據(jù);仿真結(jié)束事件結(jié)束仿真時的清理過程。本實施例中采用了 4個事件響應(yīng)仿真模型信息事件響應(yīng)、仿真初始化事件響應(yīng)、狀態(tài)遷移事件響應(yīng)、狀態(tài)輸出事件響應(yīng)。本實施例中,仿真模型實現(xiàn)的偽代碼為
extern ”C" int export
Drop(int msg, int param,double time,double* step, double* x,double* u,double* y,double* f)
{ doubleg=9.81;//重力加速度switch(msg)
{
case SM—INFO: //仿真模型信息事件響應(yīng) model.title= “自由落體動力學(xué)模型”; model.inpu t= “D”; model.output= “V,H”;
break;
case SM—INITIALIZE: //仿真初始化事件響應(yīng)x
=0; //狀態(tài)V賦初值x[l]=1000;//狀態(tài)H賦初值
break;
case SM—CONTINUE: //狀態(tài)遷移事件響應(yīng)fI0]=-g-u
; //狀態(tài)的變化率fll]=x
;break;
case SM—OUTPUT: //狀態(tài)輸出事件響應(yīng)y
=x
;y[l]=x[l];break;
}
return 0;
}步驟4 :編譯仿真模型,生成IOSEM接口方式的仿真模型。
權(quán)利要求
1.一種采用IOSEM接口方式的緊耦合仿真通用模型實現(xiàn)方法,其特征在于包括以下步驟 步驟I :在C語目或C++語目環(huán)境中,建立動態(tài)庫編譯環(huán)境; 步驟2 :定義仿真模型的接口函數(shù),函數(shù)參數(shù)由外部系統(tǒng)向仿真模型發(fā)出的事件消息、外部系統(tǒng)向仿真模型傳遞的消息參數(shù)、當前仿真時間、當前仿真步長、仿真狀態(tài)變量、輸入變量、輸出變量和仿真狀態(tài)變量的導(dǎo)數(shù)變量組成; 步驟3 :根據(jù)仿真模型的功能,在仿真模型的接口函數(shù)中構(gòu)建以下事件中的單個事件或多個事件仿真模型信息事件、仿真初始化事件、狀態(tài)遷移事件、模型輸出事件、仿真結(jié)束事件和自定義事件;接口函數(shù)中的事件響應(yīng)采用switch-case結(jié)構(gòu); 步驟4 :編譯仿真模型,生成IOSHM接口方式的仿真模型。
全文摘要
本發(fā)明提出了一種采用IOSEM接口方式的緊耦合仿真通用模型實現(xiàn)方法,首先建立動態(tài)庫編譯環(huán)境,然后定義仿真模型的接口函數(shù),并根據(jù)仿真模型的功能,在仿真模型的接口函數(shù)中構(gòu)建以下事件中的單個事件或多個事件仿真模型信息事件、仿真初始化事件、狀態(tài)遷移事件、模型輸出事件、仿真結(jié)束事件和自定義事件;接口函數(shù)中的事件響應(yīng)采用switch-case結(jié)構(gòu),最后編譯生成仿真模型。采用本發(fā)明提出的方法,可以使每一個子模型成為標準化的模型配件,通過對所有子模型進行合理裝配得到復(fù)雜系統(tǒng)的模型。這樣可以實現(xiàn)每個模型的接口標準化、透明化,便于實現(xiàn)模塊化建模,還提高了模型的可移植性和重用性,大大降低復(fù)雜系統(tǒng)的建模仿真難度。
文檔編號G06F17/50GK102637224SQ20121007245
公開日2012年8月15日 申請日期2012年3月19日 優(yōu)先權(quán)日2012年3月19日
發(fā)明者閆曉東 申請人:西北工業(yè)大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1