本文介紹了以AutoCAD和VB5為工具的數(shù)控自動(dòng)編程系統(tǒng)開(kāi)發(fā)相關(guān)研究。
1 概述
數(shù)控零件加工程序的編制是進(jìn)行數(shù)控加工的一個(gè)重要步驟,國(guó)內(nèi)外數(shù)控加工統(tǒng)計(jì)說(shuō)明,造成數(shù)控機(jī)床等待約20%~30%是編程不及時(shí)所致,可見(jiàn)數(shù)控編程直接影響著數(shù)控機(jī)床的加工效率。隨著數(shù)控技術(shù)應(yīng)用的日益擴(kuò)大,我國(guó)企業(yè)在數(shù)控自動(dòng)編程應(yīng)用方面已有較大發(fā)展,目前主要有以下三種自動(dòng)編程方式。
(1)采用數(shù)控編程語(yǔ)言的自動(dòng)編程。最著名的是APT(Automatically Programmed Tools)語(yǔ)言。
(2)計(jì)算機(jī)輔助圖形設(shè)計(jì)的自動(dòng)編程。采用CAD方法,將設(shè)計(jì)好的零件圖形顯示在屏幕上,編程人員指定要加工的表面,并回答軟件提出的一些問(wèn)題,諸如對(duì)刀點(diǎn)、走刀方式、切削用量參數(shù)等,然后由系統(tǒng)進(jìn)行自動(dòng)編程,形成刀位數(shù)據(jù)文件或APT程序,再經(jīng)后置處理,變成機(jī)床所需的NC代碼。
(3)從CAD獲取信息的自動(dòng)編程。編程所需的零件形狀信息直接從CAD那里得到,一般利用AutoCAD提供的圖形交換文件DXF接口,編程人員只需進(jìn)行適當(dāng)工藝處理。
由于圖紙上給出的零件形狀數(shù)據(jù)往往比較少,而數(shù)控系統(tǒng)的插補(bǔ)功能要求有較多的數(shù)據(jù)才能控制機(jī)床。尤其是當(dāng)數(shù)控系統(tǒng)插補(bǔ)功能要求輸入的數(shù)據(jù)與零件形狀給出的數(shù)據(jù)不一致時(shí),就需要進(jìn)行復(fù)雜的數(shù)學(xué)運(yùn)算,而在運(yùn)算過(guò)程中可能產(chǎn)生人為的錯(cuò)誤。而這些復(fù)雜的數(shù)學(xué)運(yùn)算可由計(jì)算機(jī)快速、準(zhǔn)確地完成。
NC程序作為數(shù)控加工的信息載體,其正確與否直接影響零件加工質(zhì)量。目前實(shí)際生產(chǎn)使用的NC程序,在投入加工之前通常采用機(jī)床空運(yùn)行和木模、蠟?zāi)5脑嚽校瓿蒒C 程序的檢查。該方法加工準(zhǔn)備周期長(zhǎng),生產(chǎn)成本增加,難以實(shí)現(xiàn)數(shù)控機(jī)床的高效生產(chǎn)。圖形仿真是目前CAD/CAPP/CAM系統(tǒng)中通用的NC檢驗(yàn)方法。
本文介紹了作者開(kāi)發(fā)的數(shù)控軟件(Numerical Control Automatic Programming System——NCAPS)設(shè)計(jì)方案和實(shí)現(xiàn)方法。操作人員在實(shí)際操作數(shù)控銑床加工工件之前,先用該系統(tǒng)進(jìn)行模擬操作。通過(guò)計(jì)算機(jī)屏幕可清晰地看到所編輯的加工程序運(yùn)行的刀具切削模擬過(guò)程,并可方便地反復(fù)修改加工程序,直到被加工的“工件”符合要求為止。且該過(guò)程都在AutoCAD環(huán)境下實(shí)現(xiàn)。這無(wú)疑對(duì)新產(chǎn)品的開(kāi)發(fā)、安全生產(chǎn)、提高生產(chǎn)效率及減少?gòu)U品都具有實(shí)際意義。
2 ActiveX Automation對(duì)象及開(kāi)發(fā)工具介紹
2.1 ActiveX Automation對(duì)象
(1)頂層是AutoCAD Application,它除具有對(duì)象的屬性和方法外,還包括兩個(gè)重要的對(duì)象Preferences(參數(shù)對(duì)象)和Document(文檔對(duì)象)。 Preferences對(duì)象是與AutoCAD系統(tǒng)中參數(shù)設(shè)置相對(duì)應(yīng)的對(duì)象,Document對(duì)象則是包括圖形文件的所有對(duì)象集合,如Blocks Collection、ModelSpace Entities Collection、PaperSpace Entities Collection等一系列對(duì)象。
(2)圖形對(duì)象。Blocks Collection等屬于圖形對(duì)象,它是用戶使用頻繁的對(duì)象,是實(shí)現(xiàn)參數(shù)化、變量化及三維實(shí)體造型等功能的主要方式。
(3)輸出對(duì)象。輸出對(duì)象控制圖形文件的輸出格式,如設(shè)置坐標(biāo)原點(diǎn)、方向等。
(4)實(shí)用對(duì)象。該對(duì)象提供AutoCAD中常用的數(shù)據(jù)轉(zhuǎn)換、輔助計(jì)算等功能。
2.2 開(kāi)發(fā)工具
本文以Visual Basic 5.0為開(kāi)發(fā)工具,給出了實(shí)例。由于編程思想是相同的,所以該方法可移到Visual C++、Delphi等開(kāi)發(fā)工具上。
用VB5實(shí)現(xiàn)ActiveX Automation開(kāi)發(fā)的關(guān)鍵是要獲得AutoCAD對(duì)象的指針,及創(chuàng)建AutoCAD.Application對(duì)象,進(jìn)而創(chuàng)造AutoCAD的文檔對(duì)象,以實(shí)現(xiàn)對(duì)AutoCAD中其它對(duì)象的訪問(wèn),完成與AutoCAD的通訊。
3 系統(tǒng)的組成與功能
圖形交互式自動(dòng)編程系統(tǒng)處理零件程序的一般過(guò)程是:輸入零件圖形→輸入工藝參數(shù)→運(yùn)動(dòng)軌跡計(jì)算→加工模擬→后置處理→程序清單→輸出。NCAPS是針對(duì)數(shù)控銑床開(kāi)發(fā)的,系統(tǒng)框架結(jié)構(gòu)如圖1所示,它主要包括進(jìn)入AutoCAD R14系統(tǒng)繪制零件圖、工藝處理、動(dòng)態(tài)校驗(yàn)和數(shù)控加工程序輸出等功能模塊。具體步驟如下:
(1)進(jìn)入AutoCAD R14系統(tǒng)繪制零件圖
它是AutoCAD實(shí)體建模過(guò)程。
(2)工藝處理
圖1 NCAPS系統(tǒng)框架結(jié)構(gòu)示意圖
它是第(1)步操作后對(duì)圖形數(shù)據(jù)進(jìn)行再加工的核心模塊。利用計(jì)算機(jī)圖形學(xué)技術(shù),直接在AutoCAD環(huán)境下進(jìn)行工藝干預(yù)。
工藝干預(yù)內(nèi)容包括輪廓和點(diǎn)位二種方式,干預(yù)過(guò)程通過(guò)鼠標(biāo)事件選擇實(shí)體來(lái)實(shí)現(xiàn)。用鼠標(biāo)選取實(shí)體的先后來(lái)組成加工環(huán)(加工路線)。現(xiàn)以VB5編寫(xiě)的源程序說(shuō)明如何直接從AutoCAD環(huán)境下選擇實(shí)體,形成加工路線(該程序只是該模塊的部分)。
Option Explicit
Public objAcad As Object,objDoc As Object
Private Sub Form-Load()
StartAutoCAD-為對(duì)AutoCAD訪問(wèn)做準(zhǔn)備
End Sub
Private Sub StartAutoCAD()
Dim DwgName As String
Set objAcad=GetObject(,“AutoCAD.Application”)
End Sub
Private Sub SelectCutType-Click()
Dim EntityName As String
Dim EntityMessager(1 To 6) As Variant
Dim ent As Object,sset As Object
Set objDoc=objAcad.ActiveDocument
Set sset=objDoc.SelectionSets.Add(“SS1”)‘設(shè)置sset到一個(gè)名為SS1的選擇集中
sset.SelectOnScreen
Dim msgstr As String,appName As String
appName=App.CompanyName
For Each ent In sset
If ent.EntityName=“AcDbLine”Then‘為直線
EntityName=ent.EntityName
Entitymessager(1)=ent.StarPoint:EntityMessager(2)=ent.EndPoint
ElseIf ent.EntityName=“AcDbCircle”Then‘為圓
EntityName=ent.EntityName
EntityMessager(1)=ent.Center:EntityMessager(2)=ent.Radius
ElseIf ent.EntityName=“AcDbArc”Then‘為圓弧
EntityName=ent.Entityname
EntityMessager(1)=ent.Center:EntityMessager(2)=ent.Radius
EntityMessager(3)=ent.StartAngle:EntityMessager(4)=ent.EndAngle
EntityMessager(5)=ent.StartPoint:EntityMessager(6)=ent.EndPoint
Else
EntityName=ent.EntityName‘為其它實(shí)體
End If
Next ent ‘選擇集中的下一個(gè)實(shí)體
End Sub
(3)NC代碼生成
經(jīng)過(guò)工藝干預(yù)(即確定刀具走刀路線)后,便可將圖形幾何信息和工藝干預(yù)信息轉(zhuǎn)換成ISO標(biāo)準(zhǔn)數(shù)控加工程序代碼。同時(shí)以(*.NC)形成的文件名永久保存。
(4)動(dòng)態(tài)校驗(yàn)
上述生成的NC代碼是否正確還要進(jìn)行校驗(yàn)方能制作控制介質(zhì)輸出。本模塊采用時(shí)間分割插補(bǔ)算法進(jìn)行動(dòng)態(tài)模擬,以校驗(yàn)ISO數(shù)控加工程序代碼是否正確,以及刀具與工件是否產(chǎn)生干涉等。如果校驗(yàn)不正確,則需對(duì)上述各個(gè)環(huán)節(jié)進(jìn)行反復(fù)調(diào)試,直到正確為止。
為使刀位數(shù)據(jù)易于獲得,避免傳統(tǒng)數(shù)值積分法(DDA)精度較差與運(yùn)算繁瑣等缺點(diǎn),本系統(tǒng)在加工仿真過(guò)程中引入方向性概念,使刀心軌跡在算法上簡(jiǎn)潔明了,程序可讀性強(qiáng)。
對(duì)于CNC系統(tǒng)刀補(bǔ)功能,以往的直線過(guò)渡刀補(bǔ)算法,常利用三角函數(shù)關(guān)系式來(lái)計(jì)算各轉(zhuǎn)接點(diǎn)的坐標(biāo)值。這些方法公式推導(dǎo)復(fù)雜,計(jì)算量大,不宜歸納和簡(jiǎn)化。本系統(tǒng)引入運(yùn)動(dòng)矢量和刀具半徑矢量來(lái)計(jì)算,對(duì)直線到直線、直線到圓弧、圓弧到直線和圓弧到圓弧各種轉(zhuǎn)接情況進(jìn)行了分析,綜合為兩個(gè)統(tǒng)一公式進(jìn)行計(jì)算,大大簡(jiǎn)化了CNC系統(tǒng)的刀具補(bǔ)償?shù)挠?jì)算量。
(5)文本編輯模塊
此模塊允許操作人員把已編好的ISO代碼形式的數(shù)控加工程序通過(guò)文本編輯送到計(jì)算機(jī),對(duì)其加工過(guò)程模擬演示,以便驗(yàn)證所編的數(shù)控零件加工程序的正確性。
(6)數(shù)控加工程序輸出
經(jīng)調(diào)試和檢驗(yàn)后的正確數(shù)控加工程序可以通過(guò)拷貝、打印、通訊接口的方式輸出。
4 實(shí)例
本文以二維零件數(shù)控銑削加工為例,首先在AutoCAD環(huán)境下繪制零件輪廓,如圖2所示。工藝干預(yù)可得沿圖2所示1-2-3-4-5-6-7-8-9-10-11順時(shí)針?lè)较蜃叩兜腎SO數(shù)控加工程序,且此程序已通過(guò)動(dòng)態(tài)校核檢驗(yàn)(如圖3)。
圖2 工藝干預(yù)結(jié)果
圖3 數(shù)控加工(銑削)仿真結(jié)果
5 結(jié)束語(yǔ)
綜上所述,本系統(tǒng)具有如下優(yōu)點(diǎn):
(1)直接在AutoCAD環(huán)境下經(jīng)圖形轉(zhuǎn)換,自動(dòng)生成數(shù)控指令代碼。由指令代碼可以動(dòng)態(tài)模擬刀具運(yùn)動(dòng)軌跡,校驗(yàn)代碼的正確性。
(2)代碼可以直接和數(shù)控機(jī)床通訊,加工出新設(shè)計(jì)的圖形,實(shí)現(xiàn)了CAD/CAM一體化。
(3)該系統(tǒng)已與數(shù)控機(jī)床連通,并進(jìn)行了實(shí)際切削。實(shí)驗(yàn)表明,該系統(tǒng)具有運(yùn)行準(zhǔn)確、直觀,能顯著提高數(shù)控編程效率等特點(diǎn),對(duì)其中一些功能繼續(xù)完善,可滿足實(shí)際加工需要。目前,該系統(tǒng)被我校CAM課程自動(dòng)編程實(shí)驗(yàn)室采用。
相關(guān)文章
- 2021-09-08BIM技術(shù)叢書(shū)Revit軟件應(yīng)用系列Autodesk Revit族詳解 [
- 2021-09-08全國(guó)專業(yè)技術(shù)人員計(jì)算機(jī)應(yīng)用能力考試用書(shū) AutoCAD2004
- 2021-09-08EXCEL在工作中的應(yīng)用 制表、數(shù)據(jù)處理及宏應(yīng)用PDF下載
- 2021-08-30從零開(kāi)始AutoCAD 2014中文版機(jī)械制圖基礎(chǔ)培訓(xùn)教程 [李
- 2021-08-30從零開(kāi)始AutoCAD 2014中文版建筑制圖基礎(chǔ)培訓(xùn)教程 [朱
- 2021-08-30電氣CAD實(shí)例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30電影風(fēng)暴2:Maya影像實(shí)拍與三維合成攻略PDF下載
- 2021-08-30高等院校藝術(shù)設(shè)計(jì)案例教程中文版AutoCAD 建筑設(shè)計(jì)案例
- 2021-08-29環(huán)境藝術(shù)制圖AutoCAD [徐幼光 編著] 2013年P(guān)DF下載
- 2021-08-29機(jī)械A(chǔ)utoCAD 項(xiàng)目教程 第3版 [繆希偉 主編] 2012年P(guān)DF