This is topic Включение только одной кнопки. in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/000438.html

Posted by Реуцкий Александр (Участник № / Member № 3206) on :
 
Есть 8 кнопок привязаных к аргументам типа Float, которые открывают и закрывают клапана.

Нам необходимо написать программу, которая будет включать только одну кнопку. если работает кнопка 2 например, то нельзя включить все остальные, пока кнопка 2 не будет выключена.

Нписал такую программу, но она работет только вниз. Т.е. если кнопка 2 включена, то все что находится ниже не включается, а если включить кнопку 1, то кнопка 2 выключается и включается кнопка 1.
Подскажите пожалуйста как заставить работать правильно программу. Какое условие нужно добавить? [prey / молящийся]
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Языки программирования, которые предлагает Trace Mode 6, позволяют без проблем программировать такие задачи.
Написание программ для решения пользовательских задач выходит за рамки функций технической поддержки.
 
Posted by Реуцкий Александр (Участник № / Member № 3206) on :
 
Уважаемая тех.поддержка не могли ли Вы просматреть листинг такой программы и подсказать в чем ошибка?

Все Клапаны привязаны к кнопкам.
Почему при нажатии например на кнопку 2, кнопки 3 и 4 нельзя нажать, а если нажать кнопку 1 выключается действующая кнопка 2 и ключается кнопка 1?

PROGRAM
VAR_OUTPUT Клапан_1 : REAL; END_VAR
VAR_OUTPUT Клапан_2 : REAL; END_VAR
VAR_OUTPUT Клапан_3 : REAL; END_VAR
VAR_OUTPUT Клапан_4 : REAL; END_VAR

if Клапан_1 == 1 then
Клапан_2=0;
Клапан_3=0;
Клапан_4=0;

end_if;

if Клапан_2 == 1 then
Клапан_1=0;
Клапан_3=0;
Клапан_4=0;
end_if;
if Клапан_3 == 1 then
Клапан_1=0;
Клапан_2=0;
Клапан_4=0;
end_if;
if Клапан_4 == 1 then
Клапан_1=0;
Клапан_2=0;
Клапан_4=0;
end_if;

END_PROGRAM
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Вам необходимо ввести глобальные переменные, которые запоминали бы предыдущее состояние кнопок. С их помощью можно анализировать какая кнопка уже была включена ранее и остается включенной, а какую пытаются включить только что.
По результатам анализа приоритет отдается ранее включенной кнопке, а остальные - выключаются.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2