一種基于Modelica模型的故障注入系統及其方法
【技術領域】
[0001] 本發明屬于復雜機電系統故障仿真領域,具體涉及一種針對復雜機電系統的的基 于Modelica模型的故障注入系統及其方法。
【背景技術】
[0002] 隨著科學技術的不斷發展,復雜機電產品的結構越來越復雜,其各個分系統縱橫 交錯相互耦合。例如在航天、航空、汽車、船舶等系統中,某個零件的失效可能會引起巨大的 損失,提高可靠性是各個復雜機電系統的重要問題,故障仿真是一種提高可靠性設計的重 要方法。
[0003] 在復雜機電系統的系統仿真過程中,由于系統結構極其復雜,一個系統可能包含 若成千上萬個元器件,而且涉及機、電、液、控等多領域的系統知識,使得模型也自身非常復 雜。而復雜機電系統的故障也是多種多樣的,每個元器件可能就對應許多個故障模式,整個 系統也可能包含成千上萬個故障模式。
[0004] 如果要在復雜的機電系統中去仿真不同的故障模式,傳統的做法是需要不斷的修 改系統模型,形成多套的故障模型。這樣就為模型的維護帶來了巨大的挑戰,難以保持模型 一致性,難以修改和擴展模型行為,而且效率十分低下。
【發明內容】
[0005] 為了解決現有技術中存在的不足,本發明旨在提供一種基于Modelica模型的故 障注入系統及其方法,可以根據不同的故障模式,動態地將需要仿真的故障注入到模型中, 動態生成故障模型,從而保持系統模型的一致性、重用性和易維護性。
[0006] 為實現上述技術目的,達到上述技術效果,本發明通過以下技術方案實現: 一種基于Modelica模型的故障注入系統,包括基于Modelica的系統模型庫、模型管理 模塊、故障模式庫、故障模式管理模塊、故障參數編輯模塊以及故障注入模塊; 所述系統模型庫分別連接所述模型管理模塊和所述故障模式庫,所述故障模式庫連接 所述故障模式管理模塊,所述故障模式管理模塊連接所述故障參數編輯模塊,所述故障參 數編輯模塊連接所述故障注入模塊,所述故障注入模塊和所述模型管理模塊分別與內存連 接; 所述系統模型庫用以存儲和編輯系統模型,其具備如下兩個功能: a、 所述系統模型基于多領域統一建模語言Modelica建立,支持機電液控多領域的系 統仿真;所述系統模型依據對象的物理拓撲結構拆分為分系統、組件或元器件,每個所述組 件或所述元器件包含有能描述該組件或元器件行為的參數、變量和數學方程; b、 編輯模型功能,主要用于編輯所述系統模型庫中的所述系統模型,為所述系統模型 增加 annotation注解信息; 所述模型管理模塊用于管理所述系統模型,其具備如下兩個功能: a、將所述系統模型加載到內存中,通過解析所述系統模型,生成系統模型對象(也稱內 存模型); b、編譯和掃描內存中的所述系統模型對象; 所述故障模式庫用以存儲故障模式,每條所述故障模式記錄包含以下兩類信息: a、 標準的故障模式信息,包括故障模式名、故障原因、故障后果、故障影響性分析、故障 嚴酷度和故障發生概率; b、 與描述故障模式和系統模型映射關系的信息,包括故障參數名和故障模式觸發條 件; 所述故障模式管理模塊用于對所述故障模式庫進行管理和維護,包括故障模式的構 建、瀏覽、編輯和查找; 所述故障參數編輯模塊用于編輯故障參數的取值和注入條件;例如針對某閥門的故障 參數-開度,可以設定閥門開度的取值,也可以通過參數編輯模塊設定注入條件,如仿真到 多少時間時注入; 所述故障注入模塊用于負責將故障模式中的故障參數值寫入到內存當中的系統模型 對象中,其功能為提取故障模式的故障參數,并且找到所述系統模型中對應的故障參數,將 故障參數的值寫入到內存當中的所述系統模型對象中,完成故障注入,生成故障模型。
[0007] -種基于Modelica模型的故障注入方法,其特征在于,包括以下步驟: 步驟〇)建立基于統一建模語言Modelica的系統模型,并存儲在系統模型庫中; 步驟1)通過所述系統模型庫中的編輯功能,為所述系統模型中的參數添加 annotation注解,標注為故障參數; 步驟2)通過模型管理模塊將所述系統模型加載到內存中,通過解析所述系統模型,生 成所述系統模型的系統模型對象; 步驟3)在加載所述系統模型的過程中,通過所述模型管理模塊掃描所述系統模型信 息,提取所述系統模型中標記有特殊annotation注解的參數; 步驟4)新建或編輯故障模式,填寫故障模式的基本信息,并將故障模式存儲在故障模 式庫中; 步驟5)故障模式管理模塊在新建的故障模式中選擇一個步驟3中產生的且關聯的故 障參數,則完成了一條故障模式; 步驟6)注入前,故障參數編輯模塊選取建立好的故障模式,修改其故障參數的取值和 注入條件; 步驟7)故障注入模塊根據故障模式中故障參數的全名,查找到內存當中所述系統模型 對象中的對應的參數位置; 步驟8)修改內存當中所述系統模型對象中參數的值和取值條件,完成故障注入,生成 故障模型。
[0008] 進一步的,步驟4中,所述的基本信息包括故障模式名、故障原因、故障影響、故障 嚴酷度和故障發生概率。
[0009] 進一步的,步驟6中,所述的注入條件為指定的時刻或指定的運行狀態。
[0010] 本發明的有益效果是: 本發明通過Modelica中的可擴展語義annotation,將正常工況的模型參數標記為故 障參數,然后將故障參數保存在故障模式中,從而建立故障模式與系統模型間的映射關系, 這種映射關系不影響正常模型的行為;再通過注入不同的故障模式到內存的系統模型對象 中來產生不同的故障模型,從而模擬不同的故障情況。本發明的這種故障注入的方式很好 的解決了模型的一致性、可重用性和可維護性的問題,大大的降低了故障仿真的復雜性。
[0011] 上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段, 并可依照說明書的內容予以實施,以下以本發明的較佳實施例并配合附圖詳細說明。本發 明的【具體實施方式】由以下實施例及其附圖詳細給出。
【附圖說明】
[0012] 此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發 明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中: 圖1為本發明的故障注入系統的功能組成示意圖; 圖2為本發明的故障注入方法的流程圖。
【具體實施方式】
[0013] 下面將參考附圖并結合實施例,來詳細說明本發明。
[0014] 參見圖1所示,一種基于Modelica模型的故障注入系統,包括基于Modelica的系 統模型庫1、模型管理模塊2、故障模式庫3、故障模式管理模塊4、故障參數編輯模塊5以及 故障注入模塊6 ; 所述系統模型庫1分別連接所述模型管理模塊2和所述故障模式庫3,所述故障模式庫 3連接所述故障模式管理模塊4,所述故障模式管理模塊4連接所述故障參數編輯模塊5,所 述故障參數編輯模塊5連接所述故障注入模塊6,所述故障注入模塊6和所述模型管理模塊 2分別與內存連接; 所述系統模型庫1用以存儲和編輯系統模型,其具備如下兩個功能: a、 存儲系統模型,所述系統模型基于統一建模語言Modelica建立,支持機電液控領域 的系統仿真;所述系統模型依據對象的物理拓撲結構拆分為分系統、組件或元器件,每個所 述組件或所述元器件包含有能描述該組件或元器件行為的參數、變量和數學方程; b、 編輯模型功能,主要用于編輯所述系統模型庫1中的模型,為模型增加 annotation 注解信息; 所述模型管理模塊2用于管理所述系統模型,其具備如下兩個功能: a、 將所述系統模型加載到內存中,通過解析所述系統模型,生成系統模型對象7 ; b、 編譯和掃描內存中的所述系統模型對象7 ; 所述故障模式庫3用以存儲故障模式,每條所述故障模式記錄包含以下兩類信息: a、 標準的故障模式信息,包括故障模式名、故障原因、故障后果、故障影響性分析、故障 嚴酷度和故障發生概率; b、 與描述故障模式和系統模型映射關系的信息,包括故障參數名和故障模式觸發條 件; 所述故障模式管理模塊4用于對所述故障模式庫進行管理和維護,包括故障模式的構 建、瀏覽、編輯和查找; 所述故障參數編輯模塊5用于編輯故障參數的取值和注入條件; 所述故障注入模塊6用于負責將故障模式中的故障參數值寫入到內存當中的系統模 型對象7中,其功能為提取故障模式的故障