Wonderware System Platform и OPC UA
Автор |
Повідомлення |
Повідомлення створено: 26. 10. 2015 [15:55]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"rxs5" wrote:
Скриншот из журнала логов WW также во вложении с небольшим интервалом до появления первого сообщения об ошибке.
Не валите всё в кучу!
Я Вам говорил, что тут три разных проблемы, две из которых понятны.
Если мы разбираемся с первой, не отображением атрибутов, тогда не пытайтесь сейчас бравзить "DAQ.SBK.sbk_bmsb". И вообще бравзите одну конкретную ветвь, с наличием там атрибутов, скажем: DAQ.SBK.sbk2015mips.A1_1_.
Вот только для неё сделайте дамп WireShark и логи WW!
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 26. 10. 2015 [17:48]
|
rxs5
Дмитрий Лыков
In tech support
Автор теми
Зареєстрован(а) с: 06.11.2013
Повідомлення: 205
|
"roman" wrote:
Не валите всё в кучу!
Я Вам говорил, что тут три разных проблемы, две из которых понятны.
Если мы разбираемся с первой, не отображением атрибутов, тогда не пытайтесь сейчас бравзить "DAQ.SBK.sbk_bmsb". И вообще бравзите одну конкретную ветвь, с наличием там атрибутов, скажем: DAQ.SBK.sbk2015mips.A1_1_.
Вот только для неё сделайте дамп WireShark и логи WW!
Ошибки, которые указывал ранее, появляются с самого начала - при подключении клиента к серверу. Далее уже браузинг выполняется при наличии в пакетах ServiceFault -> BadSessionIdInvalid
Но дождался момент, когда фоновый обмен не идет и сделал переход с одного элемента на другой, чтобы выполнился браузинг.
В итоге в дампе wireshark очень короткий лог (вложение), в логе WW сообщений на тот момент времени не появилось.
Вкладений файл
|
Повідомлення створено: 26. 10. 2015 [18:01]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"rxs5" wrote:
Ошибки, которые указывал ранее, появляются с самого начала - при подключении клиента к серверу. Далее уже браузинг выполняется при наличии в пакетах ServiceFault -> BadSessionIdInvalid
Да ну, в полном дампе она появляется только после бравзнга "DAQ.SBK.sbk_bmsb", а в первом так её и вообще нет.
"rxs5" wrote:
Но дождался момент, когда фоновый обмен не идет и сделал переход с одного элемента на другой, чтобы выполнился браузинг.
В итоге в дампе wireshark очень короткий лог (вложение), в логе WW сообщений на тот момент времени не появилось.
В итоге там только бравзинг "DAQ.SBK.sbk2015mips.C1_1_2_6_", который пустой и не "DAQ.SBK.sbk2015mips.A1_1_"
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 26. 10. 2015 [18:14]
|
rxs5
Дмитрий Лыков
In tech support
Автор теми
Зареєстрован(а) с: 06.11.2013
Повідомлення: 205
|
"roman" wrote:
Да ну, в полном дампе она появляется только после бравзнга "DAQ.SBK.sbk_bmsb", а в первом так её и вообще нет.
На текущий момент все лишние контроллеры в OpenSCADA были удалены, и остался 1, с реальными данными.
Проблема 1 - "Узел-параметр "DAQ.SBK.sbk_bmsb" имеет жуткое количество атрибутов" - отсутствует.
Проблема 2 - действительно не появляется, видимо из-за того, что обрывов не происходит.
Но при этом атрибуты узлов при браузинге не отображаются в клиенте, и выбрать их для подключения к переменным невозможно.
Во вложении дамп от начала подключения и включая переход по узлам для браузинга.
А вот в логах клиента WW есть сообщение
Client Recieved incorrect information for Node: ns=2;s=DAQ.SBK.sbk2015mips.A1_1_.CHTYPE from server. Node is ignored
И похоже, что это сообщение указывается для всех атрибутов всех узлов.
Во вложении лог из WW с началом процесса появления сообщения об ошибках.
Вкладений файл
|
Повідомлення створено: 26. 10. 2015 [19:02]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"rxs5" wrote:
И похоже, что это сообщение указывается для всех атрибутов всех узлов.
Во вложении лог из WW с началом процесса появления сообщения об ошибках.
Ну я не знаю что ему там не понравилось, поскольку они идентичны тому, что в OPC-UA сервере:
Property | OPC_UA server | OpenSCADA
---------------------------------------------
ReferenceTypeId: | 0:35 | 0:35
IsForward: | True | True
NodeId: | 4:MassTest/Folder_03/Folder_03/Item_0001 | 2:DAQ.System.AutoDA.UpTimeSystem.SHIFR
BrowseName: | 4:Item_0001 | 2:SHIFR
DisplayName: | en:Item_0001 | en:SHIFR
NodeClass: | Variable (0x00000002) | Variable (0x00000002)
TypeDefinition: | 63 | 63
Да, и "Incorrect information" конечно очень исчерпывающе и полезно...
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 26. 10. 2015 [19:52]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"roman" wrote:
1. Узел-параметр "DAQ.SBK.sbk_bmsb" имеет жуткое количество атрибутов, что они заняли более 80 TCP пакетов по 1500 байт, т.е. более 100 кБайт и клиент оборвал соединение, наверное по превышению размера chunk (куска), которые OpenSCADA не поддерживает.
Ну да, а размер буфера - куска 65кБ.
"roman" wrote:
2. После обрыва клиент установил новое подключение и создал канал безопасности, без создания сеанса, как было ранее с другими клиентами, и насал слать запросы к старому сеансу, что в OpenSCADA считается ошибкой. Но такое ощущение, что у клиентов не считается. И не видно в спецификации OPC UA, что так можно.
Нашёл, Part6, раздел 7.1.6 Error Recovery. Завтра добавлю.
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 27. 10. 2015 [20:03]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"roman" wrote:
Нашёл, Part6, раздел 7.1.6 Error Recovery. Завтра добавлю.
Добавил, патч включен сюда — собирайте.
Не стал лить в репозиторий на сборку, поскольку проверить возможности нет, а там отладочные сообщения остались.
Возможно и первая проблема уйдёт, после установки массива "Diagnostic Info Array" в 0, вместо -1.
Т.е. пробуйте бравзить "DAQ.SBK.sbk_bmsb" и смотрите, как он будет подключение восстанавливать, после большого куска.
В целом эта процедура очень неопределённая и не имеет очевидных критериев по которым нужно восстанавливать. На данный момент восстанавливает при условии если номер последовательности не начальный, разница текущей последовательности к последней не более 10, совпадает адрес и сертификат клиента.
Learn, learn and learn better than work, work and work.
Вкладений файл
OPC_UA.patch (Тип файлу: text/x-patch, Розмір: 11.2 кілобайтів) — 719 завантажень
|
Повідомлення створено: 30. 10. 2015 [19:17]
|
rxs5
Дмитрий Лыков
In tech support
Автор теми
Зареєстрован(а) с: 06.11.2013
Повідомлення: 205
|
"roman" wrote:
Добавил, патч включен сюда — собирайте.
Не стал лить в репозиторий на сборку, поскольку проверить возможности нет, а там отладочные сообщения остались.
Возможно и первая проблема уйдёт, после установки массива "Diagnostic Info Array" в 0, вместо -1.
Т.е. пробуйте бравзить "DAQ.SBK.sbk_bmsb" и смотрите, как он будет подключение восстанавливать, после большого куска.
В целом эта процедура очень неопределённая и не имеет очевидных критериев по которым нужно восстанавливать. На данный момент восстанавливает при условии если номер последовательности не начальный, разница текущей последовательности к последней не более 10, совпадает адрес и сертификат клиента.
>> Т.е. пробуйте бравзить "DAQ.SBK.sbk_bmsb"
данного контроллера уже нет, он оставался от тестовых работ с оборудованием ранее, и добавить его невозможно.
Ошибка ServiceFault -> BadSessionIdInvalid тоже не проявляется, по крайней мере за первые 1500 пакетов обмена.
Сейчас больше интересует решение последней проблемы, которая была указана при последних проверках.
Client Recieved incorrect information for Node: ns=2;s=DAQ.System.AutoDA.Statistic_dm-0.wrSp from server. Node is ignored
Причем это касается даже системных нодов как видно из лога.
Выполнил проверку с указанным патчем, но атрибуты в клиента WW все также не отображаются. Возможно не отображение атрибутов связано с указанной ошибкой от клиента OPC UA в WW.
|
Повідомлення створено: 31. 10. 2015 [09:58]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зареєстрован(а) с: 12.12.2007
Повідомлення: 3750
|
"rxs5" wrote:
>> Т.е. пробуйте бравзить "DAQ.SBK.sbk_bmsb"
данного контроллера уже нет, он оставался от тестовых работ с оборудованием ранее, и добавить его невозможно.
Ошибка ServiceFault -> BadSessionIdInvalid тоже не проявляется, по крайней мере за первые 1500 пакетов обмена.
За первые и не будет и зря Вы убрали совсем, поскольку это была удобная конфигурация для решения вопросов восстановления обмена и отладки "кусков"!
"rxs5" wrote:
Сейчас больше интересует решение последней проблемы, которая была указана при последних проверках.
Client Recieved incorrect information for Node: ns=2;s=DAQ.System.AutoDA.Statistic_dm-0.wrSp from server. Node is ignored
Причем это касается даже системных нодов как видно из лога.
Это каких системных?
"rxs5" wrote:
Выполнил проверку с указанным патчем, но атрибуты в клиента WW все также не отображаются. Возможно не отображение атрибутов связано с указанной ошибкой от клиента OPC UA в WW.
Возможно, но Вы можете сказать с чем конкретно в протоколе, поскольку я существенной разницы не вижу. Осталось различие только в NS, который однако сопоставлен правильно с перечнем доступных.
И если это сообщение действительно актуально для системных узлов, тогда это точно не NS, укажите на такой узел!
Learn, learn and learn better than work, work and work.
|
Повідомлення створено: 09. 11. 2015 [11:58]
|
rxs5
Дмитрий Лыков
In tech support
Автор теми
Зареєстрован(а) с: 06.11.2013
Повідомлення: 205
|
"roman" wrote:
Это каких системных?
Под системными указывал ноды в DAQ в узле System, и пример выше приводил с конкретным нодом DAQ.System.AutoDA.Statistic
"roman" wrote:
Возможно, но Вы можете сказать с чем конкретно в протоколе, поскольку я существенной разницы не вижу. Осталось различие только в NS, который однако сопоставлен правильно с перечнем доступных.
С чем конкретно в протоколе это связано не знаю, поддержка клиента пока не отвечает.
"roman" wrote:
И если это сообщение действительно актуально для системных узлов, тогда это точно не NS, укажите на такой узел!
Уже указал выше.
Проверил на последней сборке 2304, но атрибуты также не отображаются, но они точно имеются. Хотя в демо сервере UA атрибуты отображались.
На всякий случай записал дамп wireshark
Вкладений файл
|
|
|