Доброго времени суток!
Пытаюсь сделать клиент OPC UA.
Установил Prosys OPC UA Simulation Server.
* Сначала взял библиотеку freeopcua. Она собралась и заработала, даже собрался example_client.cpp.
Смутило то, что на C++ версию библиотеки документации практически нет (Work in progress: documentation).
* Затем взял сишную. open62541. Собрал в лоб — не заработала, говорит, connection refused, не могу аутенфицироваться.
Приделал туда OpenSSL и mbedTLS. Несмотря на очень приличную документацию, решение проблемы
не нашел, даже отключив на сервере всякие проверки. В общем, через пару дней стал искать дальше.
* Пошел дальше, взял гошную gopcua. И в ней такие же проблемы с аутенфикацией. На всякий случай попробовал еще парочку
симуляторов, но с тем же результатом.
Сейчас ломаю голову:
* Если сервер хочет какие-то сертификаты и прочую безопасность, почему работает freeopcua?
* Если нет, почему не работают другие библиотеки?
Если кто-то сталкивался, скажите, пожалуйста, куда смотреть, как это должно работать?
Здравствуйте, plastictown, Вы писали:
P>Доброго времени суток! P>Пытаюсь сделать клиент OPC UA.
P>Установил Prosys OPC UA Simulation Server.
P>* Сначала взял библиотеку freeopcua. Она собралась и заработала, даже собрался example_client.cpp. P> Смутило то, что на C++ версию библиотеки документации практически нет (Work in progress: documentation).
P>* Затем взял сишную. open62541. Собрал в лоб — не заработала, говорит, connection refused, не могу аутенфицироваться. P> Приделал туда OpenSSL и mbedTLS. Несмотря на очень приличную документацию, решение проблемы P> не нашел, даже отключив на сервере всякие проверки. В общем, через пару дней стал искать дальше.
P>* Пошел дальше, взял гошную gopcua. И в ней такие же проблемы с аутенфикацией. На всякий случай попробовал еще парочку P> симуляторов, но с тем же результатом.
P>Сейчас ломаю голову: P>* Если сервер хочет какие-то сертификаты и прочую безопасность, почему работает freeopcua? P>* Если нет, почему не работают другие библиотеки?
P>Если кто-то сталкивался, скажите, пожалуйста, куда смотреть, как это должно работать?
P>ЗЫ: все собираю на Windows10 под VS 2015.
Какие настройки сервера и какие настройки клиента используются?
Здравствуйте, SаNNy, Вы писали:
SNN>Какие настройки сервера и какие настройки клиента используются?
Я не очень понимаю, наверное, какие они должны быть. Читаю доку open62541 и спецификацию OPC UA часть 7. И, наверное, не понимаю, как это должно работать. До этого делал OPC DA, там все понятно и куча примеров и т.д. Было бы классно почитать что-то более доступное, потому что сейчас для меня OPC UA выглядит как очень сложная непонятная штуковина, где не все так очевидно, как в других промышленных протоколах.
Здравствуйте, plastictown, Вы писали:
P>Здравствуйте, SаNNy, Вы писали:
SNN>>Какие настройки сервера и какие настройки клиента используются?
P>Я не очень понимаю, наверное, какие они должны быть. Читаю доку open62541 и спецификацию OPC UA часть 7. И, наверное, не понимаю, как это должно работать. До этого делал OPC DA, там все понятно и куча примеров и т.д. Было бы классно почитать что-то более доступное, потому что сейчас для меня OPC UA выглядит как очень сложная непонятная штуковина, где не все так очевидно, как в других промышленных протоколах.
Предлагаю изначально попробовать подключится к серверу без шифрования. В настройках Prosys OPC UA Simulation Server на вкладке Endpoints необходимо выставить галку Security Modes: None.
На клиенте open62541 для подключения должен работать этот код https://github.com/open62541/open62541/blob/master/examples/client_connect.c