求大神解释下这段程序的意思。

IF(GANTRY_CYCLE_WITHOUT_WORKPIECE==0)
IF (OPT_AIR_ZERO)
  IF(WITHOUT_PART_CUTTING<>1)
    $AC_TIMER[2]=0
    STOPRE
    REPEAT
      STOPRE
      ID=1 WHEN $AC_TIMER[2]>=5 DO SETAL(66711,"AIR ZERO ALARM")
    UNTIL(AIR_ZERO_OK==1)
    CANCEL(1)
  ELSE
     IF(WITHOUT_PART_CUTTING==1) ;Simulation cutting on check
      GOTOF MACHINING
     ENDIF
    MSG("CHECK AIR-ZERO SYSTEM AND TURN OFF -CYCLE WITHOUT WORKPIECE MODE-")
      G4F5
      GOTOF MC_FINISHED
  ENDIF
ELSE
  IF(WITHOUT_PART_CUTTING<>1) GOTOF NO_WORKPIECE
ENDIF

ENDIF ;GANTRY NO WORK

最佳答案

楼主与我是家门啊,楼主的程序中有很多自定义变量,下面就本人对程序的理解做一阐述吧:
IF(GANTRY_CYCLE_WITHOUT_WORKPIECE==0) 如果“龙门架循环没有加工工件(GANTRY_CYCLE_WITHOUT_WORKPIECE)”等于0 为真
IF (OPT_AIR_ZERO)  如果“选择了空回零”(OPT_AIR_ZERO)为真
  IF(WITHOUT_PART_CUTTING<>1) 如果 "没有工件正在切削"(WITHOUT_PART_CUTTING)不等于1 为真
    $AC_TIMER[2]=0 启动系统变量$AC_TIMER[2]定时器2
    STOPRE     禁止预读缓冲
    REPEAT     重复以下循环直到:UNTIL条件为真
      STOPRE   禁止预读缓冲
      ID=1 WHEN $AC_TIMER[2]>=5 DO SETAL(66711,"AIR ZERO ALARM") 选择模态有效,只要 定时时间大于5秒 为真 则 输出循环报警66711,"AIR ZERO ALARM"
    UNTIL(AIR_ZERO_OK==1) 直到:AIR_ZERO_OK==1 (空回零完成)
    CANCEL(1)  取消 报警的模态输出
  ELSE 否则
     IF(WITHOUT_PART_CUTTING==1) ;Simulation cutting on check  如果"没有工件正在切削"(WITHOUT_PART_CUTTING)等于1 为真
      GOTOF MACHINING  程序指针向前跳转到 MACHINING 标签处
     ENDIF   结束IF语句 第三级
    MSG("CHECK AIR-ZERO SYSTEM AND TURN OFF -CYCLE WITHOUT WORKPIECE MODE-")  输出消息:在显示屏中显示CHECK AIR-ZERO SYSTEM AND TURN OFF -CYCLE WITHOUT WORKPIECE MODE
      G4F5     程序指针到此等待5秒继续
      GOTOF MC_FINISHED  程序指针向前跳转到 MC_FINISHED 标签处
  ENDIF      结束IF语句 第二级
ELSE 否则
  IF(WITHOUT_PART_CUTTING<>1) GOTOF NO_WORKPIECE 如果 WITHOUT_PART_CUTTING<>1 为真,程序指针向前跳转到NO_WORKPIECE
ENDIF 结束IF语句 第一级
ENDIF ;GANTRY NO WORK 龙门架没有工作。


注意IF的嵌套使用 
可以看看高级编程手册。    祝你好运,家门。

提问者对于答案的评价:
谢谢!     感谢家门的解答   。  我现在在研究这个程序。希望有机会还能向你请教。我的邮箱 513708827@qq.com

最佳答案作者回复:
请教 谈不上,我也刚刚接触这个,有机会大家可以交流知识和经验嘛。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc154876.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月6日
下一篇 2017年6月6日

相关推荐

  • 840dsl系统主轴转速过高报警

    更换完主轴后,207901 主轴转速过高,主轴额定转速7500,当设定转速6000时,主轴转速已经显示七八千了,寻求技术指导。 图片说明:    最佳…

    2020年10月31日
  • 840D的MCP信号求援

    机床控制面板中的主轴停止信号前均有一个*号(输入I2.4、输出Q2.0),鄙人不知何故?设备的PLC程序中未见使用该信号(输入I2.4和输出Q2.0)但按下I2.4即主轴停止键后,…

    SINUMERIK 2019年6月11日
  • NCU中的PF灯亮

    我们一台NCU573.5的系统,现PF灯亮,通过STEP7监控,出现"写入时发生I/O访问错误".事件ID:16#2943.请问是何原因.谢谢. 最佳答案 NC…

    SINUMERIK 2017年11月16日
  • 工件自动测量

    镗铣加工中心  想通过测头找一个圆柱体的垂直中心,为确保主轴中心对准工件中心,所以只能通过旋转转台。相关的测量程序如何编写? 最佳答案 在圆柱的四个方向寻边找到…

    SINUMERIK 2020年10月31日
  • 802c数控系统MDA编程主轴旋转时,启动后s无变化

    802c数控糸统主轴手动启动后,s显示有变化,主轴旋转。但MDA编程后启动,S显示无变化主轴不旋转,请教大师什么问题? 最佳答案 MDA或者AUTO方式下主轴不转,检查一下主轴相关…

    SINUMERIK 2020年10月31日
  • PLC运行停止的解决办法

    在配802D sl机床调试中,为了PLC程序统一,一种情况是只用一个PP模块,还有一种情况是一个PP模块点不够用,还需再增加一模块,程序按两个PP模块做。出现以下问题:当…

    SINUMERIK 2018年3月6日
  • 840DSL的TCU与NCU通讯中断问题

    机床工作中突然出现这个问题,重启后恢复正常,怀疑是通讯异常问题。对调了另一台机床的TCU,开机后出现下图蓝屏状态。 然后整体对调了TCU和PCU,依旧出现如上蓝屏,最后更换了PCU…

    2020年10月31日
  • 840D简明调试手册

    各位同行:          大家好!   &nb…

    SINUMERIK 2018年12月5日
  • 什么是位置环增益

    一:位置环增益(速度环增益)具体指的是什么,它们对机床的整体性能会有什么影响?二:有没有802D-SL关于驱动数据的相关资料?p1620对轴运行精度会有多大的影响,该值该如果优化?…

    SINUMERIK 2018年12月2日
  • 840D主轴限速500

    nc程序M03S1000,主轴实际转速只有500,将倍率调到50%以下,速度可以正常调节,倍率超过50%速度均为500,请问这个是什么情况? 最佳答案 主轴是否有档位?检查机床参数…

    SINUMERIK 2020年11月1日