
Сообщение от
CFC-ST
я когда пробовал - не получилось. сейчас вопрос стал актуальным. затруднения были в том, что если я объявил переменную, а затем её значение присвоил сетевой переменно, то на на мнемосхеме обычная переменная слева- сетевая справа.
Те сетевая получает значение. А вот если сетевая в свою очередь изменяется с панели, то теперь сетевая должна изменить "обычную" переменную. И визуально на мнемосхеме данные должны пойти в "обратную" сторону. Как вроде так не бывает.
Это называется синхронизация значений переменных.
Owen.jpg
Код:
function_block Exchange
var_input
netVar : udint;
ramVar : udint;
end_var
var_output
Q : udint;
end_var
if netVar <> Q then Q := netVar; ramVar := netVar; end_if
if ramVar <> Q then Q := ramVar; end_if
end_function_block
Идея заключается в том, чтобы сравнивать входное значение с текущим и, если оно изменилось, то его значение переносится в синхронизируемую переменную.