呂殿利,景崇友,趙浛宇,王建民,汪友華
(1.河北工業(yè)大學(xué)電磁場與電氣可靠性省部共建國家重點實驗室培育基地,天津300130;2.天威保變電氣股份有限公司,河北 保定 071051)
變壓器整體絕緣結(jié)構(gòu)設(shè)計及電場分析軟件(簡稱:EF2D)是保定天威集團有限公司自主開發(fā)的一款專用軟件,可實現(xiàn)運行于W INDOWS環(huán)境下的變壓器整體絕緣結(jié)構(gòu)設(shè)計及電場分析功能[1].EF2D軟件通用性好,使用方便,結(jié)果清晰直觀.然而,EF2D軟件不能直接讀取AutoCAD的工程圖形文件,需要用戶自己提取原始輸入數(shù)據(jù),這樣就降低了前處理的工作效率.針對這一問題,本文對AutoCAD圖形交換文件DXF進行研究,編寫接口程序,將DXF文件中的圖形數(shù)據(jù)按照EF2D軟件需要的數(shù)據(jù)要求提取出來.通過該接口程序,可以快速將AutoCAD中的工程圖形數(shù)據(jù)導(dǎo)入EF2D軟件,進行前處理,大大提高了EF2D軟件的使用效率.
DXF是Draw ingeXchange File的縮寫,意思為圖形交換文件,在工程制圖中有廣泛的應(yīng)用,掌握了DXF文件的讀寫對編寫CAD軟件時的圖形信息的交換有重要意義.DXF最早產(chǎn)生于AutoCAD所攜帶的一種支持開放數(shù)據(jù)交換的數(shù)據(jù)格式,它是可以在不同CAD系統(tǒng)間進行數(shù)據(jù)交換的繪圖文件內(nèi)容的ASCII復(fù)制碼.
DXF文件是一種順序文件,它是在一定的組碼符號的規(guī)定下,包括了實體命令和幾何數(shù)據(jù)信息在內(nèi)的數(shù)據(jù)文件.一個DXF文件包括了圖形數(shù)據(jù)庫的有信息.DXF文件由標題段、表段、塊段、實體段和文件結(jié)束段5部分組成[2-4].
1)標題段(header),標題段記錄AutoCAD系統(tǒng)的所有標題變量的當前值或當前狀態(tài).
2)表段(tables),表段共包含4個表,依次為線型表(ltype)、圖層表(layer)、字樣表(style)和視圖表(view).
3)塊段(block),塊段記錄了所用塊的塊名、當前圖層層名、塊的種類、塊的插入基點及組成該塊的所有成員.
4)實體段(entities),實體段記錄了每個實體的名稱、所在圖層及其名字、線型和顏色等.
5)文件結(jié)束段(end of file):DXF文件結(jié)束標志.
每個段都是由組構(gòu)成.組是DXF文件書寫的基本單位,每個組分2行,第1行為組碼,代表該組數(shù)據(jù)的意義,其數(shù)據(jù)類型規(guī)定為整數(shù);第2行為組值,即這種數(shù)據(jù)的具體數(shù)值.每個段都以一個后跟字符串SECTION的組碼0開始,其后是組碼2和表示該段名稱的字符串(例如,HEADER).每個段都以一個后跟字符串ENDSEC的組碼0結(jié)束[5].
DXF文件的格式規(guī)范,描述各個段和實體的組碼和組值很有規(guī)律,因此便于用高級語言來編寫程序.讀取DXF文件的一般處理方法,如圖1.
圖1 讀取DXF文件的流程圖Fig.1 Flow chart of DXF file's reading
本文主要涉及的圖形數(shù)據(jù)信息主要保存在實體段中,所以對ENTITIES進行詳細說明.
ENTITIES段:包含圖形中出現(xiàn)的所有圖形對象,也包含對塊的引用.記錄了每個實體的名稱、線型名、顏色號、圖層名和重要的幾何數(shù)據(jù),例如每條直線和圓弧的坐標數(shù)據(jù).因為此程序主要提取直線和圓弧的數(shù)據(jù),其組碼和數(shù)據(jù)對應(yīng)關(guān)系如表1和表2.
根據(jù)表1和表2提供的數(shù)據(jù)說明,可以編寫程序?qū)XF文件中所有的圓弧和直線信息全部讀取出來.
表1 圓弧的實體描述數(shù)據(jù)Tab.1 Entity data of arc entity
將DXF文件中的圖形信息提取出來之后,并不能直接被EF2D軟件導(dǎo)入.因此需要對提取的數(shù)據(jù)信息進行分類和處理,使之符合EF2D軟件需要的輸入數(shù)據(jù)格式.
軟件EF2D所需要的原始輸入數(shù)據(jù)格式,是以整體和各個部件為單元的數(shù)據(jù),主要包括3種元件:絕緣板、角環(huán)和線圈.主要包括的輸入數(shù)據(jù)內(nèi)容如下:
1)整個場域邊界的坐標;
2)線圈和靜電環(huán)的總數(shù)及具體幾何尺寸,幾何尺寸標注示意圖如圖2;
3)絕緣板的總數(shù)及具體幾何尺寸,幾何尺寸標注示意圖如圖3;
4)角環(huán)的總數(shù)及具體幾何尺寸,幾何尺寸標注示意圖如圖4.
根據(jù)上述要求,采用C++語言將DXF文件提取出來的圖形數(shù)據(jù)信息進行分類、計算,輸出為EF2D軟件所需要的數(shù)據(jù)文件形式,即可實現(xiàn)與EF2D軟件的接口.
表2 直線的實體描述數(shù)據(jù)Tab.2 Entity data of line entity
圖2 線圈和靜電環(huán)的幾何尺寸標注示意圖Fig.2 The geometry sketch map of coil and electrostatic ring
圖3 絕緣板的幾何尺寸標注示意圖Fig.3 The geometry sketch map of insulation board
以一臺110 kV變壓器主絕緣結(jié)構(gòu)的AutoCAD圖形文件為例,如圖5.首先將該圖形文件用AutoCAD保存為DXF文件格式.通過接口程序讀取該DXF文件,經(jīng)過格式轉(zhuǎn)換,輸出為EF2D所需的數(shù)據(jù)文件,用記事本打開,如圖6所示.
圖4 角環(huán)的幾何尺寸標注示意圖Fig.4 The geometry sketch map of angle ring
圖5 110 kV變壓器主絕緣結(jié)構(gòu)的圖形文件Fig.5 The graphics file of 110 kV transformer main insulation structure
此數(shù)據(jù)與EF2D所需數(shù)據(jù)格式完全吻合,可正常導(dǎo)入到EF2D軟件中進行前處理操作,如圖7所示.
EF2D軟件下,進行網(wǎng)格剖分后,繼續(xù)執(zhí)行有限元分析命令(EF3),軟件正常運行,如圖8.
進而,可以進行數(shù)據(jù)后處理與圖形顯示等操作,可實現(xiàn)EF2D軟件提供的各項功能.
圖6 經(jīng)接口程序轉(zhuǎn)換后的數(shù)據(jù)結(jié)果Fig.6 Data conversion results by running the interface program
圖7 數(shù)據(jù)導(dǎo)入成功Fig.7 The success of data import
經(jīng)過對DXF文件內(nèi)容的分析,編寫了與EF2D軟件的接口程序.利用該接口程序,可方便的將AutoCAD下的變壓器主絕緣結(jié)構(gòu)模型的圖形文件,轉(zhuǎn)化為EF2D軟件所需要的數(shù)據(jù)格式,大大簡化了該軟件的前處理的操作過程,大幅縮短了用戶進行變壓器整體絕緣結(jié)構(gòu)設(shè)計及電場分析的時間,提高了工作效率和質(zhì)量.
圖8 程序運行成功Fig.8 The success of running the program
[1]王建民,張喜樂,張國強,等.大型變壓器主絕緣電場的全域分析工程仿真軟件開發(fā) [J].變壓器,2010,47(9):15-20.
[2]梁海濤,馬軍林,童創(chuàng)明,等.基于DXF模型的數(shù)據(jù)讀取與分析方法 [J].空軍工程大學(xué)學(xué)報(自然科學(xué)版),2007,8(2):46-48.
[3]姚宜斌,孔建.基于DXF文件的圖件轉(zhuǎn)換方法研究及程序?qū)崿F(xiàn) [J].大地測量與地球動力學(xué),2011,31(1):117-121.
[4]李芳珍,徐倫輝.DXF文件格式及其外部接口的研究 [J].軟件開發(fā)與應(yīng)用,2008,27(7):83-85.
[5]郭朝勇.AutoCADR14二次開發(fā)技術(shù)[M].北京:清華大學(xué)出版社.