歡迎來到上海鼎亞精密機械設(shè)備有限公司官方網(wǎng)站! 收藏本站| 關(guān)于鼎亞| 炮塔銑床調(diào)試維修視頻
全國統(tǒng)一熱線
400-000-7705
熱門關(guān)鍵詞:
當(dāng)前位置:首頁>>鼎亞動態(tài)>>常見問題數(shù)控宏程序的編程及應(yīng)用

數(shù)控宏程序的編程及應(yīng)用

文章出處: 人氣:1408 發(fā)表時間:2020-11-10 16:03:02
1. 什么場合會用到宏程序編程?
其實說起來宏就是用公式來加工零件,比如說橢圓,如果沒有宏的話,我們要逐點算出曲線上的點,然后慢慢來用直線逼近,如果是個光潔度要求很高的工件的話,那么需要計算很多的點,可是應(yīng)用了宏后,我們把橢圓公式輸入到系統(tǒng)中然后我們給出Z坐標(biāo)并且每次加一個量,那么宏就會自動算出X坐標(biāo)并且進行切削, 實際上宏在程序中主要起到的是運算作用。

手工編程加工公式曲線(計算簡單,輸入快捷)
有規(guī)律的切削路徑(作為一個切削模塊)
程序間的控制(程序的調(diào)度)
刀具的管理(刀具的磨損)
自動測量(機內(nèi)測頭)
2. 什么叫宏程序?
在編程時,我們會把能完成某一功能的一系列指令像子程序那樣存入存儲器,用一個總指令來調(diào)用它們,使用時只需給出這個總指令就能執(zhí)行其功能所存入的這一系列指令稱作用戶宏程序本體,簡稱宏程序。
這個總指令稱作用戶宏程序調(diào)用指令。在編程時,編程員只要記住宏指令而不必記住宏程序。
3. 用戶宏程序與普通程序的區(qū)別
1)在用戶宏程序本體中,能使用變量,可以給變量賦值,變量間可以運算,程序可以跳轉(zhuǎn)。
2)普通程序中,只能指定常量,常量之間不能運算,程序只能順序執(zhí)行,不能跳轉(zhuǎn),因此功能是固定的,不能變化。
3)用戶宏功能是用戶提高數(shù)控機床性能的一種特殊功能,在相類似工件的加工中巧用宏程序?qū)⑵鸬绞掳牍Ρ兜男Ч?br /> 4. 變量的三種類型
數(shù)控系統(tǒng)變量表示形式為“#”后跟1~4位數(shù)字,變量種類有三種:
(1)局部變量:#1~#33是在宏程序中局部使用的變量,它用于自變量轉(zhuǎn)移。
(2)公用變量:用戶可以自由使用,它對于由主程序調(diào)用的各子程序及各宏程序來說是可以公用的。#100~#149在關(guān)掉電源后,變量值全部被清除,而#500~#509在關(guān)掉電源后,變量值則可以保存。
(3)系統(tǒng)變量:由后跟4位數(shù)字來定義,它能獲取包含在機床處理器或NC內(nèi)存中的只讀或讀/寫信息,包括與機床處理器有關(guān)的交換參數(shù)、機床狀態(tài)獲取參數(shù)、加工參數(shù)等系統(tǒng)信息。
5. 宏程序的特點
宏程序可使用變量,可用變量執(zhí)行相應(yīng)操作;實際變量值可由宏程序指令賦給變量。
6. 指令
(1)宏程序的簡單調(diào)用格式
宏程序的簡單調(diào)用是指在主程序中,宏程序可以被單個程序段單次調(diào)用。
調(diào)用指令格式:
G65 P(宏程序號)L(重復(fù)次數(shù))(變量分配)。
其中:G65―宏程序調(diào)用指令;
P(宏程序號)―被調(diào)用的宏程序代號;
L(重復(fù)次數(shù))―宏程序重復(fù)運行的次數(shù),重復(fù)次數(shù)為1時,可省略不寫;
(變量分配)―為宏程序中使用的變量賦值。
宏程序與子程序相同的一點是,一個宏程序可被另一個宏程序調(diào)用,最多可調(diào)用4重。
(2)宏程序的編寫格式
宏程序的編寫格式與子程序相同。其格式為:
0~(0001~8999為宏程序號)
N10 指令
N~ M99
上述宏程序內(nèi)容中,除通常使用的編程指令外,還可使用變量、算術(shù)運算指令及其它控制指令。變量值在宏程序調(diào)用指令中賦給。
7. FANUC系統(tǒng)宏程序應(yīng)用
(1)宏程序切槽


1)WHILE語句
G00 X52 Z2;
#2= 14;   
是刀具z向的起刀點(因為刀寬為4mm,所以起刀點定在Z 14的位置)
WHILE〔#2 GE 30〕DO2;   
是z方向的約束條件,當(dāng)z等于 30時,z向就不再移動
G00 Z〔#2〕;   
z方向的當(dāng)前位置
#2=#2 2;   
z方向的移動步距,每次移動2mm
#1=52;  
是x方向的起刀點
WHILE〔#1 GE 20〕DO1;  
X方向的約束條件,當(dāng)直徑等于20時就不再切削
G01 X〔#1〕F0.2;  
x方向的切深
G00 X〔#1+1〕;  
x方向的相對退刀量
#1=#1 1;  
x方向的步距(每次切1mm)
END1;
G00 X52;
END2;
完整程序:
O1234;
G40 G97 G99;                  
T0101;                           
S1000 M3;                        
G00 X52 Z2;                    
#2= 14;                          
WHILE〔#2GE 30〕DO2;    END1;
G00 Z〔#2〕;                    
#2=#2 2;                        
#1=52                           
WHILE〔#1GE20〕DO1;
G01X〔#1〕F0.2;
G00X〔#1+1〕;
#1=#1 1;
G00 X52;
END2;
G00 X150 Z150;
M30;
2)IF語句
G00 X52 Z 2;
#1= 14;  
是刀具的z向起刀點(刀寬為4mm)
N2 #1=#1 2;   
是z方向的移動步距
#2=52;  
為x方向的起刀點
N1#2=#2 1;  
是x方向的步距(每次切深1mm)
G01 X〔#2〕F0.2;  
X方向的當(dāng)前位置
G00 X〔#2+1〕;   
X方向的相對退刀量
IF 〔#2 GE 21〕GOTO1;      
x方向的約束條件(當(dāng)x的數(shù)值切到20時就進行下面程序,不再返回)
G00 X52;   
X退刀到52的位置
G00 Z〔#1〕;   
Z方向的當(dāng)前位置
IF 〔#1 GE 30〕GOTO2;   
Z方向的約束條件,當(dāng)z等于 30時,z向就不在移動
完整程序:
O1234;
G40G97G99;                    
T0101;                           
S1000M3;                        
G00 X52 Z 2;                  
#1= 14;                          
N2 #1=#1 2;                    
#2=52;                           
N1#2=#2 1;                     
G01 X〔#2〕F0.2;
G00 X〔#2+1〕;
IF〔#2GE21〕GOTO1;
G00X52;
G00Z〔#1〕;
IF〔#1GE 30〕GOTO2;
G00X200;
Z200;
M5;
M30;
(2)橢圓編程
1)橢圓WHILE語句的標(biāo)準(zhǔn)格式:
#1=a;  
a :為刀具的起刀點在相對橢圓的軸線Z的正方向a mm處
WHILE〔#1 GE b〕DO1;   
b: 為橢圓加工的終點在相對橢圓的軸線Z的負方向b mm處(如果加工的是一個完整的半橢圓,那a、b是數(shù)值相同符號不同的兩個數(shù)值)
#2= c*SQRT〔1 #1*#1/d*d〕;   
c: 橢圓的短半軸      
d: 橢圓的長半軸(根據(jù)橢圓公式求#2,長半軸為d,短半軸為c,#2代表X的數(shù)值,#1為Z的數(shù)值,SQRT是開方的意思)
G01 X〔±2*#2+e〕Z〔#1±f〕;
e: 橢圓的X向軸線相對工件坐標(biāo)系的偏移量(直徑值)
f: 橢圓的Z向軸線相對工件坐標(biāo)系的偏移量
#1=#1 1;步距(每次移動1mm)
END1;
注意事項:當(dāng)車削凹橢圓時X后括號中的“±”取“﹣”;當(dāng)車削凸橢圓時X后括號中的“±”取“+”。
當(dāng)橢圓的X軸線向正向偏移則Z后括號中的“±”取“+”;當(dāng)橢圓的X向軸線向負向偏移則Z后括號中的“±”取“﹣”
2)橢圓IF語句的標(biāo)準(zhǔn)格式
#1=a;
a: 為刀具的起刀點在相對橢圓的軸線Z的正方向a mm處
N1#2=b*SQRT〔1 #1*#1/c*c〕;
b:橢圓的短半軸c:橢圓的長半軸(根據(jù)橢圓公式X/c+ Y/b=1,SQRT是開方的意思)
G01X〔±2*#2+d〕Z〔#1±e〕F0.2; d:橢圓的X向軸線相對坐標(biāo)零點的偏移量(直徑值)e:橢圓的Z向軸線相對零面的偏移量
#1=#1 1;  
步距(每次移動1mm)
IF〔#1 GE f〕GOTO1   
f:橢圓加工的終止

注意事項:當(dāng)車削凹橢圓時X后括號中的“±”取“﹣”;當(dāng)車削凸橢圓時X后括號中的“±”取“+”。當(dāng)橢圓的X軸線向正向偏移則Z后括號中的“±”取“+”;當(dāng)橢圓的X向軸線向負向偏移則Z后括號中的“±”取“﹣”。


WHILE語句
#1=20;
WHILE〔#1GE 20〕DO1;
#2=10*SQRT〔1 #1*#1/400〕;
G01X〔 2*#2+50〕Z〔#1 25〕;
#1=#1 1;
END1;
IF語句
#1=20;
N1#2=10*SQRT〔1 #1*#1/400〕;
G01X〔 2*#2+50〕Z〔#1 25〕F0.2;
#1=#1 1;
IF〔#1GE 20〕GOTO1;
完整程序
O1234;
G40G97G99;               
T0101;                    
S1000 M3;                  
G00 X50 Z2;               
G73 U5 R5;               
G73 P10 Q20 U0.5 F0.2;      
N10 G0 G42 Z 5;            
#1=20;                  
WHILE〔#1GE 20〕DO1;      
#2=10*SQRT〔1 #1*#1/400〕;
G01X〔 2*#2+50〕Z〔#1 25〕F0.2;
#1=#1 1;
END1;
G00 X50;
N20 G00 G40 Z2;
G70 P10 Q20;
G00 X200;
Z200;
M5;
M30;
IF語句完整格式省略,(IF語句也一樣,只要加上循環(huán)就可以),在FANUC 0i系統(tǒng)中宏程序只能加在G73中。


此文關(guān)鍵字:數(shù)控,宏程序,編程,應(yīng)用
首頁| 加工中心| 高速鉆攻中心| 數(shù)控銑床| 龍門加工中心| 產(chǎn)品中心| 網(wǎng)站地圖| 關(guān)于鼎亞|