基于AutoCAD R14和VB5開發(fā)的數(shù)控自動(dòng)編程系統(tǒng)
出處:江蘇泰州市德基數(shù)控機(jī)床技術(shù)部 發(fā)布于:2008-09-04 09:11:09
1 概述
數(shù)控零件加工程序的編制是進(jìn)行數(shù)控加工的一個(gè)重要步驟,國內(nèi)外數(shù)控加工統(tǒng)計(jì)說明,造成數(shù)控機(jī)床等待約20%~30%是編程不及時(shí)所致,可見數(shù)控編程直接影響著數(shù)控機(jī)床的加工效率。隨著數(shù)控技術(shù)應(yīng)用的日益擴(kuò)大,我國企業(yè)在數(shù)控自動(dòng)編程應(yīng)用方面已有較大發(fā)展,目前主要有以下三種自動(dòng)編程方式。
(1)采用數(shù)控編程語言的自動(dòng)編程。的是APT(Automatically Programmed Tools)語言。
(2)計(jì)算機(jī)輔助圖形設(shè)計(jì)的自動(dòng)編程。采用CAD方法,將設(shè)計(jì)好的零件圖形顯示在屏幕上,編程人員指定要加工的表面,并回答軟件提出的一些問題,諸如對刀點(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)算過程中可能產(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脑嚽?,完成NC 程序的檢查。該方法加工準(zhǔn)備周期長,生產(chǎn)成本增加,難以實(shí)現(xiàn)數(shù)控機(jī)床的高效生產(chǎn)。圖形仿真是目前CAD/CAPP/CAM系統(tǒng)中通用的NC檢驗(yàn)方法。
本文介紹了作者開發(fā)的數(shù)控軟件(Numerical Control Automatic Programming System——NCAPS)設(shè)計(jì)方案和實(shí)現(xiàn)方法。操作人員在實(shí)際操作數(shù)控銑床加工工件之前,先用該系統(tǒng)進(jìn)行模擬操作。通過計(jì)算機(jī)屏幕可清晰地看到所編輯的加工程序運(yùn)行的刀具切削模擬過程,并可方便地反復(fù)修改加工程序,直到被加工的“工件”符合要求為止。且該過程都在AutoCAD環(huán)境下實(shí)現(xiàn)。這無疑對新產(chǎn)品的開發(fā)、安全生產(chǎn)、提高生產(chǎn)效率及減少廢品都具有實(shí)際意義。
2 ActiveX Automation對象及開發(fā)工具介紹
2.1 ActiveX Automation對象
(1)頂層是AutoCAD Application,它除具有對象的屬性和方法外,還包括兩個(gè)重要的對象Preferences(參數(shù)對象)和Document(文檔對象)。 Preferences對象是與AutoCAD系統(tǒng)中參數(shù)設(shè)置相對應(yīng)的對象,Document對象則是包括圖形文件的所有對象集合,如Blocks Collection、ModelSpace Entities Collection、PaperSpace Entities Collection等一系列對象。
(2)圖形對象。Blocks Collection等屬于圖形對象,它是用戶使用頻繁的對象,是實(shí)現(xiàn)參數(shù)化、變量化及三維實(shí)體造型等功能的主要方式。
(3)輸出對象。輸出對象控制圖形文件的輸出格式,如設(shè)置坐標(biāo)原點(diǎn)、方向等。
(4)實(shí)用對象。該對象提供AutoCAD中常用的數(shù)據(jù)轉(zhuǎn)換、輔助計(jì)算等功能。
2.2 開發(fā)工具
本文以Visual Basic 5.0為開發(fā)工具,給出了實(shí)例。由于編程思想是相同的,所以該方法可移到Visual C++、Delphi等開發(fā)工具上。
用VB5實(shí)現(xiàn)ActiveX Automation開發(fā)的關(guān)鍵是要獲得AutoCAD對象的指針,及創(chuàng)建AutoCAD.Application對象,進(jìn)而創(chuàng)造AutoCAD的文檔對象,以實(shí)現(xiàn)對AutoCAD中其它對象的訪問,完成與AutoCAD的通訊。
3 系統(tǒng)的組成與功能
圖形交互式自動(dòng)編程系統(tǒng)處理零件程序的一般過程是:輸入零件圖形→輸入工藝參數(shù)→運(yùn)動(dòng)軌跡計(jì)算→加工模擬→后置處理→程序清單→輸出。NCAPS是針對數(shù)控銑床開發(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í)體建模過程。
(2)工藝處理

圖1 NCAPS系統(tǒng)框架結(jié)構(gòu)示意圖
它是第(1)步操作后對圖形數(shù)據(jù)進(jìn)行再加工的模塊。利用計(jì)算機(jī)圖形學(xué)技術(shù),直接在AutoCAD環(huán)境下進(jìn)行工藝干預(yù)。
工藝干預(yù)內(nèi)容包括輪廓和點(diǎn)位二種方式,干預(yù)過程通過鼠標(biāo)事件選擇實(shí)體來實(shí)現(xiàn)。用鼠標(biāo)選取實(shí)體的先后來組成加工環(huán)(加工路線)?,F(xiàn)以VB5編寫的源程序說明如何直接從AutoCAD環(huán)境下選擇實(shí)體,形成加工路線(該程序只是該模塊的部分)。
Option Explicit
Public objAcad As Object,objDoc As Object
Private Sub Form-Load()
StartAutoCAD-為對AutoCAD訪問做準(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)過工藝干預(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)不正確,則需對上述各個(gè)環(huán)節(jié)進(jìn)行反復(fù)調(diào)試,直到正確為止。
為使刀位數(shù)據(jù)易于獲得,避免傳統(tǒng)數(shù)值積分法(DDA)較差與運(yùn)算繁瑣等缺點(diǎn),本系統(tǒng)在加工仿真過程中引入方向性概念,使刀心軌跡在算法上簡潔明了,程序可讀性強(qiáng)。
對于CNC系統(tǒng)刀補(bǔ)功能,以往的直線過渡刀補(bǔ)算法,常利用三角函數(shù)關(guān)系式來計(jì)算各轉(zhuǎn)接點(diǎn)的坐標(biāo)值。這些方法公式推導(dǎo)復(fù)雜,計(jì)算量大,不宜歸納和簡化。本系統(tǒng)引入運(yùn)動(dòng)矢量和刀具半徑矢量來計(jì)算,對直線到直線、直線到圓弧、圓弧到直線和圓弧到圓弧各種轉(zhuǎn)接情況進(jìn)行了分析,綜合為兩個(gè)統(tǒng)一公式進(jìn)行計(jì)算,大大簡化了CNC系統(tǒng)的刀具補(bǔ)償?shù)挠?jì)算量。
(5)文本編輯模塊
此模塊允許操作人員把已編好的ISO代碼形式的數(shù)控加工程序通過文本編輯送到計(jì)算機(jī),對其加工過程模擬演示,以便驗(yàn)證所編的數(shù)控零件加工程序的正確性。
(6)數(shù)控加工程序輸出
經(jīng)調(diào)試和檢驗(yàn)后的正確數(shù)控加工程序可以通過拷貝、打印、通訊接口的方式輸出。
4 實(shí)例
本文以二維零件數(shù)控銑削加工為例,首先在AutoCAD環(huán)境下繪制零件輪廓,如圖2所示。工藝干預(yù)可得沿圖2所示1-2-3-4-5-6-7-8-9-10-11順時(shí)針方向走刀的ISO數(shù)控加工程序,且此程序已通過動(dòng)態(tài)校核檢驗(yàn)(如圖3)。

圖2 工藝干預(yù)結(jié)果

圖3 數(shù)控加工(銑削)仿真結(jié)果
5 結(jié)束語
綜上所述,本系統(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),對其中一些功能繼續(xù)完善,可滿足實(shí)際加工需要。目前,該系統(tǒng)被我校CAM課程自動(dòng)編程實(shí)驗(yàn)室采用。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 工業(yè)視覺檢測系統(tǒng)技術(shù)參數(shù)與選型運(yùn)維指南2026/1/4 14:50:21
- 工業(yè)視覺檢測系統(tǒng)核心知識(shí)解析2025/12/29 11:23:21
- 工業(yè)級(jí)電磁閥技術(shù)參數(shù)與選型運(yùn)維指南2025/12/29 11:06:44
- 工業(yè)控制系統(tǒng)遠(yuǎn)程訪問安全實(shí)操指南2025/12/25 10:04:23
- 工業(yè)控制系統(tǒng)網(wǎng)絡(luò)安全防護(hù)實(shí)操指南2025/12/25 9:53:54
- PCB焊盤與過孔設(shè)計(jì)核心實(shí)操規(guī)范(含可焊性與可靠性保障)
- 汽車電子常用電子元器件選型指南
- MOSFET驅(qū)動(dòng)與隔離方案設(shè)計(jì)
- 高溫環(huán)境下電源IC選型建議
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測試方法









