Добрый день!
Установлен ОРС-сервер OWEN. он опрашивает дискретный вход с тактовой кнопкой.
период опроса 20 Мс. визуально видно, что пропусков кратковременного нажатия нет.
созданы две переменные. Teg1 (с сервера) и count (виртуальная)
в Simple-Scada 2 опрашивает Teg1 с периодом 20 мс
создано поле с переменной Teg1, по cобытию ondatachange отрабатывает скрипт
begin
if Teg1.AsBool = true then
Count.Value := Count.AsInt + 1
end.
кратковременные нажатия на тактовую кнопку пропускаются. долговременные - нет.
прошу помочь в обработке кратковременных нажатий.
Здравствуйте.
Следует убедиться, что в редакторе у переменной "Teg1" свойство "Частота опроса" установлено = 20мс. Если с этим все в порядке, то проблема может быть в том, что в скрипте проверяется условие "if Teg1.AsBool = true then", а при выполнении скрипта переменная "Teg1" уже может иметь значение "False". Это легко проверить, удалив из скрипта условие:
begin
Count.Value := Count.AsInt + 1;
end.
Если после этого, все нажатия будут приводить к увеличению счетчика "Count", то проблема в том, что при выполнении скрипта переменная "Teg1" уже может иметь значение "False".