• ОБЯЗАТЕЛЬНО заполнить свой профиль НА РУССКОМ ЯЗЫКЕ КИРИЛЛИЦЕЙ.
  • НЕ НУЖНО писать свой вопрос в первую попавшуюся тему, а вместо этого создать НОВУЮ тему.
  • Дублирование сообщений приравнивается к спаму.
  • Рекламу мы не размещаем ни на каких условиях.

Разъяснение по OPC

SCADA, серверы, АРМ верхнего уровня, диспетчерские
Ответить

Автор темы
Viktor_SPb
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 19 авг 2018, 20:28
Имя: Виктор
Благодарил (а): 2 раза

Разъяснение по OPC

Сообщение Viktor_SPb » 19 ноя 2018, 19:31

Добрый день!
Я никогда не работал с OPC, обменивался данными только через TCP запросы.
Мне нужна консультация по этому предмету, платно, условия обговорим.
Интересует возможность наладить полноценную работу OPC сервера с приложением по TCP-UDP-HTTP запросам.
Как это сделать, как вообще оно все работает, реально ли в принципе такое сделать.
Буду признателен за помощь. :ges_help:

Аватара пользователя

hell_boy
почётный участник форума
почётный участник форума
Сообщения: 1546
Зарегистрирован: 18 янв 2009, 12:25
Имя: Дмитрий
Благодарил (а): 6 раз
Поблагодарили: 88 раз

Разъяснение по OPC

Сообщение hell_boy » 19 ноя 2018, 23:53

Вы какой OPC имеете в виду? Только OPC DA имеется 3 версии, + деление на синхронный/асинхронный, и у версии 2 есть 3 подверсии. Только хочу Вас огорчить: с 2011 года OPC DA компанией-инициатором создания этого стандарта он перестал поддерживаться.
Или речь идет про OPC UA? Тогда гугол в помощь?
Viktor_SPb писал(а):
19 ноя 2018, 19:31
возможность наладить полноценную работу OPC сервера с приложением по TCP-UDP-HTTP запросам
Как-то очень широко хватили. Чей OPC-сервер? Чье приложение?
"Умные люди обсуждают идеи, средние - события, а глупые - людей" Л.Н. Толстой


Автор темы
Viktor_SPb
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 19 авг 2018, 20:28
Имя: Виктор
Благодарил (а): 2 раза

Разъяснение по OPC

Сообщение Viktor_SPb » 20 ноя 2018, 02:04

OPC сервер Орион Про от болида. Поддержка протоколов DA 1.0a и DA 2.0a.
Я погуглил, но в диалоге я бы быстрее разобрался, чем читая общую информацию. Самое общее представление у меня, конечно, уже есть.
О TCP ведь не важно какое приложение, важно, чтобы я мог по TCP слать текст с запросом, который соответствовал бы тому, что есть в сервере OPC, то есть был бы просто обернут в TCP. И соответственно, также обратно я бы получал по TCP ответы от OPC сервера. Я это как-то так вижу. Но я с OPC никогда не работал, не сталкивался, может моя задача в принципе не реализуемая, я ведь тонкостей не знаю.. Вот и прошу помощь разобраться. Например поговорить по скайпу за почасовую оплату и прояснить все эти вопросы, закрыть брешь в знаниях. Может, конечно, надо другое смотреть, вот у одной компании увидел шлюз в MQTT, завтра буду звонить разбираться. Теоретически он тоже подошел бы.

Аватара пользователя

hell_boy
почётный участник форума
почётный участник форума
Сообщения: 1546
Зарегистрирован: 18 янв 2009, 12:25
Имя: Дмитрий
Благодарил (а): 6 раз
Поблагодарили: 88 раз

Разъяснение по OPC

Сообщение hell_boy » 20 ноя 2018, 11:13

Viktor_SPb писал(а):
20 ноя 2018, 02:04
с OPC никогда не работал, не сталкивался, может моя задача в принципе не реализуемая, я ведь тонкостей не знаю
Это примерно так. OPC использует технологию DCOM от Microsoft, формат DCOM полностью не раскрыт. Можно пореверсить, что идет по порту 135 TCP, но это будет реинкарнация DCOM. Обычно народ не задумывается, гуглит библиотеки от OPC Foundation и использует их, то есть это будет не прямое использование TCP, а через библиотеки. Клиента OPC в таком случае можно сделать даже на vba или vbs.
"Умные люди обсуждают идеи, средние - события, а глупые - людей" Л.Н. Толстой


Автор темы
Viktor_SPb
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 19 авг 2018, 20:28
Имя: Виктор
Благодарил (а): 2 раза

Разъяснение по OPC

Сообщение Viktor_SPb » 20 ноя 2018, 11:26

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

например есть система ОПС. В ней есть датчики охр, пожарки. Значит будет какая-то таблица где будет раздел пожарка, охранка и там эти датчики, а внутри у них список регистров-параметров (состояние, питание, режим... что угодно зависит от реализации)

Также задачей сервера яв-ся передача/обмен со внешней системой этих данных, размещенных в таблице.

Если все так, то наверное в этой таблице будут регистры для управления сисетмой. Напр будет регистр - "постановка на охрану" и при снятой охране в неем будет 0, а при поставновке - 1. Значит, чтобы поставить извне на охрану, нужно в этот регистр записать со стороны 1. Верно?

Ну и я не понял, работают ли в OPC подписки, событийная ли система?

Очень даже допускаю, что написал ерунду, потому и прошу помощи(

Отправлено спустя 4 минуты 16 секунд:
[/quote]
hell_boy писал(а):
20 ноя 2018, 11:13
Это примерно так. OPC использует технологию DCOM от Microsoft, формат DCOM полностью не раскрыт. Можно пореверсить, что идет по порту 135 TCP, но это будет реинкарнация DCOM. Обычно народ не задумывается, гуглит библиотеки от OPC Foundation и использует их, то есть это будет не прямое использование TCP, а через библиотеки. Клиента OPC в таком случае можно сделать даже на vba или vbs.
Пока писал сообщение, пришло от вас)
эх, мне бы основы понять с начала. Я даже не знаю как библиотеки подключать. У меня нет как такового приложения, у меня оболочка, которая вроде как может работать через Modbus server и стать клиентом OPC. Но я хотел что-то другое. Вот потому для начала хочу понять как вообще выглядит работа через OPC

Аватара пользователя

Serex
эксперт
эксперт
Сообщения: 1253
Зарегистрирован: 15 авг 2011, 20:36
Имя: Пупков Сергей Викторович
Благодарил (а): 20 раз
Поблагодарили: 34 раза

Разъяснение по OPC

Сообщение Serex » 20 ноя 2018, 13:18

OPC-сервер - это приложение от производителя оборудования. Оно общается с оборудованием по каким-то своим неведомым протоколам и выдает это OPC-клиенту в виде OPC-тэгов.
Структурирование и все такое - это зависит от сервера. Как там тэги расписали, так они и в клиент подтянуться. Пользовательское приложение, содержащие OPC-клиент подтягивает эти теги по одному или пачкой и уже работает с ними.
Можно теги читать и записывать. Запись зависит от сервера опять же - если он позволяет.
Описание тэгов в сервере - это документация к оборудованию.

Аватара пользователя

hell_boy
почётный участник форума
почётный участник форума
Сообщения: 1546
Зарегистрирован: 18 янв 2009, 12:25
Имя: Дмитрий
Благодарил (а): 6 раз
Поблагодарили: 88 раз

Разъяснение по OPC

Сообщение hell_boy » 20 ноя 2018, 13:49

Viktor_SPb писал(а):
20 ноя 2018, 11:30
Ну и я не понял, работают ли в OPC подписки, событийная ли система?
В обычном OPC DA - этого нет, в OPC UA - есть, но слабо используется.
Суть OPC DA в том, что был такой период в 90-е годы прошлого века, когда некоторые софтверные конторы выпускали библиотеки, через которые предлагалось работать. dll - для пользователя, lib - для разработчика C/C++, ocx - для тех и других. Вот и Microsoft для связи 2 приложений предлагала вначале DDE, потом OLE. Если знаешь OLE, то все делается влет.
"Умные люди обсуждают идеи, средние - события, а глупые - людей" Л.Н. Толстой


Автор темы
Viktor_SPb
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 19 авг 2018, 20:28
Имя: Виктор
Благодарил (а): 2 раза

Разъяснение по OPC

Сообщение Viktor_SPb » 20 ноя 2018, 16:42

C OLE я работал, был эпизод. Одно приложение тот же экзель имеет этот функционал, а в другом приложении я создавал OLE объект и методами его выполнял нужные действия.
Про событийность DA ясно, её нет, попробую использовать OPC-MQTT шлюз от ИнСата, надеюсь, что благодаря этому событийность появится. На днях соберу железо и начну эксперименты. Большое спасибо за информацию, прояснил вопрос, на данном этапе может быть достаточно. :good:

Аватара пользователя

Looker
частый гость
частый гость
Сообщения: 451
Зарегистрирован: 09 фев 2011, 11:32
Имя: Дитрих Евгений Линусович
Откуда: Донецк
Благодарил (а): 67 раз
Поблагодарили: 34 раза

Разъяснение по OPC

Сообщение Looker » 21 ноя 2018, 00:06

Viktor_SPb писал(а):
20 ноя 2018, 16:42
C OLE я работал, был эпизод.
Работал, молодец! Теперь окунись глубже, т.к. OPC - это OLE For Process Control.
А, добавки к названию OPC (V2): DA (доступ к данным, включая подписку), AE (тревоги и события)...
UA - можно сказать, что это V3 - с уходом от технологии MS на другие платформы.
_______________________________________________
Не надо сравнивать стоимость технических средств - сравнивайте стоимость решения.


SaNNy
осмотрелся
осмотрелся
Сообщения: 136
Зарегистрирован: 01 фев 2010, 10:37
Имя: Ананьев А.А.
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Разъяснение по OPC

Сообщение SaNNy » 05 дек 2018, 14:23

Можно организовать связь OPC DA <-> OPC UA через OPC UA COM Server Wrapper (https://github.com/OPCFoundation/UA-.NE ... ter/ComIOP). OPC UA как раз работает через TCP или HTTP запросы

Аватара пользователя

hell_boy
почётный участник форума
почётный участник форума
Сообщения: 1546
Зарегистрирован: 18 янв 2009, 12:25
Имя: Дмитрий
Благодарил (а): 6 раз
Поблагодарили: 88 раз

Разъяснение по OPC

Сообщение hell_boy » 05 дек 2018, 23:31

SaNNy писал(а):
05 дек 2018, 14:23
Можно организовать связь OPC DA <-> OPC UA через OPC UA COM Server Wrapper (https://github.com/OPCFoundation/UA-.NE ... ter/ComIOP). OPC UA как раз работает через TCP или HTTP запросы
В терминологии OPC Foundation, Wrapper - это специальный сервер OPC UA для прозрачного обмена данными с сервером Classic OPC. В старой версии, которая сейчас Legacy, был еще Proxy для обратной задачи - обмена данными с сервером OPC UA по интерфейсу Classic OPC.
В общем, Legacy OPC UA на новых операционках Windows уже не работает, под другие платформы OPC Foundation выложить исходники забыл (там только .NET). Standart требует VS2017 не ниже Professional, мне скомпилировать не получилось.
"Умные люди обсуждают идеи, средние - события, а глупые - людей" Л.Н. Толстой

Ответить

Вернуться в «Верхний уровень автоматизации»