0
Отвечен

виртуальный канал

Анатолий555 3 недели назад обновлен 2 недели назад 4

Для записи данных физического канала в виртуальный и последующего считывания.

создал конструкцию скрипта

// запись значения физического канала "PR200.w" в виртуальный канал "Логика"
Var
In1: Double;
Begin
In1 := ReadValue('pr200.w');
WriteValue('логика', In1);

end.

'pr200.w' физический канал int32. Связываю канал "логика" с цифровым индикатором и не могу получить данные. Что делаю не так?

Городить это стал так как хочу применить BlockDiagram для извлечения бит (UNPACK), но прямое связывание с переменной не проводит данные...?? Шаги: выбираю канал связанный с прибором- 'pr200.w', подаю его на вход unpack, привязываю к выходам, виртуальные каналы, выполняю тест скрипта (все хорошо, маска читается), но реализация не идет, монитор не получает значения. Да и просто без ФБ, связываю два канала - виртуальный молчит на выходе в монитор.

ХОРОШО, МНЕ ПОНРАВИЛОСЬ
Оценка удовлетворенности от Анатолий555 2 недели назад
Отвечен

День добрый.

Если хотите применять блоки то дополнительный скрипт не нужен. Делаете несколько виртуальных каналов типа bool, в одном из них добавляете блочную диаграмму, на вход блока UNPACK подаете физический канал, на выходы созданные ранее виртуальные каналы. В принципе все.

Спасибо. Работает. Ничего не пойму? каких только вариаций не использовал, не получалось... хотя понимаю, что так и надо, ведь смотрел анонс по скрипту ФБ . Из-за неполучаца залез в языковые скрипты... Значит был не внимателен. Тем неменее, подскажите, как правильно на паскале передать физ канал в виртуальный. Спасибо.

День добрый.

1. Скрипт по таймеру.

2. Читаем из физического, пишем в виртуальный.

..... сказать нечего... и присланная вам конструкция, тоже работает. Просто надо было отдохнуть. Спасибо еще раз!

Сервис поддержки клиентов работает на платформе UserEcho