Russian Qt Forum

Qt => Общие вопросы => Тема начата: kyakovlev от Март 13, 2024, 15:39



Название: Не могу подключиться к ПЛК используя модуль Qt Opc UA
Отправлено: kyakovlev от Март 13, 2024, 15:39
Всем добрый день!

Нужна ваша помощь. Мне необходимо написать программу на C++ которая сможет считывать и записывать значения из/в переменные программы, запущенной на ПЛК.
Изготовитель ПЛК сказал, что для связи его со средой программирования контроллеров CODESYS, они используют протоколы передачи данных Modbus RTU и OPC UA. Т.к. данные, которые предстоит изменять, передаются через OPC UA, я собрал соответствующий модуль (https://doc.qt.io/qt-5/qtopcua-index.html) и добавил его в свой проект. Я изучил следующие примеры того, как написать программу-клиент: https://doc.qt.io/qt-5/qtopcua-examples.html. Три программы отсюда работают прекрасно (клиент, сервер, вьюэр), но когда я попробовал изменить IP сервера из примера на IP адрес моего ПЛК, QtCreator спасовал. Вдобавок: вьюэр не смог отобразить дерево узлов программы, загруженной в ПЛК.

Однако, когда я попробовал использовать OPC UA клиент другого производителя под названием UaExpert (https://www.unified-automation.com/downloads/opc-ua-clients.html), он смог прочитать узлы как сервера-примера, так и моего ПЛК. Таким образом, я выяснил, что его значения могут быть динамически прочитаны и заданы. Но я совершенно не понимаю, почему тот первый клиент не смог его увидеть, как и моя программа, полностью с него скопированная?