朱 濤 常偉杰 張建華
(山東大學(xué)機械工程學(xué)院,山東濟南 250061)
電火花銑削是在數(shù)控系統(tǒng)控制下采用簡單形狀的電極,使其按一定軌跡作類似于數(shù)控銑削的分層成形運動,通過工具與工件之間的火花放電來蝕除金屬材料,完成一定形狀加工的工藝[1]。電火花銑削加工成本低,柔性好,加工質(zhì)量高。工具或工件的超聲振動能夠改善放電間隙內(nèi)的狀況,強化工件的材料去除率,使加工過程更加穩(wěn)定[2-4]。復(fù)合加工機床中使用的電火花脈沖電源多為獨立式電源,電源參數(shù)多為手工調(diào)節(jié),且不能由上位機進(jìn)行集中控制。
利用復(fù)合加工機床加工新工件時,一般參考以前的加工實例,利用與成功實例相似特征的加工方案,再根據(jù)新工件的具體特征和相關(guān)經(jīng)驗知識,對其做出適當(dāng)?shù)男拚业浇咏顑?yōu)解的加工方案;或者是通過實驗分析的方法得出優(yōu)化的加工方案。如何存儲大量實驗數(shù)據(jù)并得出工藝規(guī)律、存儲最優(yōu)加工方案、為新工件提供參考方案等都需要建立數(shù)據(jù)庫系統(tǒng)。
針對上述問題,本文采用了滿足超聲輔助電火花銑削半精、精加工要求的脈沖電源。該脈沖電源可由主控計算機(上位機)設(shè)置、下傳加工參數(shù)并控制加工啟停。同時設(shè)計開發(fā)了基于關(guān)系模型的超聲電火花加工數(shù)據(jù)庫,能夠有效存儲、處理和管理加工信息,并設(shè)計了簡單宜人的操作界面。
數(shù)控高頻脈沖電源(圖1)具有頻域廣、功率大等特點,可用于普通放電加工和超聲輔助放電加工。數(shù)控高頻脈沖電源的柜體上設(shè)有操作面板,可通過面板設(shè)置電壓檔位,同時可以利用面板上的電流表和電壓表實時監(jiān)視加工狀態(tài),電流表和電壓表顯示的是當(dāng)前加工電壓和加工電流。操作面板上還設(shè)有啟動和急停按鈕。數(shù)控高頻脈沖電源主要包括電源電路、脈沖發(fā)生器、接觸控制電路、功率放大電路和間隙電壓采集電路5個部分,如圖1b所示。
電源電路包括2個變壓器、1個開關(guān)電源和3個風(fēng)扇。2個變壓器用于脈沖放電供電,開關(guān)電源用于電路板的低壓供電以及開關(guān)電路繼電器的供電,3個風(fēng)扇用于脈沖電源的對外散熱。脈沖發(fā)生器以51單片機為核心,用于產(chǎn)生所需頻率的脈沖,并控制放電電流的通斷。脈沖發(fā)生器電路帶有RS232C接口,可與主控計算機進(jìn)行串行通信,接收主控計算機發(fā)送的格式指令,并返回執(zhí)行信息。接觸控制電路用于調(diào)制脈沖發(fā)生器產(chǎn)生的脈沖寬度和脈沖間隔值,并放大脈沖信號。功率放大電路用于放大脈沖功率,以滿足放電加工的功率要求。間隙電壓采集電路用于采集間隙電壓的實時值并進(jìn)行狀態(tài)判別。

超聲輔助放電軟件系統(tǒng)采用Visual C++為開發(fā)語言,利用ADO數(shù)據(jù)庫開發(fā)技術(shù)開發(fā)了基于關(guān)系模型的數(shù)據(jù)庫系統(tǒng),并集成了通信控制和工藝庫兩個模塊。超聲輔助放電軟件系統(tǒng)結(jié)構(gòu)如圖2所示,上位機和脈沖電源之間通過RS232C接口進(jìn)行數(shù)據(jù)傳遞通訊。數(shù)據(jù)庫存儲、處理和管理工藝系統(tǒng)產(chǎn)生的加工信息,為工藝系統(tǒng)提供基礎(chǔ)的數(shù)據(jù)支持??梢园旬?dāng)前工藝系統(tǒng)的放電參數(shù)存儲到數(shù)據(jù)庫中,也可以從數(shù)據(jù)庫中選擇放電參數(shù)作為當(dāng)前工藝系統(tǒng)的加工參數(shù)。工藝系統(tǒng)為電火花加工主程序提供優(yōu)化的加工方案、優(yōu)化的工藝參數(shù)。

用戶操作界面直觀簡單,方便用戶使用,如圖3所示。界面上左上部分是串口設(shè)置部分,中間部分主要是脈沖電源主要參數(shù)設(shè)置、通信控制部分,右上部分是數(shù)據(jù)庫操作部分,下半部分是數(shù)據(jù)列表。

上位機與脈沖電源之間的通信采用RS232C串口通信協(xié)議,通信模塊的流程如圖4。每次發(fā)送控制命令時,如果脈沖電源返回正確執(zhí)行信息,則通信成功,反之重新發(fā)送,連續(xù)3次通信失敗向用戶報通信錯誤。上位機發(fā)出指令,由脈沖發(fā)生器中的51芯片判斷指令執(zhí)行正確與否,返回信息由上位機通過查詢的方式取回。

采用CSerial類[5]開發(fā)了串口通信控制模塊。上位機在一個通信周期內(nèi)把控制參數(shù)下傳給脈沖電源。
下傳參數(shù)前先發(fā)送查詢測試代碼,若脈沖電源回應(yīng)正確通信代碼,則說明通訊正確,若無回應(yīng)或回應(yīng)通信錯誤代碼,則說明通訊錯誤。脈沖電源回傳的信息主要是通信正確、通信錯誤、電源掉電信息。這些信息主要用于判斷脈沖電源工作過程中通訊是否正確、電源是否斷電。
加工中修改脈沖電源的基本參數(shù)時,需要先下傳關(guān)脈沖指令,再下傳數(shù)據(jù),再下傳開脈沖指令。程序?qū)崿F(xiàn)方法為:若使脈沖電源工作需要點擊開始加工按鈕,點擊后開始加工按鈕顯示為“停止加工”,下傳參數(shù)按鈕變?yōu)榉腔顒影粹o。當(dāng)加工中需要修改參數(shù)時,先點擊“停止加工”按鈕下傳關(guān)脈沖指令,此時下傳參數(shù)按鈕變?yōu)榛顒影粹o、“停止加工”按鈕顯示為“開始加工”,然后修改加工參數(shù)、下傳相關(guān)數(shù)據(jù),最后點擊開始加工按鈕進(jìn)行加工。這樣程序就可以滿足修改參數(shù)時脈沖電源的硬件要求。
超聲電火花加工涉及眾多加工參數(shù),加工中單個參數(shù)對加工速度、粗糙度、電極損耗、加工精度等的影響均有一定的規(guī)律和經(jīng)驗可循,能夠找到滿足加工條件下單個參數(shù)的最優(yōu)解。但是由于各參數(shù)之間存在一定耦合關(guān)系,單個最優(yōu)參數(shù)的組合,并不一定能獲得最優(yōu)的加工效果。孤立地考慮各個參數(shù),很難獲得合適的加工規(guī)準(zhǔn)。因此,已加工工件合適的加工規(guī)準(zhǔn)是用戶進(jìn)行工藝規(guī)劃的基礎(chǔ)。如何對工藝數(shù)據(jù)庫進(jìn)行管理和存儲,以便用戶能根據(jù)加工條件要求迅速準(zhǔn)確地查詢到合適的加工規(guī)準(zhǔn)是建立超聲電火花加工工藝數(shù)據(jù)庫的關(guān)鍵。利用關(guān)系模型數(shù)據(jù)庫的相關(guān)理論,可以較好地解決這個問題。

表1 超聲電火花加工工藝參數(shù)表
超聲電火花加工工藝參數(shù)如表1所示,包括電源電壓、峰值電流、脈沖寬度、脈沖間隔、超聲振幅等。表1既可稱為一個關(guān)系,也可稱為一個實體集。以加工規(guī)準(zhǔn)表示超聲電火花加工條件實體集,每項工藝參數(shù)為此實體集的一個屬性,每一組加工信息都是這一實體集的一個實體??紤]到關(guān)系模式的完備性,添加一個屬性加工規(guī)準(zhǔn)代碼表示加工工藝序號,同時作為這個關(guān)系的關(guān)鍵字。其關(guān)系模式可表示為:加工規(guī)準(zhǔn)(加工規(guī)準(zhǔn)代號,高壓電壓,高壓電流,低壓電流,極性,脈沖間隔,脈沖寬度,超聲振幅,表面粗糙度)。
由于脈沖電火花放電加工的工藝復(fù)雜性,數(shù)據(jù)庫根據(jù)不同的電極和工件材料進(jìn)行分類[6],以利于數(shù)據(jù)管理和后期的工藝分析。每個類別構(gòu)建一個獨立的數(shù)據(jù)庫。用戶可根據(jù)工藝實際需要通過軟件自行建立工藝數(shù)據(jù)庫,程序會根據(jù)工藝數(shù)據(jù)庫模板創(chuàng)建和初始化新建的數(shù)據(jù)庫。
將數(shù)據(jù)庫中常使用的對象和方法自行封裝成CMySqlADO數(shù)據(jù)庫ADO接口類。類的封裝如下:


該類中Connect()函數(shù)是數(shù)據(jù)庫連接函數(shù),該函數(shù)先定義一個_ConnectionPtr類型指針cnn,然后調(diào)用CreateInstance方法實例化,再調(diào)用Connection對象的Open方法創(chuàng)建數(shù)據(jù)庫的連接。用戶只需要提供服務(wù)器名、數(shù)據(jù)庫名、用戶名和密匙,不需要配置數(shù)據(jù)源就可以方便地訪問數(shù)據(jù)庫。DisConnect()是斷開數(shù)據(jù)庫連接函數(shù)。GetErrors()是連接錯誤信息處理函數(shù)。調(diào)用GetRecordCount()能夠得到數(shù)據(jù)庫當(dāng)前表的記錄的條數(shù)。類中還封裝了Move()、MoveLast()、MoveNext()、MoveFirst()、MovePrevious()等方法,用以移動記錄集指針到指定的位置。OpenTable()是打開表函數(shù)。
在Visual C++中使用ADO開發(fā)數(shù)據(jù)庫,需要引入ADO動態(tài)連接庫。方法是在StdAfx.h文件末尾處引入ADO庫文件,如下所示:

其中rename("EOF","_EOF")表明把ADO中用到的EOF改為_EOF,防止發(fā)生命名沖突。

添加、修改工藝數(shù)據(jù)的界面如圖5所示,點擊選用參數(shù)按鈕可以把數(shù)據(jù)庫中的工藝數(shù)據(jù)提供給工藝庫,進(jìn)而可以通過下傳參數(shù)按鈕把工藝參數(shù)下傳給脈沖電源。添加當(dāng)前按鈕可以把用戶正在使用的工藝數(shù)據(jù)添加到數(shù)據(jù)庫中。
新建參數(shù)、刪除參數(shù)、修改參數(shù)按鈕可以分別實現(xiàn)在數(shù)據(jù)庫中添加、刪除、修改記錄。實現(xiàn)這三種操作的方法是先生成添加記錄、刪除記錄、修改記錄的SQL記錄的語句,再使用連接對象(Connection Object)的Execute方法來實現(xiàn)添加、刪除及修改記錄。
當(dāng)前庫下拉按鈕可以選擇不同電極和工件材料所對應(yīng)的工藝數(shù)據(jù)庫。新建庫按鈕可以為數(shù)據(jù)庫中沒有的電極和工件材料建立一個新的數(shù)據(jù)庫。
該電火花放電系統(tǒng)能達(dá)到與機床本體良好的電路以及軟件的連接,能實現(xiàn)與機床主控計算機之間的通信,可以通過用戶操作界面實現(xiàn)對放電加工參數(shù)的調(diào)節(jié)、電源啟停控制。超聲電火花工藝數(shù)據(jù)庫能夠有效存儲、處理和管理工藝數(shù)據(jù),該系統(tǒng)能夠滿足加工需要并能安全穩(wěn)定工作。
[1]趙萬生.先進(jìn)電火花加工技術(shù)[M].北京:國防工業(yè)出版社,2003.
[2]徐明剛,張建華,張勤河,等.超聲振動改善氣體介質(zhì)電火花加工的機理研究[J].中國機械工程,2007,18(11):1261 -1264.
[3]WALIA R S,SHAN H S,KUMAR P.Improving EDM process efficiency by ultrasonic vibrations[J].Journal of Pure and Applied Ultrasonics.2004,26(2 -3):84 -89.
[4]Amir Abdullah,Mohammad R Shabgard.Effect of ultrasonic vibration of tool on electrical discharge machining of cemented tungsten carbide(WC-Co)[J].The International Journal of Advanced Manufacturing Technology.2008,38(11/12):1137 – 1147.
[5]張宏林.精通Visual C++串口通信技術(shù)與工程實踐[M].北京:人民郵電出版社,2008.
[6]趙錦芝,趙萬生,宋穎慧.基于關(guān)系模型的網(wǎng)絡(luò)電火花加工工藝數(shù)據(jù)庫的研究[J].電加工與模具,2001(1):53-56.