作者:華正機(jī)械 發(fā)布時(shí)間:2023-12-19 16:21:34 瀏覽次數(shù):159次
1 引言
數(shù)控技術(shù)作為現(xiàn)代制造技術(shù)的一項(xiàng)關(guān)鍵技術(shù),它是提高機(jī)床生產(chǎn)效率、加工精度穩(wěn)定和一致性的重要手段。目前,以美、日、歐為先驅(qū),許多都在全力研制新一代開放式CNC數(shù)控系統(tǒng),國內(nèi)已有西北工業(yè)大學(xué)、北京航天航空大學(xué)、浙江大學(xué)等一些單位也在進(jìn)行新一代基于工業(yè)個(gè)人計(jì)算機(jī) (Industrial Personal Computer,簡稱IPC)數(shù)控系統(tǒng)的與嘗試。隨著IPC數(shù)控系統(tǒng)的研制成功,其中數(shù)控系統(tǒng)軟件的設(shè)計(jì)將開放性和易擴(kuò)展升級的特點(diǎn)。為此作者選用“奔騰”PC機(jī)硬件平臺、Windows95操作平臺、AutoCAD for Windows平臺、Visual Basic(以下簡稱VB)工具,研制適于工業(yè)PC機(jī)數(shù)控系統(tǒng)上使用的數(shù)控圖形自動編程系統(tǒng)。該系統(tǒng)具有可移植性好,功能易擴(kuò)展升級,操作、使用、維護(hù)簡便等特點(diǎn),本文對系統(tǒng)研制的主要內(nèi)容予以介紹。 2 系統(tǒng)的框架結(jié)構(gòu)和功能 系統(tǒng)框架結(jié)構(gòu)如圖1所示,它主要包括AutoCAD圖形生成、圖形數(shù)據(jù)信息輸入、工藝干預(yù)、NC代碼生成、動態(tài)校驗(yàn)和數(shù)控加工程序輸出六個(gè)功能模塊。其中圖形生成模塊由AutoCAD完成;其余模塊均為基于AutoCAD平臺采用VB工具研制而成,功能如下:
系統(tǒng)總體框架結(jié)構(gòu)
(1)圖形數(shù)據(jù)信息輸入:它是AutoCAD實(shí)體建模后首入的功能模塊。具有AutoCAD圖形交換文件DXF接口,讀取DXF接口文件為自動編程系統(tǒng)準(zhǔn)備的圖形數(shù)據(jù);
(2)工藝干預(yù):它是繼(1)步操作后對圖形數(shù)據(jù)進(jìn)行再加工的核心模塊。工藝干預(yù)內(nèi)容包括輪廓和點(diǎn)位兩種方式,干預(yù)過程通過鼠標(biāo)事件求鼠標(biāo)干預(yù)位置與實(shí)體的距離實(shí)現(xiàn)??紤]到零件尺寸大小變化,本模塊還具備視口放大和滿屏顯示的輔助功能,便于進(jìn)行干預(yù);
(3)NC代碼生成:經(jīng)過工藝干預(yù)即確定刀具走刀路線后,根據(jù)ISO數(shù)控代碼格式便可將圖形幾何信息和工藝干預(yù)信息轉(zhuǎn)換成ISO標(biāo)準(zhǔn)數(shù)控加工程序代碼。同時(shí)以“ .NC”形式文件名保存;
(4)動態(tài)校驗(yàn):上述生成的NC代碼是否正確還要進(jìn)行校核和檢驗(yàn)方能制作控制介質(zhì)輸出,本模塊采用逐點(diǎn)插補(bǔ)算法進(jìn)行動態(tài)模擬檢驗(yàn)ISO數(shù)控加工程序代碼是否正確,以及刀具與工件是否會發(fā)生干涉等。如果檢驗(yàn)不正確則需對上述各個(gè)環(huán)節(jié)進(jìn)行反復(fù)調(diào)試直到正確為止;
(5)數(shù)控加工程序輸出:經(jīng)調(diào)試和校驗(yàn)后正確的數(shù)控加工程序可以通過拷貝、打印的方式輸出。
3軟件設(shè)計(jì)過程 構(gòu)成圖形自動編程系統(tǒng)的主要功能模塊有圖形信息輸入模塊、工藝干預(yù)模塊、NC代碼生成模塊以及校核檢驗(yàn)?zāi)K。以圖形信息輸入模塊為例說明VB程序設(shè)計(jì)的過程。 (1)實(shí)體數(shù)據(jù)類型變量定義 系統(tǒng)對點(diǎn)、直線、圓弧和整圓四種實(shí)體采用通用數(shù)據(jù)類型結(jié)構(gòu)定義幾何信息,該類型的全部元素均為字符串型變量,在圖形信息輸入模塊中主要保存讀取實(shí)體的幾何信息。具體以數(shù)組MM(200)變量來保存,這里要求實(shí)體數(shù)目不能超過200個(gè)。即 Type ENTITIES-TYPE′實(shí)體形式數(shù)據(jù)類型名:ENTITIES-TYPE; STYLE As String′實(shí)體類型變量(其值為LINE,ARC,CIRCLE); X1 As String′實(shí)體的起點(diǎn)坐標(biāo)分量x; Y1 As String′實(shí)體的起點(diǎn)坐標(biāo)分量y; X2 As String′實(shí)體的終點(diǎn)坐標(biāo)分量x; Y2 As String′實(shí)體的終點(diǎn)坐標(biāo)分量y; X3 As String′實(shí)體(圓弧或圓)的圓心坐標(biāo)分量x; Y3 As String′實(shí)體(圓弧或圓)的圓心坐標(biāo)分量y; R1 As String′實(shí)體(圓弧或圓)的半徑R; WISE As String′實(shí)體(圓弧或圓)的順(=0)、逆(=1)方向; ANGLE1 As String′實(shí)體(圓弧或圓)的起始角; ANGLE2 As String End Type′實(shí)體(圓弧或圓)的終止角; Global MM(200) As ENTI-TIES-TYPE′定義一維數(shù)組MM全局變量,其元素為ENTITIES-TYPE型變量,實(shí)體數(shù)目不能超過200個(gè)。 (2)DXF文件的讀取程序 結(jié)合當(dāng)今微機(jī)平臺上廣泛使用的AutoCAD圖形軟件包,本文采用這一平臺的圖形自動編程系統(tǒng),可以充分發(fā)揮AutoCAD的實(shí)體建模功能,同時(shí)縮短軟件的周期。本系統(tǒng)使用需首入AutoCAD圖形系統(tǒng)繪制零件實(shí)體,當(dāng)零件繪制完畢,便以圖形交換文件DXF輸出,然后進(jìn)入圖形自動編程系統(tǒng)啟動圖形信息輸入模塊,讀取圖形信息。下面介紹零件實(shí)體幾何信息提取的程序設(shè)計(jì)。 DXF文件是具有專門格式的文本文件。一個(gè)完整的DXF文件由四個(gè)大段和一個(gè)文件結(jié)束標(biāo)記構(gòu)成。每一段的開始部分由四行組成:即DXF的組代碼0和段標(biāo)記SECTION,組代碼2和段名各占一行,中間部分是段的實(shí)際內(nèi)容,而段結(jié)合部分由組代碼0和文件結(jié)束符EOF兩行組成。DXF文件具有每個(gè)數(shù)據(jù)均占一行的特點(diǎn)。但是由DXF文件生成圖形僅需實(shí)體段(以 ENTITIES為段名)和文件結(jié)束標(biāo)記。通過分析DXF文件的格式,現(xiàn)以VB編寫的源程序說明讀取DXF文件實(shí)體段幾何信息的過程。
Sub DXF-IN 0 Dim A As String:Dim B As STRING:Dim CC As ENTITIES-TYPE:Dim i,il As Integer Open FILENAME1 For Input As #1 Do Input #1,B Loop Until B=“ENTITIES” Seek #1,Seek(1) Do While Not EOF(1) Do Input #1,B Loop Until B 〈〉“0” i=i+1 Select Case B Case “LINE” INDXF-LINE 1 CC.STYLE=“l(fā)ine” CC.X1=Str$(x1) CC.Y1=Str$(y1) CC.X2=Str$(x2) CC.Y2=Str$(y2) xx1=x2 Case“ARC” INDXF-ARC 1 CC.STYLE=“ARC” CC.X1=Str$(x1) CC.Y1=Str$(y1) CC.X2=Str$(x2) CC.Y2=Str$(y2) CC.X3=Str$(x3) CC.Y3=Str$(y3) CC.R=Str$(R) CC.ANGLE1=Str$(ANGLE1) CC.ANGLE2=Str$(ANGLE2) If Abs(x1-xx1)>.5 Then CC.WISE=“0” A=CC.X1:CC.X1=CC.X2:CC.X2=A A=CC.Y1:CC.Y1=CC.Y2:CC.Y2=A A=CC.ANGLE1:CC.ANGLE1=CC.ANGLE2:CC.ANGLE2=A Else CC.WISE=“1” End If xx1=x2 Case“CIRCLE” il=il+1 INDXF-CIRCLE 1 CC.STYLE=“CIRCLE” CC.X1=Str$(x1) CC.Y1=Str$(y1) CC.R=Str$(R1) CC.X2=CC.Y1 xx1=x1 Case“POINT” INDXF-POINT 1 CC.YSTYLE=“POINT” CC.ZHX1=Str$(x1) CC.ZHX2=Str$(x1) xx1=x1 Case Else CC.STYLE=“NONE” End Select Seek #1,Seek(1) j=Str$(i) Loop Close #1 End Sub 其它模塊的程序設(shè)計(jì)不再贅述。
4 實(shí)例 本文以二維零件數(shù)控銑削加工為例,首入AutoCAD繪制零件輪廓如圖2所示。經(jīng)圖形交換文件DXF傳輸?shù)较到y(tǒng)后,工藝干預(yù)可得沿圖示1-2-3-4-5-6-7順時(shí)針方向走刀的ISO數(shù)控加工程序,且此程序已順利通過校核檢驗(yàn)。 N0001G90 G92 X0 Y0 S500 M03 LF N0002G01 X1 Y1 LF N0003G01 X1 Y61 LF N0004G01 X41 Y61 LF N0005G02 X61 Y81 R20 LF N0006G02 X101 Y81 R20 LF N0007G01 X141 Y81 LF N0008G01 X141 Y1 Lf N0009G01 X1 Y1 LFM N001002 EM
圖2
AutoCAD繪制零件輪廓
5 結(jié)束語
由以上實(shí)例可得如下結(jié)論:
(1)本系統(tǒng)基于AutoCAD平臺成功地實(shí)現(xiàn)了二維輪廓零件的數(shù)控自動編程,從而彌補(bǔ)了繁重手工編程帶來的許多缺陷;
(2)該系統(tǒng)既可單獨(dú)作為圖形自動編程系統(tǒng)使用又可作為工業(yè)PC機(jī)數(shù)控系統(tǒng)實(shí)現(xiàn)自動編程的功能模塊;
(3)本系統(tǒng)一旦與CAPP系統(tǒng)結(jié)合,便發(fā)展為微機(jī)平臺上的CAD/CAM一體化軟件;
(4)添加刀具半徑補(bǔ)償功能后本系統(tǒng)將能實(shí)現(xiàn)刀具偏置自動補(bǔ)償;
(5)研制本系統(tǒng)是PC微機(jī)上實(shí)現(xiàn)自動編程的嘗試,功能有待補(bǔ)充和完善。
Copyright ? 2024-2025 http://hswy.org.cn All Rights Reserved 泊頭市華正機(jī)械設(shè)備有限公司 冀ICP備10025299號-6