BaselAla Ответов: 0

Создание ретрансляции на языке структурированного текста


у меня есть программное обеспечение для некоторых comperssor , и я хочу включить его через 5 секунд после получения спроса на runnig и отключить его через 5 секунд после получения спроса на stop.
задержка запуска работает правильно , но задержка остановки не работает

Что я уже пробовал:

IF COMPRESSOR_IN = TRUE THEN
	TON_1(TRUE, t#5s);
	COMPRESSOR_OUT := TON_1.Q;	
ELSIF COMPRESSOR_IN = FALSE THEN
	TON_2(FALSE, t#5s);
	COMPRESSOR_OUT := TON_2.Q;
	TON_1(FALSE, t#5s);
END_IF;

Manish K. Agarwal

что такое TON_1 и TON_2?

BaselAla

они представляют собой готовый блок для создания задержки . их входы : bool и time . их выходы-это bool и time тоже .

11917640 Member

Задержка остановки не работает - это значит, что-то не так в функции TON_2. Вам нужно предоставить дополнительную информацию.

Gerry Schmitz

Сколько различных значений может иметь "COMPRESSOR_IN"? (Почему "elseif", если это bool?)

Почему TON_2 никогда не "включается"?

BaselAla

да , COMPRESSOR_IN-это bool .

BaselAla

здесь это работает :
TON_1(TRUE, t#5s);
COMPRESSOR_OUT := TON_1.Q;
TON_2(FALSE, t#5s);
ЕЩЕ
TON_2(TRUE, t#5s);
COMPRESSOR_OUT := NOT(TON_2.Q);
TON_1(FALSE, t#5s);
END_IF;

0 Ответов