УкраїнськаEnglishmRussian
Вход/Новый
В теме нет новых постов

[BugFixed] Сбой сервера OPCUA при добавлении большого количества узлов в контроллере OPCUA


Автор Сообщение
Сообщение создано: 02. 11. 2010 [17:13]
aNdrOS
Андрей
Создатель темы
Зарегистрирован(а) с: 07.05.2010
Сообщения: 102
Использую шлюз OPCDA->OPCUA Unified Automation UAGateway. Шлюз работает на удаленной машине в локальной сети. Если добавляю в контроллере OPCUA опенскады 60 и более тегов сервера, а потом включаю галочку, то сервер отваливается. Пишет сначала "0x80560000 сбой сервиса", потом "ошибка соединения". Возможно это ошибка сервера, но через UAExpert добавление такого же количества узлов проходит нормально.
Сообщение создано: 02. 11. 2010 [18:09]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
Надо разбираться.
60 - это всё в одном параметре или суммарно по разным?
Вероятно размер сообщения достиг лимита. Если так то нужно добавлять поддержку Кусков (Chunk) или просто ограничивать размер запроса.

Learn, learn and learn better than work, work and work.
Сообщение создано: 03. 11. 2010 [00:21]
aNdrOS
Андрей
Создатель темы
Зарегистрирован(а) с: 07.05.2010
Сообщения: 102
"roman" wrote:

Надо разбираться.
60 - это всё в одном параметре или суммарно по разным?
Вероятно размер сообщения достиг лимита. Если так то нужно добавлять поддержку Кусков (Chunk) или просто ограничивать размер запроса.

В одном параметре. Если запускать последовательно несколько параметров с меньшим количеством атрибутов (около 30), то можно добиться большего количества одновременно считываемых узлов. Какие варианты стоит протестировать? Вообще, к шлюзу можно подключиться, он должен быть доступен извне. Параметры подключения в личке уже отсылал.

[Сообщение редактировалось 1 раз(а), в последний раз 03.11.2010 в 00:22.]
Сообщение создано: 03. 11. 2010 [09:30]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"aNdrOS" wrote:

"roman" wrote:

Надо разбираться.
60 - это всё в одном параметре или суммарно по разным?
Вероятно размер сообщения достиг лимита. Если так то нужно добавлять поддержку Кусков (Chunk) или просто ограничивать размер запроса.

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

Не должно иметь значения.

Уменьшил количество запрашиваемых узлов в одном запросе "Read" до 25. Попробуйте теперь.

Learn, learn and learn better than work, work and work.
Сообщение создано: 03. 11. 2010 [18:54]
aNdrOS
Андрей
Создатель темы
Зарегистрирован(а) с: 07.05.2010
Сообщения: 102
"roman" wrote:

Уменьшил количество запрашиваемых узлов в одном запросе "Read" до 25. Попробуйте теперь.

Стало лучше. Подключал параметр с 285 атрибутами, потом еще 60 и потом еще 72. Суммарно 417 в трех параметрах. При этом, если параметр выключить, а потом снова включить, то появляется "ошибка параметра 0x3000". Ошибка повторяется не во всех случаях. Остальные параметры контроллера работают нормально.

Если атрибуты параметра в контроллере OPCUA зацеплены шаблонами для параметров контроллера "логический уровень", то при отключении параметра интерфейс скады зависает и ждет отключения каждого из атрибутов. Если атрибутов в параметре много, то зависание может продоложаться несколько минут (похоже связано с частотой обсчета параметров логического уровня).
при этом в консоль выводится:
JAVASCRIPT
Ошибка отключения узла. Восстановление включения узла.

Сообщение создано: 03. 11. 2010 [19:35]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"aNdrOS" wrote:

При этом, если параметр выключить, а потом снова включить, то появляется "ошибка параметра 0x3000". Ошибка повторяется не во всех случаях. Остальные параметры контроллера работают нормально.

Не знаю такой ошибки. Вообще отключение/включение параметров, при исполнении, применяется через время синхронизации конфигурации. Т.е. если Вы выключили параметр, прошла минута - он удалил данные этого параметра из списка опроса. Включили, данные в этом параметре сразу не появятся, а появятся через время синхронизации, через минуту.

"aNdrOS" wrote:

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

Не связано с частотой. Связано с временем ожидания освобождения, а оно составляет 2с на атрибут параметра.

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

Learn, learn and learn better than work, work and work.



18321