一種跨平臺(tái)的仿真模型開(kāi)發(fā)方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及仿真模型開(kāi)發(fā),特別是涉及一種跨平臺(tái)的仿真模型開(kāi)發(fā)系統(tǒng)及方法。
【背景技術(shù)】
[0002]將模型驅(qū)動(dòng)結(jié)構(gòu)(MDA)開(kāi)發(fā)模式引入組件式仿真模型開(kāi)發(fā)(BOM)中是當(dāng)前流行的仿真系統(tǒng)開(kāi)發(fā)方法,通過(guò)對(duì)組件式仿真模型的形式化描述,利用模型開(kāi)發(fā)工具自動(dòng)生成包含BOM組件接口的仿真模型代碼框架。
[0003]隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,各種新平臺(tái)、新技術(shù)的不斷涌現(xiàn),使得仿真系統(tǒng)平臺(tái)面臨著如何適應(yīng)多種平臺(tái),多操作系統(tǒng)共存的問(wèn)題。目前仿真平臺(tái)中使用的模型開(kāi)發(fā)工具強(qiáng)依賴于具體的開(kāi)發(fā)環(huán)境,例如VC6.0、VS2008等,需要依賴相應(yīng)開(kāi)發(fā)環(huán)境的代碼生成工具引擎(WIZARD)來(lái)生成與開(kāi)發(fā)環(huán)境一致的代碼框架程序,這導(dǎo)致仿真模型在可跨開(kāi)發(fā)環(huán)境性能方面存在明顯缺陷。
[0004]因此,需要提供一種跨平臺(tái)的仿真模型開(kāi)發(fā)方法,利用Qt程序開(kāi)發(fā)框架、XML可擴(kuò)展的置標(biāo)語(yǔ)言等具備跨平臺(tái)特征的技術(shù),通過(guò)可視化建模環(huán)境建立仿真模型,為各類平臺(tái)的仿真用戶提供統(tǒng)一開(kāi)發(fā)模型的規(guī)范以及工具,大大提高仿真開(kāi)發(fā)效率。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問(wèn)題是提供一種跨平臺(tái)的仿真模型開(kāi)發(fā)方法及系統(tǒng),解決解決以往仿真模型開(kāi)發(fā)依賴于平臺(tái)和開(kāi)發(fā)環(huán)境的問(wèn)題,增強(qiáng)仿真模型開(kāi)發(fā)的靈活性和可移植性。
[0006]為解決上述技術(shù)問(wèn)題,本發(fā)明采用下述技術(shù)方案一種跨平臺(tái)的仿真模型開(kāi)發(fā)方法,其特征在于,該方法包括
[0007]對(duì)仿真模型進(jìn)行標(biāo)準(zhǔn)化處理;
[0008]將仿真代碼的邏輯規(guī)則存儲(chǔ)在模板文件中;
[0009]用戶根據(jù)標(biāo)準(zhǔn)化的仿真模型模板,對(duì)仿真模型開(kāi)發(fā)信息進(jìn)行配置;
[0010]記錄用戶交互過(guò)程中的用戶輸入信息并進(jìn)行解析,同時(shí),生成能翻譯仿真模型模板中宏的數(shù)據(jù)字典及文件映射關(guān)系;
[0011]根據(jù)所述宏的數(shù)據(jù)字典及文件映射關(guān)系,對(duì)相應(yīng)的模板文件進(jìn)行翻譯,獲得目標(biāo)代碼文件。
[0012]優(yōu)選的,該方法的步驟還包括將所述宏的數(shù)據(jù)字典及文件映射關(guān)系存儲(chǔ)成XML格式文件;
[0013]優(yōu)選的,該方法還包括將對(duì)所述XML格式的數(shù)據(jù)字典及文件映射關(guān)系信息進(jìn)行解析,從中提取制定節(jié)點(diǎn)數(shù)據(jù)信息,用于對(duì)相應(yīng)的模板文件進(jìn)行翻譯。
[0014]一種跨平臺(tái)的仿真模型開(kāi)發(fā)系統(tǒng),該系統(tǒng)包括
[0015]仿真模型標(biāo)準(zhǔn)化模塊,用于對(duì)模型接口進(jìn)行轉(zhuǎn)換,實(shí)現(xiàn)標(biāo)準(zhǔn)化仿真模型標(biāo)準(zhǔn)化;
[0016]模型代碼模板編輯模塊,用于將生成代碼的邏輯規(guī)則存儲(chǔ)成模板文件;
[0017]可視化向?qū)卧?,根?jù)用戶的輸入信息,獲得能翻譯所述模板文件中宏的數(shù)據(jù)字典以及文件映射關(guān)系;
[0018]信息轉(zhuǎn)換模塊,用于將所述宏的數(shù)據(jù)字典以及文件映射關(guān)系存儲(chǔ)成XML格式文件;
[0019]模型代碼框架生成單元,根據(jù)解析XML格式文件獲得的制定節(jié)點(diǎn)的數(shù)據(jù)信息,對(duì)相應(yīng)的模板文件進(jìn)行翻譯,獲得目標(biāo)代碼。
[0020]優(yōu)選的,所述可視化向?qū)卧?br>[0021]用戶開(kāi)發(fā)模塊,用于用戶根據(jù)所述模板文件對(duì)仿真模型進(jìn)行開(kāi)發(fā);
[0022]用戶信息解析模塊,用于對(duì)用戶交互過(guò)程中的輸入信息解析并記錄;
[0023]文件生成模塊,用于根據(jù)解析后的用戶輸入信息,獲得能翻譯所述模板文件中宏的數(shù)據(jù)字典以及文件映射關(guān)系。
[0024]優(yōu)選的,所述模型代碼框架生成單元包括
[0025]解析模塊,用于對(duì)所述XML格式文件進(jìn)行解析,獲得指定節(jié)點(diǎn)的數(shù)據(jù)字典和文件映射關(guān)系;
[0026]目標(biāo)代碼生成模塊,用于根據(jù)所述制定節(jié)點(diǎn)的數(shù)據(jù)字典和文件映射關(guān)系,對(duì)相應(yīng)的模板文件進(jìn)行翻譯,獲得目標(biāo)代碼文件。
[0027]本發(fā)明的有益效果如下:
[0028]本發(fā)明所述技術(shù)方案可以替代Microsoft VC6.0、VS2008等開(kāi)發(fā)環(huán)境下WIZARD定制工具的功能,擺脫了對(duì)開(kāi)發(fā)環(huán)境的依賴,能夠支持各種平臺(tái)以及編譯器版本的模型代碼框架自動(dòng)生成,解決了仿真模型開(kāi)發(fā)的跨平臺(tái)問(wèn)題。采用的基于模板的代碼框架生成實(shí)現(xiàn)了生成規(guī)則與代碼生成引擎的分離,當(dāng)需求發(fā)生變化以至生成規(guī)則需要更改時(shí),只需要對(duì)模板文件進(jìn)行修改。
【附圖說(shuō)明】
[0029]下面結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】作進(jìn)一步詳細(xì)的說(shuō)明;
[0030]圖1示出一種跨平臺(tái)的仿真模型開(kāi)發(fā)系統(tǒng)的示意圖。
【具體實(shí)施方式】
[0031]本發(fā)明公開(kāi)了一種跨平臺(tái)的仿真模型開(kāi)發(fā)方法,該方法包括對(duì)仿真模型進(jìn)行標(biāo)準(zhǔn)化處理;將仿真代碼的邏輯規(guī)則存儲(chǔ)在模板文件中;用戶根據(jù)標(biāo)準(zhǔn)化的仿真模型模板,對(duì)仿真模型開(kāi)發(fā)信息進(jìn)行配置;記錄用戶交互過(guò)程中的用戶輸入信息并進(jìn)行解析,同時(shí),生成能翻譯仿真模型模板中宏的數(shù)據(jù)字典及文件映射關(guān)系,所述宏包括名字宏和控制宏兩種,所述名字宏用于字符串的簡(jiǎn)單映射,所述控制宏包括分支宏和循環(huán)宏;所述宏的數(shù)據(jù)字典及文件映射關(guān)系存儲(chǔ)成XML格式文件;對(duì)所述XML格式的數(shù)據(jù)字典及文件映射關(guān)系信息進(jìn)行解析,從中提取制定節(jié)點(diǎn)數(shù)據(jù)信息;根據(jù)所述宏的數(shù)據(jù)字典及文件映射關(guān)系,對(duì)相應(yīng)的模板文件進(jìn)行翻譯,獲得目標(biāo)代碼文件。
[0032]本發(fā)明進(jìn)一步公開(kāi)了一種跨平臺(tái)的仿真模型開(kāi)發(fā)系統(tǒng),該系統(tǒng)包括仿真模型標(biāo)準(zhǔn)化模塊,用于對(duì)模型接口進(jìn)行轉(zhuǎn)換,實(shí)現(xiàn)標(biāo)準(zhǔn)化仿真模型標(biāo)準(zhǔn)化;模型代碼模板編輯模塊,用于將生成代碼的邏輯規(guī)則存儲(chǔ)成模板文件;可視化向?qū)卧?,根?jù)用戶的輸入信息,獲得能翻譯所述模板文件中宏的數(shù)據(jù)字典以及文件映射關(guān)系,所述可視化向?qū)卧ㄓ脩糸_(kāi)發(fā)模塊,用于用戶根據(jù)所述模板文件對(duì)仿真模型進(jìn)行開(kāi)發(fā);用戶信息解析模塊,用于對(duì)用戶交互過(guò)程中的輸入信息解析并記錄;文件生成模塊,用于根據(jù)解析后的用戶輸入信息,獲得能翻譯所述模板文件中宏的數(shù)據(jù)字典以及文件映射關(guān)系;信息轉(zhuǎn)換模塊,用于將所述宏的數(shù)據(jù)字典以及文件映射關(guān)系存儲(chǔ)成XML格式文件;模型代碼框架生成單元,根據(jù)解析XML格式文件獲得的制定節(jié)點(diǎn)的數(shù)據(jù)信息,對(duì)相應(yīng)的模板文件進(jìn)行翻譯,獲得目標(biāo)代碼,所述模型代碼框架生成單元包括解析模塊,用于對(duì)所述XML格式文件進(jìn)行解析,獲得指定節(jié)點(diǎn)的數(shù)據(jù)字典和文件映射關(guān)系;目標(biāo)代碼生成模塊,用于根據(jù)所述制定節(jié)點(diǎn)的數(shù)據(jù)字典和文件映射關(guān)系,對(duì)相應(yīng)的模板文件進(jìn)行翻譯,獲得目標(biāo)代碼文件。
[0033]下面通過(guò)一組實(shí)施例對(duì)本發(fā)明做進(jìn)一步說(shuō)明:
[0034]構(gòu)建仿真模型開(kāi)發(fā)環(huán)境,仿真模型開(kāi)發(fā)環(huán)境包括仿真模型形式化描述、代碼模板編輯、可視化向?qū)?、基于XML描述的配置信息解析以及代碼自動(dòng)生成引擎。對(duì)仿真模型進(jìn)行標(biāo)準(zhǔn)化描述,仿真模型標(biāo)準(zhǔn)化描述用于實(shí)現(xiàn)模型接口的轉(zhuǎn)換,它規(guī)定了每個(gè)模型開(kāi)發(fā)過(guò)程中所有必須的活動(dòng)和過(guò)程,以及每個(gè)活動(dòng)和過(guò)程所需要的輸入和輸出,便于整個(gè)仿真開(kāi)發(fā)的管理和組織,HLA通過(guò)FOM/SOM表描述仿真系統(tǒng)各模型間的