Как читать сигналы из ПЛК с помощью opc ua?

У меня на машине работает сервер node-opcua. Я хочу читать данные из ПЛК. Насколько я понимаю, OPC Server используется для чтения / записи на ПЛК.

Я выполнил инструкции по созданию сервера и клиента из http://node-opcua.github.io/

Итак, мой вопрос: как читать сигналы от ПЛК? Я новичок в IoT и OPC UA. Пожалуйста, направь меня.


person ARULJOTHI PARTHIBAN    schedule 14.05.2018    source источник


Ответы (3)


К сожалению, вы упускаете большую часть головоломки.

Да, одно из наиболее распространенных применений OPC-сервера - позволить OPC-клиенту связываться с ПЛК.

Но в OPC нет ничего волшебного, позволяющего это сделать. Это работает, потому что этот конкретный сервер OPC знает, как взаимодействовать с разными типами ПЛК, которые, как он утверждает, поддерживает, через собственный протокол для этого ПЛК. Это тонна работы, она отличается почти для каждой модели и бренда ПЛК, и именно поэтому поставщики могут требовать цену за свои серверы, и вы не найдете много альтернатив с открытым исходным кодом.

Простое программирование произвольного OPC-сервера и его запуск ничего не дает. Сервер OPC должен иметь какие-то полезные данные для подключающихся клиентов и знать, как их получить. Если вы программируете сервер, то вы должны знать, как его получить.


Если вы хотите получать данные от ПЛК и использовать OPC, вам следует вместо этого купить или иным образом получить сервер OPC, который знает, как общаться с интересующими вас ПЛК, а затем запрограммировать себя Клиент OPC для взаимодействия с этим сервером и получения необходимых данных.

Это большая проблема, которую OPC решила вначале: позволить поставщикам беспокоиться о множестве сложных, устаревших и иногда недокументированных протоколов, необходимых для взаимодействия с ПЛК. Клиенты, которым нужны эти данные, могут просто побеспокоиться об одном открытом стандарте (OPC).

person Kevin Herron    schedule 14.05.2018

1) какой тип ПЛК?

2) вам необходимо реализовать протокол связи в узле. Но лучше подумайте о реализации других инструментов.

3) ПРИБЫЛЬ

IMHO node-opcua лучше предназначен для публикации внутренних параметров в приложении node.js.

Например - https://www.npmjs.com/package/node-modbus.

person Alexander Yegorov    schedule 27.05.2018

Серверы OPCUA не используются для чтения данных с ПЛК. Серверы OPCUA публикуют данные, к которым могут получить доступ клиенты OPCUA.

Если вы хотите использовать OPCUA для чтения данных из ПЛК, вам потребуется как минимум:

  • ПЛК, который может быть сконфигурирован как сервер OPCUA (например, серия Siemens S7-1500)

  • Клиентское приложение OPCUA (вариант http://node-opcua.github.io/)

Примечание: существует большая разница между «OPC» и «OPCUA». Я говорю о OPCUA, поскольку вы упомянули библиотеку node-opcua.

Примечание 2: Кевин Херрон не полностью ошибается, но меня это немного вводит в заблуждение. Упомянутые им специализированные коммуникационные драйверы не являются частью сервера OPC. Некоторые продукты могут иметь торговую марку «сервер OPC, который общается с ПЛК марки x, y ..», но эти продукты представляют собой нечто большее, чем просто сервер OPC. В этом случае OPC не используется для подключения к ПЛК.

person TheDB    schedule 14.11.2019