文档库 最新最全的文档下载
当前位置:文档库 › 宏程序 铣平面

宏程序 铣平面

宏程序 铣平面
宏程序 铣平面

G0 G90 G54 X0 Y0;

S1500 M3;

G43 H100 Z100;

#1=76;

N1 G0 X0 Y0;

#2=0;

N2 G1 X0 Y#2 F3000’Z#1;

X630 F3000;

Z100 F3000;

#2=#2+40

IF[ #2 LE 200 ] G0T02; G0 Z100;

#1=#1-0.5

IF [ #1 GE 72 ] GOTO 1; G0 Z150;

M5;

M9;

M0;

%

G0 G90 G54 X0 Y0;

S1500 M03;

G43 Z100 H01;

#2=0;

N1 G1 X0 Y#2 F3000; Z=72;

X630 F1000;

Z100 F3000;

#2=#2+40;

IF [ #2 LE 200 ] G0T0 1; G0 Z150;

M5;

M9;

M0;

%

新代数控车床宏程序说明

一.用户宏程序的基本概念 用一组指令构成某功能,并且象子程序一样存储在存储器中,再把这些存储的功能由一个指令来代表,执行时只需写出这个代表指令,就可以执行其相应的功能。 在这里,所存储的一组指令叫做宏程序体(或用户宏程序),简称为用户宏。其代表指令称为用户宏命令,也称作宏程序调用指令。 用户宏有以下四个主要特征: 1)在用户用户宏程序中可以使用变量,即宏程序体中能含有复杂的表达式; 2)能够进行变量之间的各种运算; 3)可以用用户宏指令对变量进行赋值,就象许多高级语言中的带参函数或过程,实参能赋值给形参; 4)容易实现程序流程的控制。 使用用户宏时的主要方便之处在于由于可以用变量代替具体数值,因而在加工同一类的工件时.只得将实际的值赋予变量既可,而不需要对每个不同的零件都编一个程序。 二.基本书写格式 数控程序文档中,一般以“%”字符作为第一行的起头,该行将被视为标题行。当标题行含有关键字“@MACRO”时整个文档就会以系统所定义的MACRO语法处理。如果该行无“@MACRO”关键词此档案就会被视为一般ISO程序文档格式处理,此时将不能编写用户宏和使用其MACRO语法。而当书写ISO程序文档时标题行一般可以省略,直接书写数控程序。“@MACRO”关键词必须是大写字母。 对于程序的注释可以采用“//……”的形式,这和高级语言C++一样。 例一:MACRO格式文档 % @MACRO //用户宏程序文档,必须包含“@MACRO”关键词 IF @1 = 1 THEN G00 X100.; ELSE G00 Z100.; END_IF; M99; 例二:ISO格式文档 % 这是标题行,可当作档案用途说明,此行可有可无 G00 X100.; G00 Z100.; G00 X0; G00 Z0; M99;

华中数控铣床宏程序实例

华中数控铣床宏程序实例 O0001(分开的太极) %0001 G54G00X-30Y30Z50 M03S1000 Z3 #0=4 #2=90 WHILE#2LT180 G01Z[#0*SIN[#2*PI/180]]F 200 #101=ABS[#0*COS[#2*PI/1 80]] G01G41Y9D101 X7 G02Y-9R9 G01X-7 G02Y9R9 G03X0Y20R20 G01G40X-30Y30 G41X-12Y13D101 G03X-7Y9R5 G02Y0R4.5 G03Y-9R4.5 G01G40X30Y-30 G41X12Y-3D101 G03X7Y-9R5 G02Y0R4.5 G03Y9R4.5 G01G40Y30X-30 #2=#2+1 ENDW G00Z50 M30 o0002(花) %0002 G54G00X0Y0Z50 M03S1500 Z5 G01Z0F250 #1=90 WHILE#1GE0 #2=10*COS[#1*PI/180] #3=10*SIN[#1*PI/180]-10 G18G01X[#2]Z[#3] G17G02I[-#2] #1=#1-1.5 ENDW G00Z5 X-10 #6=270 WHILE#6GE180 #7=14*COS[#6*PI/180] #8=10*SIN[#6*PI/180] #9=#7-10 #10=#7+28 #11=ABS[#9*COS[72*PI/18 0]] #12=ABS[#9*SIN[72*PI/18 0]] #13=ABS[#9*COS[144*PI/1 80]] #14=ABS[#9*SIN[144*PI/1 80]] G18G01X[#9]Z[#8] G17G03X[-#11]Y[#12]R[#1 0] X[-#13]Y[#14]R[#10] Y[-#14]R[#10] X[#11]Y[-#12]R[#10] Y0X[#9]R[#10] #6=#6-1.5 ENDW G00Z50 M30 O0003(太极倒角) %0003 G54G00x-20y60z50 M03S1500 Z5 #1=90 WHILE#1GE0 G01Z[5*SIN[#1*PI/180]-5]F 250 #101=ABS[5*COS[#1*PI/18 0]]-5 G01G41X0D101 Y42 G02Y0R21 G03Y-42R21 G01Y-60 Y-42 G02J42 Y0R21 G03Y42R21 G01Y60 G40X-20 #1=#1-1 ENDW G00Z50 M30 O0004(椭圆铣平面) %0004 G54G00X0Y0Z50 M03S1500 Z5 G01Z-3F250 #1=41 WHILE#1GE5 G01X[#1] #2=0 WHILE#2LT360 #3=#1*COS[#2*PI/180] #4=#1*4/5*SIN[#2*PI/180] G01X[#3]Y[#4] #2=#2+1 ENDW #1=#1-5 ENDW G00Z50 M30 其二 G54G00X43Y0Z50 M03S1500 Z5 G01Z-3F250 #1=43

Mastercam型腔铣削

Mastercam型腔铣削 刀具路径的相关性 Mastercam系统中,型腔铣削、轮廓铣削和点位加工的刀具路径与被加工零件的模型是相关一致的。当零件几何模型或加工参数修改后,Mastercam能迅速准确地自动更新相应的刀具路径,无需重新设计和计算刀具路径。利用上述功能,用户可把常用的加工方法及加工参数存储于数据库中。实际加工之前,从库中选取相似的加工方法,对其编辑修改,使其适合当前的任务。这样可以大大提高数控程序设计效率及计算的自动化程度。例如,数据库中已存储有一系列的点位加工方法(包括工序、刀具、加工参数等),若要钻、啄、攻丝一组孔,就可以从库中选取相似的加工方法,适当修改后,直接加工。 型腔铣、轮廓铣和点位加工 Mastercam能加工非常复杂的2D、2.5D零件,也能加工简单的2D、2.5D零件。它提供了数控加工所需的所有工具,可迅速编制出优质可靠的数控程序。极大地提高了编程者的工作效率和数控机床的利用率。 型腔铣削的走刀方式很丰富,包括:ZigZag、One Way、True Spiral、Constant Overlap和Morph Pocketing。 加工型腔时的入刀方法很多。除了常用的入刀方法外,还可以选择更为高级的入刀方法,如螺旋型或Z字型入刀。使刀具沿着螺旋型或Z字型路径渐进地切入型腔,避免刀具受损或在型腔腹部留下切削痕迹。 型腔铣削还具有清角(Clear Corner)和Constant Overlap等多种特性。利用它们,可以清除刀具在刀路转角处残留的余量 利用Mastercam的窗选或多边形窗选方法,可以一次选择所要加工的所有钻孔位置、轮廓和型腔(包括相互嵌套的型腔),十分方便。 对型腔的内壁或型腔内孤岛的侧壁,可以设置不同的拔模斜度,然后按设置要求计算刀具路径。 孤岛清面功能(Island Facing)可清除型腔内各孤岛顶部多余的材料。 在精铣型腔和轮廓时,入刀路径和退刀路径可分开设置。 铣削轮廓时,在加工参数列表中可以同时设置多次粗加工走刀,多次精加工走刀和多次Z向深度进给。 强劲的曲面粗加工功能 在数控加工中,提高粗加工的速度和效率很重要。Mastercam提供了多种先进的粗加工技术,以提高零件加工的效率和质量。例如,Mastercam有以下先进的粗加工走刀方法: Z向深度进给确定,刀具以轮廓或型腔铣削的走刀方式粗加工多曲面零件。 平行走刀或辐射走刀粗加工零件。在这种走刀方法中,通过控制刀具的Z向运动(+Z或-Z方向),可以控制刀具切入或退出曲面凹坑时的方式。即控制刀具沿着曲面陡壁切入\退出,或直接切入\退出。 对于某些特别的粗加工,可把2D刀具路径投影在多曲面的零件模型上,产生粗加工零件的3D刀具路径。

数控铣宏程序实例

第四章数控铣宏程序实例 §4、1 椭圆加工(编程思路:以一小段直线代替曲线) 例1 整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ 变量数学表达式 设定θ= #1(0°~ 360° ) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N99 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOTO99; GOO Z50; M30;

例2 斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm) 椭圆心不在原点的参数方程 X=a*COS[#1]+ M Y=b*SIN[#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*COS[#1]+ M Y=#3=b*SIN[#1]+ N 因为此椭圆绕(M ,N)旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y:旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO X0 Y0; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS[#1]+M; #3=b*SIN[#1]+N;

GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 GOO Z100; M30; 例3:椭圆轮廓加工(深度2mm) 采用椭圆的等距加工方法使椭圆的长半轴与短半轴同时减少一个行距的方法直到短半轴小于刀具的半径R 根据椭圆的参数方程可设 变量表达式θ=#1(0°~360°) a=#2 b=#3(b-R~R) X=#2*COS[#1]=#4 Y=#3*SIN[#1]=#5 程序 O0003; S1000 M03; G90 G54 G00 Z100;

数控铣床编程实例[1]1[1]

第五节数控铣床编程实例(参考程序请看超级链接) 实例一毛坯为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

数控铣床宏程序

数控铣教程 专题一行切和环切 在数控加工中,行切和环切是典型的两种走刀路线。 行切在手工编程时多用于规则矩形平面、台阶面和矩形下陷加工,对非矩形区域的行切一般用自动编程实现。 环切主要用于轮廓的半精、精加工及粗加工,用于粗加工时,其效率比行切低,但可方便的用刀补功能实现。 1.1环切 环切加工是利用已有精加工刀补程序,通过修改刀具半径补偿值的方式,控制刀具从内向外或从外向内,一层一层去除工件余量,直至完成零件加工。 编写环切加工程序,需解决三个问题: 环切刀具半径补偿值的计算; 环切刀补程序工步起点(下刀点)的确定; 如何在程序中修改刀具半径补偿值。 1.1.1环切刀具半径补偿值的计算 确定环切刀具半径补偿值可按如下步骤进行: 1、确定刀具直径、走刀步距和精加工余量; 2、确定半精加工和精加工刀补值; 3、确定环切第一刀的刀具中心相对零件轮廓的位置(第一刀刀补值); 4 1、根据内槽圆角半径 键槽铣刀,精加工余量为 距取10mm。 2、由刀具半径6 加工的刀补半径分别为6和 3、如图所示, 等于步距,则该刀刀补值 4 第二刀刀补值 第三刀刀补值=15-10=5 刀补值分别为25、15、6.5、6mm。 1.1.2环切刀补程序工步起点(下刀点)的确定 对于封闭轮廓的刀补加工程序来说,一般选择轮廓上凸出的角作为切削起点,对内轮廓,如没有这样的点,也可以选取圆弧与直线的相切点,以避免在轮廓上留下接刀痕。在确定切削起点后,再在该点附近确定一个合适的点,来

完成刀补的建立与撤消,这个专用于刀补建立与撤消的点就是刀补程序的工步起点,一般情况下也是刀补程序的下刀点。 一般而言,当选择轮廓上凸出的角作为切削起点时,刀补程序的下刀点应在该角的角平分线上(45°方向),当选取圆弧与直线的相切点或某水平/垂直直线上的点作为切削起点时,刀补程序的下刀点与切削起点的连线应与直线部分垂直。在一般的刀补程序中,为缩短空刀距离,下刀点与切削起点的距离比刀具半径略大一点,下刀时刀具与工件不发生干涉即可。但在环切刀补程序中,下刀点与切削起点的距离应大于在上一步骤中确定的最大刀具半径补偿值,以避免产生刀具干涉报警。如对图1-1零件,取R30圆弧圆心为编程零点,取R30圆弧右侧端点作为切削起点,如刀补程序仅用于精加工,下刀点取在(22,0)即可,该点至切削起点距离=8mm 。但在环切时,由于前两刀的刀具半径补偿值大于8mm ,建立刀补时,刀具实际运动方向是向左,而程序中指定的运动方向是向右,撤消刀补时与此类似,此时数控系统就会产生刀具干涉报警。因此合理的下刀点应在编程零点(0,0)。 1.1.3在程序中修改刀具半径补偿值 在程序中修改刀具半径补偿值可采用如下方法 1、在刀补表中设好环切每一刀的刀具半径补偿值,然后在刀补程序中修改刀具补偿号。 示例1.1 直接在G41/G42程序段修改刀具补偿号 示例1.2 用宏变量表示刀具补偿号,利用循环修改刀具补偿号 主程序 %1000 G54 G90 G0 G17 G40; Z50 M03 S1000; X0 Y0; Z5 M08; G1 Z-10 F60; G41 X30 D1 F100; M98 P0010; G41 X30 D2 F100; M98 P0010; G41 X30 D3 F100; M98 P0010; G41 X30 D4 F100; M98 P0010; M05 M09;

螺 纹 铣 削 程 序(宏程序)

螺纹铣削程序(设置说明) 该程序为Mazatrol行星攻丝加工方式的延伸,可以实现可控制的多圈差补铣削螺纹。 使用方法: 1,在Mazatrol程序中用单动方式调出加工刀具; 2,在Mazatrol子程序调用该程序,变数定义如下: 1)加工坐标:X(#24)、Y(#25)、Z(#26) 2)加工形状:螺孔大径:M(#13) 螺孔深度:H(#11) 螺距:E(#8) 加工圈数:Q(#17) 3)刀具及切削参数:刀具直径:D(#7)——调整数值可以控制螺纹直径大小。进给量(mm/rev):F(#9) 转速(r/min):S(#19) R点:R(#18) 4)左旋、右旋选择:K(#6) K=0,右旋螺纹 K=1,左旋螺纹 特点:1,只需要在Mzaztrol程序中,给X,Y,Z,M,H,E,Q,D,F,S,R,K附值即可,调用宏程序加工,子程序不用变动; 2,1/4螺距圆弧切入、切出; 3,可以通过调整Q设定值,调整加工圈数,解决Mazatrol行星攻丝方式只能差补一圈的缺点。 缺点:1,此程序使用中在MZAZTROL里不能有坐标偏执(补助坐标),因为子程序执行的是基本坐标,不认偏执量。 (不同的螺纹只需修改主程序(144)中的个个参数即可) 程序(144)

子程序(145) O00000005(HELICAL TAP CYCLE) (EIA HELICAL TAP) O00000005 IF[#13EQ0]GOTO100 IF[#11EQ0]GOTO200 IF[#8EQ0]GOTO300 IF[#17EQ0]GOTO400 IF[#7EQ0]GOTO500 IF[#19EQ0]GOTO600 IF[#18EQ0]GOTO700 IF[[#13-#7]LT0]GOTO800 (MAIN PROGRAM) G91G28Z0. G90G00G95X#24Y#25 G43Z50. G90G00Z#18 Z#26S#19M03 #3=#9*4 #21=#11-0.5 G91G01Z-#21F#3 Z-0.5F0.1 #1=[#13-#7]/2 #2=#17*#8 #3=#9*0.4

数控铣宏程序实例

第四章 数控铣宏程序实例 §4.1 椭圆加工(编程思路:以一小段直线代替曲线)例1 整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ 变量数学表达式 设定θ= #1(0°~ 360°) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N99 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOTO99; GOO Z50; M30;

例2 斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm ) 椭圆心不在原点的参数方程 X=a*C OS [#1]+ M Y=b*SIN [#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*C OS [#1]+ M Y=#3=b*SIN [#1]+ N 因为此椭圆绕(M ,N )旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y :旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO X0 Y0; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS [#1]+M;

#3=b*SIN[#1]+N; GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 GOO Z100; M30; 例3:椭圆轮廓加工(深度2mm) 采用椭圆的等距加工方法使椭圆的长半轴和短半轴同时减少一个行距的方法直到短半轴小于刀具的半径R 根据椭圆的参数方程可设 变量表达式θ=#1(0°~360°) a=#2 b=#3(b-R~R) X=#2*COS[#1]=#4 Y=#3*SIN[#1]=#5 程序 O0003; S1000 M03;

圆形型腔铣削宏程序

圆形型腔铣削宏程序 余海波提供 根据阿基米德螺旋线设计圆形型腔开粗及精铣。 圆形型腔宏程序.prg % O0003 ; #1=50 ; //安全平面 #2=2. ; //Z向每层进给量 #3=10. ; //粗加工步距(刀具直径的80%) #4=6. ; //刀具半径 #6=0.1 ; //步距角 #7=5 ; //抬刀距离 #8=120 ; //Z向进给速度 #9=1000 ; //粗加工进给速度 #11=1000 ; //精加工进给速度 #13=0.5 ; //精加工余量 #17=50. ; //型腔半径 #18=#17-#4 ; //实际加工型腔尺寸 #26=10. ; //型腔深度 G54 G90 G80 G40 G49 G00 X0 Y0 ; //快速定位到圆心

G43 Z50 H01 ; //建立长度补偿 #125=#18-#13 ; //计算粗加工余量 #120=#3/360. ; //(求公式r=a*θ中系数a) G0 Z#1 ; // Z轴快速定位至安全平面 G90 G0 Z5. ; #131=#2 ; //Z向每层加工量赋值给累计加工深度 N10 G90 G0 X0 Y0 ; G01 Z-#131 F#8 ; #121=0 ; #124=0 ; WHILE [#124 LE #125] DO 1 ; //如果极半径大于待加工量时,跳出循环 #123=#121+#6 ; //增加步距角 #124=#123*#120 ; //计算极半径 #126=#124*SIN[#123] ; //计算Y轴坐标 #127=#124*COS[#123] ; //计算X轴坐标 G90 G1 X#127 Y#126 F#9 ; //根据计算出的坐标值进行直线插补 #121=#123 ; END 1 ; G3 X#127 Y#126 I-#127 J-#126 ; //当螺旋线到达规定极半径时,以当前位置铣整圆 G0 Z#7 ; //加工完一层后抬刀 G90 G0 X0 Y0 ; #130=#26-#131 ; //计算Z向待加工量 #131=#131+#2 ; //计算Z向累计加工量 IF [#130 GE #2] GOTO 10 ; //判断Z向是否加工到位,未到位返回N10继续加工 G90 G0 Z#7 ; //抬刀 G0 X0 Y0 ; G1 Z-#26 F#8 ; //进刀至Z向最终加工尺寸 #121=0 ; #124=0 ; WHILE [#124 LE #125] DO 1 ; //循环精铣底面 #123=#121+#6 ; #124=#123*#120 ; #126=#124*SIN[#123] ; #127=#124*COS[#123] ; G90 G1 X#127 Y#126 F#9 ; #121=#123 ; END 1 ; G3 X#127 Y#126 I-#127 J-#126 ; G90 G0 Z#7 ; //抬刀 G00 X[#18/2.]Y[#18/2.] ; //快速定位到型腔壁精铣起点位置 G1 Z-#26 F#8 ; //进刀至型腔底面

数控铣宏程序实例(DOC)

数控铣宏程序实例(DOC)

数控铣宏程序实例 §4.1 椭圆加工(编程思路:以一小段直线代替曲线)例1:整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ变量数学表达式 设定θ= #1(0°~ 360°) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N1 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOT01; GOO Z50; M30;

例2:斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm) 椭圆心不在原点的参数方程 X=a*COS[#1]+ M Y=b*SIN[#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*COS[#1]+ M Y=#3=b*SIN[#1]+ N 因为此椭圆绕(M ,N)旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y:旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO Xa+M YN; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS[#1]+M; #3=b*SIN[#1]+N; GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 ; GOO Z100; M30;

圆弧面蜗杆数控车削加工的宏程序实现

圆弧面蜗杆数控车削加工的宏程序实现 Document serial number【KK89K-LLS98YT-SS8CB-SSUT-SST108】

圆弧面蜗杆数控车削加工的宏程序实现 欧阳德祥詹华西(武汉职业技术学院,湖北武汉430073) 摘要: 圆弧面蜗杆作为一种特殊的蜗杆类型,无法用一般蜗杆螺纹的车削方式,通常需要专用机床加工。对具有宏指令功能的数控车床而言,可将圆弧转化为小线段,然后对小线段实施螺纹切削,采用宏程序循环控制即可实现圆弧面蜗杆的车削加工。实践证明,该方法控制方便、适应性强,为圆弧面蜗杆加工的实现提供了一种新的思路。 关键词: 圆弧面蜗杆宏程序螺纹车削 中图分类号:TH16;TP391文献标识码:B 圆弧面蜗杆也称球面蜗杆,它具有结构紧凑、承载能力大、工作寿命长等优点,其传动效率可以达到0.85~0.95,承载能力约比普通蜗轮副提高3~4倍,适用于冶金、矿山、起重、运输、石油、化工和建筑等行业机械设备的减速传动。但圆弧面蜗杆的加工通常需要专用机床,或对一般机床进行改造后方可进行加工,因此,往往因生产成本高而制约了其应用。本文利用HNC系统数控车床的宏程序功能对圆弧面蜗杆中的直廓环面蜗杆进行了加工实践的尝试,为圆弧面蜗杆加工的实现提供了一种新的思路。 1圆弧面蜗杆的结构及其加工机制 如图1所示直廓环面蜗杆是圆弧面蜗杆常见形式之一,其节面为环面,齿廓形状为一直线,直线的延长线切于直径为d的形成圆。环面蜗杆的加工通常在专用机床上进行。图1所示专机加工的实现方式是采用左右两把切刀,无论粗切还是精切,其圆周进给分两次进行,第一次用一把切刀,在某一圆周进给方向加工蜗杆螺旋槽的一个侧面,然后再换另一把切刀并采用相反方向的圆周进给加工蜗杆螺旋槽的另一个侧面,其调整控制通过分度交换齿轮和速度交换齿轮实现。采用专用机床加工弧面蜗杆时通常要对工件旋转运动和刀具旋转运动按一定的运动配合关系进行控制,这就需要较复杂的机构来实现。

数控铣床编程实例及答案

数控铣床练习题一 答案: 铣床程序1 O1 N1 G90 N2 G54 N3 G17 N4 T03 M06 N5 G00 X0.0 Y0.0 M03 S1000 N6 G43 H03 Z100.0 N7 G00 X-50.0 Y-100.0 N8 G01 Z-7.0 F100 N9 G01 Y100.0 N10 G00 Z100.0 N11 G00 X50.0 Y-100.0 N12 G00 Z-3.0 F100 N13 G01 Y100.0 N14 G00 Z100.0 N15 G49 N16 G00 X0.0 Y0.0 N17 T10 M06 N18 G43 H10 Z100.0 N19 G81 G98 X-50.0 Y-30.0 R5.0 Z-18.0 F100 N20 Y0.0 N21 Y30.0

N22 X50.0 N23 Y0.0 N24 Y-30.0 N25 G80 N26 G49 N27 G00 X0.0 Y0.0 N28 M05 N29 M30 立体仿真图片

数控练习题二

答案: 铣床程序2: O2 N1 G90 N2 G54 N3 G17 N4 T04 M06 N5 G00 X0.0 Y0.0 M03 S1000 N6 G43 H04 Z100.0 N7 G00 X65.0 Y-50.0 N8 G01 Z-8.0 N9 G41 D04 Y-30.0 F200 N10 G03 X50.0 Y8.0 R50.0 N11 G01 X18.089 Y13.153 N12 G02 X8.0 Y25.0 R12.0 N13 G01 Y30.0 N14 G03 X8.0 Y60.0 R20.0 N15 G01 Y74.972 N16 G01 X50.0 Y82.0 N17 G01 X99.233 N18 G02 X99.233 Y8.0 R60.0 N19 G01 X50.0 N20 G40 N21 G01 X0.0 N22 G01 Y90.0 N23 G01 X120.0 N24 G01 Y0.0 N25 G01 X0.0 N26 G00 Z100.0 N27 G49 N28 T09 M06 N29 G00 X0.0 Y0.0 M03 S1000 N30 G43 H09 Z100.0 N31 G81 G98 X40.0 Y45.0 R5.0 Z-10.0 F200 N32 X65.0 N33 X90.0 N34 G80 N35 G00 Z100.0 N36 G49 N37 T58 M06 N38 G00 X0.0 Y0.0 M03 S1000 N39 G43 H58 Z100.0 N40 G81 G98 X40.0 Y45.0 R5.0 Z-10.0 F200 N41 X65.0

数控铣宏程序

数控铣宏程序

一. 什么是宏程序? 三. 变量 #1~#33 在宏程序中储存数据,在程序中对其赋值。赋值是将一个数据赋予一个变量。例如#1=0,表示#1的值就是0,其中#1代表变量,#是变量符号,0就是给变量#1赋的值。 例如 G0 X0 Y0;#1=100 ;#1=50; G01 X100 F500 ;G0 X0 Y0;#2=50; G01 X#1 F500;G0 X0 Y0 ; G01 X[#1+#2]F500; 四. 变量之间的运算 变量之间可以进行加,减,乘,除函数等各种运算 例如 #1=60; #2=SIN#1; 运算顺序和一般数学上的定义相同 例如 #1=#2+3*SIN#4 括号嵌套 最里层的括号优先 例如 #6=COS[[[#5+#4]*#3+#2]*#1] 比较难理解的一种情况 #1=10;

典型例子

#1=0; #2=1; N01 IF[#2 GT 100] GOTO 02; #1= #1+#2; #2= #2+#1; GOTO 01; N02 M30; 3.循环(WHILE语句) 在WHILE后制定一个条件表达式,当指定条件满足时,则执行从DO到END 之间的程序,否则,转到END后的程序段 例如 #2=10; #3=20; WHILE[#2 LT #3]DO01; #2=#2-1; END01; 实例运用 O2012(螺旋铣孔) #1=50;圆孔直径 #2=40;圆孔深度 #3=30;刀具直径 #4=0;Z坐标设为自变量,赋值为0 #17=1;Z坐标每次递增量 #5=[#1-#3]/2;刀具回转直径 S1000 M3; G54 G90 G00 X0 Y0 Z30; G00 X#5 Z[-#4+1]; G01 Z-#4 F200; WHILE[#4 LT #2]DO01; #4= #4+#17;

数控铣床宏程序编程

变量 普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。#1=#2+100 G01X#1F300 说明: 变量的表示计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定。例如:# 1 表达式可以用于指定变量号。此时,表达式必须封闭在括号中。例如:#[#1+#2-12] 变量的类型变量根据变量号可以分成四种类型 变量号变量类型功能#0空变量该变量总是空,没有值能赋给该变量. #1-#33 局部变量局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时,局部变量被初始化为空.调用宏程序时,自变量对局部变量赋值, #100-#199

#500-#999 公共变量公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199初始化为空.变量#500-#999的数据保存,即使断电也不丢失. #1000 系统变量系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置和补偿值. 变量值的范围局部变量和公共变量可以有0值或下面范围中的值: -1047到-10-29或-10-2到-1047 如果计算结果超出有效范围,则发出P/S报警N O.111. 小数点的省略当在程序中定义变量值时,小数点可以省略。例:当定义#1=123;变量#1的实际值是123.000。 变量的引用为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。例如:G01X[#1+#2]F#3; 被引用变量的值根据地址的最小设定单位自动地舍入。例如:当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346.

宏程序加工举例

毛坯为150㎜×70㎜×20㎜块料,要求铣出如图2-25所示的椭球面,工件材料为蜡块。见图 程序: 1.根据图样要求、毛坯及前道工序加工情况,确定工艺方案及加工路线 1)以底面为主要定位基准,两侧用压板压紧,固定于铣床工作台上。 2)加工路线 Y方向以行距小于球头铣刀逐步行切形成椭球形成。 2.选择机床设备 根据零件图样要求,选用经济型数控铣床即可达到要求。故选用华中Ⅰ型(ZJK7532A型)数控钻铣床。3.选择刀具 球头铣刀大小f6mm。 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

数控铣宏程序实例

第四章数控铣宏程序实例 §4.1 椭圆加工(编程思路:以一小段直线代替曲线) 例1 整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ 变量数学表达式 设定θ= #1(0°~ 360°) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N99 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOTO99; GOO Z50; M30;

例2 斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm) 椭圆心不在原点的参数方程 X=a*COS[#1]+ M Y=b*SIN[#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*COS[#1]+ M Y=#3=b*SIN[#1]+ N 因为此椭圆绕(M ,N)旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y:旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO X0 Y0; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS[#1]+M; #3=b*SIN[#1]+N;

GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 GOO Z100; M30; 例3:椭圆轮廓加工(深度2mm) 采用椭圆的等距加工方法使椭圆的长半轴和短半轴同时减少一个行距的方法直到短半轴小于刀具的半径R 根据椭圆的参数方程可设 变量表达式θ=#1(0°~360°) a=#2 b=#3(b-R~R) X=#2*COS[#1]=#4 Y=#3*SIN[#1]=#5 程序 O0003; S1000 M03; G90 G54 G00 Z100;

浅谈数控编程中的宏程序

浅谈数控编程中的宏程序 江苏经贸技师学院王军歌 [摘要] 随着现代制造技术的发展和数控机床的日益普及,数控加工在我国得到广泛的应用,数控加工中很重要的一部分就是编程,从CAD/CAM软件出现以后,人们过分依赖CAD/CAM软件,使得无论程序大小,加工难易编程人员习惯使用各种CAD/CAM软件,而把手工编程遗忘了,尤其是博大精深的宏程序。宏程序在数控编程中不应该被遗忘,而是应该很好的使用,它有着自动编程软件不可取代的优势。 [关键词] 数控编程宏程序CAD/CAM 数控加工 一.引言 在CAD/CAM软件普遍存在的今天,手工编程的应用空间日趋减小,数控世界有一种说法很流行“宏程序已经没有什么用”,其实任何数控系统都有很多指令在一般情况下用不着,那他们是否也没有用呢?这显然不对,对宏程序也是如此,原因只是大家对宏程序不熟悉,往往误以为宏程序深不可测而已,在实际工作中,宏程序确实也有广泛的应用空间,并且能够方便手工编程,锻炼操作者的编程能力,帮助操作者更加深入的了解自动编程的本质。 二.认识宏程序 在一般的程序编制中程序字为常量,一个程序只能描述一个几何形状,当工件形状没有发生改变但是尺寸发生改变时,就没有办法了,只能重新进行编程,缺乏灵活性和适用性。当我们所要加工的零件如果形状没有发生变化只是尺寸发生了一定的变化的情况时,我们只需要在程序中给要发生变化的尺寸加上几个变量再加上必要的计算公式就可以了,当尺寸发生变化时只要改变这几个变量的赋值参数就可以了。 它是利用对变量的赋值和表达式来进行对程序的编辑的,这种有变量的程序叫宏程序。 三.宏程序与自动编程的比较 自动编程有自动编程的好处,但是自动编程也有其不利于加工方面的问题,在加工不规律的曲面时利用自动编程确实是很好,但是在加工有规律的曲面时就不见得了,加工有规律的工件的时候用宏程序加工要比用自动编程软件要强的

用宏程序车削外圆

用宏程序车削外圆 程序编程指令格式 G65P8090X(U) Z(W) D E F 其中X(U) Z(W) 外圆终点坐标,X轴为直径值编程D-----每次切深,半径值指令; E-----退刀量 F------切削速度 宏程序主程序 08090 #31=#5041 保存X值初值 #32=#5042 保存Z值初值 IF[#8NE#0]GOTO1 #8=0.2 退刀量 N1IF[#24EQ#0]GOTO2 #1=#24 X值绝对值指令 GOTO3 N2IF[#21EQ#0]GOTO9 X轴未赋值则报警 #1=#31+#21 X轴绝对值坐标 N3IF[#26EQ#0]GOTO4 #2=#26 GOTO5 N4IF[#23EQ#0]GOTO9 Z轴未赋值则报警

#2=#32+#23 Z轴绝对值坐标 N5IF[#7EQ#0]GOTO9 每次切深不赋值则报警IF[#9NE#0]GOTO6 #9=#4109 F未赋值则用前面的值 N6#30=#31 X轴初值 WHILE[#30GT#1]DO1 #30=#30-2*#7 IF[#30GT#1]GOTO7 #30=#1 N7GOOX#30 切削循环 GOIZ#2F#9 U-2*#8 G00Z#32 切削循环结束 END1 X#31 退回起始点 GOTO10 N9#3000=1 赋值错误报警 N10M99

用户宏程序 O5678 ; T0101 ; M03 S500 ; G65 P6789 A50 B80 C80 K1 F60 ; G00 X100. Z200. ; M30 ; O6789 ; N5 IF [#2 LT0 ]GOTO25 ; #26=#2 ; #24=[#1+#1]*SQRT[1-#2*#2/#3/#3] ; G01 X#24 Z#26 F#6 ; GOTO 5 ; N25 M99 ;

数控宏程序实例

第7章宏程序 7.3 宏程序调用 7.3.1 宏程序调用指令(G65) 在主程序中可以用G65调用宏程序。指令格式如下: G65 P L 〈自变量赋值〉; 其中:P指定宏程序号:L为重复调用次数(1—9999);自变量赋值是由地址和数值构成的,用以对宏程序中的局部变量赋值。 例如: 主程序: O7002 ... G65 P7100 L2 A1.0 B2.0 ... M30 宏程序: #3=#1+#2; IF [#3 GT 360] GOTO 9; G00 G91 X#3 N9 M99

7.3.2 自变量赋值 自变量赋值有两种类型。自变量I使用除去G,L,N,O,P以外的其他字母作为地址,自变量II可以使用A,B,C每个字母一次,I,J,K每个字母可使用十次作为地址。表7—3和7—4分别为两种类型自变量赋值的地址和变量号码之间的对应关系: 表7—3 自变量赋值的地址和变量号码之间的对应关系 表7—4 自变量II的地址与变量号码之间的对应关系

上表中的I,J,K的下标只表示顺序,并不写在实际命令中。在G65的程序段中,可以同时使用表4—1及表4—2中的两组自变量赋予值。系统可以根据使用的字母自动判断自变量赋值的类型。 7.4 变量的控制和运算指令 7.4.1 算术运算和逻辑运算 在变量之间,变量和常量之间,可以进行各种运算,常用的见表7—5。

表7—5 算术和逻辑运算 运算的优先顺序如下: 1)函数。 2)乘除,逻辑与。 3)加减,逻辑或,逻辑异或。 可以用[ ]来改变顺序

7.4.2 控制指令 1.无条件转移(GOTO语句) 语句格式为: GOTO n 其中n为顺序号(1—9999),可用变量表示。例如: GOTO 1; GOTO #10; 2. 条件转移(IF 语句) 语句格式为: IF [条件式] GOTO n 条件式成立时,从顺序号为n的程序段开始执行;条件式不成立时,执行下一个程序段。 条件式有以下几类: # j EQ # K # j NE # K # j GT # K # j LT # K # j GE # K # j LE # K 条件式中变量#J或#K可以是常量也可以是表达式,条件式必须用括弧括起来。下面的程序可以得到1到10的和: O7100

相关文档