Разве это может быть непонятным, в смысле, вход дружит и с токовым сигналом(4-20 мА) и сигналом напряжения(0-10 В)!
Вид для печати
Понятное дело, если Вы настроили вход на работу с ТС эти настройки действовать не будут! Там же имеются и настройки работы аналогового входа в дискретном режиме, они тоже действовать не будут, короче, там все настройки для аналогового входа. Которые не действуют в данный момент можно не настраивать, скажу больше, нет смысла их настраивать! Как всё запущено!
Овен не скрывает настройки, которые не действуют в данный момент, это минус в его карму и народ теряется!
Здравствуйте!
* * Помогите, пожалуйста, разобраться. (см. приложение) Задача: обнулить значение переменной Wt по команде с экрана путем установки значения Reset в TRUE, затем из программы вернуть Reset в FALSE.**
Спасибо!
Переменная ORes внутри ФБ WT1 никогда не принимает значения TRUE, нет условий.
Попробуйте
Код:
if Sec and IsOn then OTime:=ITime+1; end_if
if Res then OTime:=0; end_if
if OTime = 0 then ORes:=true; else ORes:=false; end_if;
Я расчитывал, что Reset:=TRUE, введенный через экран, продержится достаточно, чтобы обнулить Wt внутри ФБ WT1, и уже после этого снова примет значение FALSE. В чём ошибка? (Кажется мне, всё дело где-то в порядке выполнения)
Сигнал ORes - это сигнал, что сброс выполнен. Осталось только прикрутить его к сбросу Reset, может быть через таймер. То есть сброс ресета производить по истечении какого-либо времени. В других средах есть операторы SET\RST, но тут с этим проблемы.
Поставьте для переменной Reset свойство "Запись в конце цикла"
Вложение 87614
Всё дело в том, что, похоже, после присвоения Reset:=TRUE с экрана происходит присвоение Reset:=ORes, и только потом Res:=Reset при инициализации ФБ WT1, то есть, именно в порядке исполнения. Таймеры тут не помогают ровно по той же причине - Reset становится FALSE непосредственно после ввода, а, скорее всего, и в процессе ввода - программа-то фоном крутится.
Большое спасибо! Заработало.