Opc core components что это за программа

Стандарт OPC обеспечивает универсальный способ подключения устройств различных производителей к SCADA-системе. Программный комплекс Rapid SCADA поддерживает следующие спецификации OPC:

  • OPC DA (Data Access) — чтение и запись текущих данных устройств;
  • OPC AE (Alarms OPC Демо», данные которого отображаются табличным представлением OpcDemo.tbl. Для полноценной работы примера нужно скачать и установить программу MatrikonOPC Simulation Server, которая имитирует работу OPC-сервера.

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

    Привязка параметров КП к тегам OPC-сервера осуществляется с помощью специальной формы конфигурации КП (рис. 1). Данная форма открывается при вызове свойств КП из настроек Коммуникатора.

    Мастер-класс Modbus, OPC и SCADA

    Выбор OPC-тегов

    Рис. 1. Выбор OPC-тегов

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

    Чтобы полученные от OPC-сервера значения были записаны во входные каналы Rapid SCADA, требуется привязка тегов КП к входным каналам базы конфигурации. Эта привязка может выполняться двумя способами, перечисленными ниже. Выбор способа определяется в каждом конкретном случае, исходя из удобства настройки.

    1. Установка поля Сигнал в таблице Входные каналы базы конфигурации.
    2. Установка номера входного канала в поле Канал на форме конфигурации КП.

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

    Значения OPC-тегов

    Рис. 2. Значения OPC-тегов

    Известная проблема при работе с OPC: не удаётся получить данные от OPC-сервера, при этом в свойствах КП требуемый OPC-сервер доступен.

    Вероятная причина проблемы заключается в том, что Коммуникатор работает как служба Windows от пользователя system, а OPC-сервер не поддерживает подключение к нему от имени данного пользователя.

    Решение 1. В параметрах DCOM для OPC-сервера необходимо установить запуск от имени конкретного пользователя, который является администратором компьютера. Чтобы открыть настройки DCOM (рис. 3), скопируйте следующий путь в проводник Панель управленияСистема и безопасностьАдминистрированиеСлужбы компонентов или просто запустите comexp.msc

    Руководство для начинающих. Протокол OPC UA.

    Конфигурация DCOM

    Рис. 3. Конфигурация DCOM

    Решение 2. Установить учётную запись пользователя, которая используется для работы службы Коммуникатора. Откройте настройки служб, скопировав в проводник Панель управленияСистема и безопасностьАдминистрированиеУправление компьютеромСлужбы или запустив services.msc. Найдите службу ScadaCommService и откройте её свойства.

    Введите имя пользователя и пароль на странице Вход в систему, как показано на рис. 4. Указанный пользователь должен обладать правами администратора компьютера.

    Рис. 4. Свойства службы

    Источник: rapidscada.net

    Установка OPC компонент, необходимых для функционирования OPC интерфейса

    Пакет библиотек «OPC Core Components» требуются для работы OPC серверов и OPC клиентов. Если сервер и клиент расположены на разных компьютерах, то данный пакет должен быть установлен на обоих компьютерах. Если клиент или сервер работают на 64ти битной версии операционной системы и при этом являются 64х битными приложениями, то необходимо установить соответствующую версию пакета библиотек “ OPC Core Components”.

    Пакет библиотек «OPC Core Components» можно бесплатно скачать с сайта opcfoundation.org.

    Раздел с необходимыми библиотеками на сайте

    Рис. 1 Раздел с необходимыми библиотеками на сайте

    После того, как вы скачаете набор библиотек, его нужно установить. Для установки библиотек требуется установленный .Net Framework v1.

    Замечание: Рекомендуется перезагрузить компьютер после установки «OPC Core Components».

    Сопутствующие статьи:

    • Запись данных OPC в базу данных черех ODBC (на примере MS Access) (возможности: добавление групп и переменных, запись в базу ODBC)
    • Добавление метки времени в CSV файл (возможности: OPC группы)
    • OPC в MSSQL: Запись множества переменных OPC в базу MS SQL 2008
    • OPC в MSSQL: Запись нескольких переменных OPC в разные колонки
    • OPC в MySQL: Запись тегов OPC в базу данных MySQL 5
    • OPC в базу данных: Сохранение OPC тегов в базе данных
    • OPC в Excel: Запись данных OPC в Excel
    • Фильтрация данных по значению OPC тега, и запись в базу только, когда значение меняется
    • Игнорирование данных, если значение тега не равно указанному значению
    • Обработка и сохранение данных OPC по событию от OPC сервера
    • Агрегация данных с нескольких серверов в один OPC сервер

    Настройка DCOM и OPC на Windows 2008 и Windows 7

    • Часть 1. Установка OPC компонент, необходимых для функционирования OPC интерфейса.
    • Часть 2. Настройка DCOM и OPC. Создание пользователя и выдача прав.
    • Часть 3. Настройка брандмауэра Windows 2008 и Windows 7 для разрешения работы DCOM и OPC.
    • Часть 4. Настройка параметров DCOM. Dcomcnfg.
    • Часть 5. Настройка DCOM и OPC. Проблемы и их решение.

    Настройка DCOM и OPC на Windows 8 и Windows Server 2012

    • Часть 1. Установка OPC компонент, необходимых для функционирования OPC интерфейса.
    • Часть 2. Настройка DCOM и OPC. Создание пользователя и выдача прав.
    • Часть 3. Настройка брандмауэра Windows 8 и Windows Server 2012 для разрешения работы DCOM и OPC.
    • Часть 4. Настройка параметров DCOM. Dcomcnfg.
    • Часть 5. Настройка DCOM и OPC. Проблемы и их решение.

    Источник: www.aggsoft.ru

    Шпаргалка по OPC DA 2 в .NET

    На днях пришлось крепко повозиться с настройкой вызова удалённого сервера по протоколу OPC DA 2.05a, и эта информация бы очень пригодилась, знай я её заранее.

    1. Что такое OPC DA и в частности OPC DA 2.05a

    В общем случае OPC — это набор открытых протоколов, регламентирующих взаимодействие между собой различных объектов автоматизации, таких как SCADA-системы, к примеру. OPC DA (Data Access) — это один из таких протоколов, он обеспечивает обмен данными с устройствами или программными компонентами. В моем случае по этому протоколу нужно было периодически забирать данные со SCADA-системы. И самое важное — OPC DA работает на базе технологии COM, так что взаимодействие с OPC сервером по сути сводится к взаимодействию с COM сервером.

    2. Какие есть библиотеки

    Бинарники от Opc Foundation

    Называются OPC .NET API 2.00 Redistributable — их нельзя скачать просто так, нужно быть «мембером» (= зарегиться и занести деньжат). Там же и OPC Core Components, от которых эта библиотека зависит. На рутрекере можно найти и то, и другое. А вообще не совсем понятно, почему для получения библиотеки от Opc Foundation — компании, которая продвигает «открытый стандарт» — нужно что-то платить.
    Что могу сказать по поводу этой библиотеки. Документации к ней нигде нет, и API построен не самым лучшим образом (например есть несколько интерфейсов и классов с одним и тем же именем, но в разных пространствах имен, жутко неудобно, постоянно нужно лезть в Object Browser и смотреть, какой именно класс нужен), однако функциональности полно — можно что угодно сделать, что только можно сделать с OPC серверами. Кстати, я для удобства прогнал сборки рефлектором и работал уже с исходниками — все проблемы декомпиляции по счастливой случайности возникли в других протоколах (OPC AE, OPC HDA) и я их просто выкинул за ненадобностью. Могу прислать солюшен, если кому интересно, пишите.

    Компоненты от Advasol

    Платные компоненты (причем весьма дорогие). Скачал я Evaluation версию — инсталлятор, который потребовал пароль (!), ну а пароль пришел по почте. Самое полезное в этом наборе компонент — тестовые клиенты для OPC — winforms приложения, позволяющие попробовать приконнектиться и посмотреть, что есть внутри OPC сервера.

    Сами библиотеки я не смотрел, они обфусцированы и в них заложено ограничение по времени — полчаса, потом программу надо перезапускать. Но с тестовым клиентом возился долго, так как система у меня была 64битная, а сборка тестового клиента, как оказалось, собрана под Target Platform = AnyCPU, и в 32битной винде запускалась как 32битное приложение (и все работало как надо), а в 64битной — как 64битное.

    Что приводило к ошибке в коде COM-интеропа вида «CLSID is not registered». А я думал, что у меня что-то неправильно настроено и 2 дня убил на копания в secpol.msc, dcomcnfg и compmgmt.msc. По счастливой случайности догадался запустить клиент с другой тачки и все стало ясно. С помощью ILDASM и Hex-редактора определил смещение флага TargetPlatform (от начала CLR Header), добавил туда второй бит 32BITREQUIRED и все заработало.

    Вывод — если у вас не работает COM Interop, первым делом проверьте соответствие платформы. К слову, клиент тоже был обфусцирован (с помощью SmartAssembly), и его CLR Header был расположен в конце.

    Библиотека OPCDOTNET

    Библиотека от энтузиаста на codeproject.com. Ничего не могу сказать, но именно её код использовал мой предшественник, который реализовал локальное взаимодействие с OPC сервером. Судя по тому, что написано в статье, она как раз для локального взаимодействия и предназначена. Плюсы — доступные исходники, наличие тестового клиента, отсутствие зависимостей.

    3. Можно ли написать код без использования библиотек

    В принципе, ничего сложного в этом нет, если вы имели опыт взаимодействия с COM/DCOM приложениями. А тем, кто как и я, не особо разбирается в этих технологиях, могу порекомендовать писать код, поглядывая на декомпилированные исходники библиотеки от OPC Foundation. По сути, для взаимодействия с OPC сервером достаточно всего лишь сделать интеропы на необходимые интерфейсы, получить их и дергать методы.

    4. Проблемы

    — Тестовый клиент не подключается с ошибкой RPC сервер недоступен — проверьте доступность портов, порта номер 135 как минимум (основной порт DCOM).

    — Access Denied — придется повозиться с настройкой как сервера, так и клиента. См. ссылки внизу

    — CLSID is not registered — проверьте, установлен ли у вас Core Components, возможно их не хватает. Либо проверьте Target Platform сборки, осуществляющей интероп. Может быть, там AnyCPU а должно быть x86.

    — CoCreateInstanceEx возвращает валидный COM объект, но при касте его к COM интерфейсам вываливается Access Denied (0x80070001). С этой проблемой я возился полдня. Эта штука происходит, когда для доступа к серверу необходимо указать юзера и пароль. Вы вызываете CoCreateInstanceEx, заполнив перед этим SERVER_INFO, и вам приходит ссылка на объект.

    Однако следующие вызовы QueryInterface не сохраняют параметров доступа, которые вы указали при получении объекта, и это приводит к Access Denied. Решение — вызвать магическую функцию CoInitializeSecurity, которая установит дефолтные параметры безопасности для COM-вызовов. Код:

    [DllImport(«ole32.dll»)] private static extern int CoInitializeSecurity(IntPtr pSecDesc, int cAuthSvc, SOLE_AUTHENTICATION_SERVICE[] asAuthSvc, IntPtr pReserved1, uint dwAuthnLevel, uint dwImpLevel, IntPtr pAuthList, uint dwCapabilities, IntPtr pReserved3); public static void InitializeSecurity() < int errorCode = CoInitializeSecurity(IntPtr.Zero, -1, null, IntPtr.Zero, 1, 2, IntPtr.Zero, 0, IntPtr.Zero); if (errorCode != 0) < throw new ExternalException(«CoInitializeSecurity: » + GetSystemMessage(errorCode), errorCode); >>

    При вызове этой функции может случиться ошибка RPC_E_TOO_LATE. Эта ошибка возникает обычно из-за хост-процесса Visual Studio, который неявно вызывает CoInitializeSecurity при старте. Для решения проблемы достаточно отключить использование хост-процесса в настройках проекта.

    5. Ссылки по теме

    OPC Training Institute — сайт с множеством отлично оформленных статей, которые помогают в случае проблем. Например, как настроить DCOM, какие возможные причины ошибки RPC server is not available итд. Требует регистрации, регистрация бесплатна.

    Туториалы по настройке DCOM — еще 1 хорошо оформленный туториал для настройки.

    Источник: habr.com

    OPC Core Components Redistributable (x86)

    Программы / Разработка / Библиотеки / OPC Core Components Redistributable (x86)

    Скачать OPC Core Components Redistributable (x86)

    Для скачивания будет предоставлена ссылка на дистрибутив программы на сайте компании-разработчика.

    Обзор OPC Core Components Redistributable (x86) (автоматический перевод)

    Установщик Core Components Redistributables установит все, что разработчик требуется (например, заголовки, блоки за пределами GAC, и т.д.) предоставленный Visual Studio 2005 или позже установлен на машине. Core Components SDK установит те же файлы, но не проверит на Visual Studio. Разработчики, хотящие использовать x64 кросс-компиляторы на x86 машинах, должны установить SDK (x64 заголовки не установлены x86 версией установщика Redistributables).

    Источник: www.obnovisoft.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru