Добрый день! Интересует вопрос, есть ли возможность обмена между ПО АГАВА ПО-50.10 и контроллером по протоколу OPC UA. В документации написано что это возможно, однако не в одном руководстве не описано как это можно осуществить. Программу для панели (отрисовку и т.д) разрабатываю в Универсальной среде разработки Agava Scada. Связь по Modbus наладить удалось, но хотелось бы уйти в сторону OPC!
Объявление
Свернуть
Пока нет объявлений.
Вопрос по настройке обмена между ПО АГАВА ПО-50.10 и контроллером по протоколу OPC UA
Свернуть
X
-
Поддержка OPC UA доступна в панелях оператора серии АГАВА ПО с прошивкой версии 2023.02. Версия прошивки отображается на фоне логотипа при загрузке прибора или в системной утилите на главной вкладке.
Принцип работы с протоколом OPC UA в среде разработки такой же, как и с Modbus.
Документация на среду разработки в части описания нового протокола ( http://docs.kb-agava.ru/view/Универс...работки ) будет обновлена в скором времени.Последний раз редактировалось Таушканов Константин; 10-04-2023, 06:27 AM.
-
Панели с прошивками старее 2023.02 можно обновить, прислав их в наш адрес, либо самостоятельно, по инструкции. Обратите внимание, для самостоятельного обновления нужны некоторые знания Linux и навык использования определенного инструкцией программного обеспечения. В случае ошибочных действий и вывода панели из строя ее восстановление будет считаться как негарантийный ремонт.
Комментарий
-
Вновь здравствуйте! Вернулся к вопросу проработки связи между ПЛК и ПО. Установил последнюю версию среды разработки, увидел желаемый узел транспорт OPC UA, но далее столкнулся с непониманием. Документация видимо ещё не обновлялась на счет описания работы с протоколом OPC UA. И аналогию с протоколом Modbus провести у меня не получилось
Я создал Траспорт OPC UA, выбрал необходимый мне режим работы "Клиент", указал ай-пи адрес и порт (фото прикреплю ниже).
Далее в теории нужно сделать выгрузку тегов с сервера, но я как понимаю такой возможности нет. Я мог бы и вручную внести все необходимые группы тегов и сами теги, но не понимаю как это сделать. Создал тег OPC UA (фото ниже), у меня появилась возможность выбрать тип, права доступа, операции после и перед записью, узел для чтения/записи внутри Агавы, с этим все понятно, но вопрос куда прописывать сам путь до тега на сервере, по сути технологии OPC UA (обращение по имени) я бы его прописал в пункт "Имя", но как минимум выкидывает предупреждение о том что в имени узла нельзя использовать точки. А у меня иначе путь до тегов не проложить, такая суть сервера. Связь если что устанавливаю с контроллером Regul и соответственно сервер regul_opc_ua. Хотелось бы узнать где ухожу в заблуждение и как установить связь правильно, возможно увидеть пробный проект с настройкой связи по OPC.
Связь ПО с контроллером планируется по ethernet, поэтому реализовать связь по Modbus TCP у меня получилось, там все интуитивно было более понятно, транспорт TCP, ай-пи, порт, протокол Modbus, регистр и его настройки, и все получилось. Но в данном проекте связь СУ и ВУ реализованна именно на OPC и хотелось бы "единобезобразия" в проекте.2 Фото
Комментарий
-
Здравствуйте. Выгрузка тегов не предусмотрена, для работы клиента, вы должны продублировать в DevEnv структуру вашего сервера. Указанное вами имя является путем тега на сервере. Таким образом вам необходимо создать группу с именем Application, группу с именем GVL_VUt8 и тег с именем Test_PO не забыв указать для групп пространства имен.
Также отмечу, что виджет не может выступать в качестве узла для чтения/записи. Если вы хотите выводить значение на виджете, то должны привязать тег к виджету, а не наоборотПоследний раз редактировалось Лазарев Михаил; 19-10-2023, 05:05 AM.
Комментарий
-
Добрый вечер! В продолжении разговора. Столкнулись с такой особенностью, при передаче сигнала по OPC UA, между ПЛК АБАК К3 и АГАВА ПО50.
Если мы хотим заменить датчик, то значения НА ВСЕХ датчиках меняются на E0008 и E1007 на исполнительных механизмах.
Спустя минуту, полторы, значения потихоньку переподтягиваются, возможно ли это как-то ускорить? Или все же зависит от протокола?
Схема такаяRESULTCODE_TRANSPORT_NOCONNECTION 8 Нет соединения Затем появляется сигнал.RESULTCODE_SIGNAL_UNINITIALIZED 1001 Сигнал не инициализирован
Так как ПЛК с резервированием, происходит переход с основной головы на пассивную, в этот момент происходит тоже самое.
Не совсем ясно, что делать с этим сигналом.RESULTCODE_SIGNAL_CANTGETVALUE 1007 Невозможно получить значение сигнала Последний раз редактировалось Taхир; 02-12-2024, 12:31 PM.
Комментарий
-
Если вы хотите заменить датчик, что предпринимаете?
Наиболее вероятная причина такой задержки - логика работы контроллера. Достоверно выяснить причину можно с помощью Wireshark.
По последовательности ошибок, которую вы привели:
Ошибка 0008 проявляется после разрыва соединения с контроллером, здесь инициатор - контроллер.
Ошибка 1001 появляется после установления соединения, но при отсутствии поступления данных.
Ошибка 1007 (RESULTCODE_SIGNAL_CANTGETVALUE) устанавливается в значениях в случае, если контроллер отдал данные с качеством, отличным от UA_STATUS_GOOD.
Комментарий
-
Для замены датчика, КИП службы садятся на клему приходящего сигнала и диагностируют его. Если не получается измерить, как было в моем случае, откинули поле и панель ушла в 1001 и 0008.
У нас 2 клиента опрашивают ПЛК по OPC UA, Арм и ПЛК, Конфликта быть не должно. Но у ПЛК есть резервирование, 2 ЦПУ. Если происходит загрузка сильная на одну ЦПУ происходит переход на вторую. Скорей всего, этот переход промаргивает во время передачи данных.
Спасибо за ответ. Будем исправлять на более безударный переход.
Комментарий
Комментарий