專利名稱:一種繼電器用多有限元軟件聯(lián)合仿真分析方法
技術(shù)領(lǐng)域:
本發(fā)明涉及繼電器技術(shù),具體說就是一種繼電器用多有限元軟件聯(lián)合仿真分析方法。
背景技術(shù):
航天電磁繼電器是用于導(dǎo)彈、運(yùn)載火箭、人造衛(wèi)星、宇宙飛船、航天飛機(jī)及其配套地面測控設(shè)備中完成信號傳遞、執(zhí)行控制、系統(tǒng)配電等功能的繼電器,是國防電子系統(tǒng)中主要電子元器件之一。
電磁繼電器由電磁系統(tǒng)、觸點(diǎn)系統(tǒng)和釋放彈簧等組成,通過控制線圈電流所產(chǎn)生的電磁吸力驅(qū)動銜鐵而實(shí)現(xiàn)觸點(diǎn)開閉或轉(zhuǎn)換功能。因此,針對電磁繼電器的設(shè)計(jì)過程,涉及電磁場求解、機(jī)械動力學(xué)、熱學(xué)等多個(gè)領(lǐng)域。而且由于磁系統(tǒng)的非線性,使得這一過程的定量計(jì)算和分析變得十分復(fù)雜。
目前,針對機(jī)、電、磁、熱多場域的研究,多采用數(shù)值分析方法,其中以有限元方法應(yīng)用最為廣泛。而且,隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,不同領(lǐng)域的有限元分析軟件也都日益成熟,如Ansys、Adams、Flux、Patran/Nastran等。雖然每種軟件各有所長,但又都有一定的局限性,如Ansys能對靜態(tài)的電磁問題進(jìn)行求解,但對于瞬態(tài)電磁問題的求解,則需要用戶自己編程實(shí)現(xiàn);而Flux可以求解瞬態(tài)電磁場問題,但其求解動力學(xué)的模型相對簡單,遠(yuǎn)不如Adams在處理運(yùn)動學(xué)問題上得心應(yīng)手。而在進(jìn)行航天電磁繼電器的設(shè)計(jì)過程中,其動態(tài)特性的分析就既要對電磁系統(tǒng)的瞬態(tài)電磁場問題進(jìn)行研究,同時(shí)還要考慮接觸系統(tǒng)的運(yùn)動狀態(tài)。對于繼電器設(shè)計(jì)人員而言,每采用一種分析軟件,就要重新進(jìn)行一次建模,十分不方便,更不利于產(chǎn)品的設(shè)計(jì)和開發(fā)。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種用于繼電器設(shè)計(jì)的綜合仿真分析系統(tǒng),實(shí)現(xiàn)多有限元軟件聯(lián)合仿真的繼電器用多有限元軟件聯(lián)合仿真分析方法。
本發(fā)明的目的是這樣實(shí)現(xiàn)的本發(fā)明一種繼電器用多有限元軟件聯(lián)合仿真分析方法,包括繼電器描述語言RML和有限元仿真軟件的聯(lián)合調(diào)用,繼電器描述語言RML分為兩大部分參數(shù)部分和模型描述部分;參數(shù)部分主要包含變量的定義,包括變量名和變量值;模型描述部分包含采用規(guī)定語法對繼電器模型進(jìn)行的描述;在語言中參數(shù)部分和模型描述部分分別采用Variable和Geometry兩個(gè)關(guān)鍵字進(jìn)行標(biāo)識;在參數(shù)部分,參數(shù)表達(dá)格式如下 參數(shù)名參數(shù)值 在模型描述部分,按照點(diǎn)、線、面、體層次定義了一系列的語句進(jìn)行描述; 首先定義的是坐標(biāo)系,其格式如下 coord ID x1 y1 z1 x2 y2 z2 ID2 其中,ID為建立坐標(biāo)系編號,x1、y1、z1分別是新坐標(biāo)系原點(diǎn)在直角坐標(biāo)系下三個(gè)軸的數(shù)值,x2、y2、z2分別是新坐標(biāo)系相對于原坐標(biāo)系在三個(gè)軸向的旋轉(zhuǎn)值;ID2為原坐標(biāo)系的編號; 點(diǎn)的定義為 point ID x y z 其中,ID描述的點(diǎn)的編號,x、y、z為點(diǎn)在坐標(biāo)中的三軸向數(shù)值; 線的定義為 lines ID P1 P2 其中,ID為線的編號,P1、P2為線段兩端點(diǎn)的編號; 面的定義為 surf4 ID L1 L2 L3 L4 其中,ID為面的編號,L1、L2、L3、L4為組成面的四條線的編號; 體的定義為 solidz ID S1 P1 P2 其中,ID為體的編號,S1為基準(zhǔn)面,P1、P2為面拉伸方向的矢量控制點(diǎn); 通過這些描述定義,可以描述繼電器的所有幾何信息,但考慮到實(shí)際工程中采用的工程圖以長、寬、角度等信息作為參數(shù)的表達(dá)方法,與RML中采用的幾何坐標(biāo)為參數(shù)的表達(dá)方法不同;因此,定義了將這些點(diǎn)的幾何坐標(biāo)位置信息,轉(zhuǎn)換為工程圖紙中的參數(shù)信息,描述格式如下 SetMap C Value K S1 S2 S3……SetMapEnd 其中,C為工程圖紙中的參數(shù)名稱,Value為這個(gè)參數(shù)的原始值,K為相關(guān)系數(shù),S1、S2、S3為參數(shù)的編號,即滿足式(1)的關(guān)系; Sn=Sn0+K(C0-C)(1) 其中,Sn為描述語言參數(shù)的當(dāng)前值,Sn0為描述語言參數(shù)的原始值, C0為模型參數(shù)的原始值,C為模型參數(shù)的當(dāng)前值; 有限元仿真軟件的聯(lián)合調(diào)用,具體步驟如下 步驟一采用RML語言對繼電器進(jìn)行建模,將其工程圖紙中的尺寸信息轉(zhuǎn)化為RML語言描述的腳本文件; 步驟二針對有限元仿真軟件開發(fā)出相應(yīng)的翻譯模塊,將RML語言描述的繼電器模型轉(zhuǎn)化為對應(yīng)有限元仿真軟件的建模腳本; 步驟三結(jié)合有限元軟件安裝情況、仿真分析類型和仿真參數(shù)生成可以控制仿真軟件工作的腳本文件; 步驟四根據(jù)繼電器設(shè)計(jì)中不同的分析需要控制有限元軟件進(jìn)行仿真計(jì)算; 步驟五有限元仿真軟件生成仿真結(jié)果文件,對結(jié)果文件進(jìn)行讀取。
本發(fā)明一種繼電器用多有限元軟件聯(lián)合仿真分析方法,提出了一種用于航天電磁繼電器設(shè)計(jì)的建模語言——Relay Modeling Language(RML),并通過對Ansys、Flux和Adams等有限元軟件進(jìn)行二次開發(fā),使該語言所建的繼電器模型可以被上述任一有限元軟件識別。在此基礎(chǔ)上,采用C++Builder開發(fā)工具開發(fā)了用于繼電器設(shè)計(jì)的綜合仿真分析系統(tǒng),從而實(shí)現(xiàn)了多有限元軟件的聯(lián)合仿真。
圖1為本發(fā)明的多有限元軟件調(diào)用方框圖; 圖2為本發(fā)明的有限元仿真調(diào)用流程圖; 圖3為Flux有限元仿真軟件調(diào)用流程圖。
具體實(shí)施例方式 下面結(jié)合附圖舉例對本發(fā)明作進(jìn)一步說明。
實(shí)施例1結(jié)合圖1-圖3,本發(fā)明一種繼電器用多有限元軟件聯(lián)合仿真分析方法,包括以下內(nèi)容 1.RML建模語言 要使Ansys、Flux和Adams幾個(gè)有限元仿真軟件可以配合仿真,首要的是它們必須有共同的仿真模型來源,但是這幾個(gè)有限元仿真軟件的模型格式和腳本語言都不相同,而且它們之間不易轉(zhuǎn)換。因此需要一個(gè)能夠描述繼電器模型的通用而且可以比較容易轉(zhuǎn)換成需要的有限元仿真腳本語言。本發(fā)明制定了一種繼電器描述語言(RML)實(shí)現(xiàn)這一功能。因?yàn)槔^電器描述語言需要轉(zhuǎn)化為有限元仿真腳本,所以繼電器描述語言參考有限元仿真腳本進(jìn)行開發(fā)。同時(shí)參考計(jì)算機(jī)圖形學(xué)的基本理論,按點(diǎn)、線、面、體的層次對繼電器進(jìn)行描述。
為了使繼電器模型便于調(diào)整參數(shù),為繼電器設(shè)計(jì)提供極大的方便,繼電器描述語言分為兩大部分參數(shù)部分和模型描述部分。參數(shù)部分主要包含變量的定義,包括變量名和變量值。模型描述部分包含采用規(guī)定語法對繼電器模型進(jìn)行的描述。在語言中參數(shù)部分和模型描述部分分別采用Variable和Geometry兩個(gè)關(guān)鍵字進(jìn)行標(biāo)識。在參數(shù)部分,參數(shù)表達(dá)格式如下 參數(shù)名參數(shù)值 在模型描述部分,按照點(diǎn)、線、面、體層次定義了一系列的語句進(jìn)行描述。
首先定義的是坐標(biāo)系,其格式如下 coord ID x1 y1 z1 x2 y2 z2 ID2 其中,ID為建立坐標(biāo)系編號,x1、y1、z1分別是新坐標(biāo)系原點(diǎn)在直角坐標(biāo)系下三個(gè)軸的數(shù)值,x2、y2、z2分別是新坐標(biāo)系相對于原坐標(biāo)系在三個(gè)軸向的旋轉(zhuǎn)值。ID2為原坐標(biāo)系的編號。
點(diǎn)的定義為 point ID x y z 其中,ID描述的點(diǎn)的編號,x、y、z為點(diǎn)在坐標(biāo)中的三軸向數(shù)值。
線的定義為 lines ID P1 P2 其中,ID為線的編號,P1、P2為線段兩端點(diǎn)的編號。
面的定義為 surf4 ID L1 L2 L3 L4 其中,ID為面的編號,L1、L2、L3、L4為組成面的四條線的編號。
體的定義為 solidz ID S1 P1 P2 其中,ID為體的編號,S1為基準(zhǔn)面,P1、P2為面拉伸方向的矢量控制點(diǎn)。
通個(gè)這些描述定義,可以描述繼電器的所有幾何信息,但考慮到實(shí)際工程中采用的工程圖以長、寬、角度等信息作為參數(shù)的表達(dá)方法,與RML中采用的幾何坐標(biāo)為參數(shù)的表達(dá)方法不同。因此,定義了將這些點(diǎn)的幾何坐標(biāo)位置信息,轉(zhuǎn)換為工程圖紙中的參數(shù)信息,描述格式如下 SetMap C Value K S1 S2 S3……SetMapEnd 其中,C為工程圖紙中的參數(shù)名稱,Value為這個(gè)參數(shù)的原始值,K為相關(guān)系數(shù),S1、S2、S3為參數(shù)的編號,即滿足式(1)的關(guān)系。
Sn=Sn0+K(C0-C)(1) 其中,Sn為描述語言參數(shù)的當(dāng)前值,Sn0為描述語言參數(shù)的原始值,C0為模型參數(shù)的原始值,C為模型參數(shù)的當(dāng)前值。
2.有限元仿真軟件的聯(lián)合調(diào)用 具體步驟如下 步驟一采用RML語言對繼電器進(jìn)行建模,將其工程圖紙中的尺寸信息轉(zhuǎn)化為RML語言描述的腳本文件; 步驟二針對有限元仿真軟件開發(fā)出相應(yīng)的翻譯模塊,將RML語言描述的繼電器模型轉(zhuǎn)化為對應(yīng)有限元仿真軟件的建模腳本; 步驟三結(jié)合有限元軟件安裝情況、仿真分析類型和仿真參數(shù)生成可以控制仿真軟件工作的腳本文件; 步驟四根據(jù)繼電器設(shè)計(jì)中不同的分析需要控制有限元軟件進(jìn)行仿真計(jì)算; 步驟五有限元仿真軟件生成仿真結(jié)果文件,對結(jié)果文件進(jìn)行讀取得到需要的繼電器特性信息。
實(shí)施例2結(jié)合圖1、圖2和圖3,本發(fā)明是一種用于繼電器設(shè)計(jì)的多有限元軟件聯(lián)合仿真方法,具體有限元軟件調(diào)用仿真實(shí)例如下 步驟一采用RML語言對繼電器進(jìn)行建模,將其工程圖紙中的尺寸信息轉(zhuǎn)化為RML語言描述的腳本文件; 步驟二Flux調(diào)用首先需要開發(fā)Flux的翻譯模塊,將RML模型文件轉(zhuǎn)換為Flux可以使用的PYTHON語言的建模腳本。
首先是參數(shù)的轉(zhuǎn)換,例如在RML語言中的參數(shù) S5002-2.500E-03 其中,S5002是參數(shù)名,-2.500E-03是參數(shù)值 轉(zhuǎn)換成PYTHON語言后是 ParameterGeom(name=′S5002′,expression=′-2.500E-03′) 接下來是坐標(biāo)系的轉(zhuǎn)換。
RML語言中坐標(biāo)系為 coord 5001 S5001 S5002 S5003 S5220 S5220 S5220 0 0 轉(zhuǎn)換成PYTHON語言是 CoordSysCartesian(name=′5001′,parentCoordSys=Local(coordSys=CoordSys[′XYZ1′]),origin=[′S5001′,′S5002′,′S5003′],rotationAngles=RotationAngles(angleX=′0′,angleY=′0′,angleZ=′S5220′)) 點(diǎn)為 point 5001 S5004 S5005 S5006 5001 轉(zhuǎn)化為 PointCoordinates(color=Color[′White′],visibility=Visibility[′VISIBLE′],coordSys=CoordSys[′5001′],uvw=[′S5004′,′S5005′,′S5006′],nature=Nature[′STANDARD′]) 線為 lines 5001 5003 5007 轉(zhuǎn)化為 LineSegment(color=Color[′White′],visibility=Visibility[′VISIBLE′],defPoint=[Point[3],Point[7]],nature=Nature[′STANDARD′]) 到此RML語言描述的繼電器模型就可以全部轉(zhuǎn)換為PYTHON語言的建模腳本。然后使用PYTHON語言中BuildFace和Build Volume可以建立模型的面和體單元,從而完成繼電器的實(shí)體建模。接著,采用assignMeshPoint命令控制分網(wǎng)的精細(xì)程度,以及Material和assignRegionToVolumes命令定義模型材料,F(xiàn)lux即可按照建模腳本對繼電器進(jìn)行建模、分網(wǎng)和材料屬性設(shè)置。
步驟三Flux仿真模塊根據(jù)用戶輸入的銜鐵轉(zhuǎn)角參數(shù)和通過系統(tǒng)注冊表得到的Flux安裝狀況,生成仿真腳本文件F3D_INI.SPI; 步驟四Flux仿真模塊再根據(jù)線圈電流信息控制Flux按照仿真腳本文件循環(huán)仿真出各種電流情況下的吸力特性; 步驟五Flux仿真模塊生成仿真結(jié)果文件CHARACTERISTIC-ANALYSIS.PRT,通過對結(jié)果文件進(jìn)行讀取得到需要的繼電器吸力特性。
權(quán)利要求
1.一種繼電器用多有限元軟件聯(lián)合仿真分析方法,包括繼電器描述語言RML和有限元仿真軟件的聯(lián)合調(diào)用,其特征在于繼電器描述語言RML分為兩大部分參數(shù)部分和模型描述部分;參數(shù)部分主要包含變量的定義,包括變量名和變量值;模型描述部分包含采用規(guī)定語法對繼電器模型進(jìn)行的描述;在語言中參數(shù)部分和模型描述部分分別采用Variable和Geometry兩個(gè)關(guān)鍵字進(jìn)行標(biāo)識;在參數(shù)部分,參數(shù)表達(dá)格式如下
參數(shù)名參數(shù)值
在模型描述部分,按照點(diǎn)、線、面、體層次定義了一系列的語句進(jìn)行描述;
首先定義的是坐標(biāo)系,其格式如下
coord ID x1 y1 z1 x2 y2 z2 ID2
其中,ID為建立坐標(biāo)系編號,x1、y1、z1分別是新坐標(biāo)系原點(diǎn)在直角坐標(biāo)系下三個(gè)軸的數(shù)值,x2、y2、z2分別是新坐標(biāo)系相對于原坐標(biāo)系在三個(gè)軸向的旋轉(zhuǎn)值;ID2為原坐標(biāo)系的編號;
點(diǎn)的定義為
point ID x y z
其中,ID描述的點(diǎn)的編號,x、y、z為點(diǎn)在坐標(biāo)中的三軸向數(shù)值;線的定義為
lines ID P1 P2
其中,ID為線的編號,P1、P2為線段兩端點(diǎn)的編號;
面的定義為
surf4 ID L1 L2 L3 L4
其中,ID為面的編號,L1、L2、L3、L4為組成面的四條線的編號;
體的定義為
solidz ID S1 P1 P2
其中,ID為體的編號,S1為基準(zhǔn)面,P1、P2為面拉伸方向的矢量控制點(diǎn);
通過這些描述定義,可以描述繼電器的所有幾何信息,但考慮到實(shí)際工程中采用的工程圖以長、寬、角度等信息作為參數(shù)的表達(dá)方法,與RML中采用的幾何坐標(biāo)為參數(shù)的表達(dá)方法不同;因此,定義了將這些點(diǎn)的幾何坐標(biāo)位置信息,轉(zhuǎn)換為工程圖紙中的參數(shù)信息,描述格式如下
SetMap C Value K S1 S2 S3……SetMapEnd
其中,C為工程圖紙中的參數(shù)名稱,Value為這個(gè)參數(shù)的原始值,K為相關(guān)系數(shù),S1、S2、S3為參數(shù)的編號,即滿足式(1)的關(guān)系;
Sn=Sn0+K(C0-C)(1)
其中,Sn為描述語言參數(shù)的當(dāng)前值,Sn0為描述語言參數(shù)的原始值,
C0為模型參數(shù)的原始值,C為模型參數(shù)的當(dāng)前值;
有限元仿真軟件的聯(lián)合調(diào)用,具體步驟如下
步驟一采用RML語言對繼電器進(jìn)行建模,將其工程圖紙中的尺寸信息轉(zhuǎn)化為RML語言描述的腳本文件;
步驟二針對有限元仿真軟件開發(fā)出相應(yīng)的翻譯模塊,將RML語言描述的繼電器模型轉(zhuǎn)化為對應(yīng)有限元仿真軟件的建模腳本;
步驟三結(jié)合有限元軟件安裝情況、仿真分析類型和仿真參數(shù)生成可以控制仿真軟件工作的腳本文件;
步驟四根據(jù)繼電器設(shè)計(jì)中不同的分析需要控制有限元軟件進(jìn)行仿真計(jì)算;
步驟五有限元仿真軟件生成仿真結(jié)果文件,對結(jié)果文件進(jìn)行讀取得到需要的繼電器特性信息。
全文摘要
本發(fā)明的目的在于提供一種用于繼電器設(shè)計(jì)的綜合仿真分析系統(tǒng),實(shí)現(xiàn)多有限元軟件聯(lián)合仿真的繼電器用多有限元軟件聯(lián)合仿真分析方法。包括繼電器描述語言和有限元仿真軟件的聯(lián)合調(diào)用,繼電器描述語言分為兩大部分參數(shù)部分和模型描述部分;有限元仿真軟件的聯(lián)合調(diào)用,采用RML語言對繼電器進(jìn)行建模;針對有限元仿真軟件開發(fā)出相應(yīng)的翻譯模塊;結(jié)合有限元軟件安裝情況、仿真分析類型和仿真參數(shù)生成可以控制仿真軟件工作的腳本文件;根據(jù)繼電器設(shè)計(jì)中不同的分析需要控制有限元軟件進(jìn)行仿真計(jì)算;本發(fā)明提出了一種用于航天電磁繼電器設(shè)計(jì)的建模語言,通過對Ansys、Flux和Adams等有限元軟件進(jìn)行二次開發(fā),從而實(shí)現(xiàn)了多有限元軟件的聯(lián)合仿真。
文檔編號G06F17/50GK101571888SQ20091007231
公開日2009年11月4日 申請日期2009年6月17日 優(yōu)先權(quán)日2009年6月17日
發(fā)明者翟國富, 楊文英, 陳英華, 肖唐杰, 任萬濱 申請人:哈爾濱工業(yè)大學(xué)