如何在Windows 系統(tǒng)下實現(xiàn)線切割編程控制軟件的設(shè)計 電加工技術(shù)作為機(jī)械特種加工的一個重要分支,從誕生以來,就在工業(yè)生產(chǎn)中發(fā)揮了極為重要的作用.在近幾年,隨著計算機(jī)技術(shù)的飛速發(fā)展,電加工數(shù)字控制技術(shù)也有了飛躍的提高,筆者因為工作的需要,開發(fā)了一套在windows平臺上的線切割編程控制軟件,并在實際當(dāng)中得到了應(yīng)用.此套系統(tǒng)已經(jīng)用于多個工廠的線切割數(shù)控改造項目和本所的新產(chǎn)品試制中,效果良好,工作穩(wěn)定。 簡單簡介: 這套系統(tǒng)由兩個獨(dú)立軟件組成.它的模塊圖如附圖.一個是線切割自動編程軟件.這個軟件用DELPHI編制,它的主要功能是自動生成線切割機(jī)床的NC代碼,并生成相應(yīng)的工藝圖和工藝卡,同時可支持DNC,由計算機(jī)直接傳輸代碼給控制機(jī).它的工作過程大致如下: 1.首先由通用的CAD平臺,如autocad,生成待加工零件的幾何圖形.輸出標(biāo)準(zhǔn)的dxf文件. 2.由自動編程軟件讀入該dxf文件,在加工向?qū)У闹甘鞠?用鼠標(biāo)拾取工藝參數(shù),選擇穿絲點(diǎn),起切元素,切割方向.計算機(jī)按照選擇,自動生成加工鏈表,由加工鏈表,生成NC代碼. 3.通過仿真模塊,讀入剛生成的NC代碼,輸入工藝參數(shù),模擬加工,檢查代碼錯誤. 4.計算機(jī)自動生成工藝圖和工藝卡,由打印機(jī)打印輸出. 5.通過磁盤或者DNC將代碼傳輸給控制機(jī). 這個編程軟件的優(yōu)點(diǎn)是: a. 利用windows平臺,可使用的內(nèi)存幾乎無限制,擺脫了過去線切割編程軟件的NC代碼的長度限制. b. 支持多任務(wù),可在切割的同時編制程序.而這些*由操作系統(tǒng)管理,安全,可靠. c. 提供多種編程模式,支持多次加工,多行腔加工,滿足各種零件的特殊工藝需要. d. 界面是windows標(biāo)準(zhǔn)界面,簡單易學(xué),非常友好. 這個編程軟件的開發(fā)難點(diǎn)是: * CAD 與 CAM 的接口的實現(xiàn): 數(shù)控機(jī)床編程,首先要建立所加工零件的幾何模型.而現(xiàn)在的通用CAD平臺可以非常方便,快捷的產(chǎn)生幾何模型.這樣,CAM與CAD之間的接口就變得很重要.DXF文件是大多數(shù)CAD平臺所支持的文本文件格式,其結(jié)構(gòu)*公開化,是一種CAD與CAM接口的良好工具.而現(xiàn)在的可視化語言都提供良好的文件操作支持,有豐富的控件和底層函數(shù),用這些良好的工具可以很容易實現(xiàn)CAD與CAM的接口. * 工藝參數(shù)與幾何路徑結(jié)合生成NC代碼: CAD所產(chǎn)生的幾何路徑信息還不足以生成零件加工的NC代碼.根據(jù)各種數(shù)控機(jī)床的需要,還要輸入不同的工藝信息.具體到線切割機(jī)床,還需要輸入穿絲點(diǎn),切入點(diǎn),切割方向,偏移量等工藝信息.由于此軟件運(yùn)行在WINDOWS平臺上,其良好的圖形界面可以充分發(fā)揮程序員的想象力.在此軟件中,我設(shè)計了一個加工向?qū)?在它的指引下,操作者可以很容易的完成工藝參數(shù)的輸入. 此程序以鏈表的方式存儲加工信息,包括幾何路徑信息和工藝信息,當(dāng)工藝參數(shù)輸入后,則鏈表生成.程序沿鏈表周游一次,則代碼生成. * NC代碼翻譯及仿真加工: 當(dāng)NC代碼生成后,為了保證數(shù)控程序的正確性,降低加工廢品率,還要進(jìn)行計算機(jī)仿真加工.需要將NC代碼轉(zhuǎn)換成加工信息,進(jìn)而生成加工鏈表.這實際上相當(dāng)于將程序源代碼編譯成機(jī)器代碼的過程,所以編譯原理的理論*可以應(yīng)用在這.我開發(fā)了一個NC代碼編譯器,它經(jīng)過兩遍掃描,通過詞法分析,語法分析,既可以將NC代碼轉(zhuǎn)換成加工信息,同時生成加工鏈表.有了加工鏈表,就可以由插補(bǔ)模塊形成幾何路徑,再借助計算機(jī)動畫技術(shù),可以很真實的反映加工情況. * 工藝卡及工藝圖生成: WINDOWS系統(tǒng)為外設(shè)的使用提供了極大的方便性,它的設(shè)備無關(guān)性解放了許多程序員的苦惱.此程序采用DELPHY當(dāng)中提供的打印控件,同時對PRINTER的CANVAS編程,自動生成工藝卡和工藝圖,充分利用了計算機(jī)的計算和繪圖能力. * DNC計算機(jī)直接傳輸 本程序可以通過控制機(jī)的光電紙帶接口,將代碼直接送入控制機(jī),這為老機(jī)床的改造提供了極大的方便.同時,也為新機(jī)床的網(wǎng)絡(luò)化,提供了解決方案.
這套系統(tǒng)的另一個軟件是線切割機(jī)床控制軟件.它的關(guān)鍵控件由VC編制,界面用delphi編制,其中的開關(guān)量控制使用了行內(nèi)匯編.在windows下的cnc系統(tǒng),關(guān)鍵要解決的問題是windows系統(tǒng)禁止應(yīng)用程序直接訪問硬件,為了進(jìn)入ring0層,本軟件編制了專門的虛擬設(shè)備驅(qū)動程序. 這個控制軟件的主要功能是: 1. 讀入nc代碼.并提供了編輯修改功能. 2. 提供了手動控制臺,可手動以三種速度移動機(jī)床. 3. 可圖形仿真加工,也可空走仿真加工. 4. 加工時,可直接控制高頻電源,也可暫停進(jìn)給.同時有速度,狀態(tài)顯示. 5. 提供自動間隙補(bǔ)償. 6. 由于是在windows平臺上運(yùn)行,它自然具有了多任務(wù)能力,在切割的同時,可以隨意進(jìn)行其他操作,可以玩游戲或者看vcd. 這個控制軟件的開發(fā)難點(diǎn)是: 1. 要提供一個NC代碼編輯器: 這個代碼編輯器要具有一個簡單字處理器的所有功能.以前在DOS狀態(tài)下,這是一件很繁瑣的工作.在WINDOWS平臺上,借助DELPHY的VCL控件,這成為一種很輕松的工作.利用DELPHY的RICHEDIT控件可以很容易的實現(xiàn)代碼編輯器的所有功能. 2. 具有手動控制臺: 以前在DOS狀態(tài)下,手動速度控制要依靠軟件延時,需要設(shè)計一個循環(huán)子程序,空循環(huán)產(chǎn)生延時,浪費(fèi)CPU時間.在WINDOWS平臺上,利用DELPHY的TIMER控件,可以較為的控制機(jī)床速度,同時,由于WINDOWS系統(tǒng)對應(yīng)用程序并不屏蔽IO口的訪問,所以,可以使用行內(nèi)匯編直接控制步進(jìn)電機(jī)的運(yùn)動.由于TIMER控件實際上是在使用時間中斷,所以對CPU的占用要遠(yuǎn)遠(yuǎn)小于DOS下. 3. 插補(bǔ)模塊: 對于數(shù)控系統(tǒng)來說,插補(bǔ)模塊是很重要的部分.為了滿足高精度的要求,本程序采用0.1um作為一個脈沖當(dāng)量,對各種不同的精度要求,用多次插補(bǔ),一次進(jìn)給的方式,來解決數(shù)控系統(tǒng)與機(jī)械系統(tǒng)的精度差別. 4. WINDOWS下的中斷控制: WINDOWS系統(tǒng)下屏蔽應(yīng)用程序?qū)τ布袛嗟目刂?為了獲得系統(tǒng)ring0級的控制權(quán),需要自己開發(fā)設(shè)備驅(qū)動程序.VtoolsD是很好的驅(qū)動程序開發(fā)環(huán)境,可以很方便的編制驅(qū)動程序,避開繁瑣的匯編語言. 總之,這套系統(tǒng)運(yùn)行在windows平臺上,充分利用了windows系統(tǒng)的特性,為電加工數(shù)控系統(tǒng)的發(fā)展,探索了一條新的道路.
蘇州中航長風(fēng)數(shù)控科技有限公司主營產(chǎn)品有:線切割機(jī)床,電火花成型機(jī),快走絲線切割,中走絲線切割,電火花線切割,電火花穿孔機(jī),取斷絲錐機(jī)。 |