Добрый день.
Подскажите пожалуйста как сделать что бы одна кнопка выполняла и функцию включения и выключения в программе Simatic?
Т.е при нажатии в первый раз запускалась устройство, при нажатии второй раз выключалось и т д ..
[?]: 2 функции на одну кнопку - ВКЛ/ВЫКЛ
Re: [?]: 2 функции на одну кнопку - ВКЛ/ВЫКЛ
а что-нибудь в этом духе
if (GetTagBit("tag")==1) SetTagBit("tag",0);
else SetTagBit("tag",1);
З.Ы. если только в WinCC...
if (GetTagBit("tag")==1) SetTagBit("tag",0);
else SetTagBit("tag",1);
З.Ы. если только в WinCC...
Re: [?]: 2 функции на одну кнопку - ВКЛ/ВЫКЛ
Пользуюсь этим способом много лет, работает безотказно на любых контроллерах.
I 0.0 - это твоя кнопка внешняя или поменяй на тэг из "верхов"
M0.0 и M1.0 - "паразитная одноразовая память"
M0.1 - выход, который тебе надо переключать, можешь прилепить его куда угодно.
Code: Select all
Net 1
A I 0.0
FP M 1.0
= M 0.0
Net 2
A M 0.0
AN M 0.1
O
AN M 0.0
A M 0.1
= M 0.1
M0.0 и M1.0 - "паразитная одноразовая память"
M0.1 - выход, который тебе надо переключать, можешь прилепить его куда угодно.
Re: [?]: 2 функции на одну кнопку - ВКЛ/ВЫКЛ
Чтобы не было путаницы надо выработать аксиому об адресе для аппаратного таймера Тактовый меркер (clock memory)Владимир wrote:M0.0 и M1.0 - "паразитная одноразовая память"
M0.1 - выход, который тебе надо переключать, можешь прилепить его куда угодно.
МВ0 ему самое место
Пример записи в таблице символовCode: Select all
Pulse_10_HZ m0.0 // 0,1 сек мерцание Pulse_5_HZ m0.1 // 0,2 сек быстромигающий Pulse_2_5_HZ m0.2 // 0,4 сек быстромигающий Pulse_2_HZ m0.3 // 0,5 сек мигающий Pulse_1_25_HZ m0.4 // 0,8 сек мигающий Pulse_1_HZ m0.5 // 1 сек мигающий Pulse_0_625_HZ m0.6 // 1,6 сек медленно мигающий Pulse_0_5_HZ m0.7 // 2 сек очень медленно мигающий
Re: [?]: 2 функции на одну кнопку - ВКЛ/ВЫКЛ
Наверно проще, чем так не бывает
X(
A "Кнопка"
FP "Вспом _Меркер_Фронта"
)
X "Катушка_Реле"
= "Катушка_Реле"
X(
A "Кнопка"
FP "Вспом _Меркер_Фронта"
)
X "Катушка_Реле"
= "Катушка_Реле"