您现在的方位:

FANUC宏程序运用举例

      单轴外圆数控磨床,径向选用数控轴(X)操控,轴向仍用液压油缸驱动,因而无法运用两轴磨床数控体系供给的磨削循环功用。在实践中,能够运用FANUC体系供给的用户宏程序,编制单轴的磨削循环功用。依据机床的详细结构,又编制了砂轮手动修整、主动补偿及手动丈量工件、主动补偿的操控功用。在青海重型机床厂出产 CA8311B轴颈车磨床上,通过一年多的出产运用,证明是有用的。下面别离介绍软件的内容。 

   1 功用介绍 

   1.1 外圆磨削循环

   因为只要径向操控轴(X),无法完结接连进给磨削,只能完结两头进给的轴向磨削循环。因而在左右两头各设1个轴向行程辨认开关(如图1所示) 
 
  当砂轮移到工件的左端时,左端行程开关闭合,宣布到位信号,程序顶用接口输入变量#1005=1表明。操控体系接到该信号后,宣布X轴进给移动指令,砂〖LL〗轮行进一个A值;同理,当体系接到右端行程开关宣布的到位信号,程序顶用接口输入变量#1006=1表明,砂轮行进一个B值。顺次循环,直到抵达指令的方位。 
 
  完结给定磨削量的磨削加工,能够按AB两值相加为一个循环,将被磨除量均分。砂轮快速移至R点,经n(A+B)磨削之后,其剩余量为h′。若砂轮在工件左端,且h′A时,按h′进给,否则按A值进给。若在工件右端,且h′B值时,按h′进给,否则按B值进给。软件有必要确保只在工件两头进给,中心不得进给。当磨除量变为零时,有必要磨到另一端才能退砂轮。整个磨削进程分粗磨、精磨和光磨。在实际运用中,在R点设置一个暂停,操作者能够刺进手动磨削,以利于修活运用,也能够再转为主动磨削。磨削初值用现在方位变量#5041取值。 

   1.2 丈量值的主动补偿
 
  在粗磨完毕后,精磨开端前刺进手动丈量,操作者将丈量成果输入到体系中,体系依据指令值与实测值之差,对磨削量进行补偿。 
 
  是否需求丈量,由面板上的开关设置,此开关状况用接口输入信号#1007输入体系。当开关接通,即信号为“1”时进行丈量。当开关断开,即信号为“0”时,则不进行丈量,直接进行精磨加工。当实测值与指令值相一起,能够不输入实测值,此刻,体系不批改磨削量,仍按原磨削量进行磨削。如需丈量,在丈量之前组织光磨加工,以求与完结零件磨削的状况相同。 
 
  1.3 砂轮修整量的主动补偿 
 
  依据机床选用一般金刚笔修整砂轮、手动进给、手动换向修整这样的操作,软件主动核算修整量,并批改工件坐标原点设定值。砂轮修整之后,不需对刀,即可进行磨削加工。 
 
  在面板上设置砂轮修整开关,此开关状况用接口输入信号#1004输入体系。当修整开关合上,即信号为“1”时,履行砂轮修整服务程序。当开关断开,即信号为“0”时,体系履行磨削加工。 

   2 软件框图 

   按主程序、子程序结构编制软件。 
 
  (1)主程序(O0001) 见图2 

   (2)砂轮修整子程序(O0020) 见图3

   (3)磨削子程序(O0010) 见图4

   (4)丈量子程序(O0030) 见图5

   3 菜单编程 

   将磨削所需数据用体系断电不铲除的宏变量表明。编程时,操作者只需把所需数据输入,不需求批改程序。零件变化时,只需改动相关尺度数据。 
 
  详细设置如下: 
 
  #500 粗磨开端点
 
  #501 粗磨完毕点,即精磨开端点 
 
  #502 精磨完毕点,即光磨开端点,亦即零件尺度 
 
  #503 粗磨左进刀量,即第一次切深 
 
  #504 粗磨右进刀量,即第2次切深 
 
  #505 粗磨进刀进给速度 
 
  #506 精磨左进刀量 
 
  #507 精磨右进刀量
 
  #508 精磨进刀进给速度
 
  #509 光磨次数 
 
 ?#510 工件坐标原点设定值
 
  #511 金刚笔尺度 
 
 ?#514 丈量点设定值(体系主动设置
 
  #515 丈量点实测值(先由体系主动设置为设定值,再由操作者批改) 

   4 程序 

   (1)主程序 
 
  O0001 
 
  G98 
 
  IF#1004EQ 0G0T0 10;    (修砂轮开关,1:修砂轮,0:磨工件
 
  M98P0020;           (修砂轮 
 
  N10 M98P0010;         (磨工件 
 
  N20 M30
 
  (2)磨削子程序 
 
  O0010 
 
  G50 X#510;           (设置工件坐标原点
 
  G00 X#500+1.0];       (分段趋近工件
 
  G01 X#500+0.6F500 
 
 ?X#500 F #505 
 
 ?N30 M00;            (手动磨削,手动_主动磨削,主动磨削
 
  #9=#509
 
  #20=#5041;           (砂轮现在方位
 
 ?N50 IF#20 EQ #501G0T0 110; (粗磨完毕
 
  N60 IF#1006 EQ 0G0T0 60
 
  N70 IF#1005 EQ 0G0T0 70;  (粗磨加工,左端进给
 
    IF#20 EQ #501G0T0 110; (粗磨左端完毕
 
    #20=#20-#503
 
    IF#20 GE #501G0T0 80
 
  #20=#501
 
  N80 G01 X#20 F#505
 
  N90 IF#1006 EQ 0G0T0 90; (右端进给
 
    IF#20 EQ #501G0T0 110
 
    #20=#20-#504
 
    IF#20 GE #501G0T0 100?&nbs

     #20=#501 
 
  N100 G01 X#20 F#505
 
    G0T0 70 
 
    N110 IF#1007 EQ 0G0T0 120; (丈量开关,1:丈量,0:磨工件
 
    M98 P0030;           (丈量子程序
 
  N120 IF#1006 EQ 0G0T0 170(精磨加工
 
  N130 IF#1005 EQ 0G0T0 130(左端进给
 
     IF#20 EQ #502G0T0 180(精磨完毕
 
     #20=#20-#506 
 
     IF#20 GE #502G0T0 140
 
     #20=#502 
 
  N140 G01 X#20 F#508 
 
  N160 IF#1006 EQ 0G0T0 160(右端进给
 
     IF#20 EQ #502G0T0 190(精磨完毕
 
     #20=#20-#507
 
     IF#20 GE #502G0T0 170
 
     #20=#502;ZK)
 
  N170 G01 X#20 F#508
 
     G0T0 130 
 
  N180 IF#1005 EQ 0G0T0 180; (光磨
 
     IF#9 EQ 0G0T0 200
 
     #9=#9-1 
 
  N190 IF#1006 EQ 0G0T0 190
 
     IF#9 EQ 0G0T0 200
 
     #9=#9-1
 
     G0T0 180 
 
  N200 G28 U1.0
 
  N300 M99
 
  (3)砂轮修整子程序
 
  O0020
 
  G50 X#510
 
  G00 X#511 +1.0];    (砂轮分段趋近金刚笔
 
  G01 X#511 +0.6F500
 
    X#511 F#508 
 
  N400 M00;         (手动修整砂轮
 
    #21=#5041 
 
  N450 IF#1004 EQ 1G0T0 450
 
     #22=#511-#21;    (核算修整量
 
     #510=#510+#22;    (批改工件坐标原点设定值
 
  G28 U1.0
 
  M99 P20;          (回来主程序,完毕
 
  (4)丈量子程序
 
  O0030
 
     #19=#509;          (设置光磨走刀次数
 
     IF#1006 EQ 1G0T0 510
 
  N500 IF#1005 EQ 0G0T0 500; (丈量前光磨
 
     IF#19 EQ 0G0T0 520
 
     #19=#19-1 
 
  N510 IF#1006 EQ 0G0T0 510
 
     IF#19 EQ 0G0T0 520
 
     #19=#19-1?G0T0 500 
 
  N520 #514=#501;        (测点设定值
 
     #515=#514;        (预先赋值
 
  G28 U1.0 
 
  N530 M00;            (手动丈量,实测值输入#515) 
 
  N540 IF#1007 EQ 1G0T0 540
 
  G00 X#514 +1.0];
 
  G01 X#514 +0.6F500
 
    X#514 F#508 
 
    IF#515 EQ #514G0T0 580;   (不批改精磨量
 
    #23=#515-#514
 
    #510=#510+#23;       (批改工件坐标原点设定值
 
  G50 X#515;           (批改工件坐标原点
 
    #20=#515;          (批改砂轮现在方位
 
  N580 M99