第一篇:宏程序加工教案
《數(shù)控銑加工技術(shù)》教案
宏程序加工實例
一、宏指令編程
1宏變量及常量(1)宏變量
#0~#49當(dāng)前局部變量 #50~#199全局變量
#200~#249 0層局部變量 #250~#299 1層局部變量 #300~#349 2層局部變量 #350~#399 3層局部變量 #400~#449 4層局部變量 #450~#499 5層局部變量 #500~#549 6層局部變量 #550~#599 7層局部變量
#600~#699刀具長度寄存器H0~H99 #700~#799刀具半徑寄存器D0~D99 #800~#899刀具壽命寄存器
#1000“機床當(dāng)前位置X”#1001“機床當(dāng)前位置Y”#1002“機床當(dāng)前位置Z” #1003“機床當(dāng)前位置A”#1004“機床當(dāng)前位置B”#1005“機床當(dāng)前位置C” #1006“機床當(dāng)前位置U”#1007“機床當(dāng)前位置V”#1008“機床當(dāng)前位置W” #1009保留#1010“程編機床位置X”#1011“程編機床位置Y”
#1012“程編機床位置Z”#1013“程編機床位置A”#1014“程編機床位置B” #1015“程編機床位置C”#1016“程編機床位置U”#1017“程編機床位置V” #1018“程編機床位置W”#1019保留#1020“程編工件位置X”
#1021“程編工件位置Y”#1022“程編工件位置Z”#1023“程編工件位置A” #1024“程編工件位置B”#1025“程編工件位置C”#1026“程編工件位置U” #1027“程編工件位置V”#1028“程編工件位置W”#1029保留 53 #1030“當(dāng)前工件零點X”#1031“當(dāng)前工件零點Y”#1032“當(dāng)前工件零點Z” #1033“當(dāng)前工件零點A”#1034“當(dāng)前工件零點B”#1035“當(dāng)前工件零點C” #1036“當(dāng)前工件零點U”#1037“當(dāng)前工件零點V”#1038“當(dāng)前工件零點W”
《數(shù)控銑加工技術(shù)》教案
#1039保留#1040“G54零點X”#1041“G54零點Y”
#1042“G54零點Z”#1043“G54零點A”#1044“G54零點B” #1045“G54零點C”#1046“G54零點U”#1047“G54零點V” #1048“G54零點W”#1049保留#1050“G55零點X”
#1051“G55零點Y”#1052“G55零點Z”#1053“G55零點A” #1054“G55零點B”#1055“G55零點C”#1056“G55零點U” #1057“G55零點V”#1058“G55零點W”#1059保留
#1060“G56零點X”#1061“G56零點Y”#1062“G56零點Z” #1063“G56零點A”#1064“G56零點B”#1065“G56零點C” #1066“G56零點U”#1067“G56零點V”#1068“G56零點W” #1069保留#1070“G57零點X”#1071“G57零點Y”
#1072“G57零點Z”#1073“G57零點A”#1074“G57零點B” #1075“G57零點C”#1076“G57零點U”#1077“G57零點V” #1078“G57零點W”#1079保留#1080“G58零點X”
#1081“G58零點Y”#1082“G58零點Z”#1083“G58零點A” #1084“G58零點B”#1085“G58零點C”#1086“G58零點U” #1087“G58零點V”#1088“G58零點W”#1089保留
#1090“G59零點X”#1091“G59零點Y”#1092“G59零點Z” #1093“G59零點A”#1094“G59零點B”#1095“G59零點C” #1096“G59零點U”#1097“G59零點V”#1098“G59零點W” #1099保留#1100“中斷點位置X”#1101“中斷點位置Y”
#1102“中斷點位置Z”#1103“中斷點位置A”#1104“中斷點位置B” #1105“中斷點位置C”#1106“中斷點位置U”#1107“中斷點位置V”
#1108“中斷點位置W”#1109“坐標(biāo)系建立軸”#1110“G28中間點位置X”
#1111“G28中間點位置Y”#1112“G28中間點位置Z”#1113“G28中間點位置A” #1114“G28中間點位置B”#1115“G28中間點位置C”#1116“G28中間點位置U” #1117“G28中間點位置V”#111“8G28中間點位置W”#1119“G28屏蔽字” #1120“鏡像點位置X”#1121“鏡像點位置Y”#1122“鏡像點位置Z” #1123“鏡像點位置A”#1124“鏡像點位置B”#1125“鏡像點位置C” #1126“鏡像點位置U”#1127“鏡像點位置V”#1128“鏡像點位置W” #1129“鏡像屏蔽字”#1130“旋轉(zhuǎn)中心(軸1)”#1131“旋轉(zhuǎn)中心(軸2)” #1132“旋轉(zhuǎn)角度”#1133“旋轉(zhuǎn)軸屏蔽字”#1134保留
#1135“縮放中心(軸1)”#1136“縮放中心(軸2)”#1137“縮放中心(軸3)” #1138“縮放比例”#1139“縮放軸屏蔽字”#1140“坐標(biāo)變換代碼1” #1141“坐標(biāo)變換代碼2”#1142“坐標(biāo)變換代碼3”#1143保留
#1144“刀具長度補償號”#1145“刀具半徑補償號”#1146“當(dāng)前平面軸1” #1147“當(dāng)前平面軸2”#1148“虛擬軸屏蔽字”#1149“進(jìn)給速度指定”
《數(shù)控銑加工技術(shù)》教案
#1150“G代碼模態(tài)值0”#1151“G代碼模態(tài)值1”#1152“G代碼模態(tài)值2” #1153“G代碼模態(tài)值3”#1154“G代碼模態(tài)值4”#1155“G代碼模態(tài)值5 #1156“G代碼模態(tài)值6”#1157“G代碼模態(tài)值7”#1158“G代碼模態(tài)值8”世紀(jì)星銑床數(shù)控系統(tǒng)(HNC-21/22M)編程說明書 54 #1159“G代碼模態(tài)值9”#1160“G代碼模態(tài)值10”#1161“G代碼模態(tài)值11” #1162“G代碼模態(tài)值12”#1163“G代碼模態(tài)值13”#1164“G代碼模態(tài)值14” #1165“G代碼模態(tài)值15”#1166“G代碼模態(tài)值16”#1167“G代碼模態(tài)值17” #1168“G代碼模態(tài)值18”#1169“G代碼模態(tài)值19”#1170“剩余CACHE” #1171“備用CACHE”#1172“剩余緩沖區(qū)”#1173“備用緩沖區(qū)” #1174保留#1175保留#1176保留 #1177保留#1178保留#1179保留 #1180保留#1181保留#1182保留 #1183保留#1184保留#1185保留 #1186保留#1187保留#1188保留
#1189保留#1190“用戶自定義輸入”#1191“用戶自定義輸出” #1192“自定義輸出屏蔽”#1193保留#1194保留(2)常量
PI:圓周率π
TRUE:條件成立(真)FALSE:條件不成立(假)2運算符與表達(dá)式
(1)算術(shù)運算符:+,-,*,/(2)條件運算符 EQ(=),NE(≠),GT(>),GE(≥),LT(<),LE(≤)(3)邏輯運算符 AND,OR,NOT(4)函數(shù)
SIN,COS,TAN,ATAN,ATAN2,ABS,INT,SIGN,SQRT,EXP(5)表達(dá)式
用運算符連接起來的常數(shù),宏變量構(gòu)成表達(dá)式。例如:175/SQRT[2]*COS[55*PI/180]; #3*6 GT 14; 3賦值語句
格式:宏變量=常數(shù)或表達(dá)式
《數(shù)控銑加工技術(shù)》教案
把常數(shù)或表達(dá)式的值送給一個宏變量稱為賦值。例如:#2=175/SQRT[2]*COS[55*PI/180];
#3=124.0;世紀(jì)星銑床數(shù)控系統(tǒng)(HNC-21/22M)編程說明書 4條件判別語句IF,ELSE,ENDIF 格式(i):IF條件表達(dá)式 ? ELSE ? ENDIF 格式(ii):IF條件表達(dá)式 ? ENDIF 5循環(huán)語句WHILE,ENDW 格式:WIIILE條件表達(dá)式 ? ENDW 條件判別語句的使用參見宏程序編程舉例。循環(huán)語句的使用參見宏程序編程舉例。
二、宏程序編制舉例 例1:G81宏程序 例2 橢圓編程程序:
a=50 b=30的一個橢圓;
弧度增量:0.1 宏程序:
%1 G54G90G17G21 M03S3000 G00X50Y0Z10 G01 Z-1 F300 #1=0 #2=50 #3=30 WHILE #1 LT 2*PI #4=#2*COS#1 #5=#3*SIN#1 G01 X[#4] Y[#5]
#1=#1+0.1 《數(shù)控銑加工技術(shù)》教案
ENDW G01 X__Y__Z100;
M30 % 例3拋物線編程: Y=0.1 *X*X %0206 G54M03S600T1D1 M03S6000 G41 X27.9 Y32 D1 #1=17.9 G01 X[#1+10] Y[0.1*#1*#1-8]
#1=#1-0.1 IF[#1GE-19.8] GOTO__ G40 G01 X__Y__ G00Z100 M30 % 例4切圓臺與斜方臺,各自加工3個循環(huán),要求傾斜10°的斜方臺與圓臺相 切,圓臺在方臺之上,頂視圖見圖3.50。
%8002 #10=10.0;圓臺階高度
《數(shù)控銑加工技術(shù)》教案
#11=10.0;方臺階高度
#12=124.0;圓外定點的X坐標(biāo)值 #13=124.0;圓外定點的Y坐標(biāo)值 #101=8.0刀具半徑偏置(粗加工)#102=6.5刀具半徑偏置(半精加工)#103=6.0刀具半徑偏置(精加工)N01 G92 X0.0 Y0.0 Z10.0 #0=0 N06 G00 X[?#12]Y[?#13];→A N07 G01 Z[?#10]M03 S600 F200;Z軸進(jìn)刀,準(zhǔn)備加工圓臺 WHILE#0 LT 3;加工圓臺
N[08+#0*6]G01 G42 X[?#12/2]Y[?90/2]F280.0 D[#0+101];→B N[09+#0*6]X[0]Y[?90/2];→C N[10+#0*6]G03 J[90/2];整圓加工
N[11+#0*6]G01 X[#12/2]Y[?90/2];→B’ N[12+#0*6]G40 X[#12]Y[?#13];→A’ N[13+#0*6]G00 X[-#12]Y[?#13];→A #0=#0+1;#0中數(shù)值加1 ENDW N100 Z[-#10-#11];Z軸進(jìn)刀,準(zhǔn)備加工斜方臺
#2=90/SQRT[2]*COS[55*PI/180];P1點坐標(biāo)(X=-#12,Y=-#13)#3=90/SQRT[2]*SIN[55*PI/180] #4=90*COS[10*PI/180];P1 P2間X增量為#4,Y增量為#5 #5=90*SIN[10*PI/180] #0=0 WHILE#0 LT 3;加工斜方臺
N[101+#0*8]G01 G42 X[?#12/2]Y[?90/2]F280.0 D[#0+101];→B N[102+#0*8]X[?#2]Y[?#3];→P1 N[103+#0*8]G91 X[+#4]Y[+#5];→P2 N[104+#0*8]X[?#5]Y[+#4];→P3 N[105+#0*8]X[?#4]Y[?#5];→P4 N[106+#0*8]X[+#5]Y[?#4];→P1 N[107+#0*8]G90 X[#12/2]Y[?90/2];→B’ N[108+#0*8]G00 G40 X[?#12]Y[?#13];→A #0=#0+1 ENDW G00 X0 Y0 M05 M30 《數(shù)控銑加工技術(shù)》教案
例5要求沿直線方向鉆一系列孔,直線的傾角由C65指令中的x,Y變量來決定,如圖所示。
%100G54G21 M03 S1000 G90G00X1Y1Z20 G65P10 M05 M30 %10 #10=10 孔數(shù)10 #11=100 進(jìn)給速度100 #12=50 長軸50 #13=25 短軸25 #14=-10 孔深10 G98G81X1Y1Z[#14]F[#11]R2 G91 WHILE[#10GT0] #10=#10-1 G81 X[#12]Y[#13]R0 ENDW M99 例6加工一橢圓,橢圓長軸為100 mm,短軸為50 mm。
《數(shù)控銑加工技術(shù)》教案
第二篇:宏程序教案
數(shù)控宏程序的概念
用變量的方式進(jìn)行數(shù)控編程的方法就叫做數(shù)控宏程序編程。
一、控宏程序的分類
數(shù)控宏程序分為A類和B類宏程序,其中A類宏程序比較老,編寫起來也比較費時費力,B類宏程序類似于C語言的編程,編寫起來也很方便。不論是A類還B類宏程序,它們運行的效果都是一樣的。
一般說來,華中的數(shù)控機床用的是B類宏程序,廣州數(shù)控機床用的是A類宏程序。
二、數(shù)控宏程序的優(yōu)點
1.可以編寫一些非圓曲線,如宏程序編寫橢圓,雙曲線,拋物線等。
2.編寫一些大批相似零件的時候,可以用宏程序編寫,這樣只需要改動幾個數(shù)據(jù)就可以了,沒有必要進(jìn)行大量重復(fù)編程。
數(shù)控宏程序的使用方法
三、A類宏程序
1)變量的定義和替換 #i=#j
編程格式 G65 H01 P#i Q#j
例 G65 H01 P#101 Q1005;(#101=1005)
G65 H01 P#101 Q-#112;(#101=-#112)
2)加法 #i=#j+#k
編程格式 G65 H02 P#i Q#j R#k
例 G65 H02 P#101 Q#102 R#103;(#101=#102+#103)
3)減法 #i=#j-#k
編程格式 G65 H03 P#i Q#j R#k
例 G65 H03 P#101 Q#102 R#103;(#101=#102-#103)
4)乘法 #i=#j×#k
編程格式 G65 H04 P#i Q#j R#k
例 G65 H04 P#101 Q#102 R#103;(#101=#102×#103)
5)除法 #i=#j / #k
編程格式 G65 H05 P#i Q#j R#k
例 G65 H05 P#101 Q#102 R#103;(#101=#102/#103)
6)平方根 #i=
編程格式 G65 H21 P#i Q#j
例 G65 H21 P#101 Q#102;(#101=)
7)絕對值 #i=│#j│
編程格式 G65 H22 P#i Q#j
例 G65 H22 P#101 Q#102;(#101=│#102│)
8)復(fù)合平方根1 #i=
編程格式 G65 H27 P#i Q#j R#k
例 G65 H27 P#101 Q#102 R#103;(#101=
9)復(fù)合平方根2 #i=
編程格式 G65 H28 P#i Q#j R#k
例 G65 H28 P#101 Q#102 R#103
1)邏輯或 #i=#j OR #k
編程格式 G65 H11 P#i Q#j R#k
例 G65 H11 P#101 Q#102 R#103;(#101=#102 OR #103)
2)邏輯與 #i=#j AND #k
編程格式 G65 H12 P#i Q#j R#k
例 G65 H12 P#101 Q#102 R#103;#101=#102 AND #103
(3)三角函數(shù)指令
1)正弦函數(shù) #i=#j×SIN(#k)
編程格式 G65 H31 P#i Q#j R#k(單位:度).例 G65
H31 P#101 Q#102
R#10
3;(#101=#102×SIN(#103))
2)余弦函數(shù) #i=#j×COS(#k)
編程格式 G65 H32 P#i Q#j R#k(單位:度)例 G65
H32 P#101 Q#102
R#103
;(#101=#102×COS(#103))
3)正切函數(shù) #i=#j×TAN#k
編程格式 G65 H33 P#i Q#j R#k(單位:度)例 G65
H33 P#101 Q#102
R#103
;(#101=#102×TAN(#103))
4)反正切 #i=ATAN(#j/#k)
編程格式 G65 H34 P#i Q#j R#k(單位:度,0o≤ #j ≤360o)例 G65
H34 P#101 Q#102
R#103
;(#101=ATAN(#102/#103)
(4)控制類指令
編程格式 G65 H80 Pn(n為程序段號)
例 G65 H80 P120;(轉(zhuǎn)移到N120)
2)條件轉(zhuǎn)移1 #j EQ #k(=)
編程格式 G65 H81 Pn Q#j R#k(n為程序段號)
例 G65 H81 P1000 Q#101 R#102
當(dāng)#101=#102,轉(zhuǎn)移到N1000程序段;若#101≠ #102,執(zhí)行下一程序段。
3)條件轉(zhuǎn)移2 #j NE #k(≠)
編程格式 G65 H82 Pn Q#j R#k(n為程序段號)
例 G65 H82 P1000 Q#101 R#102
當(dāng)#101≠ #102,轉(zhuǎn)移到N1000程序段;若#101=#102,執(zhí)行下一程序段。
4)條件轉(zhuǎn)移3 #j GT #k(>)
編程格式 G65 H83 Pn Q#j R#k(n為程序段號)
例 G65 H83 P1000 Q#101 R#102
當(dāng)#101 > #102,轉(zhuǎn)移到N1000程序段;若#101 ≤#102,執(zhí)行下一程序段。
5)條件轉(zhuǎn)移4 #j LT #k(<)
編程格式 G65 H84 Pn Q#j R#k(n為程序段號)
例 G65 H84 P1000 Q#101 R#102
當(dāng)#101 < #102,轉(zhuǎn)移到N1000;若#101 ≥ #102,執(zhí)行下一程序段。
6)條件轉(zhuǎn)移5 #j GE #k(≥)
編程格式 G65 H85 Pn Q#j R#k(n為程序段號)
例 G65 H85 P1000 Q#101 R#102
當(dāng)#101≥ #102,轉(zhuǎn)移到N1000;若#101<#102,執(zhí)行下一程序段。
7)條件轉(zhuǎn)移6 #j LE #k(≤)
編程格式 G65 H86 Pn Q#j Q#k(n為程序段號)
例 G65 H86 P1000 Q#101 R#102
當(dāng)#101≤#102,轉(zhuǎn)移到N1000;若#101>#102,執(zhí)行下一程序段。
四、B類宏程序
1. 定義
#I=#j
2. 算術(shù)運算
#I=#j+#k(加)
#I=#j-#k(減)
#I=#j×#k(乘)
#I=#j/#k(除)
3.1 邏輯函數(shù)之布爾函數(shù)
= EQ 等于
≠ NE 不等于
> GT 大于
< LT 小于
≥ GE 大于或等于
≤ LE 小于或等于
例:#I = #j 即#I EQ #J
3.2 邏輯函數(shù)之二進(jìn)制函數(shù)
#I=#J AND #k(與,邏輯乘)
#I=#J OR #k(或,邏輯加)
#I=#J XOR #k(非,邏輯減)
4.三角函數(shù)
#I=SIN[#j] 正弦
#I=COS[#j] 余弦
#I=TAN[#j] 正切
#I=ASIN[#j]反 正弦
#I=ACOS[#j]反 余弦 #I=ATAN[#j]
5.四舍五入函數(shù)
#I=ROUND[#j] 四舍五入化整
#I=FIX[#j] 上取整
反正切
#I=FUP[#j] 下取整
6.輔助函數(shù)
#I=SQRT[#j]平方根
#I=ABS[#j] 絕對值
#I= LN [#j] 自然對數(shù)
#I= EXP [#j] 指數(shù)函數(shù)
7.變換函數(shù) #I=BIN[#j] BCD→BIN(十進(jìn)制轉(zhuǎn)二進(jìn)制)
#I=BCD[#j] BIN→BCD(二進(jìn)制轉(zhuǎn)十進(jìn)制)
8.轉(zhuǎn)移和循環(huán)
1〉.無條件的轉(zhuǎn)移 格式: GOTO 1; GOTO #10;
2〉.條件轉(zhuǎn)移1 格式: IF[<條件式>] GOTO n
條件式:例:#j=#k用 #j EQ #k 表示,即 IF[#j EQ #k] GOTO n
3〉.條件轉(zhuǎn)移2 格式: IF[<條件式>] THEN #I
例:IF[#j EQ #k] THEN #a=#b
4〉.循環(huán) 格式:WHILE [<條件式>] DOm,(m=1、2、3)
N10~~~~~~~~~
N20~~~~~~~~~~~~
ENDm(上下兩個m只能為1、2、3且必須相
同,這樣才能夠成一段程序的循環(huán))
1. 說明 1)角度單位為度 例:90度30分為90.5度
2)ATAN函數(shù)后的兩個邊長要用“1”隔開 例:#1=ATAN[1]/[-1]時,#1為了35.0
3)ROUND用于語句中的地址,按各地址的最小設(shè)定單位進(jìn)行四舍五入
例:設(shè)#1=1.2345,#2=2.3456,設(shè)定單位1μm
G91 X-#1;X-1.235 X-#2 F300;X-2.346 X[#1+#2];X3.580 未返回原處,應(yīng)改為 X[ROUND[#1]+ROUND[#2]];
4)取整后的絕對值比原值大為上取整,反之為下取整 例:設(shè)#1=1.2,#2=-1.2時 若#3=FUP[#1]時,則#3=2.0 若#3=FIX[#1]時,則#3=1.0 若#3=FUP[#2]時,則#3=-2.0 若#3=FIX[#2]時,則#3=-1.0
5)簡寫函數(shù)時,可只寫開頭2個字母 例:ROUND→RO FIX→FI GOTO→GO
6)優(yōu)先級 函數(shù)→乘除(*,1,AND)→加減(+,-,OR,XOR)例:#1=#2+#3*SIN[#4];
7)括號為中括號,最多5重,園括號用于注釋語句 例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重)
轉(zhuǎn)移與循環(huán)指令
第三篇:加工中心銑螺紋宏程序精華[最終版]
加工中心通用銑螺紋宏程序編程教程
使用G03/G02三軸聯(lián)動走螺旋線,刀具沿工件表面(孔壁或圓柱外表)切削。螺旋插補一周,刀具Z向負(fù)方向走一個螺距量。工作原理 使用G03/G02三軸聯(lián)動走螺旋線,刀具沿工件表面(孔壁或圓柱外表)切削。螺旋插補一周,刀具Z向負(fù)方向走一個螺距量。編程原理:G02 Z-2.5 I3.Z-2.5等于螺距為2.5mm 假設(shè)刀具半徑為5mm則加工M16的右旋螺紋 優(yōu)勢 使用了三軸聯(lián)動數(shù)控銑床或加工中心進(jìn)行加工螺紋,相對于傳統(tǒng)螺紋加工 1、如螺距為2的螺紋銑刀可以加工各種公稱直徑,螺距為2mm的內(nèi)外螺紋 2、采用銑削方式加工螺紋,螺紋的質(zhì)量比傳統(tǒng)方式加工質(zhì)量高 3、采用機夾式刀片刀具,壽命長 4、多齒螺紋銑刀加工時,加工速度遠(yuǎn)超攻絲 5、首件通止規(guī)檢測后,后面的零件加工質(zhì)量穩(wěn)定 使用方法 G65 P1999 X_ Y_ Z_ R_ A_ B_ C_ S_ F_ XY 螺紋孔或外螺紋的中心位置 X=#24Y=#25 Z螺紋加工到底部,Z軸的位置(絕對坐標(biāo))Z=#26 R 快速定位(安全高度)開始切削螺紋的位置 R=#18 A 螺紋螺距 A=#1 B 螺紋公稱直徑 B=#2 C 螺紋銑刀的刀具半徑 C=#3內(nèi)螺紋為負(fù)數(shù) 外螺紋加工為正數(shù) S 主軸轉(zhuǎn)速 F 進(jìn)給速度,主要用于控制刀具的每齒吃刀量 如: G65 p1999 X30 Y30 Z-10 R2 A2 B16 C-5 S2000 F150;在X30y30的位置加工 M16 螺距2 深10的右旋螺紋 加工時主軸轉(zhuǎn)速為2000轉(zhuǎn) 進(jìn)給進(jìn)度為150mm/min 宏程序代碼 O1999;G90G94G17G40;G0X#24Y#25;快速定位至螺紋中心的X、Y坐標(biāo) M3S#19;主軸以設(shè)定的速度正轉(zhuǎn) #31=#2*0.5+#3;計算出刀具偏移量 #32=#18-#1;刀具走螺旋線時,第一次下刀的位置 #33=#24-#31;計算出刀具移動到螺紋起點的位置 G0Z#18;刀具快速定位至R點 G1X#33F#9;刀具直線插補至螺旋線的起點,起點位于X的負(fù)方向 N20 G02Z-#32I#31;以偏移量作為半徑,以螺距作為螺旋線Z向下刀量(絕對坐標(biāo))
內(nèi)梯形螺紋(Tr40x7)的宏程序
系統(tǒng):FANUC-oimait 編程思想:每一層分中、右、左三分,每一刀的Z軸方向的起刀點都不同
1、內(nèi)梯形螺紋加工程序: G54G99 M3S100 T0101 G0Z3 X33 #101=0.2;每一刀的的深度(半徑)#102=4梯形螺紋的深度(半徑)#103=1分層切削的次數(shù) N90 G0U[2*#101*#103] G32Z-32F7 G0X32 Z[3+[#102-#101]*0.268+A]; A是槽底寬-刀尖寬的一半
螺紋銑削編程 X33 U[2*#101*#103] G32Z-32F7 G0X32 Z[3-[#102-#101]*0.268-A]梯形螺紋的牙頂寬:0.366x螺距梯形螺紋的牙底寬:螺距-牙頂寬-2倍的(螺紋深度Xtg15°)X33 U[2*#101*#103] G32Z-32F7 G0X32 G0Z3 X33 #102=#102-0.2 #103=#103+1 IF[#103LE20]GOTO90; G0Z100 M5 M30
現(xiàn)以M20×1.5右旋內(nèi)螺紋銑削
加工實例說明螺紋加工的編程方
法。
工件材料:鑄鐵;螺紋底孔直徑:
Di18.38mm;螺紋直徑:Do=20mm;
螺紋長度:L=25mm;螺距:
P=1.5mm;刀具:硬質(zhì)合金螺紋鉆銑刀;銑刀直徑D2=10mm;
銑削方式:順銑;切削速度50m/min;銑削進(jìn)給量:0.1mm/齒。
主軸轉(zhuǎn)速為:n=(1000v)/(D2p)=(1000×50)/(10x3.14)=1592(r/min)銑刀齒數(shù)z=1,每齒進(jìn)給量f=0.1mm,銑刀切削刃處進(jìn)給速度為: v1=fzn=0.1×1×1592=159.2(mm/min)銑刀中心進(jìn)給速度為:v2=v1(D0-D2)/D0=159.2×(20-10)/20=79.6(mm/min)
設(shè)安全距離CL=0.5mm,切入圓弧半徑為: 切入圓弧角度為: b=180°-arcsin[(Ri-CL)/Re)=180°-arcsin[(9.19-0.5)/8.78]=180°-84.12°=95.88° 切入圓弧時的Z軸位移為:Za=Pa/360°=1.5×90°/360°=0.375(mm)
切入圓弧起點坐標(biāo)為:螺紋銑削程序(FUNUC系統(tǒng))% G90 G00 G57 X0.Y0.G43 H10 Z0.M3 S1592 G91 G00 X0.Y0.Z-25.375 G41 D60 X0.Y-8.68 Z0.G03 X10.Y8.68 Z0.375 R8.78 F79.6 G03 X0.Y0.Z1.5 I-10.J0.G03 X-10.Y8.68 Z0.375 R8.78 G00 G40 X0.Y-8.68 Z0.G49 G57 G00 Z200.M5 M30
第四篇:華中數(shù)控宏程序教案
華中數(shù)控宏程序教案.txt人生在世,難敵宿命,沉淪其中。我不愛風(fēng)塵,似被前緣誤!我只為我最愛的人流淚“我會學(xué)著放棄你,是因為我太愛你”贏了你,我可以放棄整個世界華中數(shù)控宏程序教案 一.什么是宏程序?
什么是數(shù)控加工宏程序?簡單地說,宏程序是一種具有計算能力和決策能力的數(shù)控程序。宏程序具有如下些特點:
1.使用了變量或表達(dá)式(計算能力),例如:(1)G01X[3+5];有表達(dá)式3+5(2)G00X4F[#1];有變量#1(3)G01Y[50*SIN[3]];有函數(shù)運算 2.使用了程序流程控制(決策能力),例如:(1)IF#3GE9;有選擇執(zhí)行命令 ?? ENDIF(2)WHILE#1LT#4*5;有條件循環(huán)命令 ?? ENDW 二.用宏程編程有什么好處? 1.宏程序引入了變量和表達(dá)式,還有函數(shù)功能,具有實時動態(tài)計算能力,可以加工非圓曲線,如拋物線、橢圓、雙曲線、三角函數(shù)曲線等;
2.宏程序可以完成圖形一樣,尺寸不同的系列零件加工; 3.宏程序可以完成工藝路徑一樣,位置不同的系列零件加工; 4.宏程序具有一定決策能力,能根據(jù)條件選擇性地執(zhí)行某些部分;
5.使用宏程序能極大地簡化編程,精簡程序。適合于復(fù)雜零件加工的編程。一.宏變量及宏常量 1.宏變量
先看一段簡單的程序: G00X25.0 上面的程序在X軸作一個快速定位。其中數(shù)據(jù)25.0是固定的,引入變量后可以寫成: #1=25.0;#1是一個變量 G00X[#1];#1就是一個變量
宏程序中,用“#”號后面緊跟1~4位數(shù)字表示一個變量,如#1,#50,#101,??。變量有什么用呢?變量可以用來代替程序中的數(shù)據(jù),如尺寸、刀補號、G指令編號??,變量的使用,給程序的設(shè)計帶來了極大的靈活性。使用變量前,變量必需帶有正確的值。如 #1=25 G01X[#1];表示G01X25 #1=-10;運行過程中可以隨時改變#1的值 G01X[#1];表示G01X-10 用變量不僅可以表示坐標(biāo),還可以表示G、M、F、D、H、M、X、Y、??等各種代碼后的數(shù)字。如: #2=3 G[#2]X30;表示G03X30 例1使用了變量的宏子程序。%1000 #50=20;先給變量賦值 M98P1001;然后調(diào)用子程序 #50=350;重新賦值
M98P1001;再調(diào)用子程序 M30 %1001 G91G01X[#50];同樣一段程序,#50的值不同,X移動的距離就不同 M99 2.局部變量
編號#0~#49的變量是局部變量。局部變量的作用范圍是當(dāng)前程序(在同一個程序號內(nèi))。如果在主程序或不同子程序里,出現(xiàn)了相同名稱(編號)的變量,它們不會相互干擾,值也可以不同。例 %100 N10#3=30;主程序中#3為30 M98P101;進(jìn)入子程序后#3不受影響 #4=#3;#3仍為30,所以#4=30 M30 %101 #4=#3;這里的#3不是主程序中的#3,所以#3=0(沒定義),則:#4=0 #3=18;這里使#3的值為18,不會影響主程序中的#3 M99 3.全局變量
編號#50~#199的變量是全局變量(注:其中#100~#199也是刀補變量)。全局變量的作用范圍是整個零件程序。不管是主程序還是子程序,只要名稱(編號)相同就是同一個變量,帶有相同的值,在某個地方修改它的值,所有其它地方都受影響。例 %100 N10#50=30;先使#50為30 M98P101;進(jìn)入子程序
#4=#50;#50變?yōu)?8,所以#4=18 M30 %101 #4=#50;#50的值在子程序里也有效,所以#4=30 #50=18;這里使#50=18,然后返回 M99 為什么要把變量分為局部變量和全局變量?如果只有全局變量,由變量名不能重復(fù),就可能造成變量名不夠用;全局變量在任何地方都可以改變它的值,這是它的優(yōu)點,也是它的缺點。說是優(yōu)點,是因為參數(shù)傳遞很方便;說是缺點,是因為當(dāng)一個程序較復(fù)雜的時候,一不小心就可能在某個地用了相同的變量名或者改變了它的值,造成程序混亂。局部變量的使用,解決了同名變量沖突的問題,編寫子程序時,不需要考慮其它地方是否用過某個變量名。什么時候用全局變量?什么時候用局部變量?在一般情況下,你應(yīng)優(yōu)先考慮選用局部變量。局部變量在不同的子程序里,可以重復(fù)使用,不會互相干擾。如果一個數(shù)據(jù)在主程序和子程序里都要用到,就要考慮用全局變量。用全局變量來保存數(shù)據(jù),可以在不同子程序間傳遞、共享、以及反復(fù)利用。
華中數(shù)控宏程序編程實例(1)宏程序編拋物線車削 %0342 T0101M03S600 G00X20.5Z2 #11=12;B初值
#10=SQRT[2*#11];A初值 WHILE#10LE8 G90G01X[2*#10]Z[12-#11]F200 #10=#10+0.1 #11=#10*#10/2 ENDW G01X16Z[-32+12] Z-28 U4 G00X20.5Z2M05 M30(2)宏程序編正弦線 %3404 M03S600T0101 G92X80Z30 G00X25Z3 G71U0.6R0.6P6Q13X0.8F100 N6G0X17 #11=0 WHILE#11GE-25 #9=#11*PI/10;#10=3.5*SIN[#9] G01X[17-2*#10]Z[#11]F100 #11=#11-0.5 N13ENDW G01X24Z-25 Z-30 X30 G00X80Z30 M30(3)宏程序編拋物線與橢圓 %8002 G92X50Z100 M98P8001A8B5C4U32V40W55 G36G90X50Z0 M30 %8001 G64G37(連續(xù)切削,半徑編程)#10=0#11=0(拋物線起點)WHILE#11LE#20 G01X[#10]Z[-#11]F150 #10=#10+0.08(拋物線X增量)#11=#10*#10/#2(計算拋物線z)ENDW #50=SQRT[#20*#2](拋物線與橢圓交接處半徑)G01X[#50]Z[-#20](拋物線終點)G01Z[-#21](直線終點)#12=0#13=0(橢圓起點)WHILE#13LE#1 #12=#0/#1*SQRT[#1*#1-#13*#13](橢圓X增量)G01X[#50+#0-#12]Z[-#21-#13] #13=#13+0.08(橢圓z增量)ENDW G01X[#50+#0]Z[-#21-#1](橢圓終點)Z[-#22] U2 G0X50Z100 M99
第五篇:數(shù)控銑床橢圓形加工宏程序的編程實例
數(shù)控銑床橢圓形加工宏程序的編程實例
實際應(yīng)用中經(jīng)常會遇到各種各樣的橢圓形加工特征。在現(xiàn)今的數(shù)控系統(tǒng)中,無論硬件數(shù)控系統(tǒng),還是軟件數(shù)控系統(tǒng),其插補的基本原理是相同的,只是實現(xiàn)插補運算的方法有所區(qū)別。常見的是直線插補和圓弧插補,沒有橢圓插補,手工常規(guī)編程無法編制出橢圓加工程序,常需要用電腦逐一編程,但這有時受設(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&;