图1
本文以在平面上铣削图1所示的15个相同的矩阵排列的梯形型腔为例,通过FOR循环和在NC程序中进行零偏设置来简化程序,从而提高编程效率。下面是具体实施步骤。
1. 创建轮廓
如图2所示的梯形轮廓,它包括起点,两条水平线段和两条斜线段,以及每条线段到下一元素的过度圆角R3,起点及各元素的终点坐标分别为(0,0),(30,0),(25,20),(5,20),(0,0)。
图2
2. 编制加工程序
图3和图4所示的程序代码,N10和N20定义了两个整型变量,N30和N40用于清除零偏,这样N50调用零偏后N60创建的毛坯的工件坐标系就与机床坐标系重合,以便于查看程序模拟的效果。程序从N90到N170为FOR循环,程序N200后的内容为创建轮廓所生成代码。
图3
图4
3. FOR循环
FOR循环语句的结构如下:
FOR _I=0 TO 2
…
ENDFOR
FOR表示循环的开始,ENDFOR表示循环结束,FOR和NEDFOR之间的语句叫做循环体,是将被重复执行的代码。_I为控制变量,每执行一次,_I会自动加1,0为循环变量的初值,表示循环从_I=0开始执行,2为循环变量终值,当_I=2时,执行完循环体代码后循环结束。
本例中,程序从N90开始循环,分为外层循环和内层嵌套循环,外层用_I控制,控制X轴方向的重复加工次数,内层用_J控制,控制Y轴方向的重复加工次数。_I每取一个值,在Y轴方向要重复加工5次,***终加工出图1所示的3列5行的梯形型腔。
4. NC程序中设置零偏
$P_UIFR为零偏的系统变量数组,数组有三个索引号,***个索引号表示所需要设置的零偏,从1开始,依次表示G54、G55、G56等。第二个索引号表示要设置零偏的轴,如MX代表X轴,MY代表Y轴等,第三个索引号在此不进行讨论,保持TR不变即可。如$P_UIFR [1,MX1,TR]用于设置G54的X轴的零偏。
5. 本编程案例的主要特点
本例的巧妙之处在于,运用控制变量乘以型腔的间距加上***个型腔与工件坐标原点的距离依次更新X轴和Y轴的零偏,使得零偏随控制变量的变化自动更新,从而简化了程序的结构,使得程序短小精简,易于阅读,不易出错。
本例还用到了毛坯和轮廓加工相关知识,有兴趣的读者可以查阅西门子官网的相关资料和视频。
6. 程序模拟
编制好的程序可以进行模拟,验证所编制的程序是否有错误。本例的模拟结果如图1,与既定的目标完全吻合。