第一篇:數(shù)控機(jī)床宏程序編程的技巧和實(shí)例
論文:
數(shù)控機(jī)床宏程序編程的技巧和實(shí)例
2011年8月11日
前言
隨著工業(yè)技術(shù)的飛速發(fā)展,產(chǎn)品形狀越來越復(fù)雜,精度要求越來越高,產(chǎn)品更新?lián)Q代越來越快,傳統(tǒng)的設(shè)備已不能適應(yīng)新要求?,F(xiàn)在我國的制造業(yè)中已廣泛地應(yīng)用了數(shù)控車床、數(shù)控銑床、加工中心機(jī)床、數(shù)控磨床等數(shù)控機(jī)床。這些先進(jìn)設(shè)備的加工過程都需要由程序來控制,需要由擁有高技能的人來操作。要發(fā)揮數(shù)控機(jī)床的高精度、高效率和高柔性,就要求操作人員具有優(yōu)秀的編程能力。
常用的編程方法有手工編程和計算機(jī)編程。計算機(jī)編程的應(yīng)用已非常廣泛。與手工編程比較,在復(fù)雜曲面和型腔零件編程時效率高、質(zhì)量好。因此,許多人認(rèn)為手工編程已不再重要,特別是比較難的宏程序編程也不再需要。只須了解一些基本的編程規(guī)則就可以了。這樣的想法并不能全面。因為,計算機(jī)編程也有許多不足:
1、程序數(shù)據(jù)量大,傳輸費(fèi)時。
2、修改或調(diào)整刀具補(bǔ)償需要重新后置輸出。
3、打刀或其他原因造成的斷點(diǎn)時,很難及時復(fù)位。
手工編程是基礎(chǔ)能力,是數(shù)控機(jī)床操作編程人員必須掌握的一種編程方法。手工編程能力是計算機(jī)編程的基礎(chǔ),是刀具軌跡設(shè)計,軌跡修改,以及進(jìn)行后置處理設(shè)計的依據(jù)。實(shí)踐證明,手工編程能力強(qiáng)的人在計算機(jī)編程中才能速度快,程序質(zhì)量高。
在程序中使用變量,通過對變量進(jìn)行賦值及處理使程序具有特殊功能,這種有變量的程序叫宏程序。宏程序是數(shù)控系統(tǒng)廠家面向客戶提供的的二次開發(fā)工具,是數(shù)控機(jī)床編程的最高級手工方式。合理有效的利用這個工具將極大地提升機(jī)床的加工能力。
作為一名從事數(shù)控車床、數(shù)控銑床、加工中心機(jī)床操作編程二十多年的技師,在平時的工作中,常常用宏程序來解決生產(chǎn)中的難題,因此對宏程序的編程使用積累了一些經(jīng)驗。在傳授指導(dǎo)徒弟和與同事探討中,總結(jié)了許多學(xué)習(xí)編制宏程序應(yīng)注意的要點(diǎn)。有關(guān)宏編程的基礎(chǔ)知識在許多書籍中講過,我們在這里主要通過實(shí)例從編制技巧、要點(diǎn)上和大家討論。
一、非圓曲面類的宏程序的編程技巧
1、非圓曲面可以分為兩類;
(1)、方程曲面,是可以用方程描述其零件輪廓的曲面的。如 拋物線、橢圓、雙曲線、漸開線、擺線等。這種曲線可以用先求節(jié)點(diǎn),再用線段或圓弧逼近的方式。以足夠的輪廓精度加工出零件。選取的節(jié)點(diǎn)數(shù)目越多,輪廓的精度越高。然而節(jié)點(diǎn)的增多,用普通手工編程則計算量就會增加的非常大,數(shù)控程序也非常大,程序復(fù)雜也容易出錯。不易調(diào)試。即使用計算機(jī)輔助編程,其數(shù)據(jù)傳輸量也非常大。而且調(diào)整尺寸補(bǔ)償也很不方便。這時就顯出宏程序的優(yōu)勢了,常常只須二、三十句就可以編好程序。而且理論上還可以根據(jù)機(jī)床系統(tǒng)的運(yùn)算速度無限地縮小節(jié)點(diǎn)的間距,提高逼近精度。
(2)、列表曲面,其輪廓外形由實(shí)驗方法得來。如飛機(jī)機(jī)翼、汽車的外形由風(fēng)洞實(shí)驗得來。是用一系列空間離散點(diǎn)表示曲線或曲面。這些離散點(diǎn)沒有嚴(yán)格一定的連接規(guī)律。而在加工中則要求曲線能平滑的通過各坐標(biāo)點(diǎn),并規(guī)定了加工精度。加工列表曲線的方法很多,可以采
用計算機(jī)輔助編程,利用離散點(diǎn)形成曲面模型,再生成加工軌跡和加工程序。對于一些老機(jī)床或無法傳送數(shù)據(jù)的機(jī)床,我們也可以將輪廓曲線按曲率變化分成幾段,每段分別求出插值方程。采用宏程序加密逼近曲線的方法。
2、非圓曲面類的宏程序的編程的要點(diǎn)有:建立數(shù)學(xué)模型和循環(huán)體(1)、數(shù)學(xué)模型是產(chǎn)生刀具軌跡節(jié)點(diǎn)的一組運(yùn)算賦值語句。它可以計算出曲面上每一點(diǎn)的坐標(biāo)。它主要從描述其零件輪廓的曲面的方程轉(zhuǎn)化而來。
(2)、循環(huán)體是由一組或幾組循環(huán)指令和對應(yīng)的加法器組成。它的作用是將一組節(jié)點(diǎn)順序連接成刀具軌跡,再依次加工成曲面。
3、下面根據(jù)兩個實(shí)例,按宏程序的編制過程將各步驟的要點(diǎn)和技巧進(jìn)行詳細(xì)說明。
圖1—
1、橢圓曲面零件
實(shí)例
1、如圖1-1數(shù)控車加工一個橢圓面。橢圓的長軸60,短軸40.步驟1:根據(jù)加工軌跡確定橢圓曲線的起始點(diǎn)A和終點(diǎn)B坐標(biāo)。這里的要點(diǎn)是分清編程坐標(biāo)系和橢圓坐標(biāo)系、A點(diǎn)在編程坐標(biāo)系中的坐標(biāo)為X=113.742、Z=27.252 這里為適應(yīng)數(shù)控車床的編程習(xí)慣x采用直徑坐標(biāo),A點(diǎn)以橢圓的中心為原點(diǎn)的坐標(biāo)為X=113.742
Z=40—27.252
B點(diǎn)的編程坐標(biāo)是X=37.907
橢圓坐標(biāo)為X=37.907
步驟2:確定在曲線方程中的主變量和從變量。這要根據(jù)實(shí)際情況來選擇。有以下幾點(diǎn)原則:①變量的起點(diǎn)、終點(diǎn)已知的。②變量在坐標(biāo)中的變化方向一致。③變量的變化對曲線的精度影響較大。根據(jù)以上原則我選X坐標(biāo)為主變量、Z是從變量。
步驟3:將標(biāo)準(zhǔn)方程化為從變量賦值的形式。如圖1-1以其中心為原點(diǎn),橢圓方程為 X2/a2 +Z2/b2=1化為Z= SQRT[(1-X *X/a*a)*b*b 這一步很關(guān)鍵。由于曲線只在橢圓坐標(biāo)系的第一象限 Z為正值。
以上三步就是建立數(shù)學(xué)模型。在這個模型里X的一個坐標(biāo)值,可以計算出它對應(yīng)的Z坐標(biāo)值。要注意,這兩個坐標(biāo)是以橢圓中心為原點(diǎn)的,要特別注意。也就是說,如果和這個零件一樣,橢圓中心和你設(shè)定的編程坐標(biāo)系原點(diǎn)不重合,進(jìn)入數(shù)學(xué)模型和從數(shù)學(xué)模型輸出的數(shù)值,都是以橢圓中心為原點(diǎn)的。刀具運(yùn)動指令的坐標(biāo)值是以編程坐標(biāo)系為原點(diǎn)。因此,需要設(shè)計計算方法將數(shù)學(xué)模型的輸出數(shù)據(jù)轉(zhuǎn)化成編程坐標(biāo)系的數(shù)值。許多多年從事數(shù)控機(jī)床操作的人一直不能用宏程
序,就是在這里犯了糊涂。
步驟4:畫流程圖確定宏程序的過程 圖1-2 流程圖是建立和檢查循環(huán)體的最好工具。這一步的關(guān)鍵點(diǎn)是:分清計算過程、運(yùn)動指令、加法器的排列順序;循環(huán)體中條件轉(zhuǎn)移語句和加法器的配合,產(chǎn)生正確的循環(huán)控制,而不是死循環(huán)。
;賦初始值(注意是橢圓坐標(biāo)系);循環(huán)體開始,判斷是否結(jié)束。
;計算、運(yùn)動指令
;加法器,改變動參數(shù)
圖1—2 步驟5:根據(jù)流程圖編寫程序 程序如下O1001 應(yīng)注意的要點(diǎn)有:(1)、當(dāng)采用刀尖圓弧補(bǔ)償方式編程時,循環(huán)體的軌跡第一點(diǎn)不能和起始點(diǎn)重合,否則系統(tǒng)會顯示出錯。(2)要注意循環(huán)體內(nèi)計算語句、運(yùn)動語句和加法器語句的順序不能錯。
該零件如圖右端內(nèi)部橢圓面的數(shù)控車精車程序如下: O1001;重點(diǎn)說明 T0101;G90G40G0X200.0Z200.0M03;G41G00X135.0Z5.0M08;G01Z-25.0F0.1;G03X#1Z-27.252;#1=113.742-0.1;將循環(huán)開始點(diǎn)錯開 #2=40-27.252;Z值從編程坐標(biāo)系轉(zhuǎn)變到橢圓坐標(biāo)系 WHIFL[#1GT37.907] DO 1;循環(huán)體開始,X軸坐標(biāo)逐漸減小 #1=#1/2; 將直徑值轉(zhuǎn)化成半徑值 #2=SQRT[[1-#1*#1/[60*60]]*40*40];#2=#2-40 Z值從橢圓坐標(biāo)系轉(zhuǎn)變到編程坐標(biāo)系 #1=#1*2 將半徑值轉(zhuǎn)化成直徑值 G01X#1Z#2F0.08;運(yùn)動指令 #1=#1-0.1;遞減加法器 END 1;循環(huán)體結(jié)束 G01X37.907Z-2.048;G01X35.0;G00Z200.0;G00X260.0M09;M30;
圖1--3 實(shí)例
2、在加工中心上加工拋物線球面。
比較加工中心或數(shù)控銑床上銑削曲面和數(shù)控車床車削曲面,有許多差別:(1)、加工方式不同。(2)、車削曲面需要計算沿一條輪廓素線的若干個節(jié)點(diǎn);銑削曲面需要計算整個曲面上若干個輪廓素線的若干節(jié)點(diǎn)。計算量大,宏程序非常復(fù)雜。
編制銑削曲面宏程序確實(shí)非常難,然而只要我們抓住幾個關(guān)鍵要點(diǎn),做好流程圖和數(shù)學(xué)模型,勤于實(shí)踐,也是一定能夠掌握這個技能的。下面把編制銑削曲面宏程序的過程分成幾步:
步驟
1、分析曲面的構(gòu)成特點(diǎn)確定加工路線
如圖1-
3、這個曲面是由一條拋物線以與它共面水平直線為軸線旋轉(zhuǎn)切成的。加工軌跡可以有兩種,一種是水平層切、一種是垂直層切。我們用垂直層切的方式。其軌跡如圖1-4,每個層切面上的刀具軌跡都是一個YZ平面的圓弧。
圖1--4 步驟
2、選擇合適的編程坐標(biāo)系,確定主、從變量。如圖1-3把坐標(biāo)系原點(diǎn)設(shè)置形腔上表面的中心,可以簡化計算。Z為主變量。取Z=0 為起點(diǎn),Z=20為終點(diǎn)。
步驟
3、拋物線方程X2=36(Z-20)轉(zhuǎn)化為X=SQRT[36*[Z-20]]
和X=-SQRT[36*[Z-20]]、這里需要注意兩個象限的變化,要設(shè)計兩個循環(huán)體,用控制指令“換向”。
步驟
4、設(shè)計流程圖,試驗循環(huán)體程序框架。
步驟
5、根據(jù)流程圖編制程序。注意程序的加工平面為y-z(G18)平面。流程圖和程序如下圖1—5,O1002 O1002;
G0X0Y0M8;G54G18G90G40;
G43G0Z100H1M3S3000 T1M6;
Z5;
圖1—5
M30
#1=0;
WHILE[#1GT-20] DO 1 #2=SQRT[36*[#1-20]];G1X#2F500;G41G1Y#1D1 G1Z0 G2Y-#1J-#1 G40G1Y0;#1=#1-0.1 END 1;#1=-20
WHILE[#1LT0] DO 2 #2=-SQRT[36*[#1-20]] G01X#2F500 G41G1Y#1D1 G2Y-#1J-#1 G40G1Y0 #1=#1+0.1
END 2;G00Z200M9
二、用宏程序開發(fā)對零件自動找正功能
圖2---1
1、開發(fā)過程
某零件如圖2-1。工藝安排臥式加工中心上一次裝夾將四個Φ 8孔加工完成,保證其位置精度。但是工件在夾具中定位后,B向旋轉(zhuǎn)無法用夾具精確定位。當(dāng)時的方法是:①每個零件裝夾后單獨(dú)用百分表找平?;蛘哂米詣訙y量觸頭取值,手工計算偏轉(zhuǎn)角。②修改程序中新的B向坐標(biāo)基準(zhǔn)值。
整個過程用時較長須用時長,對操作工的技能要求也較高。這種零件數(shù)量多,工期緊,要想辦法節(jié)約時間。我就想利用宏程序計算功能和機(jī)床具備的自動測量觸頭功能可以實(shí)現(xiàn)自動找正。
2、自動找正零件功能的工作原理
(1)、零件夾具中設(shè)計一個粗定位圓柱銷,使零件粗定位,保證測量精度和測量工具的安全。.(2)、選擇零件基準(zhǔn)面上較遠(yuǎn)的兩個點(diǎn)采值,如圖a、b兩點(diǎn)。分別放入#1和#2參數(shù)在。(3)、計算差值及偏轉(zhuǎn)角。(4)、輸入編程坐標(biāo)系G54的B軸。
另一臺四軸加工中心沒有自動測量功能,我們用采用百分表觸測零件基準(zhǔn)面,目測記錄差值,手工輸入?yún)?shù)表中。宏程序自動計算并找正。速度和準(zhǔn)確率提高了很多,保證了生產(chǎn)任務(wù)按時完成。
3、編制宏程序
自動找正功能的開發(fā)并不復(fù)雜,使用的是宏程序?qū)?nèi)部系統(tǒng)變量讀取和賦值功能。程序如下:
O2001 T3M6;G54G90G0X40Y300B0;G43G0Z200H3;G0Y15Z60;
運(yùn)動到預(yù)備測量a位置 G31G91Z-52F500;
執(zhí)行G31測量a點(diǎn)坐標(biāo)存入#5000 G90G0Y100Z200;#1=#5000;
#5000系統(tǒng)參數(shù)記錄a點(diǎn)的坐標(biāo)值,賦給#1 G0X-40;G0Y15Z60;G31G91Z-52F500;
執(zhí)行G31測量b點(diǎn) G0G90Y200Z200;#2=#5000;
#3=ATAN[[#1-#2]/80];
計算偏轉(zhuǎn)角
#5204=#5204-#3;
給過G54中B軸賦新值 G54G0B0;
執(zhí)行G54,B軸歸零
M99;
三、宏程序開發(fā)加工中心工作臺任意旋轉(zhuǎn)
后,坐標(biāo)系自動轉(zhuǎn)換的功能、五軸加工中心工作臺旋轉(zhuǎn)對坐標(biāo)系的影響
五軸加工中心工作臺可以在一個或兩個方向旋轉(zhuǎn),可以加工工件的多個表面。當(dāng)工件安裝在工作臺任一位置處上,我們找正工件基準(zhǔn),確定工件坐標(biāo)系。當(dāng)需要加工另一個表面時,工作臺需要旋轉(zhuǎn)一個角度,這時工件上的基準(zhǔn)原點(diǎn)與工件坐標(biāo)系分離。需要再次找正工件基準(zhǔn)重新建立坐標(biāo)系。如圖3-1如果工件有五個表面,那么就需要建立五個坐標(biāo)系。力,對于加工工件還可以接這樣的基準(zhǔn)點(diǎn)是空間斜角相次找正來保證全不可能了。
圖3--1
這樣的方法費(fèi)時費(fèi)形狀較簡單的單個受。圖中C點(diǎn)、D點(diǎn)就不容易找正。型腔交的零件用基準(zhǔn)多空間位置精度就完我們可以用計算的方式,以工作臺的回轉(zhuǎn)中心為基準(zhǔn),計算出每次旋轉(zhuǎn)工作臺,工件基準(zhǔn)相對于工作臺回轉(zhuǎn)中心的偏移量。用基準(zhǔn)轉(zhuǎn)移的方式建立新的工件坐標(biāo)系。把這個過程用宏程序來實(shí)現(xiàn),使坐標(biāo)自動轉(zhuǎn)換,方便準(zhǔn)確。
2、工作臺旋轉(zhuǎn)后坐標(biāo)系轉(zhuǎn)換的數(shù)學(xué)模型
圖3—2a 圖3—2b 五軸加工中心繞X軸旋轉(zhuǎn)的是A軸,如圖3-2a中O是機(jī)床坐標(biāo)系原點(diǎn),O1是工件坐標(biāo)系原點(diǎn),O2是工作臺A軸旋轉(zhuǎn)中心。圖3-2b為A軸旋轉(zhuǎn)&角后與原來旋轉(zhuǎn)前的比較圖。建立LZ和LY數(shù)學(xué)模型
LZ=(L3-L1)COS&+(L2+L4)SIN&-(L3-L1)=(L3-L1)(COS&-1)+(L2+L4)SIN& LY=(L2=L4)-[(L2+L4)COS&-(L3-L1)SIN&]=(L2+L4)(1-COS&)+(L3-L1)SIN& 要點(diǎn)說明:1.L1L2是工件坐標(biāo)系原點(diǎn)到機(jī)床坐標(biāo)系原點(diǎn)的距離,也就是G54中Z、Y的值
2.L3L4是工作臺旋轉(zhuǎn)中心到機(jī)床坐標(biāo)系原點(diǎn)的值。由
機(jī)床廠家測量出存放于一般機(jī)床參數(shù)中。3.LZLY將用于對工作臺的修改
4.設(shè)置工件坐標(biāo)系時要便于坐標(biāo)轉(zhuǎn)換的計算。
這種問題的難點(diǎn)就是建立數(shù)學(xué)模型,有了數(shù)學(xué)模型,我們可以很方便的完成坐標(biāo)轉(zhuǎn)換宏程序。
四、用參數(shù)簡化程序提高編程效率
實(shí)例、采用參數(shù)控制循環(huán)的方式時深型腔的粗精銑加工
如圖4-1零件型腔深度65mm材料硬度較高,由于內(nèi)角R的要求,粗精采用的刀具為直徑16mm和 10mm的加長銑刀。剛性差因此采用層銑方式,每層銑10mm 水平粗銑環(huán)切路徑如圖4-2。編制這種宏程序的特點(diǎn)是使用循環(huán)功能。
采用參數(shù)宏程序?qū)忧醒h(huán)和環(huán)切循環(huán)與普通 方式編程的比較。
圖4--1
(1)程序方便的比較進(jìn)給量調(diào)整宏程
序方便只須修改一個參數(shù)。而普通程序需要修改整個粗銑程序;(2)宏程序的程序句子較少粗銑留量越大,宏程序的優(yōu)勢越明顯;(3)宏程序結(jié)構(gòu)清楚比較容易檢驗程序的正確性;(4)通用性強(qiáng),只需
圖4—2 對參數(shù)賦上合適的值,就可以用于精銑輪廓
和精銑底面及側(cè)面。只需走完一次循環(huán)即可,而不必將整個程序走完。
五、用宏程序?qū)?shù)控機(jī)床的功能進(jìn)行二次開發(fā)
宏程序像許多計算機(jī)軟件一樣是數(shù)控系統(tǒng)廠家提供給我們的一種二次開發(fā)工具。用好它對我們的工作幫助非常大。我們可以把一些重復(fù)性強(qiáng),編程有規(guī)律的工作。編制成宏程序像數(shù)控系統(tǒng)中的其他固定循環(huán)一樣調(diào)用。編制時應(yīng)注意:(1)運(yùn)動軌跡盡可能多的受參數(shù)控制,才能方便靈活。(2)主要功能應(yīng)針對性強(qiáng),才能實(shí)用。(3)要注意快速運(yùn)動軌跡的安全性、通用性。(4)輸入?yún)?shù)不要太多,一般固定參數(shù)可放在宏程序內(nèi)修改。下面我簡要介紹開發(fā)的幾個小宏程序: 1.數(shù)控車床加工不銹鋼材料的深孔的宏程序
解決問題:不銹鋼材料加工深孔時排屑困難鉆頭易磨損,鐵屑不易折斷,容易繞到工件和鉆頭上,使鉆頭易損壞,也會拉毛已加工表面。增大發(fā)生折斷的意外。采取的方法:增長每次進(jìn)給的退刀長度,方便排屑降溫。增加M00方式暫停,用M05方式主軸暫停,方便檢查保護(hù)刀具,不用時打開“/”跳過。2.數(shù)控車床盲孔深槽的加工宏程序;
設(shè)計思路:盲孔內(nèi)深槽粗車有兩個難點(diǎn)1)排屑困難。2)刀頭伸出刀桿較長,進(jìn)退刀困難,空程較長。
在設(shè)計工藝路線時我們采取的措施有:1)切屑進(jìn)給路線上增加若干斷點(diǎn),造成斷屑、可以防止切屑纏繞刀桿,也方便排屑。2)分層進(jìn)給,每層結(jié)束,刀具退出工件較長距離,主軸進(jìn)給都暫停,排出孔內(nèi)
切屑并檢查刀具。3)刀具每次返回切屑面時空行程采用較快進(jìn)給速度。
實(shí)踐以上的措施,如應(yīng)用普通方式編程是非常困難的,即使編出來也是語句龐大,檢查修改也非常麻煩。使用宏程序的計算語句和循環(huán)控制語句就可以解決這些問題。
結(jié)束語
前面介紹了幾種編制宏程序的方法和重點(diǎn)技巧。我們在平時的工作中經(jīng)常會用到,為生產(chǎn)活動帶來了很大的便利,提高了生產(chǎn)效率,改善了加工質(zhì)量,完善了機(jī)床的功能。應(yīng)該說宏程序編制就像一個魔方,隨著你對它的使用。它會變幻出越來越多的美麗圖案。
舉例使用的數(shù)控系統(tǒng)都是FANC1S數(shù)控系統(tǒng)。S1EMENA(西門子)數(shù)控系統(tǒng)、HE10ENHA1N(海德漢)數(shù)控系統(tǒng)與FANUA數(shù)控系統(tǒng)的編程方法大同小異,只是參數(shù)名、地址字等計算格式上有所區(qū)別。前面舉例的部分宏程序,我在HE10ENHA1N系統(tǒng)上應(yīng)用過,并不需要結(jié)構(gòu)上大改動。
第二篇:數(shù)控機(jī)床編程實(shí)例(本站推薦)
一、兩種特殊的圓弧編程指令:CT和RND
常用的圓弧編程指令是G2和G3,使用時必須編入圓弧起點(diǎn)坐標(biāo),終點(diǎn)坐標(biāo)、圓弧半徑或中心坐標(biāo),可處理各種類型的圓弧編程。西門子810D/840D系統(tǒng)中的CT和RND指令也可以生成精確的圓弧軌跡,在加工輪廓中出現(xiàn)用圓弧與其他直線或圓弧相切連接的軌跡時,靈活運(yùn)用CT和RND指令進(jìn)行圓弧編程比使用G2和G3指令方便得多:
1、RND指令處理輪廓拐點(diǎn)的圓弧過渡
RND指令的含義:輪廓拐點(diǎn)處用指定半徑的圓弧過渡處理,并且和相關(guān)的直線或圓弧相切連接,數(shù)控系統(tǒng)自動運(yùn)算各個切點(diǎn)的坐標(biāo)。
參照圖1 加工內(nèi)容為底邊外的其余輪廓,所用程序如下。
N005 G54 G90 G0 Z100 T1 D1
N010 X-70 Y-50
N015 M03 S1000 F500 Z-10
N020 G41 Y-20
N025 G1 Y70 RND=5
N030 G1 X-40 RND=5
N035 G3 ×0 CR=20 RND=5
N040 G3 ×40 CR=20 RND=5
N045 G1×70 RND=5
N050 G1 Y-30
N055 M30
程序中用RND=5的格式表示輪廓拐點(diǎn)處用半徑R5的圓弧過渡處理,并與相關(guān)的直線或圓弧相切連接,數(shù)控系統(tǒng)自動運(yùn)算各個切點(diǎn)的坐標(biāo),程序中不需寫入切點(diǎn)的坐標(biāo)。而用G2和G3指令編寫各處R5圓弧就必須計算各個切點(diǎn)的坐標(biāo)(共10個點(diǎn)),還多了五條程序。
2、CT指令完成直線和圓弧或圓弧和圓相切邊接
CT指令的含義是:經(jīng)過一段直線或圓弧的結(jié)束點(diǎn)P1和另一個指定點(diǎn)P2生成一段圓弧并且和前面的直線或圓弧在P1點(diǎn)處相切,數(shù)控系統(tǒng)自動運(yùn)算圓弧半徑CT指令是模態(tài)的。
參照圖2 加工內(nèi)容為底邊外的其余輪廓,所用程序如下:
N005 G54 G90 G0 Z100 T1 D1
N010 X-90 Y-120
N015 M03 S1000 F500Z-10
N020 G41Y-100
N025 G1 Y20
N030 X-60
N040 Yo
N045 CT X-20(第一個R20圓?。?/p>
N050 X20(第二個R20圓?。?/p>
N055 X60(第三個R20圓?。?/p>
N060 G1 Y20
N065 G1×90
N070 Y-100
N075 M30
用CT在編制程序時只需輸入切點(diǎn)坐標(biāo)而不用寫入圓弧半徑,也不用判斷圓弧的方向,在直線和圓弧或多段圓弧相切連接的輪廓編程時使用非常方便。
3、CT和RND指令在極坐標(biāo)系中的應(yīng)用
在極坐標(biāo)系中用G2和G3指令編程時有一個限制,極點(diǎn)必須設(shè)定在所編程圓弧的中心。而用CT和RND指令就很好地克服了這一障礙。
(1)RND指令在極坐標(biāo)系中的應(yīng)用
參照圖3在數(shù)控銑床加工4個30度的V型槽,以90度位置的V型槽為例程序如下。
N005 G54 G0 T1 D1 Z100
N010 G111 Xo YO
N015 AP=90-15 RP=110
N020 M03 S1000 F500 Z10
N025 G42 RP=100
N030 G1 RP=0 RND=10
N035 G1 RP=100
N040 M30
(2)CT指令在極坐標(biāo)系中的應(yīng)用。
參照圖4 加工上部的3段圓弧和2段直線相切連接的部位,程序如下。
N005 G54 G90 Go Z100 T1 D1
N010 G111 XO YO
N015 AP=90-36-18 RP=150
N020 M03 S1000 F500 Z-10
N025 G42 RP=130
N030 G1 RP=142.66/2
N035 CT AP=90-18
N040 AP=90+18
N045 AP=90+18+36
N050 G1 RP=150
N055 M30
圖3和圖4 這兩種類型的工件加工部位使用算術(shù)坐標(biāo)系編程數(shù)據(jù)處理比較麻煩,在極坐標(biāo)系中用G2和G3指令編程圓弧時極點(diǎn)必須設(shè)定在所編圓弧的中心,需要一些計算工作,而使用RND和CT指令編程圓弧時,極點(diǎn)就不必設(shè)定在所編圓弧的中心,極點(diǎn)可以設(shè)定在任意的方便數(shù)據(jù)處理的位置。圖3和圖4 這兩種類型的工件加工部位在編程時使用極坐標(biāo)且極點(diǎn)設(shè)定在工件中心最為方便。
二、特殊刀具補(bǔ)償方法在加工扇形段導(dǎo)入板中的應(yīng)用
1、一般的刀具補(bǔ)償方法
參照圖5,在數(shù)控銑上用40mm立銑刀加工60H7的槽,按照槽的邊界線進(jìn)行編程,使用的程序如下。
N005 G54 G90 Go Z100 T1 D1
N010 X-150 YO
N020 M03 S300 F100 Z30
N025 G42 Y30
N030 G1×150
N035 Y-30
N040 X-150
N050 M30
實(shí)際加工中要經(jīng)過粗加工、半精加工和精加工運(yùn)行三次程序,對應(yīng)的半徑補(bǔ)償值先大后小分別是22mm,20.5mm,20mm(理念值,最終的半徑補(bǔ)償值要經(jīng)過實(shí)際測量確定)。
2、特殊的刀具補(bǔ)償方法
參照圖5,在數(shù)控銑床上40mm立銑刀加工60H7的槽,按照中心線進(jìn)行編程,使用的程序如下。
N005 G54 G90 GO Z100 T1 D1
N010 X-150 YO
N020 M03 S300 F100 Z30
N025 G42 X-140
N030 G1 X150
N035 GO Z100
N040 G40 X-150
N050 Z30
N055 G41 X-140
N060 G1 X150
N065 GO Z100
N070 M30
實(shí)際加工中要經(jīng)過粗加工、半精加工和精加工運(yùn)行三次程序,對應(yīng)的半徑補(bǔ)償先小后大分別是8mm、9.5mm,10mm(理論值,最終的半徑補(bǔ)償值要經(jīng)過實(shí)際測量后確定),最終的半徑補(bǔ)償理論值=槽的寬度/2-刀具半徑。在程序中分別用G41和G42激活兩次刀補(bǔ),增加了一次空行程,這種使用刀具半徑補(bǔ)償?shù)姆绞皆诩庸ひ话泐愋偷墓ぜr顯得很麻煩,但是在加工特定類型的工件時使用這種方法就會使編程工作變得非常簡單。
3、在加工扇形段導(dǎo)入板中的應(yīng)用
在一些比較特殊槽體的加工中,圖紙中只標(biāo)注槽的寬度、深度和中心線的形狀尺寸,針對這一類型的工件,按照中心線進(jìn)行編程,加工中應(yīng)用特殊的刀具補(bǔ)償方法。
參照圖6,這是我公司薄板廠連鑄設(shè)備中使用的扇形段導(dǎo)入板,它是扇形段導(dǎo)入裝置中的關(guān)鍵零件。用Tk6920數(shù)控銼銑床的加工七條128×44mm導(dǎo)入槽。該工件的七條導(dǎo)入槽是由多段圓弧和直線相切連接構(gòu)成,圖紙中只標(biāo)注了槽的寬度、深度和中心線的形狀尺寸,以上部第一個導(dǎo)入槽為例說明特殊的刀具補(bǔ)償使用方法,按照中心線進(jìn)行編程。
程序名稱:CA01
程序內(nèi)容:N5 G54 G90 G64 GO Wo Z150 T1 D1(調(diào)用第一個刀號)
N10 G111 XO YO
N15 X=-1804-100 Y=464.424
N20 M04 S250 F200 Z-44
N25 G41 X=IC(50)(激活刀補(bǔ)開始加工槽體的上邊界)
N30 G1 X=-1804+920.617
N35 CT AP=90-16.03 RP=1499.5
N40 G1 AP=90-16.03 RP=1499.5+100
N45 GO G40 X=IC(100)Z150
N50 X=-1804-100 Y=464.424 T1 D2(調(diào)用第二個刀號)
N55 G42 X=IC(50)(激活刀補(bǔ)開始加工槽體的下邊界)
N60 G1 X=-1804+920.617
N65 CT AP=90-16.03 RP=1499.5
N70 G1 AP90-16.03 RP=1499.5+100
N75 GO G40 X=IC(100)Z150
N80 M30
槽的寬度和中心線不對稱,程序中用了兩個刀號,加工槽體的上邊界時用D1,加工槽體的下邊界是時用D2,實(shí)際加工中用50mm銑刀要經(jīng)過粗加工、半精加工和精加工運(yùn)行三次程序,對應(yīng)的半徑補(bǔ)償值先小后大分別是D1=100mm,12mm,12.5mm,D2=13mm,15mm,15.5mm.如果使用一般的刀具補(bǔ)償使用方法,按照槽的邊界線進(jìn)行編程,就要計算槽的邊界線中各段圓弧和直線切點(diǎn)的坐標(biāo)以及各段圓弧的半徑,計算量是非常大的。而按照中心線進(jìn)行編程就可直接使用力紙上標(biāo)注的尺寸,避免了大量、繁瑣的數(shù)據(jù)計算工作,保證了程序中所用數(shù)據(jù)的準(zhǔn)確性,極大的提高了編程效率。
其方法有兩個特殊:
(1)按照中心線進(jìn)行編程而不是按照真實(shí)的加工邊界線進(jìn)行編程。
(2)刀具補(bǔ)償值按照粗加工、半精加工和精加工的順序逐漸加大,理論補(bǔ)償值二加工的邊界到中心線的距離--刀具半徑。優(yōu)點(diǎn)是直接使用圖紙上標(biāo)注的尺寸進(jìn)行編程,保證了程序中所用數(shù)據(jù)的準(zhǔn)確性,不需進(jìn)行大量繁瑣的數(shù)據(jù)計算工作。
第三篇:數(shù)控銑床橢圓形加工宏程序的編程實(shí)例
數(shù)控銑床橢圓形加工宏程序的編程實(shí)例
實(shí)際應(yīng)用中經(jīng)常會遇到各種各樣的橢圓形加工特征。在現(xiàn)今的數(shù)控系統(tǒng)中,無論硬件數(shù)控系統(tǒng),還是軟件數(shù)控系統(tǒng),其插補(bǔ)的基本原理是相同的,只是實(shí)現(xiàn)插補(bǔ)運(yùn)算的方法有所區(qū)別。常見的是直線插補(bǔ)和圓弧插補(bǔ),沒有橢圓插補(bǔ),手工常規(guī)編程無法編制出橢圓加工程序,常需要用電腦逐一編程,但這有時受設(shè)備和條件的限制。這時可以采用擬合計算,用宏程序方式,手工編程即可實(shí)現(xiàn),簡捷高效,并且不受條件的限制。加工橢圓形的半球曲面,刀具為R8的球銑刀。利用橢圓的參數(shù)方程和圓的參數(shù)方程來編寫宏程序。
橢圓的參數(shù)方程為:X=A*COS&;
其中,A為橢圓的長軸,B為橢圓的短軸。
編制參考宏程序如下:
%00518
#1=0
#2=20
#3=30
#4=1
#5=90
WHILE #5 GE #1 DO1
#6=#3*COS[#5*PI/180]+4
#7=#2*SIN[#5*PI/180]
G01X[#6]F800
Z[#7]
#8=360
#9=0
WHILE #9 LE #8 DO2
#10=#6*COS[#9*PI/180]
#11=#6*SIN[#9*pi/180]*2/3
G01X[#10]Y[#11]F800
#9=#9+1(計數(shù)器)
END1
#5=#5-#4(計數(shù)器)
END2
M99
Y=B*COS&;
第四篇:數(shù)控銑床宏程序編程 經(jīng)典
變量
普通加工程序直接用數(shù)值指定G代碼和移動距離;例如,GO1和X100.0。使用用戶宏程序時,數(shù)值可以直接指定或用變量指定。當(dāng)用變量時,變量值可用程序或用MDI面板上的操作改變。#1=#2+100 G01 X#1 F300 說明:
變量的表示
計算機(jī)允許使用變量名,用戶宏程序不行。變量用變量符號(#)和后面的變量號指定。例如:#1 表達(dá)式可以用于指定變量號。此時,表達(dá)式必須封閉在括號中。例如:#[#1+#2-12]
變量的類型
變量根據(jù)變量號可以分成四種類型
變量號 變量類型 功能
#0 空變量 該變量總是空,沒有值能賦給該變量.#1-#33 局部變量局部變量只能用在宏程序中存儲數(shù)據(jù),例如,運(yùn)算結(jié)果.當(dāng)斷電時,局部變量被初始化為空.調(diào)用宏程序時,自變量對局部變量賦值, #100-#199 #500-#999 公共變量公共變量在不同的宏程序中的意義相同.當(dāng)斷電時,變量#100-#199初始化為空.變量#500-#999的數(shù)據(jù)保存,即使斷電也不丟失.#1000 系統(tǒng)變量 系統(tǒng)變量用于讀和寫CNC運(yùn)行時各種數(shù)據(jù)的變化,例如,刀具的當(dāng)前位置和補(bǔ)償值.變量值的范圍
局部變量和公共變量可以有0值或下面范圍中的值:-1047到-10-29或-10-2到-1047 如果計算結(jié)果超出有效范圍,則發(fā)出P/S報警NO.111.小數(shù)點(diǎn)的省略
當(dāng)在程序中定義變量值時,小數(shù)點(diǎn)可以省略。
例:當(dāng)定義#1=123;變量#1的實(shí)際值是123.000。
變量的引用
為在程序中使用變量值,指定后跟變量號的地址。當(dāng)用表達(dá)式指定變量時,要把表達(dá)式放在括號中。
例如:G01X[#1+#2]F#3;被引用變量的值根據(jù)地址的最小設(shè)定單位自動地舍入。例如: 當(dāng)G00X#/;以1/1000mm的單位執(zhí)行時,CNC把123456賦值給變量#1,實(shí)際指令值為G00X12346.改變引用變量的值的符號,要把負(fù)號(-)放在#的前面。例如:G00X-#1 當(dāng)引用未定義的變量時,變量及地址都被忽略。
例如:當(dāng)變量#1的值是0,并且變量#2的值是空時,G00X#1 Y#2的執(zhí)行結(jié)果為G00X0。
雙軌跡(雙軌跡控制)的公共變量
對雙軌跡控制,系統(tǒng)為每一軌跡都提供了單獨(dú)的宏變量,但是,根據(jù)參數(shù)N0.6036和6037的設(shè)定,某些公共變量可同時用于兩個軌跡。
未定義的變量
當(dāng)變量值未定義時,這樣的變量成為空變量。變量#0總是空變量。它不能寫,只能讀。
引用
當(dāng)引用一個未定義的變量時,地址本身也被忽略。當(dāng)#1=<空> 當(dāng)#1=0 G90 X100 Y#1 G90 X100 G90 X100 Y#1 G90 X100 Y0
(b)運(yùn)算
除了用<空>賦值以外,其余情況下<空>與0相同。
當(dāng)#1=<空>時 當(dāng)#1=0時
#2=#1 #2=<空> #2=#1 #2=0
#2=#*5 #2=0 #2=#*5 #2=0
#2=#1+#1 #2=0 #2=#1+#1 #2=0
(c)條件表達(dá)式
EQ和NE中的<空>不同于0。當(dāng)#1=<空>時 當(dāng)#1=0時
#1EQ#0 成立 #1EQ#0 不成立
#1 NE #0 成立 #1 NE #0 不成立
#1 GE #0 成立 #1 GE #0 不成立
#1 GT #0 不成立 #1 GT #0 不成立
限制
程序號,順序號和任選程序段跳轉(zhuǎn)號不能使用變量。例:下面情況不能使用變量: 0#1;
/#2G00X100.0;N#3Y200.0;
二 算術(shù)和邏輯運(yùn)算
下面表中列出的運(yùn)算可以在變量中執(zhí)行。運(yùn)算符右邊的表達(dá)式可包含常量和或由函數(shù)或運(yùn)算符組成的變量。表達(dá)式中的變量#j和#k可以用常數(shù)賦值。左邊的變量也可以用表達(dá)式賦值。
功能 格式 備注 定義 #i=#j 加法
減法
乘法
除法 #i=#j+#k;
#i=#j-#k;
#i=#j*#k;
#i=#j/#k;正弦
反正弦
余弦
反余弦
正切
反正切 #i=sin[#j;
#i=asin[#j];
#i=cos[#j];
#i=acos[#j];
#i=tan[#j]
#i=atan[#j]/[#k] 角度以度指定,90o30'表示為90.5度。平方根
絕對值
舍入
上取整
下取整
自然對數(shù)
指數(shù)函數(shù) #i=SQRT[#j];
#i=ABS[#j];
#i=ROUNG[#j];
#i=FIX[#j];#i=FUP[#j];
#i=LN[#j];
#i=EXP[#j];或
異或
與
#i=#jOR#k;
#i=#jXOR#k;
#i=#jAND#k;邏輯運(yùn)算一位一位地按二進(jìn)制數(shù)執(zhí)行。從BCD轉(zhuǎn)為BIN
從BIN轉(zhuǎn)為BCD #i=BIN[#j];
#i=BCD[#j];用于與PMC的信號交換。
說明:
角度單位
函數(shù)SIN ,COS,ASIN,ACOS,TAN和ATAN的角度單位是度。如90°30’表示為90.5度。ARCSIN # i= ASIN[#j](1)取值范圍如下:
當(dāng)參數(shù)(NO.6004#0)NAT位設(shè)為0時,270°~90° 當(dāng)參數(shù)(NO.6004#0)NAT位設(shè)為1時,-90°~90°
(2)當(dāng)#j超出-1到1的范圍時,發(fā)出P/S報警NO.111.(3)常數(shù)可替代變量#j
ARCCOS #i=ACOS[#j] 取值范圍從180°~0° 當(dāng)#j超出-1到1的范圍時,發(fā)出P/S報警NO.111.常數(shù)可替代變量#j
三 程序舉例
銑橢圓:
軌跡:
橢圓程序代碼如下:
N10 G54 G90 G0 S1500 M03 N12 X0 Y0 Z20.N14 G0 Z1 N16 G1 Z-5.F150.N18 G41 D1 N20 #1=0 N22 #2=34 N24 #3=24 N26 #4=#2*COS[#1] N28 #5=#3*SIN[#1] N30 #10=#4*COS[45]-#5*SIN[45] N32 #11=#4*SIN[45]+#5*COS[45] N34 G1 X#10 Y#11 N36 #1=#1+1 N38 IF [#1 LT 370] GOTO26 N40 G40 G1 X0 Y0 N42 G0 Z100 N44 M30
銑矩形槽:
銑矩形槽代碼如下: #102=0.N3#100=0.#101=0.#103=200.#104=400.G91G28Z0.G0G90G54X0.Y0.G43H1Z20.M3S2000.N4G0X#100Y#101 G01Z#102F200.#102=#102-2.IF[#102EQ-50.]GOTO1 GOTO2 N2 N4X#104F500.Y#103 X#100 Y#101 #100=#100+10.#101=#101+10.#103=#103-10.#104=#104-10.IF[#100EQ100.]GOTO3 GOTO4 N3 N1 M5 M9 G91G28Z0.G28Y0.M30
銑傾斜3度的面:
軌跡:
銑傾斜3度的面的代碼如下: O0001 #[#1+1*2]=1 G65P9012L1A0B0.1C4I100J3K0 M30
宏程序O9012代碼如下: G54 G90 G00 X[#3] Y0 Z100 S500 M3 G01 Z0 F300 WHILE[#1LE10]DO1 #7= #1/TAN[#5]+#3 G1Z-#1 X#7 #8=#6/2-ROUND[#6/2] IF[#8EQ0]GOTO10 G1Y0 GOTO20 N10 Y#4 N20#1=#1+#2 #6=#6+1 END1 G0 Z100
銑半球:
軌跡:
銑半球代碼如下:
G90G0G54X-10.Y0M3S4500 G43Z50.H1M8 #1=0.5 WHILE[#1LE50.]DO1 #2=50.-#1 #3=SQRT[2500.-[#2*#2]] G1Z-#1F20 X-#3F500 G2I#3 #1=#1+0.5 END1 G0Z50.M5 M30
銑喇叭:
銑喇叭代碼如下: M03 S500 M06 T01 #1=0 #2=0 G0 Z15 X150 Y0 N11 #2=30*SIN[#1] #3=30+30*[1-COS[#1]] G01 Z-#2 F40 G41 X#3 D01 G03 I-#3 G40 G01 X150 Y0 #1=#1+1 IF [#1 LE 90] GOTO 11 G0 Z30 M30
第五篇:數(shù)控機(jī)床編程英語
1)計算機(jī)數(shù)值控制(Computerized Numerical Control, CNC)用計算機(jī)控制加工功能,實(shí)現(xiàn)數(shù)值控制。
2)軸(Axis)機(jī)床的部件可以沿著其作直線移動或回轉(zhuǎn)運(yùn)動的基準(zhǔn)方向。
3)機(jī)床坐標(biāo)系(Machine Coordinate Systern)固定于機(jī)床上,以機(jī)床零點(diǎn)為基準(zhǔn)的笛卡爾坐標(biāo)系。
4)機(jī)床坐標(biāo)原點(diǎn)(Machine Coordinate Origin)機(jī)床坐標(biāo)系的原點(diǎn)。
5)工件坐標(biāo)系(Workpiece Coordinate System)固定于工件上的笛卡爾坐標(biāo)系。
6)工件坐標(biāo)原點(diǎn)(Wrok-piexe Coordinate Origin)工件坐標(biāo)系原點(diǎn)。
7)機(jī)床零點(diǎn)(Machine zero)由機(jī)床制造商規(guī)定的機(jī)床原點(diǎn)。
8)參考位置(Reference Position)機(jī)床啟動用的沿著坐標(biāo)軸上的一個固定點(diǎn),它可以用機(jī)床坐標(biāo)原點(diǎn)為參考基準(zhǔn)。
9)絕對尺寸(Absolute Dimension)/絕對坐標(biāo)值(Absolute Coordinates)距一坐標(biāo)系原點(diǎn)的直線距離或角度。
10)增量尺寸(Incremental Dimension)/增量坐標(biāo)值(Incremental Coordinates)在一序列點(diǎn)的增量中,各點(diǎn)距前一點(diǎn)的距離或角度值。
11)最小輸人增量(Least Input Increment)在加工程序中可以輸人的最小增量單位。
12)命令增量(Least command Increment)從數(shù)值控制裝置發(fā)出的命令坐標(biāo)軸移動的最小增量單位。
13)插補(bǔ)(InterPolation)在所需的路徑或輪廓線上的兩個已知點(diǎn)間根據(jù)某一數(shù)學(xué)函數(shù)(例如:直線,圓弧或高階函數(shù))確定其多個中間點(diǎn)的位置坐標(biāo)值的運(yùn)算過程。
14)直線插補(bǔ)(Llne Interpolation)這是一種插補(bǔ)方式,在此方式中,兩點(diǎn)間的插補(bǔ)沿著直線的點(diǎn)群來逼近,沿此直線控制刀具的運(yùn)動。
15)圓弧插補(bǔ)(Circula : Interpolation)這是一種插補(bǔ)方式,在此方式中,根據(jù)兩端點(diǎn)間的插補(bǔ)數(shù)字信息,計算出逼近實(shí)際圓弧的點(diǎn)群,控制刀具沿這些點(diǎn)運(yùn)動,加工出圓弧曲線。
16)順時針圓?。–lockwise Arc)刀具參考點(diǎn)圍繞軌跡中心,按負(fù)角度方向旋轉(zhuǎn)所形成的軌跡.方向旋轉(zhuǎn)所形成的軌跡.
17)逆時針圓?。–ounterclockwise Arc)刀具參考點(diǎn)圍繞軌跡中心,按正角度方向旋轉(zhuǎn)
所形成的軌跡。
18)手工零件編程(Manual Part Prograrnmiog)手工進(jìn)行零件加工程序的編制。
19)計算機(jī)零件編程(Cornputer Part prograrnrnlng)用計算機(jī)和適當(dāng)?shù)耐ㄓ锰幚沓绦蛞约昂笾锰幚沓绦驕?zhǔn)備零件程序得到加工程序。
20)絕對編程(Absolute Prograrnming)用表示絕對尺寸的控制字進(jìn)行編程。
21)增量編程(Increment programming)用表示增量尺寸的控制字進(jìn)行編程。
22、22)宇符(Character)用于表示一組織或控制數(shù)據(jù)的一組元素符號。
23)控制字符(Control Character)出現(xiàn)于特定的信息文本中,表示某一控制功能的字符。
24)地址(Address)一個控制字開始的字符或一組字符,用以辨認(rèn)其后的數(shù)據(jù)。
25)程序段格式(Block Format)字、字符和數(shù)據(jù)在一個程序段中的安排。
26)指令碼(Instruction Code)/機(jī)器碼(Machine Code)計算機(jī)指令代碼,機(jī)器語言,用來表示指令集中的指令的代碼。
27)程序號(Program Number)以號碼識別加工程序時,在每一程序的前端指定的編號
28)程序名(Prograo Name)以名稱識別加工程序時,為每一程序指定的名稱。
29)指令方式(Command Mode)指令的工作方式。