ну тогда ищите, почему у вас таймер постоянно перезапускается. ТР работает просто, по стартовому импульсу на входе отрабатывает свою задержку и все.
Даже если на входе выставить 0 до истечения задержки. Если он у вас перезапускается, значит вы дергаете его вход IN где-то в коде.
Наверное самая примитивная ошибка Авария И НОТ ТР.Кью - запустить таймер. Вот он и будет стартовать каждый раз, когда будет сам выключаться
Последний раз редактировалось melky; 08.01.2025 в 15:29.
Заметил не понятное для меня поведение Slave HMI:
На вкладке Каналов указаны 10 каналов с определенными регистрами и длинами (все по 10 раз перепроверил, привязка правильная).
Каналы HMI.png
На вкладке Соотнесения входов/выходов ситуация непонятная. Присутствуют нужные мне каналы, а также сторонние каналы (то ли дублирующие, то ли еще какие). Удалить их не получается.
Соотнесение каналов HMI.png
В процессе отладки менял параметры каналов по нескольку раз. Могло это произойти из-за этого?
Вижу только один выход - удалить канал и заново создать. НО! К некоторым каналам привязаны по 200-300 переменных, не хотелось бы заново этим заниматься.
С каналами разобрался, все переделал - работает
Наблюдал за поведением переменных при наступлении события (при нажатии кнопки, должна загореться лампа и пропищать 2 секунды зуммер; при отключении кнопки, лампа гаснет):Сообщение от melky
При нажатии кнопки на модуле входов загорается соответствующий вход и переменная, привязанная к этому входу, меняет свое значение с Ложь на Истина.
Переменная1.png
Но почему-то это значение не передается в локальные переменные двух ФБ.
Переменная5.png
Из Списка перекрестных ссылок видно, что переменная объявляется один раз в Главной программе, и два раза читается ее значение при вызове двух ФБ. Что означают остальные записи IoConfig_ErrorPou? В одной из них также идет запись. Может в этом дело?
Переменная3.png
В обеих ФБ, код завязанный на этой переменной работает некорректно, так как внутри ФБ значения привязанных переменных не меняются.
ФБ1.png ФБ2.png
https://owen.ru/forum/attachment.php...1&d=1737201431
Ну не понимаю я ST, отстаньте от меня- все, что я вижу и могу предположить, что в True у вас 17-й индекс регистра. А в цикле FOR у вас последний индекс регистра, который false.
И далее по программе у вас все перетирается по несколько раз.
Все передается. Вы мониторите (17) бит, а в онлайне отображается последний для (21) структуры.
PS Пока изучал скрины и писал ответ, уже прилетело 2 ответа выше...
PS2 А еще столько много лишнего кода даже в этих нескольких скринах, аж кровь из глаз.
Последний раз редактировалось МихаилГл; 18.01.2025 в 15:27.