Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Скрипт по изменению  (Прочитано 1229 раз)

Серега

  • Старожил
  • ****
  • Сообщений: 285
    • Просмотр профиля
Скрипт по изменению
« : 19 Октября 2020, 11:46:51 »
Добрый день!
Столкнулись с проблемой при передаче данных в ПЛК.
Что заметили.
Есть таблица, заполненная значениями через Table.RunSQL().
Берем строку, парсим и соответствующим переменным присваиваем значение. Отсылаем в ПЛК.
Ждем ответа от ПЛК. Пришел правильный ответ передает следующую строку.
И вот при анализе ответа возникает не понятная ситуация.
Возьмем для примера переменные SET и GET.
В ОРС  SET и GET с одинаковым значением, но в поле вывода на клиенте имеют разные значения.
Далее мы так думаем срипт видит что значения разные, хотя в орс одинаковые, и далее по алгоритму происходит ошибка.
Можете дать пояснения?

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3214
    • Просмотр профиля
    • Simple-Scada
Re: Скрипт по изменению
« Ответ #1 : 22 Октября 2020, 15:19:45 »
Здравствуйте.

Разные значения в поле в скаде и в OPC могут быть по следующим причинам:
1. Проблемы связи, когда скада отправила значение на присвоениe, OPC-сервер присвоил его, но не вернул результат в скаду;
2. Значение в поле не успело обновиться на тот момент времени, когда Вы его просматривали. Скада получает новые значения от OPC-сервера с заданной в настройках переменной частотой опроса. Допустим частота опроса равна 10, тогда в после присвоения в OPC-значения могут быть уже одинаковыми, а в скаде станут одинаковыми спустя 10 секунд.
3. В скаде есть какие-то проверки или условия которые работают со значением переменной в поле и они не дают отобразить актуальное значение.
4. Отличаются настройки переменных Set и Get в скаде. Например, если у одной переменной включен фильтр или визуальная шкала, то значения на OPC-сервере будут одинаковыми, но в скаде эти переменные будут иметь разные значения.