最近在用SCL编程,遇到个疑问,if语句和while语句执行起来有什么不同,看了F1帮助然后用起来貌似感觉差不多。比如
IF #a = 1 THEN
#b := 10;
END_IF;
WHILE #a = 1 DO
#b := 10
END_WHILE;
执行起来结果是不是都是一样的。难道说WHILE满足条件就一直在执行此段程序,不在执行后面的语句了,直到不满足条件为止?PLC不是一直在重复执行指令的吗?IF语句不也是在循环执行吗?求解
看评论明白原来在C里程序是执行一次的,那那我明白这两个区别了。但既然PLC是重复循环执行的,那这两个语句为什么还存在于SCL中,为什么不取消掉其中一个指令?我想还有其他原因吧。