本發(fā)明屬于計算機仿真建模領域,具體涉及一種將架構模型轉(zhuǎn)換為可靠性框圖的轉(zhuǎn)換系統(tǒng)及其方法。
背景技術:
Modelica是國際仿真界于1997年提出的一種開放的全新多領域統(tǒng)一建模語言,它歸納和統(tǒng)一了先前多種建模語言,且融合了鍵合圖的非因果建模思想、Java語言的面向?qū)ο蠹夹g和Matlab的數(shù)值與矩陣機制,因而具備極其強大的建模功能。面向?qū)ο笮院头且蚬允荕odelica 語言最大的優(yōu)點。面向?qū)ο蟮慕7椒ň哂袛?shù)據(jù)封裝、分層、連接和繼承等特征,易于減少錯誤的發(fā)生并容易實現(xiàn)模型的重用。所謂非因果性建模,就是以一種中性、自然的形式表達模型方程,從而不必更多的考慮計算順序,避免了對模型方程的繁瑣推導,從而提高了建模效率,并使部件模型易于被重復使用。Modelica語言采用陳述式、基于方程的非因果建模方法建立模型,通過定義接口,使模型接口標準化,因此采用Modelica建模可以使物理系統(tǒng)各子系統(tǒng)之間既能完全獨立又可互相統(tǒng)一。
可靠性理論源于20世紀50年代。1956年,穆爾和C.E.香農(nóng)研究了可靠性系統(tǒng)和冗余理論,奠定了可靠性理論的基礎??煽啃钥驁D是具有代表性的圖形和計算工具,用于為系統(tǒng)可靠性建模??煽啃钥驁D的結構定義了系統(tǒng)中各故障的邏輯交互作用,而不一定要定義各故障的邏輯連接和物理連接。每個方塊可以代表一個組件故障、子系統(tǒng)故障或其它具有代表性的故障??煽啃钥驁D直觀的表現(xiàn)出產(chǎn)品在每次使用能完成任務的條件下,系統(tǒng)所有單元之間的相互依賴關系??煽啃钥驁D反映的是各組合件之間的可靠性邏輯關系。
目前,Modelica已經(jīng)被奧迪、寶馬、戴姆勒、福特、豐田、大眾、德國宇航中心、法國空客、德國西門子、法國電力公司、ABB等不同行業(yè)公司所采用,廣泛應用于汽車 、航空 、能源 、電力 、電子 、機械 、化學 、控制 、流體等行業(yè)或領域以及嵌入式系統(tǒng)的建模與仿真。對于產(chǎn)品來說,可靠性問題和人身安全,經(jīng)濟效益密切相關。因此,研究產(chǎn)品的可靠性問題,顯得十分重要,非常迫切,但是Modelica模型雖然能有效的反應系統(tǒng)的物理特性,卻不便直接用于可靠性分析??煽啃钥驁D是有效的可靠性分析工具,它顯示系統(tǒng)中每個元件是如何工作的,以及每個元件是如何影響整體系統(tǒng)運行的。
技術實現(xiàn)要素:
本發(fā)明的目的在于提供一種將Modelica的架構模型直接轉(zhuǎn)換為可靠性框圖的轉(zhuǎn)換系統(tǒng)及其方法,滿足了以Modelica模型為基礎進行可靠性分析的需求。
為實現(xiàn)上述技術目的,達到上述技術效果,本發(fā)明通過以下技術方案實現(xiàn):
一種將架構模型轉(zhuǎn)換為可靠性框圖的轉(zhuǎn)換系統(tǒng),由用戶界面模塊、模型配置模塊、模型解析模塊、拓撲結構模塊、框圖布局模塊、模型管理模塊和數(shù)據(jù)管理模塊組成;
所述用戶界面模塊負責供用戶查看轉(zhuǎn)換情況與輸入必要數(shù)據(jù);
所述模型管理模塊負責提供操作Modelica架構模型的應用程序編程接口(API),包括查找模型接口、修改模型接口和增刪模型接口等;
所述數(shù)據(jù)管理模塊負責管理轉(zhuǎn)換過程中產(chǎn)生的過程數(shù)據(jù),并負責數(shù)據(jù)的持久化;
所述模型配置模塊負責對待轉(zhuǎn)換的架構模型進行必要的擴充,添加轉(zhuǎn)換可靠性框圖所必須的信息,并以annotation的形式在待轉(zhuǎn)換的架構模型中進行注明,如注明組件模型屬于哪個子系統(tǒng),組件模型或子系統(tǒng)是否為備用件等;
所述模型解析模塊負責提取被寫入架構模型中的與可靠性相關的annotation,并對這些數(shù)據(jù)進行必要的處理,組織成樹的數(shù)據(jù)結構;
所述拓撲結構模塊負責根據(jù)所述模型解析模塊獲取的數(shù)據(jù),生成一個與各模型組件對應的可靠性框的連接關系拓撲結構;
所述框圖布局模塊負責根據(jù)布局算法以及所述拓撲結構模塊生成的拓撲結構,將可靠性框圖繪制出來。
一種將架構模型轉(zhuǎn)換為可靠性框圖的轉(zhuǎn)換方法,包括如下步驟:
步驟0、利用Modelica模型開發(fā)平臺,搭建一個架構模型;所述模型管理模塊將搭建好的架構模型導入到所述轉(zhuǎn)換系統(tǒng)中;
步驟1、所述模型配置模塊對待轉(zhuǎn)換的架構模型進行配置,利用所述模型管理模塊的接口在架構模型中以annotation的形式,標示出需要被加進可靠性框圖的組件模型,并寫明這些組件模型所屬的子系統(tǒng),以及這些組件模型在子系統(tǒng)中的地位;
組件模型在子系統(tǒng)中的地位分為備用地位和唯一地位,其中,屬于備用地位的組件模型在可靠性框圖中表現(xiàn)為并聯(lián),屬于唯一地位的組件模型在可靠性框圖中表現(xiàn)為串聯(lián);
步驟2、利用所述模型解析模塊對配置好的架構模型進行解析,通過所述模型管理模塊讀取出與可靠性相關的annotation,對架構模型中的組件模型或子系統(tǒng)進行組織,組織成樹的數(shù)據(jù)結構,稱為可靠性框圖樹,所述可靠性框圖樹提交給所述數(shù)據(jù)管理模塊管理;
所述可靠性框圖樹以待轉(zhuǎn)換的架構模型為根,以子系統(tǒng)為子節(jié)點,以不可再劃分的組件模型為葉子節(jié)點;
步驟3、所述拓撲結構模塊從所述數(shù)據(jù)管理模塊獲取所述可靠性框圖樹,對所述可靠性框圖樹進行逐層遞歸處理,先得到第一層子組件模型與子系統(tǒng)的連接關系,然后對第一層連接關系中的子系統(tǒng)采用同樣的算法獲得第二層子系統(tǒng)與組件模型的連接關系;以此類推,直到整個連接關系圖中沒有可以再分的子系統(tǒng)為止;最后將得到的連接關系提交給所述數(shù)據(jù)管理模塊管理;
步驟4、所述框圖布局模塊根據(jù)步驟3獲得的連接關系,結合布局算法確定可靠性框圖與連線在界面上的位置數(shù)據(jù),并將這些數(shù)據(jù)存入所述數(shù)據(jù)管理模塊,所述用戶界面模塊再根據(jù)這些位置數(shù)據(jù),將可靠性框圖繪制在視圖上;
步驟5、結束。
與現(xiàn)有技術相比,本發(fā)明的有益效果是:
1、自動簡便,本發(fā)明可以通過計算機程序來實現(xiàn),自動將經(jīng)過配置的架構模型轉(zhuǎn)換為可靠性框圖,節(jié)省了勞動力。
2、方便管理,可靠性框圖有機結合于架構模型,當架構模型被修改,可靠性框圖也可以同步更新,解決了架構模型根據(jù)需要頻繁修改時,對應的可靠性框圖也要手動去頻繁修改的問題。
上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,并可依照說明書的內(nèi)容予以實施,以下以本發(fā)明的較佳實施例并配合附圖詳細說明。本發(fā)明的具體實施方式由以下實施例及其附圖詳細給出。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:
圖1為本發(fā)明轉(zhuǎn)換系統(tǒng)的結構框圖;
圖2為本發(fā)明轉(zhuǎn)換方法的步驟流程圖。
具體實施方式
下面將參考附圖并結合實施例,來詳細說明本發(fā)明。
參見圖1所示,一種將架構模型轉(zhuǎn)換為可靠性框圖的轉(zhuǎn)換系統(tǒng),由用戶界面模塊1、模型配置模塊2、模型解析模塊3、拓撲結構模塊4、框圖布局模塊5、模型管理模塊6和數(shù)據(jù)管理模塊7組成;
所述用戶界面模塊1負責供用戶查看轉(zhuǎn)換情況與輸入必要數(shù)據(jù);
所述模型管理模塊6負責提供操作Modelica架構模型的應用程序編程接口(API),包括查找模型接口、修改模型接口和增刪模型接口等;
所述數(shù)據(jù)管理模塊7負責管理轉(zhuǎn)換過程中產(chǎn)生的過程數(shù)據(jù),并負責數(shù)據(jù)的持久化;
所述模型配置模塊2負責對待轉(zhuǎn)換的架構模型進行必要的擴充,添加轉(zhuǎn)換可靠性框圖所必須的信息,并以annotation的形式在待轉(zhuǎn)換的架構模型中進行注明,如注明組件模型屬于哪個子系統(tǒng),組件模型或子系統(tǒng)是否為備用件等;
所述模型解析模塊3負責提取被寫入架構模型中的與可靠性相關的annotation,并對這些數(shù)據(jù)進行必要的處理,組織成樹的數(shù)據(jù)結構;
所述拓撲結構模塊4負責根據(jù)所述模型解析模塊3獲取的數(shù)據(jù),生成一個與各模型組件對應的可靠性框的連接關系拓撲結構;
所述框圖布局模塊5負責根據(jù)布局算法以及所述拓撲結構模塊4生成的拓撲結構,將可靠性框圖繪制出來。
參見圖1和圖2所示,一種將架構模型轉(zhuǎn)換為可靠性框圖的轉(zhuǎn)換方法,包括如下步驟:
步驟0、利用Modelica模型開發(fā)平臺,搭建一個架構模型;所述模型管理模塊6將搭建好的架構模型導入到所述轉(zhuǎn)換系統(tǒng)中;
步驟1、所述模型配置模塊2對待轉(zhuǎn)換的架構模型進行配置,利用所述模型管理模塊6的接口在架構模型中以annotation的形式,標示出需要被加進可靠性框圖的組件模型,并寫明這些組件模型所屬的子系統(tǒng),以及這些組件模型在子系統(tǒng)中的地位;
組件模型在子系統(tǒng)中的地位分為備用地位和唯一地位,其中,屬于備用地位的組件模型在可靠性框圖中表現(xiàn)為并聯(lián),屬于唯一地位的組件模型在可靠性框圖中表現(xiàn)為串聯(lián);
步驟2、所述模型解析模塊3對配置好的架構模型進行解析,通過所述模型管理模塊6讀取出與可靠性相關的annotation,對架構模型中的組件模型或子系統(tǒng)進行組織,組織成樹的數(shù)據(jù)結構,稱為可靠性框圖樹,所述可靠性框圖樹提交給所述數(shù)據(jù)管理模塊7管理;
所述的可靠性框圖樹以待轉(zhuǎn)換的架構模型為根,以子系統(tǒng)為子節(jié)點,以不可再劃分的組件模型為葉子節(jié)點;
步驟3、所述拓撲結構模塊4從所述數(shù)據(jù)管理模塊7獲取所述可靠性框圖樹,對所述可靠性框圖樹進行逐層遞歸處理,先得到第一層子組件模型與子系統(tǒng)的連接關系,然后對第一層連接關系中的子系統(tǒng)采用同樣的算法獲得第二層子系統(tǒng)與組件模型的連接關系;以此類推,直到整個連接關系圖中沒有可以再分的子系統(tǒng)為止;最后將得到的連接關系提交給所述數(shù)據(jù)管理模塊7管理;
步驟4、所述框圖布局模塊5根據(jù)步驟3獲得的連接關系,結合布局算法確定可靠性框圖與連線在界面上的位置數(shù)據(jù),并將這些數(shù)據(jù)存入所述數(shù)據(jù)管理模塊7,所述用戶界面模塊1再根據(jù)這些位置數(shù)據(jù),將可靠性框圖繪制在視圖上;
步驟5、結束。
上述實施例只是為了說明本發(fā)明的技術構思及特點,其目的是在于讓本領域內(nèi)的普通技術人員能夠了解本發(fā)明的內(nèi)容并據(jù)以實施,并不能以此限制本發(fā)明的保護范圍。凡是根據(jù)本發(fā)明內(nèi)容的實質(zhì)所作出的等效的變化或修飾,都應涵蓋在本發(fā)明的保護范圍內(nèi)。