文档库 最新最全的文档下载
当前位置:文档库 › 数控铣床编程实例.

数控铣床编程实例.

数控铣床编程实例.
数控铣床编程实例.

数控铣床编程实例.

数控铣床编程实例(参考程序请看超级链接)

实例一毛坯为70㎜×70㎜×18㎜板材,六面已粗加工过,要求数控铣出如图3-23所示的槽,工件材料为45钢。

1.根据图样要求、毛坯及前道工序加工情况,确定工艺方案及加工路线

1)以已加工过的底面为定位基准,用通用台虎钳夹紧工件前后两侧面,台虎钳固定于铣床工作台上。

2)工步顺序

①铣刀先走两个圆轨迹,再用左刀具半径补偿加工50㎜×50㎜四角倒圆的正方形。

②每次切深为2㎜,分二次加工完。

2.选择机床设备

根据零件图样要求,选用经济型数控铣床即可达到要求。故选用XKN7125型数控立式铣床。3.选择刀具

现采用φ10㎜的平底立铣刀,定义为T01,并把该刀具的直径输入刀具参数表中。

4.确定切削用量

切削用量的具体数值应根据该机床性能、相关的手册并结合实际经验确定,详见加工程序。5.确定工件坐标系和对刀点

在XOY平面内确定以工件中心为工件原点,Z方向以工件表面为工件原点,建立工件坐标系,如图2-23所示。

采用手动对刀方法(操作与前面介绍的数控铣床对刀方法相同)把点O作为对刀点。

6.编写程序

按该机床规定的指令代码和程序段格式,把加工零件的全部工艺过程编写成程序清单。

考虑到加工图示的槽,深为4㎜,每次切深为2㎜,分二次加工完,则为编程方便,同时减少指令条数,可采用子程序。该工件的加工程序如下(该程序用于XKN7125铣床):

N0010 G00 Z2 S800 T1 M03

N0020 X15 Y0 M08

N0030 G20 N01 P1.-2 ;调一次子程序,槽深为2㎜

N0040 G20 N01 P1.-4 ;再调一次子程序,槽深为4㎜

N0050 G01 Z2 M09

N0060 G00 X0 Y0 Z150

N0070 M02 ;主程序结束

N0010 G22 N01 ;子程序开始

N0020 G01 ZP1 F80

N0030 G03 X15 Y0 I-15 J0

N0040 G01 X20

N0050 G03 X20 YO I-20 J0

N0060 G41 G01 X25 Y15 ;左刀补铣四角倒圆的正方形

N0070 G03 X15 Y25 I-10 J0

N0080 G01 X-15

N0090 G03 X-25 Y15 I0 J-10

N0100 G01 Y-15

N0110 G03 X-15 Y-25 I10 J0

N0120 G01 X15

N0130 G03 X25 Y-15 I0 J10

N0140 G01 Y0

N0150 G40 G01 X15 Y0 ;左刀补取消

N0160 G24 ;主程序结束

实例二毛坯为120㎜×60㎜×10㎜板材,5㎜深的外轮廓已粗加工过,周边留2㎜余量,要求加工出如图2-24所示的外轮廓及φ20㎜的孔。工件材料为铝。

1.根据图样要求、毛坯及前道工序加工情况,确定工艺方案及加工路线

1)以底面为定位基准,两侧用压板压紧,固定于铣床工作台上

2)工步顺序

①钻孔φ20㎜。

②按O’ABCDEFG线路铣削轮廓。

2.选择机床设备

根据零件图样要求,选用经济型数控铣床即可达到要求。故选用华中Ⅰ型(ZJK7532A型)数控钻铣床。

3.选择刀具

现采用φ20㎜的钻头,定义为T02,φ5㎜的平底立铣刀,定义为T01,并把该刀具的直径

输入刀具参数表中。

由于华中Ⅰ型数控钻铣床没有自动换刀功能,按照零件加工要求,只能手动换刀。

4.确定切削用量

切削用量的具体数值应根据该机床性能、相关的手册并结合实际经验确定,详见加工程序。5.确定工件坐标系和对刀点

在XOY平面内确定以0点为工件原点,Z方向以工件表面为工件原点,建立工件坐标系,如图3-24所示。

采用手动对刀方法把0点作为对刀点。

6.编写程序(用于华中I型铣床)

按该机床规定的指令代码和程序段格式,把加工零件的全部工艺过程编写成程序清单。该工件的加工程序如下:

1)加工φ20㎜孔程序(手工安装好φ20㎜钻头)

%1337

N0010 G92 X5 Y5 Z5 ;设置对刀点

N0020 G91 ;相对坐标编程

N0030 G17 G00 X40 Y30 ;在XOY平面内加工

N0040 G98 G81 X40 Y30 Z-5 R15 F150 ;钻孔循环

N0050 G00 X5 Y5 Z50

N0060 M05

N0070 M02

2)铣轮廓程序(手工安装好ф5㎜立铣刀,不考虑刀具长度补偿)

%1338

N0010 G92 X5 Y5 Z50

N0020 G90 G41 G00 X-20 Y-10 Z-5 D01

N0030 G01 X5 Y-10 F150

N0040 G01 Y35 F150

N0050 G91

N0060 G01 X10 Y10 F150

N0070 G01 X11.8 Y0

N0080 G02 X30.5 Y-5 R20

N0090 G03 X17.3 Y-10 R20

N0100 G01 X10.4 Y0

N0110 G03 X0 Y-25

N0120 G01 X-90 Y0

N0130 G90 G00 X5 Y5 Z10

N0140 G40

N0150 M05

N0160 M30

看了上面的例子,我们对普通的指令有了了解,但是跟高级语言比较,其功能显得薄弱,为了与高级语言相匹配,特地介绍宏指令。通过使用宏指令可以进行算术运算,逻辑运算和函数的混合运算,此外,宏、程序还提供了循环语句,分支语句和子程序调用语句。

在宏语句中:

变量:

#0--#49是当前局部变量

#50--#99是全局局部变量

常量:

PI,TRUE(真),FALSE(假)

算术运算符:

+,-, *,/

条件运算符:

EQ “=”,NE “!=”, GT “>”,GE “>=”,LT “<”,LE “<=”

逻辑运算符:

AND, OR, NOT

函数:

SIN[],COS[],TAN[],ATAN[],ATAN2[],ABS[],INT[],SIGN[],SQRT[], EXP[]

表达式:

用运算符连接起来的常量,宏变量构成表达式。例如:100/SQRT[2]*COS[55*PI/180]

赋值语句:宏变量=表达式。例如:#2=100/SQRT[2]*COS[55*PI/180]

条件判别语句:IF,ELSE,ENDIF

格式:

IF 条件表达式

|

ELSE

|

ENDIF

循环语句:WHILE,ENDW

格式:

WHILE 条件表达式

|

ENDW

下面就以宏指令编程为例,做两个练习。

实例三毛坯为150㎜×70㎜×20㎜块料,要求铣出如图2-25所示的椭球面,工件材料为蜡块。

1.根据图样要求、毛坯及前道工序加工情况,确定工艺方案及加工路线

1)以底面为主要定位基准,两侧用压板压紧,固定于铣床工作台上。

2)加工路线

Y方向以行距小于球头铣刀逐步行切形成椭球形成。

2.选择机床设备

根据零件图样要求,选用经济型数控铣床即可达到要求。故选用华中Ⅰ型(ZJK7532A型)数控钻铣床。

3.选择刀具

球头铣刀大小 6mm。

4.确定切削用量

切削用量的具体数值应根据该机床性能、相关的手册并结合实际经验确定,详见加工程序。5.确定工件坐标系和对刀点

在XOY平面内确定以工件中心为工件原点,Z方向以工件表面为工件原点,建立工件坐标系,如图2-25所示。

采用手动对刀方法把0点作为对刀点。

6.编写程序(用于华中I型铣床)

按该机床规定的指令代码和程序段格式,把加工零件的全部工艺过程编写成程序清单。该工件的加工程序如下:

%8005(用行切法加工椭园台块,X,Y按行距增量进给)

#10=100 ;毛坯X方向长度

#11=70 ;毛坯Y方向长度

#12=50 ;椭圆长轴

#13=20 ;椭圆短轴

#14=10 ;椭园台高度

#15=2 ;行距步长

G92 X0 Y0 Z[#13+20]

G90G00 X[#10/2] Y[#11/2] M03

G01 Z0

X[-#10/2] Y[#11/2]

G17G01 X[-#10/2] Y[-#11/2]

X[#10/2]

Y[#11/2]

#0=#10/2

#1=-#0

#2=#13-#14

#5=#12*SQRT[1-#2*#2/#13/#13]

G01 Z[#14]

WHILE #0 GE #1

IF ABS[#0] LT #5

#3=#13*SQRT[1-#0*#0/[#12*#12]]

IF #3 GT #2

#4=SQRT[#3*#3-#2*#2]

G01 Y[#4] F400

G19 G03 Y[-#4] J[-#4] K[-#2]

ENDIF

ENDIF

G01 Y[-#11/2] F400

#0=#0-#15

G01 X[#0]

IF ABS[#0] LT #5

#3=#13*SQRT[1-#0*#0/[#12*#12]]

IF #3 GT #2

#4=SQRT[#3*#3-#2*#2]

G01 Y[-#4] F400

G19 G02 Y[#4] J[#4] K[-#2]

ENDIF

ENDIF

G01 Y[#11/2] F1500

#0=#0-#15

G01 X[#0]

ENDW

G00 Z[#13+20] M05

G00 X0 Y0

M02

实例四毛坯200㎜×100㎜×30㎜块料,要求铣出如图2-26所示的四棱台,工件材料为蜡块。

掌握数控编程基本方法并在此基础上有更大的提高,必须进行大量的编程练习和实际操作,在实践中积累丰富的经验。编程前,要做大量的准备工作,如:

了解数控机床的性能和规格;

熟悉数控系统的功能及操作;

加强工艺、刀具和夹具知识的学习,掌握工艺编制技术,合理选择刀具、夹具及切削用量等,将工艺等知识融入程序,提高程序的质量;

养成良好的编程习惯和风格,如程序中要使用程序段号、字与字之间要有空格、多写注释语句等,使程序清晰,便于阅读和修改;

编程时尽量使用分支语句、主程序及宏功能指令,以减少主程序的长度。

具体加工工艺和装夹方法和其余各题一样,这里略。

程序如下:(用于华中I型铣床)

%1978

#10=100 ;底平面EF的长度,可根据加工要求任定

#0=#10/2 ;起刀点的横座标(动点)

#100=20 ;C点的横座标

#1=20 ;C点和G点的纵向距离

#11=70 ;FG的长度

#20=-#10/2 ;E点的横座标

#15=3 ;步长

#4=16 ;棱台高

#5=3 ;棱台底面相对于Z=0平面的高度

#6=20 ;C点的纵座标

G92 X0 Y0 Z[#4+#5+2] ;MDI对刀点Z向距毛坯上表面距离

G00 X0 Y0

G00 Z[#4+10] M03

G01 X[#0] Y[#11/2] Z[#5] ;到G点

WHILE #0 GE #20 ;铣棱台所在的凹槽

IF ABS[#0] LE #100

G01 Y[#1] F100

X0 Y0 Z[#4+#5]

X[#0] Y[-#1] Z[#5]

Y[-#11/2]

ENDIF

G01 Y[-#11/2] F100

#0=#0-#15

G01 X[#0]

IF ABS[#0] le #100

G01 Y[-#1]

X0 Y0 Z[#4+#5]

X[#0] Y[#1] Z[#5]

Y[#11/2]

ENDIF

G01 Y[#11/2]

#0=#0-#15

G01 X[#0]

ENDW

G01 Z[#4+20]

X0 Y0

X[#1] Y[#1] Z[#5]

WHILE ABS[#6] LE #1 ;铣棱台斜面

#6=#6-#15

G01 Y[#6]

X0 Y0 Z[#4+#5]

X[-#1] Y[-#6] Z[#5]

G01 Y[-#6+#15]

X0 Y0 Z[#4+#5]

X[#1] Y[#6] Z[#5]

ENDW

G00 Z[#4+20]

G00 X0 Y0

M05

M30

参数编程

四.参数编程与子程序

1.参数编程

(1)R参数

1)本系统内存提供从R0-R299共300个参数地址。

R0-R99----可以自由使用;

R100-R249----用于加工循环传递参数;

R250-R299----用于加工循环的内部计算参数。

2)参数地址中存储的内容,可以由编程员赋值,也可通过运算得出。通过用数值、算术表达式或参数,对已分配计算参数或参数表达式的NC地址赋值来增加NC程序通用性。

3)赋值时在地址符之后写入符号“=”。给坐标轴地址赋值时要求有一独立的程序段。

4)计算参数时,遵循通常的数学运算规则。

例:N10 R1=R1+1

N20 R1=R2+R3R4=R5-R6R7=R8*R9R10=R11/R12

N30 R13=SIN(25.3)

N40 R14=R3+R2*R1

N50 R15=SQRT(R1*R1+R2*R2)

(2)参数编程

例:N10 G1 G91 X=R1 Z=R2 F300

N20 Z=R3

N30 X=-R4

N40 Z=-R5

...

2.子程序

·一个零件中有几处加工轮廓相同,可以用子程序编程。

·子程序调用由程序调用字、子程序号和调用次数组成。

·子程序调用要求占一独立程序段。

例:N10 L785 P4;调用子程序L785,运行4次。

五、循环加工指令

加工循环是用于特定的加工过程的工艺子程序,通过给规定的计算参数赋值就可以实现各种具体的加工。

本系统中装有以下标准循环:

LCYC82钻削、沉孔加工

LCYC83深孔钻削

LCYC840带补偿夹具的螺纹切削

LCYC84不带补偿夹具的螺纹切削

LCYC85镗孔

LCYC60线性孔排列

LCYC61圆弧孔排列

LCYC75 矩形槽、键槽、圆形凹槽铣削

1.钻削、沉孔加工LCYC82

刀具以编程的主轴速度和进给速度钻

孔,直至到达给定的最终钻削深度。在到

达最终钻削深度时可以编程一个停留时间。

退刀时以快速移动速度进行。

参数含义、数值范围

R101退回平面(绝对平面)

R102安全距离

R103参考平面(绝对平面)

R104最后钻深(绝对平面)

R105在此钻削深度停留时间

图6-12

表6-3循环时序过程及参数例:使用LCYC82循环,程序在XY平面上

X24Y15位置加工深度为27毫米的孔,在孔

底停留时间 2秒,钻孔坐标轴方向安全距

离为4毫米,循环结束后刀具处于X24 Y15

Z110。

N10 G0 G17 G90 F500 T2 D1 S500 M4

N20 X24 Y15

N30 R101=110 R102=4 R103=102 R104=75

N40 R105=2

N50 LCYC82

N60 M2

图6-13

2.铣削循环LCYC75

参数含义、数值范围

R101退回平面(绝对平面)

R102安全距离

R103参考平面(绝对平面)

R104凹槽深度(绝对数值)

R116凹槽圆心横坐标

R117凹槽圆心纵坐标

R118凹槽长度

R119凹槽宽度

R120拐角半径

R121最大进刀深度

R122深度进刀进给率

R123表面加工的进给率

R124表面加工的精加工余量

R125深度加工的精加工余量

R126铣削方向:(G2或G3)

R127铣削类型:1--粗加工 2--精加工

表6-4

(1)方槽铣削

用下面的程序,可以加工一个长度为60毫米,宽度为40毫米,圆角半径8毫米,深度为17.5毫米的凹槽。使用的铣刀不能切削中心,因此要求预加工凹槽中心孔(LCYC82)。凹槽单边精加工余量为0.75毫米,深度为0.5毫

米,Z轴上到参考平面的安全距离为5毫米。凹槽的中心点坐标为X60 Y40,最大进刀深度为4毫米。加工分粗加工和精加工(图6-14)。

N10G0 G17 G90 F200 S300 M3 T4 D1

N20X60 Y40 Z5

N30R101=5 R102=2 R103=0 R104=-17.5 R105=2

N40LCYC82

N50…

N60R116=60 R117=40 R118=60 R119=40 R120=8

N70R121=4 R122=120 R123=300 R124=0.75 R125=0.5

N80R126=2 R127=1

N90LCYC75

N100 …

N110 R127=2

N120 LCYC75

N130 M2图6-14

(2)圆槽铣削

R118=R119=2*R120图6-15

(3)键槽铣削

R119=2*R120图6-16

第二节数控铣床编程举例

例6-1:加工图6-17中四个型腔,槽深2毫米,试编程。

解:1)图中共有四个凹槽,为了避免编程中的尺寸换算,可利用零点偏置功能,在编制四个局部图形程序时,分别将工件零点偏置到O1,O2,O3,O 4点。工件起始零点设在O点,建立工件坐标系如图。

2)T01为直径5毫米立铣刀,主轴转速800r/min,进给量为50mm/min。

3)编程如下:

P10

N10G17 G90 T01 M03 S800

N20G158 X10 Y5

N30G0 X0 Y0 Z2

N40G1 Z-2 F150

N50X15

N60G3 X15 Y40 I0 J20

N70G1 X0

N80Y0

N90G158 X80 Y25

N100 G0 X20 Y0 Z2

N110 G1 Z-2

N120 G2 X20 Y0 I-20 J0

N130 G158 X80 Y75

N140 G0 X11.547 Y20 Z2

N150 G1 Z-2

N160 X23.094 Y0

N170 X11.547 Y-20

N180 X-11.547

N190 X-23.094 Y0

N200 X-11.547 Y20

N210 X11.547

N220 G158 X10 Y55

N230 G0 X0 Y0 Z2

N240 G1 Z-2

N250 X40

N260 Y20

N270 X20

N280 Y40

N290 X0

N300 Y0

N310 G158

N320 G0 X0 Y0 Z100

N330 M02图6-17

例6-2:在图6-18所示块料上,用球头铣刀粗铣型腔,每次正向切深ap〈=5mm,工件材料为LH11。请编程。

解:1)确定工艺方案及路线:采用刀具半径补偿功能在XOZ平面内插补运动,用循环程序或子程序,在Z向深度逐层增加。每层次刀具起点为A1、A2、A3、A4、A5,刀心轨迹为“1-2-3-4-5-6-2…”,将“1-…2”作为一循环单元。图6-19为二维刀心轨迹。

2)刀具及切削用量选择:T01球头铣刀(直径16mm),主轴转速1500

r/min,进给量为100mm/min。

3)数值计算:轨迹点及圆心坐标A(-70,0) B(-26.25,16.54)

C(26.25,16.54) D(70,0) O1(-45,0) O2(0,39.69) O3(45,0)循环次数n及步距b(2n-1)b=80-d (d=16mm)取n=4 得b=9.14 4)编程:

p30

N10 G90 G00 X0 Y0 Z25

N20 S1500 M03 T01 D01

N30 G17 G42 X-70 Y40

N40 L6-3 P5

N50 G90 G18 G00 Z100

N60 G40 X0 Y0

N70 M02

L6-3

N10 G01 G18 G91 Z-5 F100

N20 L6-3-1 P4

N30 G01 G18 Z2

N40 G90 G00 X-70 Y40

N50 G01 G91 G18 Z-2

N60 M02

图6-18

L6-3-1

N10 G02 G18 X43.75 Z-16.54 I25 K0

N20 G03 X52.5 Z0 I26.25 K-23.15

N30 G02 X43.75 Z-16.54 I18.75 K16.54

N40 G01 G17 Y-9.14

N50 G03 G18 X-43.75 Z-16.54 I-25 K0

N60 G02 X-52.5 Z0 I-26.25 K-23.15

N70 G03 X-43.75 Z16.54 I-18.75 K16.54

N80 G01 G17 Y-9.14

N90 M02

用户宏在加工中心上的应用一例

无锡龙力机械有限公司曹焕华

用户宏功能是多数数控系统所具备的辅助功能,合理地使用好该功能可以使加工程序得到大大

简化。用户宏功能有A类和B类两种,用A类宏功能编译的加工程序,程序主体比较简单,但需记忆较多的宏指令,程序的可读性差,而用B 类宏功能编译的程序,则具有较好的可读性,且只需记忆较少的指令代码。本例就使用B类宏功能编程,并通过详细的数学分析来说明用宏指令编程如何建立合理的数学模型。

一、应用实例

如图1所示的零件为一盘片零件的铸造模具,现要求在加工中心上加工15条等分槽(图中仅标注编程所需尺寸)。

图1示例零件图

该零件决定在带有FANUC 15M数控系统的3000V上加工。该加工中心为3MX1.1M工作台的龙门加工中心。槽锥度14°及槽底圆弧由球头成形铣刀加工保证,不考虑刀具半径补偿(加工坐标如图中所示)。本例只编制最终精加工程序,

之前的粗加工则可以通过该程序在Z方向上的抬刀来实现。

经过对FANUC15M数控系统功能的分析发现,加工R380圆弧时,由于R380不在某一基准平面,即无法用G17、G18或G19指定加工平面,因此R380圆弧不能直接使用G02或G03指令加工,只能将该圆弧分解为若干段直线段分别计算各端点坐标,再指令刀具按X、Y、Z方向进行直线加工,用直线逼近圆弧的方法最终形成

R380圆弧。

首先计算出第一条槽各交点座标,并用极座标表示,圆周上各条槽对应点的极半径及Z深度均一致,仅角度有变化。图1中各点位置如下:

a点极半径105,Z坐标-50;b点极半径282.417,Z坐标-34.478;c点极半径382,Z坐标-12;R380圆弧的圆心角为15.44°。

在加工时需将极坐标转换为直角坐标,转换时只要将各点极半径分别按偏移角度(程序中参数#

2)投影至X、Y轴即可。

在加工R380时应将该圆弧分解成若干直线段,以G01方式来近似加工圆弧根据实际加工要求,圆弧每隔0.5°圆心角确定一点,计算出各点坐标然后以G01连接各点即可加工出R380圆弧(实际加工后圆弧符合图纸要求),如图2所示。

图2 实际加工尺寸

图2中,b点为R380与直线切点,其极半径已求出;#9为圆弧上待求点圆心角变量。由图可先求得:d点极半径=

282.417-380sin5°=249.298,高度Z=-34.478-

(380/cos5°-380cos5°)=-37.376,则e点极半径=249.298+380sin(5°+#9),高度

Z=-37.376+(380/cos5°-380cos(5°+#9))

同样求出的各点极坐标也需转换成直角坐标才

能加工。求出第一点位置后,再使圆心角#9增加0.5°计算下一点位置。R380圆弧加工结束后,再转入下一条槽的加工。本程序需使用二重循环,在每一条槽中先用循环计算并加出圆弧,然后跳出该循环继续加工下一条槽。

本例中循环采用

WHILE[<条件表达式>]DOm

.

.

ENDm

当条件被满足时,DOm至ENDm间的程序段被执行,当<条件>不被满足时,则执行ENDm之后的程序。

由以上分析,可画出该宏程序的结构流程图,如图3所示。

图3 程序的结构流程图

根据程序流程图可编写出零件的加工程序如下:T1 M06

相关文档