5.5.3  循环开始处带有条件的语句(WHILE,ENDWHILE)

5.5.3 循环开始处带有条件的语句(WHILE,ENDWHILE)

WHILE循环是先判断条件后执行循环体语句。循环的开始是有条件的,当循环条件满足时,执行循环体内语句,否则将执行循环结束指令后面的程序。

语句结构:

WHILE<条件> ;若满足判断条件,则引入WHILE循环

… ;循环程序段(块)

ENDWHILE ;标记循环结束处并跳转到循环开头

注意:如果判断程序段写成WHILE<条件>GOTOF LAB1格式时,系统将会停止运行,并产生012080#报警“通道1程序段N??句法错误在文本GOTOF LAB1”。

若椭圆槽深为6mm,槽宽为8mm,每次吃刀量为2mm,需要3次相同的切槽加工完成。使用两层嵌套循环编程,深度参数作为切削几何体(深度)循环变量。

程序代码 注释

TYHCB_3.MPF ;椭圆槽切削程序(3)

N10 T1 D1 ;直径为8mm的立铣刀

N20 G17 G64 G0 G90 G54 X0 Y0 ;系统参数定义

N30 Z100 S900 M3 ;刀具进至初始高度

N40 G0 X50 Y0 ;定位下刀点

N50 Z5 ;下刀至安全高度

N60 R8=0 ;定义椭圆槽体吃刀量(层深变量)初始值

N70 WHILE R8<6 ;切削几何体(深度)循环条件判断

N80 R8=R8+2 ;计算几何体循环实际加工深度

N90 G1 Z=-R8 F150 ;下刀至计算深度

N100 R1=0 ;定义椭圆槽角度初始值

N110 WHILE R1<360 ;切削层循环条件判断

N120 R2=50∗COS(R1) ;计算刀位点(长半轴)在X轴上投影

N130 R3=25∗SIN(R1) ;计算刀位点(短半轴)在Y轴上投影

N140 G1 X=R2 Y=R3 F300 ;直线插补椭圆弧

N150 R1=R1+1 ;计算椭圆弧插补角度增量(直线插补精度)

N160 ENDWHILE ;切削层切削循环结束

N170 ENDWHILE ;切削几何体(深度)循环结束

N180 G0 Z100 ;返回初始高度

N190 M30 ;程序结束

注意:如果程序中N70的判断条件改为WHILE R8<=6,则程序加工深度为8mm。

如果使用层深加工次数作为几何体(深度)循环变量,则部分程序段将改写为:

程序代码 注释

..

N60 R8=2 ;定义椭圆槽体每层吃刀量值

N65 R7=1 ;几何体(深度)层切次数初始值

N70 WHILE R7<=3 ;切削几何体(深度)循环条件判断

N80 R9=R8∗R7 ;计算几何体实际加工深度计算

N85 R7=R7+1 ;层数加1

N90 G1Z=-R9F200 ;下刀至计算深度

注意:程序中增加了N65和N85程序段,并将参数R9改为实际加工深度。