Как начать с выборки OPC UA и сбора данных с устройства ПЛК?

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

Решение для компании строится практически с нуля. Есть несколько устройств ПЛК и есть KEPServerEx (без шлюза IoT). Устройства ПЛК уже используются через проприетарное программное обеспечение сторонних производителей. Но на будущее нет «более широких рамок». С этой точки зрения я могу представить современный дизайн, но бюджет ограничен.

Из того, что я узнал до сих пор, кажется, что KEPServerEx - хороший выбор для доступа к устройствам ПЛК, но у меня нет практического опыта работы с ним. Мне кажется, что OPC UA должен быть предпочтительнее более старого OPC (DA). Я также знаком с лестничной схемой работы с ПЛК.

Из того, что я узнал о «IoT Gateway» (который не будет использоваться) для KEPServerEx, KepServer может устанавливать частоту выборки на уровне тега PLC. А также частоту передачи данных можно установить с помощью IoT Gateway. Затем шлюз Интернета вещей использует внутренний буфер (память) для хранения выборочных значений, а кортежи (tagID, значение, качество, временная метка) могут быть прочитаны и переданы третьей стороне.

Мне непонятно, как это сделать без шлюза IoT. Я предполагаю, что это должна быть основная операция. Является ли (tagID, значение, качество, отметка времени) универсальным для работы с ПЛК через любой сервер OPC? Или это общий только для KEPServerEx, или он специальный для плагина IoT Gateway (необязательно)?

Я узнал, что OPC Foundation недавно добавила в OPC UA механизм публикации / подписки. Требуется ли также более новая версия KEPServerEx? Или его можно использовать с любым более ранним сервером OPC?

У меня довольно большой опыт программирования и работы с базами данных. У меня также есть некоторый технический опыт в области промышленных датчиков, исполнительных механизмов, ... Однако я никогда не работал с цифровой автоматизацией в промышленности.

Спасибо и хорошего дня.


person pepr    schedule 11.01.2017    source источник


Ответы (3)


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

Например:

Если ваш ПЛК представляет собой ПЛК Omron NJ и находится в сети Ethernet с сервером, на котором находится KEPServerEX, вам необходимо использовать драйвер «Omron NJ Ethernet» в пакете пакетов, который Kepware предлагает под названием «Omron Suite».

Относительно вашего вопроса о шлюзе Интернета вещей:

Из того, что я узнал о «IoT Gateway» (который не будет использоваться) для KEPServerEx, KepServer может устанавливать частоту выборки на уровне тега PLC. А также частоту передачи данных можно установить с помощью IoT Gateway. Затем IoT Gateway использует внутренний буфер (память) для хранения выборочных значений, а кортежи (tagID, значение, качество, временная метка) могут быть прочитаны и переданы третьей стороне.

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

person controller    schedule 13.01.2017
comment
Скажем, я выберу отправку данных в базу данных SQL. Как другой пакет драйверов взаимодействует с драйвером для драйвера ПЛК? Есть ли буфер на пути данных? Выдвигает ли драйвер ПЛК данные или драйвер доступа SQL отвечает за запрос данных в реальном времени? - person pepr; 15.01.2017
comment
Опять же, это полностью зависит от вашей сети связи. Находятся ли ПЛК и сервер базы данных SQL в сети Ethernet? KepServerEX будет запрашивать данные у ПЛК с любой скоростью сканирования, которую вы укажете для каждого тега. Если вы хотите использовать KepServerEX для последующей передачи этих данных на SQL Server, вам понадобится пакет Kepware DataLogger для отправки этих данных OPC на SQL Server. DataLogger извлечет данные с сервера OPC (KepServerEX) и отправит их в базу данных SQL на основе указанных вами триггеров. - person controller; 16.01.2017
comment
Есть ли в KepServerEX буфер для выборки данных ПЛК? Хранятся ли данные в другом месте, пока DataLogger не получит их с сервера OPC? Или выбранная запись сразу же отправляется в DataLogger? - person pepr; 16.01.2017
comment
См. Документацию или веб-сайт Kepware: kepware.com/en-us/products/kepserverex - person controller; 16.01.2017

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

Иногда производитель устройства предоставляет сервер OPC, который защищает вас от этого, или, как вы упоминаете, можно использовать сторонний сервер подключения, такой как KepServerEx или Matrikon, для представления интерфейса OPC для вашего клиента.

Я ничего не знаю о KepServerEx или ваших конкретных требованиях, но обычно сервер OPC имеет кеш, в котором хранятся значения, из которых клиент может читать или читать напрямую с оборудования. Подписки можно настроить аналогично, например: частота, порог и т. д.

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

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

person AndersK    schedule 13.01.2017

Если вы знакомы с Visual Studio, AdvancedHMI может быть возможным решением. Вы не упомянули какие-либо конкретные ПЛК, но AdvancedHMI включает в себя многие драйверы связи ПЛК как часть бесплатного пакета. Это дает вам возможность писать VB или C # для передачи значений из ПЛК в базу данных. Драйверы не являются драйверами OPC, но разработаны таким образом, чтобы их было проще использовать и они были более эффективными.

person Archie    schedule 19.01.2017