VAR
i: INT :=0;
start: BOOL;
stop: BOOL;
rParam_: ARRAY [1..6] OF REAL := 2.2, 3.2, 2.5, 3.4, 6.7, 0.21;
END_VAR
-------------------------------
IF (start = TRUE) THEN
FOR i:=1 TO 6 DO
IF (rParam_[i] = 0.00) THEN
stop := TRUE;
ELSE
stop := FALSE;
END_IF
END_FOR
END_IF
Я шото накинул, но ... не пойму, нужно ли i сбрасывать перед последним END_IF? В таком случае (как сейчас) у меня мой stop всегда FALSE, и неважно какое значение rParam_, хоть нули, хоть троечку...
а симулятор показывает, что после одного "прохода", i-шка становится равная 7, и в следующий забег со start она всё равно равна 7... знач там нужно видимо её обнулять...
и мне бы так, чтоб проверка проводилась каждый цикл выполнения POU, а не с бита start.





Ответить с цитированием