CNC程序里,IF,ELSE,和ENDIF有点多,对应不上了?

大家好,我们有台840Dsl的铣床,其中有段CNC 程序是:
。。。。。。
N1660 IF ($A_DBB[353]==1)OR($A_DBB[354]==1)
N1670 IF ($A_DBB[353]==1)AND($A_DBB[354]==1) GOTOF TAKO_2 
N1680 IF $P_CHANNO==2
N1690 IF $A_DBB[354]==1 ;Stat.3 -> Spindle deactivated?  
N1700 GETD(X_31)
N1710 TRAILON(X_31,X)
N1720 ELSE
N1730 D0
N1740 GOTOF TAKO_2 ;ST02: Jump when SP deactivated
N1750 ENDIF
N1760 ENDIF
N1770 IF $P_CHANNO==3
N1780 IF $A_DBB[353]==1 ;Stat.2 -> Spindle deactivated?  
N1790 GETD(X_21)
N1800 TRAILON(X_21,X)
N1810 ELSE
N1820 D0
N1830 GOTOF TAKO_2 ;ST03: Jump when SP deactivated
N1840 ENDIF
N1850 ENDIF
N1860 ENDIF
。。。。。。
看完之后,有点分不清哪个IF对应哪个ELSE,哪个ENDIF了。

请朋友们给些好的(理解)办法或方式?比如ELSE是对应它上面最近的尚未配对的IF,但ENDIF怎么配对?

谢谢。

最佳答案

N1660 IF ($A_DBB[353]==1)OR($A_DBB[354]==1)
N1670     IF ($A_DBB[353]==1)AND($A_DBB[354]==1) GOTOF TAKO_2 
N1680     IF $P_CHANNO==2
N1690          IF $A_DBB[354]==1 ;Stat.3 -> Spindle deactivated?  
N1700               GETD(X_31)
N1710              TRAILON(X_31,X)
N1720          ELSE
N1730               D0
N1740               GOTOF TAKO_2 ;ST02: Jump when SP deactivated
N1750          ENDIF
N1760      ENDIF
N1770      IF $P_CHANNO==3
N1780          IF $A_DBB[353]==1 ;Stat.2 -> Spindle deactivated?  
N1790              GETD(X_21)
N1800              TRAILON(X_21,X)
N1810          ELSE
N1820                D0
N1830               GOTOF TAKO_2 ;ST03: Jump when SP deactivated
N1840          ENDIF
N1850      ENDIF
N1860 ENDIF

提问者对于答案的评价:
谢谢,现在清楚多了。当时我错把:

N1670     IF ($A_DBB[353]==1)AND($A_DBB[354]==1) GOTOF TAKO_2 
N1680     IF $P_CHANNO==2

当成从属关系了。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日
下一篇 2020年10月31日

相关推荐

  • 828d PLC 怎么 拷贝出来

    828d   PLC 怎么 拷贝出来 最佳答案 可以用电脑使用软件PLC Programming tool通过…

    SINUMERIK 2020年10月31日
  • 802DsL系统中的主轴可以控制伺电机吗

    802Dsl(value)中三个联动轴巳使用而主轴没有用请问老师主轴能不能改位位置控制方式作为分度轴用。 最佳答案 是可以,可参考产品目录,地址如下(可下载的PDF文件):http…

    SINUMERIK 2017年11月19日
  • 西门子802S系统用RS232传输程序故障

    西门子802S系统用RS232传输程序时出现已用于PG通讯,如何解决呢? 图片说明:    最佳答案 编程软件要设置正确的COM口和通讯方式802S也要设置才行…

    2017年6月9日
  • 840D主轴换档传动比不起作用的问题

    4个机械档,PLC程序和用按钮(不用M41),来完成换档动作。现在机械换档功能都可以完成,但是系统如何接收4个传动比呢?把31050【1】~【4】、31060【1】~【4】传动比都…

    SINUMERIK 2017年12月1日
  • 810刮床问题

    有一台西门子810的刮床遇到如下问题:操作人员报修反映X轴加工尺寸不好,经检查发现X轴电机有抖动,连带X方向丝杆抖动。X轴方向动作正常,电机也没有发热。但是移动Y轴时发现偶尔会使X…

    SINUMERIK 2017年10月31日
  • 更换刀塔电机

    公司有进口车床用的是12工位的转塔刀架 是用伺服电机带动的 用的是绝对值编码器 840D系统 如果以后伺服电机坏了 更换电机后&n…

    SINUMERIK 2017年6月18日
  • 怎么实现找原点?

    大家好,我想问一下,SIMOVERT MASTERDRIVES MC订货号是 6ES7016-1EA51-Z 是不是就是伺服控制器啊?那伺服…

    SINUMERIK 2019年6月11日
  • 840DToolbox安装不了

    840DToolbox安装到最后就出现这样的画面 这样的该怎么解决  注册表和杀毒软件都已关闭 最佳答案 840D PL 还是使用…

    SINUMERIK 2021年7月5日
  • 828d伺服电机噪音

    828d数控车床刀架在的伺服电机有时候在待机或者运动时有刺耳的啸叫声 问题补充:828d的pid在哪里调呢? 最佳答案 先降低位置环增益参数MD32200试试,如果不行修改驱动数据…

    SINUMERIK 2020年10月31日
  • 西门子通用面板上六个自定义键的指示灯故障

    802D系统采用西门子通用面板,其上六个自定义键的指示灯故障。来自 PPI的X111口的电缆联结至通用面板的X1201口,来自 PPI的X222口的电缆联结至通…

    SINUMERIK 2020年10月31日