-
Значение выходных переменных обновляется только после вызова ФБ,
таймер запускается по фронту IN, повторный вызов с IN:=true к перезапуску не приводит. Для перезапуска надо сначала выполнить вызов с
IN:=false, затем снова с IN:=true.
Должно быть так:
CASE RO OF
0: (* Vkl*)
CH1:=CH1+1; // CH переменная нужна для не повторения запуска таймера
DO8a:= 1; DO8b:= 1;
IF CH1=1 THEN // Запуск таймера если CH1=1
myTON(IN:= TRUE ,PT:=t#5s);
END_IF;
myTON(); (*вызов ФБ для обновления переменных *)
IF myTON.Q THEN
(* Vikl *)
DO2e:= 0; DO2f:= 0; ; (* Wo2*)
myTON(IN:= FALSE) ; // сбрасываем счетчик
END_IF
IF CH1>20 THEN CH1:=2 END_IF;
1: (*Vkl*)
CH1:=0;
DO8a:= 1;
END_CASE;
Ваши права
- Вы не можете создавать новые темы
- Вы не можете отвечать в темах
- Вы не можете прикреплять вложения
- Вы не можете редактировать свои сообщения
-
Правила форума