Не могу подключиться к OPC-серверу

ActiveX, .NET, DLL
Ответить
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Не могу подключиться к OPC-серверу

Сообщение Boris_K »

Есть АСУТП на контроллерах GE Fanuc, для управления используется SCADA Simplicity. Также запущен сервер OPC UA (Kepware). Нужно программно подключиться к этому серверу, с этого же компьютера, чтобы из своей программы считывать некоторые теги. В :labview: установлен DSC.

Пытался через UPC UA -> Client -> Connect.vi (см. картинку). Кластер username/password заполнял нужными данными. Файл с сертификатом сервера подключал (на картинке не подключён). Выдаёт ошибку -356653 "The status of the OPC UA server is uncertain". Пробовал менять опции в кластере Security policy (все комбинации). И вообще чего только не пробовал. Если вместо Sign поставить вообще None, будет ошибка что сервер не поддерживает данный тип коммуникации. Ладно, заходил в настройки сервера, устанавливал там опцию None и перезапускал. При попытке соединения - ошибка что мол вообще сервер не найден, либо ошибка связи (в разных случаях, кучу вариантов перепробовал).

При этом сам сервер запущен и нормально работает. И со стороннего клиента (Matrikon OPC explorer) к нему удаётся без проблем подключиться и мониторить теги, и нигде даже не запрашиваются никакие файлы с сертификатами. Сервер называется CIMPLICITY.HMI.OPCServer.1. Вообще не понятно, почему в Connect.vi надо вводить этот Endpoint URL чтобы подключиться, по идее должен быть способ просто просмотреть запущенные серверы в системе, как это делает Матрикон, и подключиться к нужному. В :labview: пробовал альтернативный вариант, через Create and Configure IO Server Express VI - вот там при настройке как раз выдаётся список доступных серверов, и выбираю нужный. Но что выбирать в Process name - непонятно (доступных процессов нет). I/O server name, как я понял, можно придумать любое. Хелп не помог. Ещё в сети находил совет прописать в лабвьюшном ini строчку ole.AuthnLevel=1 - тоже не помогает.
Вложения
Безымянный.PNG
Безымянный.PNG (8.97 КБ) 8116 просмотров
Последний раз редактировалось Boris_K 04 окт 2018, 14:34, всего редактировалось 1 раз.
Race conditions - опасный и скользкий баг!
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Не могу подключиться к OPC-серверу

Сообщение Kosist »

Я с OPC не работал, но эту тему Вы просматривали? Попробуйте, может решит проблему...
Мы делили апельсин - много наших полегло...
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Re: Не могу подключиться к OPC-серверу

Сообщение Boris_K »

Ту тему тоже видел. Файл hosts смотрел, там никаких адресов вообще не прописано. Третий день трахаюсь с этим OPC.
Race conditions - опасный и скользкий баг!
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Не могу подключиться к OPC-серверу

Сообщение Blackman »

NI OPC клиента можно создать интерактивно или в проекте (новая библиотека->добавить IO Server->задать имя->выбрать тип сервера OPC->настроить->задеплоить) или открыть DSM (Distributed System Manager) -> добавить новый процесс (аналог библиотеки в проекте)->добавить IO Server-> дальше как в проекте. После раскрытия папки сервера он должен запуститься (если не был запущен) и появится дерево тегов сервера.
Upd: Проверьте тип OPC сервера. Возможно он не поддерживает спецификацию OPC UA.
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Re: Не могу подключиться к OPC-серверу

Сообщение Boris_K »

Blackman писал(а):Проверьте тип OPC сервера. Возможно он не поддерживает спецификацию OPC UA.
Поддерживает.
Race conditions - опасный и скользкий баг!
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Не могу подключиться к OPC-серверу

Сообщение Kosist »

Boris_K писал(а):Ту тему тоже видел. Файл hosts смотрел, там никаких адресов вообще не прописано. Третий день трахаюсь с этим OPC.
Так его нужно добавить туда самому...
Мы делили апельсин - много наших полегло...
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Не могу подключиться к OPC-серверу

Сообщение Blackman »

Boris_K писал(а):Есть АСУТП на контроллерах GE Fanuc, для управления используется SCADA Simplicity. ...
При этом сам сервер запущен и нормально работает. И со стороннего клиента (Matrikon OPC explorer) к нему удаётся без проблем подключиться и мониторить теги, и нигде даже не запрашиваются никакие файлы с сертификатами. Сервер называется CIMPLICITY.HMI.OPCServer.1.
Blackman писал(а):... Проверьте тип OPC сервера. Возможно он не поддерживает спецификацию OPC UA.
Boris_K писал(а):...Поддерживает.
Смотрим свойства Matrikon OPC explorer:
MatrikonOPC Explorer is an advanced OPC Client as it provides users with which OPC interfaces are supported in their OPC Server.
This will include DA, HDA, Alarms and Events (A&E) and OPC Security.
Другими словами Matrikon OPC explorer не поддерживает OPC UA спецификацию.-> Как Matrikon OPC explorer работает с сервером OPC UA?
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Re: Не могу подключиться к OPC-серверу

Сообщение Boris_K »

Kosist писал(а):Так его нужно добавить туда самому...
Пробовал, нет эффекта.
Race conditions - опасный и скользкий баг!
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Re: Не могу подключиться к OPC-серверу

Сообщение Boris_K »

Blackman писал(а):Другими словами Matrikon OPC explorer не поддерживает OPC UA спецификацию.-> Как Matrikon OPC explorer работает с сервером OPC UA?
Тот сервер поддерживает и OPC DA 2.0 и 3.0. Матрикон естественно работает по DA. Думал что сервер поддерживает и UA, видел в меню скады пункт "OPC UA configuration" - просто оказалось что это другой сервер, их там несколько.

В общем, нужно из :labview: подключиться к серверу OPC DA.

Видел вот это: http://www.ni.com/gate/gb/GB_EVALTLKTOPCLVGROVF/US - но оно платное и нужна :labview: 2013 и выше. Есть ли другие варианты?
Race conditions - опасный и скользкий баг!
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Не могу подключиться к OPC-серверу

Сообщение Borjomy_1 »

Как насчет трансляции тегов через OPC, который поддерживает и DA и UA?
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Re: Не могу подключиться к OPC-серверу

Сообщение Boris_K »

Раз через DSC не срастается, пока сделал через DataSocket. Попробовал с одним тегом - нормально работает. Но в справке написано что мол через DataSocket не очень хорошо если надо будет работать со многими тегами. Что конкретно имелось в виду - непонятно. В понедельник попробую несколько тегов.
Race conditions - опасный и скользкий баг!
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Не могу подключиться к OPC-серверу

Сообщение Borjomy_1 »

Boris_K писал(а):Раз через DSC не срастается, пока сделал через DataSocket. Попробовал с одним тегом - нормально работает. Но в справке написано что мол через DataSocket не очень хорошо если надо будет работать со многими тегами. Что конкретно имелось в виду - непонятно. В понедельник попробую несколько тегов.
Здесь как раз все прозрачно. На каждый тег свой коннект. Каждый тег опрашивается своей посылкой. Т.е высокие накладные расходы.
Boris_K
developer
developer
Сообщения: 281
Зарегистрирован: 28 янв 2015, 14:25
Версия LabVIEW: 2012 Pro

Re: Не могу подключиться к OPC-серверу

Сообщение Boris_K »

На каждый тег свой коннект. Каждый тег опрашивается своей посылкой. Т.е высокие накладные расходы.
Ну открою несколько коннектов и буду параллельно опрашивать. Мне нужно всего порядка 10 тегов. Это имеет какие-то реальные проблемы с надёжностью или скоростью работы? Или чисто неудобство кода?

ЗЫ. Кстати можно и без коннекта делать, просто сразу read, также работает. И такой способ предусмотрен как я понял. Хотя в справке явно о нём ни слова .
Race conditions - опасный и скользкий баг!
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: Не могу подключиться к OPC-серверу

Сообщение Borjomy_1 »

Нарыл на днях интересный эффект. Проблема: установлен DSC модуль, в том числе OPC сервер. Но динамическое подключение к тегам через палитру OPC UA не работает категорически. Все затыкается на функции Create, а конкретно - вызов Create Certificate.vi всегда завершается ошибкой 0x80000000. Не работает пример OPC UA Demo, как клиент, так и сервер. Притом, что другие методы (через создание I/O сервера, OPC client и т.п ) работают. А создать сертификат не удается. Некоторую наводку дало изучение свойств найденных сертификатов, которые доступны через настройки OPC сервера. Причина неработоспособности этой функции - имя компьютера. А именно кириллические символы (в свойствах сертификата они обозначались знаками вопроса). После переименования компьютера и перезапуска все заработало.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Коммуникация с приложениями»