Как стать автором
Обновить

Веселые уроки WinCC OA. Использование OPC-серверов

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.3K

Несмотря на солидный список поддерживаемых «из коробки» протоколов, применение классического OPC-сервера все еще сохраняет свою актуальность, даже принимая во внимание возможность разработки кастомного драйвера.

Для обеспечения связи с оборудованием при использовании сервера OPC нам так же необходимо добавлять в систему драйвер. Рассмотрим на примере драйвера OPC DA (data access, простой обмен данными). В качестве сервера OPC в данном примере используется широко известный Lectus, который по протоколу Modbus TCP будет связываться с локальным программным сервером Modbus TCP. Напоминаю, что сервер - это тот, кто отвечает на запросы. Клиент эти самые запросы генерирует.

Итого, в этой связке у нас получается по 2 клиента и по 2 сервера:

  • драйвер OPC DA является клиентом OPC для сервера Lectus;

  • Lectus является сервером OPC для драйвера и одновременно клиентом Modbus TCP для внешнего устройства, с которым мы организовываем связь;

  • сервером протокола Modbus выступает отдельная прогамма, установленная локально.

Проект уже создан, версия 3.18.

Традиционно, как и с любой коммуникацией, начинаем работу с добавления драйвера в систему. Добавляем драйвер OPC DA Client с номером 2.

Этот драйвер не запустится с первого раза, так как требует настройки в конфигурационном файле проекта, это нормально.

Далее открываем System Management и находим там драйвера OPC.

Добавляем новый сервер кнопкой "Создать":

Тут мы получаем список установленных серверов в системе. В настоящей заметке рассматривается только локальное подключение к OPC, а вопросы проброса DCOM и использование удаленных OPC-серверов остается далеко за рамками. Прошу обратить внимание, что если искомый сервер отсутствует в списке, но вы абсолютно уверены, что он установлен, то надо проанализировать - от какого пользователя запущен сервер, а от какого - WinCC OA.

Выбираем сервер Lectus, нам сразу предлагается имя внутренней точки данных для этого соединения.

Далее появляется отличная подсказка.

Начнем со второго шага, окроем конфиг-файл, добавим в него секцию opc и указанную выше строку:

Расстановку бит качества тэга на основании данных OPC я проигнорирую. Первый шаг, настройка сервера в этой панеле, сводится к переходу на вкладку группы и конфигурацию группы VALUE. По сути, это та же группа опроса, ее надо сделать активной. Дополнительно я указываю всегда читать данные непосредственно с устройства. По умолчанию источником данных служит кэш, а сама группа неактивна.

Последний шаг - это запуск OPC DA клиента

После чего мы видим, что соединение с OPC-сервером установилось, да и сам OPC-сервер запустился автоматически. Нюансов в реализации OPC всегда множество, и я не берусь гарантировать, что все сервера должны запускаться автоматически, но с Lectus именно так.

Очень кратко настройки самого Lectus. Node - это мой локальный сервер Modbus TCP.

Последний шаг - настройка точки данных в модуле para. Заводим точки данных MyRegister типа ExampleDP_Int, добавляем и настраиваем конфиг address, как OPC Client.

Сервер Lectus мы ранее настроили в Управлении Системой. Там же настроили и группу опроса VALUE. Node.Item1 задано в сервере Lectus, для доступа ко всем тэгам текущего сервера OPC у нас есть соответствующая кнопка:

Не забываем, что адресный конфиг надо сделать активным, выставив соответствующую галочку внизу. Теперь переходим на конфиг original и смотрим значение.

Это соответствует заданному в сервере Modbus значению.

Если вернуться в адресный конфиг и изменить «права» доступа на чтение/запись, то получится и задать значение регистра хранения. На этом скрине я изменил «направление».

Теперь задаю значение 667

Это значение изменилось и в сервере Modbus

Теги:
Хабы:
Всего голосов 2: ↑2 и ↓0+2
Комментарии2

Публикации

Истории

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань