(西華大學機械工程與自動化學院,四川 成都 610039)
電火花線切割數控機床具有能加工復雜形狀零件、材料蝕除量小、加工過程穩定、加工精度高、對被加工件的硬度沒有要求等優點,被廣泛使用;但是數控機床的數控系統通常都不具有繪圖和自動編程功能,其加工程序(G代碼或3B代碼)多采用手工編程,自動編程所占比例小。有些自動編程軟件[1-4]要離線依賴Auto CAD的繪圖功能完成繪圖。也有些圖形化編程系統(UGII、Master CAM等)雖然可以繪制電火花線切割加工的零件輪廓圖,也可生成符合ISO和EIA標準的加工代碼,但是不能方便經濟地嵌入電火花線切割數控系統中。目前國內廣泛使用的繪編控一體的控制系統大多不是基于Windows XP平臺的,從而給繪圖操作帶來不便(如HF系統)。基于此,本文采用VB技術開發了一套基于Windows XP平臺的繪編控一體化數控線切割控制系統的交互式繪圖自動編程功能模塊軟件系統。該系統擁有基于Windows XP平臺的繪圖平臺。在該繪圖平臺上可以調用其他CAD繪圖軟件系統繪制的以.DXF文件格式存儲的圖形文件,同時其繪制的圖形文件也可存儲為.DXF文件格式供其他CAD繪圖軟件系統使用,實現與其他CAD軟件的數據交換,以滿足一些用戶的要求。該系統能對繪制的零件加工輪廓曲線根據要求自動進行工藝順序安排(即加工路徑排序),自動進行編程所需的數值計算,以及自動生成數控系統所需要的加工程序。該系統是利用計算機進行數值計算,克服了人工計算精度較低的問題。同時,該系統自動生成線切割數控系統能執行的加工程序,避免了低效率的人工編程過程。由于該系統是獨立開發的,因此還可方便經濟地嵌入到新的電火花線切割控制系統中。
電火花線切割繪圖自動編程的系統結構如圖1所示。

圖1 線切割繪圖自動編程系統的結構
第1歩,繪制零件在線切割數控機床上進行加工的輪廓曲線,如繪制一個外槽輪的輪廓軌跡,如圖2所示,或者通過點擊該系統菜單“圖形文件|打開文件”打開其他CAD繪圖系統繪制的后綴為.DXF的一個文件。無論是繪制還是打開,其線段數據的相關信息都放在如圖3所示的自定義類型DrawTyPe的數組C_Draw()中。

圖2 線切割繪圖自動編程系統

圖3 自定義類型結構
第2步,由于進給速度(即加工切削速度)受電蝕效率、工件厚度等不可事先確定的因素影響,在線切割加工中由控制系統根據加工過程中鉬絲與工件間的電壓以及設定的跟蹤度自動動態調節,不能在加工代碼程序中預先設定加工速度,因此,為能以合適的加工進給速度對零件輪廓進行加工,須在工件加工輪廓之前加入引入段,同時指定線切割加工的起點(即引入段的一端點),從而使控制系統在加工輪廓前根據設定的跟蹤度自動調整到最優加工切削速度。
第3步,由于無論是打開的DXF文件(其他繪圖軟件繪制的零件輪廓圖),還是本系統繪制的零件輪廓圖,在繪制、存儲過程中線段的排列順序不可能就是加工過程所要的加工順序;因此,基于加工過程的連續性,需對C_Draw()中線段數據根據加工先后排序,即從切割加工的起點所在的線段開始,對加工輪廓線段進行排序。
第4步,將排好序的線段逐一進行處理,生成G代碼程序(本系統的默認代碼格式,在單擊“后置處理”功能后,也可以通過選擇代碼格式生成3B代碼)。
零件輪廓曲線分成2大類:一是直線和圓弧這2種簡單、基本的曲線,也稱為基本曲線;二是除基本曲線以外的其他非圓曲線,也稱為特殊曲線。繪圖子系統的結構框圖如圖4所示,主要包括繪制和編輯2大功能模塊。
繪制包括基本曲線的繪制和特殊曲線的生成。在繪制基本曲線時,首先單擊圖2所示的交互式操作平臺左邊的工具欄中相應的功能按鈕。當選擇某一繪制功能后,在工具欄的下方會立即出現要完成該功能的相關信息,并在操作平臺的最下面的提示區顯示相應的操作提示。例如,繪制外槽輪的輪廓軌跡加工的引入線,當單擊“繪直線”按鈕時,該按鈕四周變成亮白色,同時在工具欄下方出現要繪制直線的相關信息,以及繪制直線的相應提示,如圖5所示。直線的相關信息包括直線的長度,相位角,起點坐標值,終點坐標值,終點相對于起點的X、Y坐標的增量。由于采用鼠標拖動繪制曲線,如果曲線的關鍵點(如起點、終點、中心點、圓心點等)不是已經繪制的曲線的關鍵點(還包括線段與線段的交點),則繪制曲線的關鍵點的位置或者曲線的重要信息(直線的相位角、圓和圓弧半徑)很難做到精確;因此先用鼠標移動動態捕捉已有關鍵點預先繪制曲線。在繪制的過程中,該系統會在繪制功能的相關信息區中實時顯示繪制曲線的相關信息。若認為相關信息的值不夠精確,則可在相應的信息框中直接輸入精確的數據,在輸入數據過程中當前圖形曲線會根據輸入數據的變化動態變化,以實現精確的交互式繪制輪廓曲線。若滿意修改后的結果,并接受這段曲線,則可單擊紅色的確認按鈕,否則單擊黑色的取消按鈕(即本次繪制的線段信息不放入相應的數組中,并在繪圖區刪除該曲線線段)。單擊確認按鈕,系統除了會把該線段的信息放在圖3所示的自定義類型的動態數組C_Draw()中,還會快速計算出該線段與前面已接受的其他線段的交點(包括切點)數據以及該線段的中點數據。這些數據稱為關鍵點信息。系統把這些關鍵點信息(X、Y坐標值,所在線段)放在另一自定義類型的動態數組C_Point()中,為后面繪制新線段捕捉關鍵點及編輯操作做好準備。對于特殊曲線的繪制,首先輸入相關的關鍵信息,系統擬合出對應的曲線的函數表達式,然后采用小段直線或圓弧來擬合該曲線段。

圖4 繪圖子系統的結構

圖5 繪制直線示例
編輯模塊主要包括擦除、裁減、齊邊、線性陣列、圓形旋轉陣列、鏡像等功能,操作時既可以使用菜單欄中的“編輯”菜單,也可以單擊圖2所示的操作平臺右邊的工具欄中相應的功能按鈕實現功能選擇。該工具欄中還包括局部放大、全圖顯示、視圖區移動、后置處理等功能按鈕(為操作方便,擦除、修改功能按鈕放在左邊的工具欄中)。編輯操作都會涉及圖形線段的拾取。本系統采用的方法是當鼠標在繪圖區移動時,系統返回的鼠標指針點在繪圖區坐標系中的坐標值與已繪制的線段的數據進行運算,看鼠標指針點在哪條曲線段上,對滿足要求的曲線段,則以設置的“預選定”顏色顯示該曲線段,這時按下鼠標左鍵,就以設置的“選定”顏色顯示該曲線段,系統同時會記錄下該曲線段所對應的數據信息在自定義類型的動態數組C_Draw()中的下標值,實現圖形的拾取,為相應的編輯操作做好準備。
第1歩,以加工的起點為當前點,遍歷整個數組C_Draw(),查詢滿足線段端點(即起點、終點)為當前點且該線段還未處理的條件的線段。第2步,如果滿足條件的線段只有1條,就可直接把該線段的數據存放在自定義類型DrawTyPe的另一動態數組PX()中,并設定該線段為已作處理的標志。如果滿足條件的線段為多段(如圖6中封閉外槽輪輪廓,當找到引入線后,找下一線段時,出現了2條端點為當前點并且還未排序的線段),先根據滿足條件的線段信息,在圖上給出路徑方向(如圖6中的2個箭頭),由操作者移動鼠標進行選擇。當鼠標指針靠近某一個箭頭時,該箭頭由綠色變成紅色,如果操作者不想選擇該路徑,鼠標指針離開該箭頭,該箭頭又變回綠色。當某箭頭變成紅色后,按下鼠標左鍵,即可確定該箭頭所對應的線段為要加工的下一線段(如圖6所示,選定的是順時針方向的向上的這一線段)。把選擇的線段的數據存放在PX()中,同時設定該線段為已作處理的標志,并把當前點的數據改為該線段的另一端點的數據。第3步,判斷C_Draw()中數據是否處理完畢。若處理完畢,則結束;否則,重復以上步驟。

圖6 路徑方向選擇例圖
根據線切割加工的特點,G代碼加工程序以相對坐標編程,自動生成流程,如圖7所示。

圖7 G代碼生成程序框圖
以加工的起點為當前點,對按加工要求排好序的線段進行G代碼的自動生成。當當前線段為直線時,則生成G01直線插補程序段,尺寸字(X、Y等)后面的數值根據當前點與該線段的起點、終點的關系得到。若當前點的坐標與線段的起點坐標一致,則用該線段終點的坐標值與當前點的坐標值之差作為尺寸字后面的數值;反之,用該線段起點的坐標值與當前點的坐標值之差作為尺寸字后面的數值。由于圓弧在DXF文件中是以逆時針方向存儲的,因此,本繪圖系統繪制的圓弧也是以逆時針方向來存儲相關數據。當當前線段為圓弧時,若當前點的坐標與該圓弧的起點坐標一致,則生成G03逆圓弧插補程序段;反之,生成G02順圓弧插補程序段,尺寸字后面的數值計算與直線插補程序的計算方法相同。每生成一程序段,就對當前點的數值進行更新,直到對所有排好序的線段都生成對應的程序段為止。根據圖2所示外槽輪的輪廓軌跡自動生成的按順時針方向走刀的G代碼程序如圖8所示。該加工程序代碼沒有考慮鉬絲半徑以及放電間隙(即補償量為0),這是為能向直接輸入G代碼的線切割數控系統[5]和其他數控機床(如水射流、激光等數控機床)提供加工程序。本系統也可在生成加工代碼前,進行加工參數設置,如圖9所示,根據鉬絲半徑以及線切割的電參數對應的放電間隙設置“補償量”,生成類似于其他數控機床帶刀補的加工程序。

圖8 G代碼生成結果

圖9 加工參數設置
本系統是一個完全獨立的模塊。它與其他系統的數據交換,一是通過DXF格式的圖形文件,二是通過文本格式的G代碼程序文件;因此該系統既可單獨作為圖形繪制及圖形自動編程系統使用,又可作為開放式個人計算機數控系統自動編程的功能模塊。在開放式個人計算機數控系統的開發中,利用Shell()函數調用生成可執行程序的本系統,或把本系統的源代碼直接添加進以VB為開發平臺的計算機數控系統中,即可嵌入到新開發的電火花線切割控制系統中。如圖10所示,在VB新開發的XH中走絲線切割控制系統中,通過“視窗”下的菜單項“CAD繪圖/自動編程系統”單擊click事件中添加“I=Shell(“數控線切割繪圖自動編程系統.exe”,1)”或者“Dform.show”語句(本系統編譯后生成的可執行程序名為“數控線切割繪圖自動編程系統.exe”,本系統的主窗體名為“Dform”),即可把本繪圖自動編程系統嵌入到VB新開發的XH中走絲線切割控制系統中。圖10中右邊下方的米老鼠輪廓曲線的加工G代碼程序就是通過本繪圖自動編程系統而得到的。該G代碼程序的數值計算精度是按定義的0.001μm精度計算的,已高于電火花線切割數控系統要求的0.1μm的尺寸精度。

圖10 XH中走絲線切割控制系統中的應用
本系統基于Windows平臺成功地實現了線切割數控系統的切割輪廓軌跡的繪制及自動編程,彌補了手工編程中的數值計算煩瑣、費時、精度不高、容易出錯以及較難編制復雜輪廓軌跡的補償程序等許多不足。該系統既可單獨作為圖形繪制及圖形自動編程系統使用,又可作為開放式計算機數控系統實現自動編程的功能模塊。因為本系統得到的是G代碼格式加工程序,所以它也可以作為其他數控機床(如水射流、激光等數控機床)的繪圖自動編程系統。
[1]徐婭萍,吳小玲,邱鴻利. 基于AutoCAD的線切割自動編程接口軟件設計[J]. 航空精密制造技術,2002,38(5):15-18.
[2]曹斌,李光耀,李啟炎. 基于DXF文件格式的二維復雜圖形數控代碼自動生成法[J]. 機械設計與制造,2003(3):30-32.
[3]蘭琳,唐小琦. 基于Windows平臺的線切割數控自動編程系統[J]. 機械工程師,2005 (1):32-33.
[4]蔡伯陽,林金明,謝明紅,等.基于DXF文件的NC代碼生成[J].現代制造工程,2002(2):20-21.
[5]陳廷成,杜文正,雷玉勇,等.線切割機床數控系統的開發與應用[J].機械設計與制造,2012(11):89-91.