国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于AutoLISP數(shù)控車加工程序仿真功能開發(fā)

2019-01-08 08:17韓洪征朱穎孫琳
機(jī)械制造與自動化 2018年6期
關(guān)鍵詞:程序段圓弧刀具

韓洪征,朱穎,孫琳

(1. 中航發(fā)沈陽黎明航空發(fā)動機(jī)有限責(zé)任公司,遼寧 沈陽 110034; 2. 沈陽工學(xué)院,遼寧 沈陽 110034)

0 引言

在發(fā)動機(jī)的生產(chǎn)中,車加工占比很大。車加工數(shù)控程序的仿真是一個細(xì)致、耗時的過程,現(xiàn)有的成熟仿真軟件如VERICUT,憑借其強(qiáng)大的后處理功能,能夠以三維實體狀態(tài)模擬實際加工,分析干涉、碰撞等。但進(jìn)行數(shù)控程序復(fù)查時只能在程序運(yùn)行結(jié)束后,運(yùn)行“自動比較”命令比較設(shè)計模型與VERICUT輸出模型,進(jìn)行過切或殘留檢查。由于無法設(shè)定過切、殘留值測量方向,測量的結(jié)果往往達(dá)不到理想要求。

針對這些問題,基于AutoCAD軟件,使用AutoLISP語言編程[1]開發(fā)出數(shù)控車加工仿真功能,起到對VERICUT進(jìn)行補(bǔ)充作用:

1) 借助AutoCAD軟件的縮放功能實時檢查刀軌與部件輪廓的相對位置,并可隨意方向測量過切殘留。相比于VERICUT軟件的數(shù)控程序復(fù)查功能(圖1),AutoCAD可以隨時隨意對工件外廓與刀軌圖像進(jìn)行縮放和平移,以檢查二者的相對位置(如圖2);

2) 無需復(fù)雜后置處理,靈活運(yùn)用,通用性強(qiáng),可支持臥車、立車,F(xiàn)anuc系統(tǒng)、Siemens系統(tǒng)的仿真;

圖1 利用VERICUT軟件復(fù)查程序

圖2 使用開發(fā)功能進(jìn)行車加工程序仿真

3) 零件尺寸進(jìn)行微調(diào)、更改,無需進(jìn)行繁雜的模型轉(zhuǎn)換,只需在CAD上更改后的二維輪廓圖上采點(diǎn)生成程序段,反應(yīng)迅速,方便準(zhǔn)確。

1 數(shù)控程序代碼分析

數(shù)控程序是控制機(jī)床運(yùn)動的語言,常見的語言系統(tǒng)有Fanuc以及Siemens,由于二者有很大的共通性,以Fanuc系統(tǒng)數(shù)控車加工程序為例分析,其他系統(tǒng)以此類推。

圖3為工件輪廓圖。程序零點(diǎn)設(shè)在大端面中心,刀片采用VBMT160408(35°菱形刀片),刀尖半徑為0.8mm。輪廓編程,程序如表1所列。

圖3 工件輪廓圖

程序段注釋O1234(REV.A,R0.8)程序號以及注釋G97M03 S30指定轉(zhuǎn)速G40重置半徑補(bǔ)償方式G0Z500.快速進(jìn)給G1G42X32.75F50.直線插補(bǔ),刀半徑補(bǔ)償Z400.F20.直線插補(bǔ),更改進(jìn)給Z100.F10.直線插補(bǔ),更改進(jìn)給Z61.446F0.2直線插補(bǔ),更改進(jìn)給,開始切削G2X33.562 Z59.69R4.圓弧插補(bǔ)G1X53.052 Z39.741直線插補(bǔ)G2X98.517 Z25.546R25.3圓弧插補(bǔ)G1X150.直線插補(bǔ)G0G40Z500.快速進(jìn)給,半徑補(bǔ)償重置M05主軸停M30機(jī)床停

2 仿真功能開發(fā)

2.1 仿真目標(biāo)

仿真一個程序,主要包括兩個部分內(nèi)容:一是還原出刀具運(yùn)行的軌跡,并與工件輪廓進(jìn)行對比驗證;二是標(biāo)識出每段軌跡運(yùn)行時所對應(yīng)的轉(zhuǎn)速、進(jìn)給、刀補(bǔ)方向等輔助信息。

a) 刀軌模擬

控制車刀運(yùn)動的準(zhǔn)備功能字是“G00”、“G01”、“G02”、“G03”,其中“G00”表示快速定位到指定坐標(biāo)位置;“G01”是以給定進(jìn)給量(以“F”輔助功能字引出)進(jìn)行直線插補(bǔ)運(yùn)動到指定坐標(biāo)位置;“G02”、“G03”準(zhǔn)備功能字表示分別以順時針或逆時針方向進(jìn)行圓弧插補(bǔ)。這些準(zhǔn)備功能字決定刀具軌跡的形狀。輔助功能字“X”,“Z”決定軌跡的坐標(biāo)選擇,并引出具體坐標(biāo)值,對于圓弧插補(bǔ),還要提供輔助功能字“R”來標(biāo)明轉(zhuǎn)動圓弧半徑。

b) 輔助信息標(biāo)識

轉(zhuǎn)速、進(jìn)給、刀補(bǔ)方向需要在每一段程序中標(biāo)識出來。轉(zhuǎn)速以“S”輔助功能字引出;進(jìn)給以“F”輔助功能字引出;刀具半徑補(bǔ)償準(zhǔn)備功能字為“G40”,“G41”以及“G42”,由于數(shù)控程序有輪廓、刀心編程方式的分別,在仿真過程中,需要體現(xiàn)出程序軌跡對應(yīng)的補(bǔ)償方向。

2.2 程序?qū)崿F(xiàn)

圖4為程序設(shè)計流程圖,從圖4上可以看出,讀入程序后主要進(jìn)行兩個方面的內(nèi)容:一是繪出刀具軌跡,二是在每一條軌跡上做出注釋。

圖4 程序設(shè)計流程圖

AutoLISP可以利用命令“getfiled”打開文本文檔[2],因此,將程序保存在文本文檔里,在AutoCAD的命令欄里輸入“l(fā)athe”命令,程序打開一個對話框供用戶選擇程序,如圖5所示。

圖5 用戶選擇仿真的程序

選擇程序后,對話框關(guān)閉,程序開始仿真,仿真過程如圖6所示,每按下一次空格,軟件讀取一條程序段顯示在命令行的輸入框,并將已執(zhí)行完畢的程序段自動傳遞到輸入歷史框里。與此同時,執(zhí)行的程序?qū)?yīng)的刀軌按照插補(bǔ)方式的不同以圖層區(qū)分并繪制在工件輪廓圖上。仿真完畢后,將鼠標(biāo)放在刀具軌跡線上方,即可通過“超鏈接”[3]方式顯示出該段程序的輔助信息。如圖6所示的超鏈接信息“S30F0.2G42”,表示轉(zhuǎn)速30r/min,進(jìn)給0.2mm/r,程序沿前進(jìn)方向右偏置。通過鼠標(biāo)滾輪的縮放并CAD的測量功能,可以測量刀具軌跡與工件輪廓的任意方向的距離,以此得到任意方向的過切量或殘留量。

圖6 仿真結(jié)果展示

2.3 程序編制思路

從流程圖中可以看出,程序運(yùn)行的方式就是在程序段中搜尋功能字如“G、F、X、Z、R、S”。下面列出尋址“F”功能字并獲得“F”后面引出的進(jìn)給值的程序偽代碼:

(提取程序段data)

(setqF_code(vl-string-position70data))

;搜尋程序中的“F”字的位置代號

(setqF_value"")

;存放進(jìn)給值的變量F_value置空

(whileF_code

;當(dāng)存在“F”字進(jìn)行如下操作

(setqF_code(1+F_code))

;設(shè)置“F”后字符位置代號

(setqaddF_value(vl-string-eltdataF_code))

;析出“F”后一位字符

(cond

((>addF_value57) (setqF_codenil))

((

((=addF_value47) (setqF_codenil))

;若不為數(shù)字或小數(shù)點(diǎn),則退出循環(huán)

(t(progn

(setqF_value(strcatF_value(chraddF_value))))

(if(>= (1+F_code) (strlendata)) (setqF_codenil)))

;若為數(shù)字或小數(shù)點(diǎn)則放入F_value并搜尋下一個,直到程序段最后則退出循環(huán)

)

)

(if(/=F_value"") (setqF_cord(atofF_value)))

;如存在F值,賦值給F_cord。

3 程序創(chuàng)建及更改采點(diǎn)功能開發(fā)

當(dāng)新建工件程序,或者工件尺寸發(fā)生變化時需要重編程序,使用UG或Mastercam比較繁瑣,對于更改局部程序,需要手動去計算點(diǎn)位坐標(biāo)。由于增加了人為干擾因素,容易造成程序錯誤。針對這一不便,基于AutoCAD使用AutoLISP編程開發(fā)出采點(diǎn)功能[4],直接在工件輪廓上采集線條端點(diǎn)位置信息,并將該位置信息按照機(jī)床代碼格式直接以程序段輸出。

3.1 點(diǎn)位采集

采集CAD圖形上的點(diǎn)位的坐標(biāo)可以使用“getpoint”命令得到一個點(diǎn)位的列表,分別用“car”和“cadr”取得該點(diǎn)位的X坐標(biāo)和Y坐標(biāo)。為防止點(diǎn)位捕捉錯誤,可在“對象捕捉”中使用命令(setvar"osmode" 4133)[5]設(shè)置捕捉模式為端點(diǎn)、圓心、交點(diǎn)、延伸選項。

3.2 坐標(biāo)轉(zhuǎn)換與程序段輸出

機(jī)床的坐標(biāo)與CAD的坐標(biāo)有著一一對應(yīng)關(guān)系,表2列出了這種對應(yīng)關(guān)系。

表2 CAD坐標(biāo)與機(jī)床坐標(biāo)對應(yīng)關(guān)系

根據(jù)表中對應(yīng)坐標(biāo)關(guān)系進(jìn)行坐標(biāo)轉(zhuǎn)換,并將坐標(biāo)值以程序語句形式保存成字符串[6]。

(vl-load-com)

;調(diào)用VLISP擴(kuò)展功能

(setqmynote(vlax-create-object"htmlfile"))

;建立html

(setqRESULT(vlax-invoke(vlax-get(vlax-getmynote'PARENTWINDOW) 'CLIPBOARDDATA) 'SETDATA"Text"STR))

;賦值給RESULT

(vlax-release-objectmynote)

;關(guān)閉html

按以上程序代碼將坐標(biāo)點(diǎn)轉(zhuǎn)換的程序語句輸出到粘貼板。如圖7所示,分別選取圖中的1,2兩點(diǎn),對應(yīng)的程序語句如圖中信息提示,將坐標(biāo)信息粘貼到文本編輯器中并添加準(zhǔn)備功能字等便可以形成數(shù)控程序。

圖7 采點(diǎn)結(jié)果展示

4 結(jié)語

數(shù)控程序仿真功能[7],針對一些非宏普通程序,不需要檢查碰撞等復(fù)雜工況的條件下,能夠很好地對數(shù)控車加工程序進(jìn)行仿真驗證,相對一些大型仿真軟件,能夠避免過于復(fù)雜的后置設(shè)置[8],并且在自動比較分析時可以在任意方向進(jìn)行余量分析。兼容Fanuc和Siemens仿真系統(tǒng),運(yùn)用靈活,通用性強(qiáng)。

數(shù)控程序采點(diǎn)功能,可以簡化程序局部更改過程,對于尺寸變化需要更改程序的情況,使用采點(diǎn)功能直接在工件二維圖上采集坐標(biāo)點(diǎn),并將其自動轉(zhuǎn)化為機(jī)床程序坐標(biāo)語句,后續(xù)添加準(zhǔn)備功能字等即可變成程序段[9],避免在CAD/CAM軟件上重新畫圖,重新出程序的復(fù)雜過程。

猜你喜歡
程序段圓弧刀具
基于WinCC的物料小車控制系統(tǒng)設(shè)計與仿真
淺析圓弧段高大模板支撐體系設(shè)計與應(yīng)用
外圓弧面銑削刀具
無織構(gòu)刀具與織構(gòu)刀具銑削性能對比研究
數(shù)控系統(tǒng)手輪回退功能的研究與實現(xiàn)*
基于NC程序段的提高數(shù)控加工監(jiān)控閾值與信號同步的方法*
數(shù)控銑床FANUC 0i 系統(tǒng)刀具半徑補(bǔ)償系統(tǒng)參數(shù)設(shè)置解析
切削刀具刃口形貌對刀具使用壽命的影響
雙圓弧齒同步帶的載荷特性研究
六圓弧齒廓螺旋齒輪及其嚙合特性