本發(fā)明提供一種基于Modelica模型的故障管理方法,屬于復(fù)雜機(jī)電系統(tǒng)領(lǐng)域。
背景技術(shù):
隨著機(jī)電系統(tǒng)的復(fù)雜程度不斷攀升,為了提高系統(tǒng)的可靠性,針對(duì)機(jī)電系統(tǒng)的故障檢測(cè)和健康管理變得越來(lái)越重要。且對(duì)系統(tǒng)實(shí)施故障檢測(cè)和健康管理的相關(guān)算法,需要可靠的預(yù)測(cè)模型結(jié)合有效的故障管理方法,以保證觸發(fā)系統(tǒng)的所有可能故障。因此,一個(gè)統(tǒng)一、可靠的故障管理方法是實(shí)施系統(tǒng)故障檢測(cè)和健康管理的重要環(huán)節(jié)。
基于Modelica模型的故障管理方法,實(shí)現(xiàn)了仿真模型和故障模型的統(tǒng)一管理。并為下一步基于Modelica模型的故障檢測(cè),實(shí)現(xiàn)由表象到機(jī)理、由定性到定量、由單點(diǎn)到多點(diǎn)、由零部件到系統(tǒng)的故障研究,提供了有效的實(shí)施手段。
目前,基于Modelica模型的故障管理方法不能夠統(tǒng)一,各種方法存在各自的缺點(diǎn),使得基于Modelica模型的故障檢測(cè),不能夠相互匹配。
(1)[Inclusion of Reliability and Safety Analysis Methods in Modelica.In Inclusion of Reliability and Safety Analysis Methodsin Modelica(June 2011),pp.616–627]中,Modelica故障管理,采用參數(shù)類型數(shù)據(jù)定義故障,不能管理變量類型故障,無(wú)法反映系統(tǒng)的動(dòng)態(tài)屬性。
(2)[Fault Detection of Power Electronic Circuit using Wavelet Analysis in Modelica.In Proceedings of the 9th International MODELICA Conference(Munich,Germany,Sept.2012),no.76,pp.513–522]中,只能管理預(yù)先設(shè)置的故障類型,不能根據(jù)需求定義故障的類型。
(3)[A Tool for Simulation-based Test of Mechatronic Designs.In Proceedings of the 6th International Modelica Conference(2008)pp.341–348]中,Modelica故障實(shí)施中,通過(guò)外部程序設(shè)定不確定的間隔并結(jié)合模型行為來(lái)實(shí)施故障管理,故不支持統(tǒng)一的故障注入方式。
技術(shù)實(shí)現(xiàn)要素:
(一)本發(fā)明的目的在于提供一種基于Modelica模型的故障管理方法,以改善現(xiàn)有技術(shù)存在的上述缺陷。該方法按照故障分析、故障分類、故障建模、故障提取、故障注入的流程,實(shí)現(xiàn)Modelica故障模型的統(tǒng)一管理。該方法的優(yōu)點(diǎn)是:
1)針對(duì)系統(tǒng)故障分析的結(jié)果,應(yīng)用故障分類建立的Modelica標(biāo)準(zhǔn)化故障管理包,實(shí)現(xiàn)根據(jù)需求定義故障元件,便于故障元件柔性化建模。
2)針對(duì)完成的故障元件建模,自動(dòng)提取系統(tǒng)故障元件信息到統(tǒng)一界面,便于統(tǒng)一的故障管理。
3)針對(duì)參數(shù)故障和變量故障,分別選用統(tǒng)一的故障注入方式,便于不同的故障診斷方式,選用相同的故障注入方式進(jìn)行故障管理。
(二)技術(shù)方案
本發(fā)明是一種基于Modelica模型的故障管理方法,其實(shí)現(xiàn)的技術(shù)流程包括:故障分析、故障分類、故障建模、故障提取、故障注入。本發(fā)明首先針對(duì)具體的機(jī)電系統(tǒng)Modelica模型,分析其常見故障,及其產(chǎn)生故障的原因;并通過(guò)歸納故障類型和Modelica數(shù)據(jù)類型,建立Modelica標(biāo)準(zhǔn)化故障管理包,然后根據(jù)故障分析、故障分類,利用Modelica標(biāo)準(zhǔn)化故障管理包,建立相應(yīng)故障元件;由于采用了Modelica標(biāo)準(zhǔn)化故障管理包對(duì)故障元件建模,通過(guò)分析Modelica元件故障模型樹,可提取系統(tǒng)故障元件信息到統(tǒng)一的界面,最后針對(duì)參數(shù)類型故障和變量類型故障,分別采用統(tǒng)一的故障注入方式,實(shí)現(xiàn)基于Modelica模型的故障管理。
本發(fā)明是一種基于Modelica模型的故障管理方法,該方法具體步驟(見圖1)如下:
步驟一:故障分析
針對(duì)具體的機(jī)電系統(tǒng)Modelica模型,分析其常見故障,及其產(chǎn)生故障的原因,得出機(jī)電系統(tǒng)的可能故障項(xiàng),其作法如下:
a)將Modelica模型按照“系統(tǒng)模型——子系統(tǒng)模型——部件模型”逐級(jí)分解;
b)各級(jí)部件模塊的輸入均為機(jī)電系統(tǒng)的可能故障原因;
c)根據(jù)實(shí)際需求,從可能故障原因中,選取其為機(jī)電系統(tǒng)故障項(xiàng)。
步驟二:故障分類
通過(guò)歸納故障類型和Modelica數(shù)據(jù)類型,建立Modelica標(biāo)準(zhǔn)化故障管理包;其中Modelica標(biāo)準(zhǔn)化故障管理包,由故障類型和Modelica數(shù)據(jù)類型定義而成;
步驟三:故障建模
針對(duì)故障分析得到的可能故障項(xiàng),根據(jù)故障分析、故障分類,利用Modelica標(biāo)準(zhǔn)化故障管理包,建立相應(yīng)故障元件;為便于故障元件柔性化建模,可靈活采用文本式建模和圖形式建模兩種方式;
步驟四:故障提取
分析Modelica元件故障模型樹(見圖2),帶閃電圖為故障元件),檢索元件中是否包含Modelica標(biāo)準(zhǔn)化故障管理包(步驟二)定義的數(shù)據(jù),提取機(jī)電系統(tǒng)的故障元件信息到統(tǒng)一界面;
步驟五:故障注入
實(shí)現(xiàn)更改Modelica模型中故障元件的參數(shù),包括有參數(shù)類型故障注入和變量類型故障注入。
其中,在步驟二中所述的“故障類型”,分為參數(shù)類型故障和變量類型故障;
參數(shù)類型故障,是指相對(duì)于整個(gè)系統(tǒng)的仿真時(shí)間而言,期間參數(shù)數(shù)值不變或變化很小(可忽略不計(jì))的故障類型;參數(shù)類型故障,在仿真開始前指定,整個(gè)仿真過(guò)程中,參數(shù)值不發(fā)生變化;常見的參數(shù)類型故障有:1)齒輪副間隙;2)電阻或電容值;3)傳動(dòng)系統(tǒng)中的滑油粘度;由于參數(shù)類型故障具有的固有物理屬性,在整個(gè)仿真過(guò)程中幾乎不發(fā)生變化,故無(wú)需仿真參數(shù)類型故障的動(dòng)態(tài)屬性;
變量類型故障,是指在整個(gè)系統(tǒng)的仿真過(guò)程中,變量值發(fā)生明顯變化的故障類型,在仿真過(guò)程中這些量發(fā)生變化,反映系統(tǒng)的動(dòng)態(tài)屬性(是工程師比較關(guān)注的問(wèn)題);常見的變量類型故障有:1)半導(dǎo)體元件的短路電流;2)液壓油管路的泄露;3)齒箱齒輪的磨損;由于變量類型故障,在仿真過(guò)程中發(fā)生變化,反映系統(tǒng)的動(dòng)態(tài)屬性,故需仿真變量類型故障的動(dòng)態(tài)屬性。
其中,在步驟二中所述的“Modelica數(shù)據(jù)類型”分為:1)布爾型(Boolean)數(shù)據(jù),可用來(lái)表示布爾型的Modelica故障,該類型故障只有兩種離散的故障狀態(tài),如電纜的斷開故障;2)整數(shù)型(Integer)數(shù)據(jù),可用來(lái)表示整數(shù)型的Modelica故障,該類型故障有多種并聯(lián)的故障狀態(tài),如半導(dǎo)體元件的可能工作狀態(tài):(a)正常運(yùn)行;(b)短路狀態(tài);(c)開路狀態(tài);3)實(shí)數(shù)型(Real)數(shù)據(jù),可用來(lái)表示實(shí)數(shù)型的Modelica故障,該類型故障采用連續(xù)變化的不同實(shí)數(shù)值來(lái)表示,如,(a)滑油粘度;(b)軸承摩擦力;(c)電容容量等。
其中,在步驟二中所述的“Modelica標(biāo)準(zhǔn)化故障管理包”由故障類型和Modelica數(shù)據(jù)類型定義而成,其故障數(shù)據(jù)類型共有六種,如圖3所示;Modelica標(biāo)準(zhǔn)化故障管理包中的故障數(shù)據(jù)類型采取統(tǒng)一的命名方式,便于后續(xù)的故障提取(見步驟四)提供方便;如參數(shù)型_實(shí)數(shù)_故障命名為Parameter_Fault_Real;變量型_實(shí)數(shù)_故障命名為Variable_Fault_Real,依次類推,定義其余故障;
參數(shù)型_實(shí)數(shù)_故障(Parameter_Fault_Real)的Modelica代碼,定義如下:
type Parameter_Fault_Real=Real"Value of the Real Fault";
變量型_實(shí)數(shù)_故障(Variable_Fault_Real)的Modelica代碼,定義如下:
record Variable_Fault_Real"External Fault Triggering parameters"
Boolean externalFaultOn=false"External fault controlling(true=global)";
Integer faultIndex=1"External fault index";
Integer faultMode=1"Optional fault mode for model reconfiguration";
end Variable_Fault_Real;
變量類型故障相對(duì)于參數(shù)類型故障,采用了額外參數(shù)進(jìn)行故障定義,如下:
1)externalFaultOn,用來(lái)設(shè)置該變量類型故障,是采用內(nèi)部的默認(rèn)變量還是采用外部的全局變量為其故障注入(見步驟五)方式;
2)faultIndex,為全局外部變量編號(hào),明確該變量類型故障屬于第幾個(gè)全局外部變量(見步驟三);
3)faultMode,用來(lái)設(shè)置該變量類型故障的不同故障狀態(tài)。
其中,在步驟三中所述的“文本式建模方式”,是根據(jù)元件的建模需求,直接繼承(extends)Modelica代碼到元件當(dāng)中,形成故障元件;以參數(shù)型_實(shí)數(shù)_故障(Parameter_Fault_Real)為例,文本式建模方式的Modelica代碼如下:
block InternalConstantRealFault
"Generate constant Fault of type Real"
extends FaultTriggering.Utilities.Icons.RealFault;
parameter FaultTriggering.Utilities.Types.Parameter_Fault_Real
constRealFault=1"Constant output value";
end InternalConstantRealFault。
其中,在步驟三中所述的“圖形式建模方式”,首先分別繼承文本式建模方式的Modelica代碼(extends FaultTriggering.FaultOutput.Internal.InternalConstantRealFault)和Modelica標(biāo)準(zhǔn)庫(kù)的標(biāo)準(zhǔn)輸出(extends Modelica.Blocks.Interfaces.SO);然后根據(jù)元件的故障輸入,在Modelica圖形式建模界面,直接拖拽圖形式故障圖標(biāo)作為輸入和元件連接,兩者連接組成故障元件;以參數(shù)型_實(shí)數(shù)_故障(Parameter_Fault_Real)為例,圖形式建模方式的Modelica代碼如下:
其中,在步驟三中所述的“文本式建模方式和圖形式建模方式”,不僅適用于參數(shù)類型故障建模,而且適用于變量類型故障建模;變量類型故障元件建模,涉及到全局變量的選取問(wèn)題;
為全局外部變量編號(hào),解決全局變量的選取問(wèn)題,將全局變量集中定義在FaultTrigger模型(由Partial_Fault Trigger模型擴(kuò)展而來(lái))中,Partial_Fault Tirgger模型的Modelica代碼如下:
在Partial_Fault Tirgger模型,針對(duì)變量類型故障的選取問(wèn)題:以變量型_實(shí)數(shù)_故障(Variable_Fault_Real)為例,通過(guò)定義參數(shù)realFaultSize和定義實(shí)數(shù)型變量數(shù)組realFault[realFaultSize]實(shí)現(xiàn);整型(integer)和布爾型(Boolean)采用類似的方式實(shí)現(xiàn)。
其中,在步驟四中所述的“Modelica元件故障模型樹(見圖2)”,是當(dāng)有故障元件出現(xiàn)時(shí),由于Modelica模型的層級(jí)組織方式形成的;所有的故障元件都以故障模型樹的形式存在于Modelica模型庫(kù)當(dāng)中;該Modelica元件故障模型樹生成步驟:
a)獲取機(jī)電系統(tǒng)Modelica模型的元件總個(gè)數(shù);
b)判斷每個(gè)元件中是否包含Modelica標(biāo)準(zhǔn)化故障管理包中定義的數(shù)據(jù)(如果有,該元件則為故障元件);
c)獲取故障元件的名稱、參數(shù)變量、所屬M(fèi)odelica系統(tǒng)中的路徑、前后元件結(jié)點(diǎn)等信息;
d)依據(jù)Modelica模型的層級(jí)組織方式,生成系統(tǒng)對(duì)應(yīng)的Modelica元件故障模型樹。
其中,在步驟四中所述的“統(tǒng)一界面”,參數(shù)類型故障,是將故障元件信息直接推送到,圖4所示框圖;變量類型故障,是將故障元件信息統(tǒng)一收集在FaultTrigger模型中,在圖形化編輯界面展開FaultTrigger模型,即顯示故障元件信息的統(tǒng)一界面(見圖5)。
其中,在步驟五中所述的“參數(shù)類型故障注入”,是指每個(gè)參數(shù)類型故障,都由模型中的一個(gè)參數(shù)定義,參數(shù)類型的故障元件信息可在統(tǒng)一界面(圖4)管理,通過(guò)修改參數(shù),實(shí)現(xiàn)參數(shù)類型故障注入。
其中,在步驟五中所述的“變量類型故障注入”,首先在Modelica故障元件中采用Inner-Outter結(jié)構(gòu),然后設(shè)置externalFaultOn與FaultTrigger模型進(jìn)行數(shù)據(jù)交互,如下Modelica代碼段,最后在步驟四故障元件信息統(tǒng)一界面(圖5)進(jìn)行修改,實(shí)現(xiàn)變量類型故障注入;
通過(guò)以上步驟,實(shí)現(xiàn)了基于Modelica模型的故障管理,具有故障元件柔性化建模,統(tǒng)一的故障管理界面,采用了統(tǒng)一的故障注入方式,便于后續(xù)故障管理相關(guān)搜尋方法的應(yīng)用。
(三)優(yōu)點(diǎn)及有益效果
本發(fā)明采用Modelica建模技術(shù)來(lái)實(shí)現(xiàn)機(jī)電系統(tǒng)的故障管理,憑借Modelica語(yǔ)言建模簡(jiǎn)單、展示直觀、適用性強(qiáng)等特點(diǎn),使得該方法能夠很好的適應(yīng)于機(jī)電液耦合性較強(qiáng)的復(fù)雜系統(tǒng)??筛鶕?jù)實(shí)際要求,柔性建立故障元件,并采用統(tǒng)一的界面實(shí)施故障管理,自動(dòng)提取系統(tǒng)中的故障元件,縮短了新品測(cè)試仿真的開發(fā)時(shí)間;并為后續(xù)的故障診斷,提供了統(tǒng)一、可靠的故障管理方法,縮短了后續(xù)故障診斷平臺(tái)的建設(shè)周期。
附圖說(shuō)明
圖1本發(fā)明所述方法流程圖。
圖2 Modelica元件故障模型樹。
圖3 Modelica故障數(shù)據(jù)類型。
圖4參數(shù)類型故障統(tǒng)一界面。
圖5變量類型故障統(tǒng)一界面。
圖6電機(jī)傳動(dòng)系統(tǒng)Modelica模型。
圖7傳動(dòng)系統(tǒng)Modelica故障模型。
圖8電機(jī)系統(tǒng)Modelica故障模型。
圖中序號(hào)、符號(hào)、代號(hào)說(shuō)明如下:
圖5中,motorKtFailure為電機(jī)模塊傳感器失效故障;drivelineFriction為傳動(dòng)模塊剎車片摩擦力變化故障;motorSpeedSenor為電機(jī)模塊傳感器失效故障;drivelineBearing傳動(dòng)模塊軸承失效模式故障。
圖6中,driveline為傳動(dòng)系統(tǒng)Modelica故障模型,具體如圖7所示;motor為電機(jī)系統(tǒng)Modelica故障模型,具體如圖8所示。
圖7中,帶閃電圖標(biāo)元件為傳動(dòng)系統(tǒng)的故障項(xiàng)。
圖8中,帶閃電圖標(biāo)元件為電機(jī)系統(tǒng)的故障項(xiàng)。
具體實(shí)施方式
下面結(jié)合實(shí)例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,但不限定本發(fā)明。
本實(shí)例為電機(jī)傳動(dòng)系統(tǒng)Modelica模型(圖6),在Dymola的操作平臺(tái)上實(shí)施。
本發(fā)明一種基于Modelica模型的故障管理方法,見圖1所示,其實(shí)施的具體步驟如下:
步驟一:故障分析。針對(duì)具體的機(jī)電系統(tǒng)Modelica模型,分析其常見故障,及其產(chǎn)生故障的原因,得出機(jī)電系統(tǒng)的可能故障項(xiàng)。實(shí)例中的可能故障項(xiàng)有:
1)傳動(dòng)模塊剎車片不接觸故障
2)傳動(dòng)模塊剎車片摩擦力變化故障
3)傳動(dòng)模塊軸承失效模式故障
4)傳動(dòng)模塊傳感器失效故障
5)電機(jī)模塊傳感器失效故障
6)電機(jī)模塊控制參數(shù)故障
步驟二:故障分類。利用定義好的Modelica標(biāo)準(zhǔn)化故障管理包,根據(jù)圖3對(duì)上述故障一一分類,如下:
1)傳動(dòng)模塊剎車片不接觸故障——參數(shù)型_布爾_故障
2)傳動(dòng)模塊剎車片摩擦力變化故障——變量型_實(shí)數(shù)_故障
3)傳動(dòng)模塊軸承失效模式故障——變量型_整型_故障
4)傳動(dòng)模塊傳感器失效故障——參數(shù)型_布爾_故障
5)電機(jī)模塊傳感器失效故障——變量型_布爾_故障
6)電機(jī)模塊控制參數(shù)故障——變量型_整型_故障
步驟三:故障建模。傳動(dòng)系統(tǒng)中的故障元件和機(jī)電系統(tǒng)的故障元件,分別為圖7、8中帶閃電圖標(biāo)的元件。其中,圖7 disconnect、friction元件和圖8 KtFault元件采用圖形式建模方式,與對(duì)應(yīng)的元件組合形成故障元件。其余帶閃電圖標(biāo)的元件,直接繼承(extends)Modelica代碼到元件當(dāng)中,形成故障元件。
步驟四:故障提取。機(jī)電系統(tǒng)的故障元件形成如圖2示意的故障模型樹,提取機(jī)電系統(tǒng)的故障元件信息到統(tǒng)一界面。其中,參數(shù)類型故障的故障元件信息統(tǒng)一界面,如圖4。變量類型故障的故障元件信息統(tǒng)一界面,如圖5。
步驟五:故障注入。實(shí)現(xiàn)更改Modelica模型元件的參數(shù)。
其中,參數(shù)類型故障的注入,在圖4參數(shù)類型統(tǒng)一界面修改實(shí)現(xiàn);變量類型故障的注入,在圖5變量類型統(tǒng)一界面修改實(shí)現(xiàn)。