八爷* 发表于 2016-9-9 10:03:12

UG编程宏程序问题

我们厂里机床FANUC 0i,在执行IF【#1LE36】 GOTO10……时候,程序在#1=37的时候,还要去执行N10那里,如果换成LT。它就不会。各位你们知道什么原因吗?谢谢!!!

习惯le孤单 发表于 2016-9-9 13:35:47

LE是小于等于,那么等于36的时候还是会去N10,而LT是小于,当等于36的时候不会再跳到N10

八爷* 发表于 2016-9-9 15:07:23

楼上说的对,但是机床他就是不执行,当#1=37时候它还是去了N10那里,是不是机床参数问题啊

aloveshy 发表于 2016-9-10 19:07:27

八爷 发表于 2016-9-9 15:07
楼上说的对,但是机床他就是不执行,当#1=37时候它还是去了N10那里,是不是机床参数问题啊

要看你看写的宏程序逻辑对不

如云得龙 发表于 2016-12-15 20:32:10

一种可能是公差设置的问题,公差为1的话把36,37看成相等没有问题,但是判断小于就不行。
另一种可能是在下面程序有别的语句跳到n10,并不是该语句跳转的结果

如云得龙 发表于 2016-12-16 21:16:19

补充一下,在发那科系统中36,37及1会被认为是0.036,0.037及0.01,除非书写成36.,37.,及1.的形式。因此我觉得可能公差的原因多一些。
页: [1]
查看完整版本: UG编程宏程序问题