PDA

Просмотр полной версии : Masterscada обработка тегов уставок SP



Niko7
28.05.2019, 14:34
Добрый день.
Как правильно обработать тег уставки, если он в контроллере в формате целого числа.
Например я вижу тег со значение 70 тип int, реально это 7.0 в контроллере.
Мне надо изменять уставку с десятыми долями. Соответственно я должен видеть и изменять 7.0 в поле ввода/вывода.
Где правильно преобразовывать тип?

SCADAMaster
28.05.2019, 14:48
Какой ОРС сервер используется?
Если наш Modbus Universal, то в нем можно сразу обработать - с помощью функции Пересчет.

KrAssor
28.05.2019, 14:54
Добрый день.
Не очень понятно, в каком формате, где и какие значения:
в контроллере в формате целого числа и
реально это 7.0 в контроллере - противоречат друг другу.
Если у Вас в контроллере целое значение (70), а на верхнем уровне формат физических единиц другой, то введите множитель параметра.
1. Принимаете значение от контроллера, делите на множитель (в примере у Вас множитель равен 10), приводите к вещественному типу, выводите значение на верхний уровень (контроллер -> 70/10=7.0 -> верхний уровень).
2. Передаете значение от верхнего уровня в контроллер - берете число с верхнего уровня, умножаете на делитель, приводите к целому типу, передаете значение в контроллер. (кверхний уровень ->7.0*10=70 -> контроллер)

P.S.: Вот товарищ уже подсказал выше, что при использовании OPC сервера уже есть возможность пересчета с произвольным множителем.

Niko7
28.05.2019, 15:18
У нас Universal Modbus server.
Функция пересчет работает в обе стороны?
Пробовал не получается в обе стороны...или я что то не так делаю?
тип данных устройства int
тип данных сервера float
42941

Уточняю по поводу вопроса. Из контроллера читаю 70 int, что соответствует уставке 7.0 и соответственно отображать в скаде в поле ввода/вывода надо 7.0
В поле ввода/вывода скады мне надо вбивать например 7.5 а в контроллер передавать 75.

SCADAMaster
28.05.2019, 15:29
Работает в обе стороны.
Проверяйте внимательно - все должно работать. Функционал много раз применялся.

Niko7
28.05.2019, 15:50
Спасибо! Работает. OPC показывает значения сервера это меня и сбило столку.