R”参数编程在数控铣削加中的运用工 山东大学工程训练中心张宝枚 摘要数控机床是先进制造技术的基础设备,是典型的机电一体化产品。掌握数控 编程技术是充分利用好这类装备关键,也是我们提高数控铣削工程训练教学水平的重要标 关键词数控机床数控铣削加工数控编程“R”参数编程 “数控铣削技术训练”是我中心新近开设的一门理论性较强的工程训练科目。在教学形 式上,它不同于过去传统的、机械的“金工实习”。其训练目的是:了解当今先进的机械制 造方法,充分发挥当今大学生知识新、反应快、创造力强的特点,结合具体的实践教学,广 泛培养学生的动手能力、综合应用能力和创新能力。 由于受客观条件和教学时间的限制,自动编程(计算机编程)在目前各高校的工程训练 中还未被普及,为了了解编程的基本原理及方法,手工编程仍为最常用的基本训练内容之 对于加工形状简单的零件,计算比较简单,程序不多,采用手工编程较容易完成,因此 在点定位加工及由直线与圆弧组成的轮廓加工中,手工编程仍广泛应用。但对于形状复杂的 零件,特别是具有非圆曲线、列表曲线及曲面的零件,用一般的手工编程就有一定的困难, 且出错机率大,有的甚至无法编出程序。而采用“R”参数编程则可很好地解决这一问题 非圆曲线轮廓零件的种类很多,但不管是哪一种类型的非圆曲线零件,编程时所做的数 学处理是相同的。一是选择插补方式,即首先应决定是采用直线段逼近非圆曲线,还是采用 圆弧段逼近非圆曲线;二是插补节点坐标计算。采用直线段逼近零件轮廓曲线,一般数学处 理较简单,但计算的坐标数据较多。 等间距法是使一坐标的增量相等,然后求出曲线上相应y 的节点,将相邻节点连成直线,用这些直线段组成的折线代 f(x) 替原来的轮廓曲线(见图1)。其特点是计算简单,坐标增 量的选取可大可小,选得越小则加工精度越高,同时节点会O 增多,相应的编程费也将增加,而采用“R”参数编程正好 图1等距离法 可以弥补这一缺点 现今数控铣床一般都具备“R”参数编程功能,如西门子802D数控系统,这给手工编 写某些复杂图形的程序带来了方便。如图2、3所示,当要加工一个周期的正弦线时,通常 的方法是采用自动编程,若用手工编程,则可用“R”参数编程较简单。曲线上坐标点选取 的多少,可视加工精度而定 100 图2 图
“R”参数编程在数控铣削加中的运用工 山东大学工程训练中心 张宝枚 摘 要 数控机床是先进制造技术的基础设备,是典型的机电一体化产品。掌握数控 编程技术是充分利用好这类装备关键,也是我们提高数控铣削工程训练教学水平的重要标 志。 关键词 数控机床 数控铣削加工 数控编程 “R”参数编程 “数控铣削技术训练”是我中心新近开设的一门理论性较强的工程训练科目。在教学形 式上,它不同于过去传统的、机械的“金工实习”。其训练目的是:了解当今先进的机械制 造方法,充分发挥当今大学生知识新、反应快、创造力强的特点,结合具体的实践教学,广 泛培养学生的动手能力、综合应用能力和创新能力。 由于受客观条件和教学时间的限制,自动编程(计算机编程)在目前各高校的工程训练 中还未被普及,为了了解编程的基本原理及方法,手工编程仍为最常用的基本训练内容之一。 对于加工形状简单的零件,计算比较简单,程序不多,采用手工编程较容易完成,因此 在点定位加工及由直线与圆弧组成的轮廓加工中,手工编程仍广泛应用。但对于形状复杂的 零件,特别是具有非圆曲线、列表曲线及曲面的零件,用一般的手工编程就有一定的困难, 且出错机率大,有的甚至无法编出程序。而采用“R”参数编程则可很好地解决这一问题。 非圆曲线轮廓零件的种类很多,但不管是哪一种类型的非圆曲线零件,编程时所做的数 学处理是相同的。一是选择插补方式,即首先应决定是采用直线段逼近非圆曲线,还是采用 圆弧段逼近非圆曲线;二是插补节点坐标计算。采用直线段逼近零件轮廓曲线,一般数学处 理较简单,但计算的坐标数据较多。 等间距法是使一坐标的增量相等,然后求出曲线上相应 的节点,将相邻节点连成直线,用这些直线段组成的折线代 替原来的轮廓曲线(见图 1 )。其特点是计算简单,坐标增 量的选取可大可小,选得越小则加工精度越高,同时节点会 增多,相应的编程费也将增加,而采用“R”参数编程正好 可以弥补这一缺点。 现今数控铣床一般都具备“R”参数编程功能,如西门子 802D 数控系统,这给手工编 写某些复杂图形的程序带来了方便。如图 2、3 所示,当要加工一个周期的正弦线时,通常 的方法是采用自动编程,若用手工编程,则可用“R”参数编程较简单。曲线上坐标点选取 的多少,可视加工精度而定。 2л 25 O Y 图 2 25 O Y 100 X 图 3 ΔX 25 O Y 100 X 图 3 y=ƒ(x) ΔX 图 1 等距离法 O X Y
R”参数编程的实质,就是用变量“R”编写出“子程序”,并根据“R”数值的条件, 多次调用“子程序”,以简化编程。如:用变量R1表示上图中从0到2n各点弧度值:用 [X=100*R1/2n,Y=25*SIN(R1)]表示一个子程序,若要在正弦线上选取1000个坐标点 只可将子程序调用1000次即可。 合理的选用“R”参数编程,可以提高某些零件的加工精度(多选节点)和编程效率 它也是手工编制复杂零件程序的主要方法之一,在不具备计算机自动编程的情况下一般常采 用这种办法。 编程举例:(西门子802D系统) 试用“R”参数编程的方法编制整圆的程序(如图4)。 分析:若不用圆弧插补,可将圆均分成360份,再用直线插补连接。变量R1=50表 半径,R2=360表示共分了360份,R3=1表示间隔1份,R4=0表示初始角度。 程序如下: 00001 N10G54G42G90G00X50Y0Z100 N20GO1F20S600MO3Z-10 N30R1=50R2=360R3=1R4=0 N40 AA: X=R1:COS(R4) Y=R1=SIN(R4) o(0) N50R4=R4+1R2=R2-R3 N60 IF R2>=0 GOTOB AA N70G00Z50 图 N80G40M2 注解:程序中,N30程序段为条件设定;N0程序段即为程序名为AA的子程序:N50中 R4、R3是参数变量,每调用一次,R4将增加1度,R2减少1份:N60中IF为有条件的, G0TOB表示向前跳转,就是只有当R2大于等于零时才向前跳转到子程序AA处。 以上程序可以看出,用“R”参数编程,不管选取的节点是多少,其程序段不会增加, 这就是“R”参数编程的主要特点。 “R”参数编程千变万化,掌握它的关键就在于抓住图形轮廓规律,灵活地运用好变量 R”,结合其他科目知识,开发自己的思维空间,这一点也是被实践教学所证实的。“R”参 数编程对大学生有着较强的吸引力,它是展示自己数控编程技巧的体现。例如,我校化工学 院2002级封振宇同学在一天半的数控铣削加工训练中,就是充分利用了“R”参数编程功能 设计、编制、加工了如图5的工件,得到了各方面的好评。 编程思路:图中的三个风帆用了“R”参数编程,它们水平方向的间隔为30毫米,高
“R”参数编程的实质,就是用变量“R”编写出“子程序”,并根据“R”数值的条件, 多次调用“子程序”,以简化编程。如:用变量 R1 表示上图中从 0 到 2л各点弧度值;用 [ X=100*R1/2л,Y=25*SIN(R1)]表示一个子程序,若要在正弦线上选取 1000 个坐标点, 只可将子程序调用 1000 次即可。 合理的选用“R”参数编程,可以提高某些零件的加工精度(多选节点)和编程效率, 它也是手工编制复杂零件程序的主要方法之一,在不具备计算机自动编程的情况下一般常采 用这种办法。 编程举例:(西门子 802D 系统) 试用“R”参数编程的方法编制整圆的程序(如图 4 )。 分析:若不用圆弧插补,可将圆均分成 360 份,再用直线插补连接。变量 R1=50 表示 半径,R2=360 表示共分了 360 份,R3=1 表示间隔 1 份,R4=0 表示初始角度。 程序如下: O0001 N10 G54 G42 G90 G00 X50 Y0 Z100 N20 G01 F20 S600 M03 Z-10 N30 R1=50 R2=360 R3=1 R4=0 N40 AA:X=R1*COS(R4) Y=R1*SIN(R4) N50 R4=R4+1 R2=R2-R3 N60 IF R2>=0 GOTOB AA N70 G00 Z50 N80 G40 M2 注解:程序中,N30 程序段为条件设定;N40 程序段即为程序名为 AA 的子程序;N50 中 R4、R3 是参数变量,每调用一次,R4 将增加 1 度,R2 减少 1 份;N60 中 IF 为有条件的, GOTOB 表示向前跳转,就是只有当 R2 大于等于零时才向前跳转到子程序 AA 处。 以上程序可以看出,用“R”参数编程,不管选取的节点是多少,其程序段不会增加, 这就是“R”参数编程的主要特点。 “R”参数编程千变万化,掌握它的关键就在于抓住图形轮廓规律,灵活地运用好变量 “R”,结合其他科目知识,开发自己的思维空间,这一点也是被实践教学所证实的。“R”参 数编程对大学生有着较强的吸引力,它是展示自己数控编程技巧的体现。例如,我校化工学 院 2002 级封振宇同学在一天半的数控铣削加工训练中,就是充分利用了“R”参数编程功能, 设计、编制、加工了如图 5 的工件,得到了各方面的好评。 编程思路:图中的三个风帆用了“R”参数编程,它们水平方向的间隔为 30 毫米,高 图 4 B C D
度两端相同,中间一个高10毫米。由于三个风帆大小相同,因此,X方向的数值用实际值 加R1表示,Y方向的数值也要再加上一个R6。参数条件:R1=0:R1=R1+30;R5=90*R3; R3=0:R3=R3+1:R6=10*SIN(R5)。即加工第一个风帆时,R1、R6都为0,加工第二个风帆 时则R1变为30+0,R6为10*SIN(90)。最后R3<3为跳转的条件,即共跳转两次 主要程序: Rl=0R2=30 R3=0R4=10 R5=90*R3 N100 R6=R4*SIN (R5 N110X=35+R1 N120G01Z-1 N130Y=15+R6 N140X=17+R1 N150G02X=28.5+R1Y=60+R6CR=40 N160G01X39+R1Y60+R6 N170G03X=X41+R1Y=15+R6CR=38 图5 N180G01X=35+R1Y=15+R6 N190G00Z20 N200 R1=R1+R2 R3=R3+1 N210 IF R3<3 GOTOB AAA N220G00Z50M2 单从图形上看,封振宇同学的设计并不复杂,但其精华之处就在于合理运用了“R”参 数编程,并通过正弦线的最大值、最小值使风帆高度有所变化。即使增加风帆数量,程序段 的总量也没有任何变化。例如:要将风帆改为10个,只需将程序中R3<3改为R3<10即可。 典型零件编程: 生产中常用的零件,如凸轮、齿轮、离合器、螺旋线等都可用“R”参数编程。等速凸 轮由于其轮廓线为阿基米德螺旋线,所以编程比较简单,如图6所示。 已知:半径R=40:OD=60;角BOD为90度。 分析:先将工作曲线分成90份,R1=90;再算 出90份中的升高量,R2=(60-40)/90:B点的起始角为 零度,R3=0;半径R4=40;间隔R5=1。起始增量R6=0。 主要程序: O(0.,0 N100G90G1F20X40Y0
度两端相同,中间一个高 10 毫米。由于三个风帆大小相同,因此,X 方向的数值用实际值 加 R1 表示,Y 方向的数值也要再加上一个 R6。参数条件:R1=0;R1=R1+30;R5=90*R3; R3=0;R3=R3+1;R6=10*SIN(R5)。即加工第一个风帆时,R1、R6 都为 0,加工第二个风帆 时则 R1 变为 30+0,R6 为 10*SIN(90)。最后 R3<3 为跳转的条件,即共跳转两次。 主要程序: ------ N80 R1=0 R2=30 R3=0 R4=10 N90 AAA: R5=90*R3 N100 R6=R4*SIN(R5) N110 X=35+R1 Y0 N120 G01 Z-1 N130 Y=15+R6 N140 X=17+R1 N150 G02 X=28.5+R1 Y=60+R6 CR=40 N160 G01 X39+R1 Y60+R6 N170 G03 X=X41+R1 Y=15+R6 CR=38 N180 G01 X=35+R1 Y=15+R6 N190 G00 Z20 N200 R1=R1+R2 R3=R3+1 N210 IF R3<3 GOTOB AAA N220 G00 Z50 M2 单从图形上看,封振宇同学的设计并不复杂,但其精华之处就在于合理运用了“R”参 数编程,并通过正弦线的最大值、最小值使风帆高度有所变化。即使增加风帆数量,程序段 的总量也没有任何变化。例如:要将风帆改为 10 个,只需将程序中 R3<3 改为 R3<10 即可。 典型零件编程: 生产中常用的零件,如凸轮、齿轮、离合器、螺旋线等都可用“R”参数编程。等速凸 轮由于其轮廓线为阿基米德螺旋线,所以编程比较简单,如图 6 所示。 已知:半径 R=40;OD=60;角 BOD 为 90 度。 分析:先将工作曲线分成 90 份,R1=90;再算 出 90 份中的升高量,R2=(60-40)/90;B 点的起始角为 零度,R3=0;半径 R4=40;间隔 R5=1。起始增量 R6=0。 主要程序: ------ N100 G90 G1 F20 X40 Y0 图 5 Y O X x R40 y D C B A O(0,0) 图 6
N110R1=90R2=20/90R3=0R4=40R5=1R6=0 N120 ABC: X=(R4+R6)*COS(R3) Y=(R4+R6)*SIN(R3) N130R6=R6+R2R3=R3+1R1=R1-1 N140 IF RI>=0 GOTOB ABC N150G0Z50M 三轴联动的“R”参数编程 般的模具加工多为三维立体加工,掌握好参数变量“R”的规律,同样可进行“R 参数编程,实际上,在原两维平面加工的基础上再加上垂向的变量“R”,即可实现三维立体 加工。应值得注意的是,垂向变量Δ垂的取值大小将影响平面尺寸,所以必须精心计算。如 图7所示:已知高60(R1=60),宽40,上底与下底单面差(100-80)/2=10。 分析:取R3=1000(1000份);X方向每次单边缩小R2=10/1000,开始点的单边缩小量 为R4=0,垂向每次提高R5=60/1000,开始点的提高量是R6=0。 主要程序: N100R1=60R2=10/1000R3=1000R4=0R5=60/1000R6=0 N110 XYZ: Z=R6 N115X=R4Y0 N120X=100-R4 N130Y40 N140X=R4 N150Y0 N160R6=R6+R5R4=R4+R2 N170 IF R6<=R1 GOTOB XYZ N180G00Z100M2 总之,“R”参数编程简单易学、实用,趣味性大,在编程中它可以将数学公式、微分 方程等有关知识结合到程序中,它也是利用基本计算方法解决工程实际问题的有效方法
N110 R1=90 R2=20/90 R3=0 R4=40 R5=1 R6=0 N120 ABC:X=(R4+R6)*COS(R3) Y=(R4+R6)*SIN(R3) N130 R6=R6+R2 R3=R3+1 R1=R1-1 N140 IF R1>=0 GOTOB ABC N150 G0 Z50 M2 三轴联动的“R”参数编程 一般的模具加工多为三维立体加工,掌握好参数变量“R”的规律,同样可进行“R” 参数编程,实际上,在原两维平面加工的基础上再加上垂向的变量“R”,即可实现三维立体 加工。应值得注意的是,垂向变量Δ垂的取值大小将影响平面尺寸,所以必须精心计算。如 图 7 所示:已知高 60(R1=60),宽 40,上底与下底单面差(100-80)/2=10。 分析:取 R3=1000(1000 份);X 方向每次单边缩小 R2=10/1000,开始点的单边缩小量 为 R4=0,垂向每次提高 R5=60/1000,开始点的提高量是 R6=0。 主要程序: ------ N100 R1=60 R2=10/1000 R3=1000 R4=0 R5=60/1000 R6=0 N110 XYZ:Z=R6 N115 X=R4 Y0 N120 X=100-R4 N130 Y40 N140 X=R4 N150 Y0 N160 R6=R6+R5 R4=R4+R2 N170 IF R6<=R1 GOTOB XYZ N180 G00 Z100 M2 总之,“R”参数编程简单易学、实用,趣味性大,在编程中它可以将数学公式、微分 方程等有关知识结合到程序中,它也是利用基本计算方法解决工程实际问题的有效方法 100 80 60 40 图 7