OPCDA время чтения

Я опрашиваю сервер OPCDA для данных каждую секунду. Я использую стандартные библиотеки.NET DLL от OPC Foundation для достижения этой цели.

Мой сервис расположен на том же сервере, что и сервер OPCDA. Тем не менее, мое время чтения часто составляет около 900-1000 мс. Это нормально или что-то не так в моем коде или настройке сервера? Я опрашиваю около 20 тегов OPCDA. Каково "стандартное" время отклика такой операции или это невозможно сказать?

3 ответа

Решение

Это не звучит нормально, но невозможно сказать наверняка, не зная, каков источник данных.

Проверьте документацию интерфейса OPC DA, который вы используете для получения данных с сервера, и какие параметры вы передаете ему.

Если вы используете синхронное чтение, то проблема определенно на стороне сервера или на его бэкэнде (это означает, что серверу требуется слишком много времени для чтения фактических данных).

Если вы используете асинхронное чтение (подписка), проверьте параметр с именем "частота обновления". Он определяет, как часто новые данные будут отправляться клиенту. Например, если это 1 секунда, клиент получит новые данные НЕ быстрее, чем за 1 секунду.

Подписки поддерживаются всеми версиями OPC DA. Если сервер не реализует этот интерфейс, вы не сможете читать асинхронно и получите код ошибки типа "не реализовано".

Какой сервер OPC вы используете? Там может быть настройка, чтобы держать фиксированную частоту обновления или уважать частоту обновления клиента.

Другие вопросы по тегам