PDA

Просмотр полной версии : Прерывания в Masterscada 4d.



DimaZnam90
28.02.2023, 09:45
Добрый день товарищи! Прошу оказать помощь! Есть ПЛК 110 60 c MasterScada 4d. Не могу понять, как вызывать функцию по событию. Необходимо вызывать прерывание по единице на определенном входе ПЛК. Не могу понять как реализовать данное прерывание. Имеется ли данный функционал у этого ПЛК. Подскажите.

Юрий Горелый2
02.03.2023, 22:01
Добрый день товарищи! Прошу оказать помощь! Есть ПЛК 110 60 c MasterScada 4d. Не могу понять, как вызывать функцию по событию. Необходимо вызывать прерывание по единице на определенном входе ПЛК. Не могу понять как реализовать данное прерывание. Имеется ли данный функционал у этого ПЛК. Подскажите.

а что Вы имеете ввиду под "прерыванием"? остановку какой то программы?
Вы можете написать программу if вход_какой_то = true then дальше написать программу...

DimaZnam90
03.03.2023, 15:29
а что Вы имеете ввиду под "прерыванием"? остановку какой то программы?
Вы можете написать программу if вход_какой_то = true then дальше написать программу...


Есть подпрограмма, которая не выполняется. Происходит инициализирующее событие (в данном случае 1 на определенном входе) Основной цикл прерывается и СРАЗУ начинает выполняется подпрограмма, она выполнилась и возвращаемся в основной цикл, в точку начала прерывания. Т.е. сработал датчик, сразу необходимо что-то сделать, выполнить какой-то код. СРАЗУ.

Вова13
05.03.2023, 01:46
Есть подпрограмма, которая не выполняется. Происходит инициализирующее событие (в данном случае 1 на определенном входе) Основной цикл прерывается и СРАЗУ начинает выполняется подпрограмма, она выполнилась и возвращаемся в основной цикл, в точку начала прерывания. Т.е. сработал датчик, сразу необходимо что-то сделать, выполнить какой-то код. СРАЗУ.

А у Вас это происходит не сразу, или вообще не происходит?
Вы прикрепите скрин с проблемой, может понятнее будет.

Злобин ОВ
07.03.2023, 05:11
Что-то я не помню в Мастер PLC функций привязки к прерываниям.
У каждого типа контроллера они свои и точно не по значению на входе произвольного дискрета.

Можно задать период опроса 50 мс для блока, который будет следить за его значением и запускать нужную обработку.
Я думаю, что можно и меньше (30 мс), если только для слежения, а не для постоянного запуска обработки.

У меня стабильно работал многопоточный драйвер СОМ-порта "реального" времени на 50 мс (для MS3).
А если нужно совсем маленький, то об этом нужно спрашивать у инсата в техподдержке.