Архив рубрики: Treiber_OPCServer

Резервирование сервера OPC DA

В резервированной системе «КАСКАД Цифра» обычно работают два OPC-сервера. Один сервер работает в левой системе, а другой — в правой. Существует две возможности подключения этих серверов к избыточной системе “КАСКАД Цифра”. Какой вариант используется для проекта, зависит от возможностей резервирования и поведения OPC-клиента.

Опция 1 (по умолчанию)

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

Вариант 2

Используйте опцию connectToRedundantHosts для подключения к резервной системе. В этой конфигурации оба сервера ведут себя полностью симметрично, что означает, что для клиента не имеет значения, какой OPC-сервер является активным или пассивным. Если, например, клиент записывает один и тот же элемент на оба сервера в такой конфигурации, в системе “КАСКАД Цифра” отображаются два изменения значений.

Резюме и ссылки

Начиная с версии 2.12 любой клиент OPC может подключаться и обмениваться данными с «КАСКАД Цифра» через сервер OPC. Так обеспечивается связь и управление системами баз данных, другими системами управления, инструментами долгосрочного архивирования и инструментами отчетности. Сервер OPC доступен только в системе Windows.

РазделОписание
Основы OPCВводная информация о клиенте «КАСКАД Цифра» OPC.
http://www.opcfoundation.orgДомашняя страница организации «OPC foundation».
Группы точек данныхКак включить элементы точек данных в группы.

Сопоставление битов состояний «КАСКАД Цифра»

Сервер OPC сопоставляет следующие биты состояний Kaskad с битами качества OPC, которые распознаются клиентом:  

Если «_online.._bad = FALSE», то есть значение недействительно, оно устанавливается в соответствии с «_online.._default»:

  • FALSE (0): исправно, общее (110000LL)
  • TRUE (1): исправно, локальное переопределение  (110110LL)

Если значение недействительно, то есть «_online.._bad = TRUE», тогда «_online.._default = TRUE» или «= FALSE» сопоставляются с неисправным общим (000000LL).

Файл конфигурации сервера ОРС

Для установки подключения клиентов к серверу OPC не требуется добавлять какие-либо записи в файл «config». Необходимо только добавить код, если «КАСКАД Цифра» не должен использоваться в качестве интерфейса.

В файле «config» есть два раздела, относящиеся к серверу OPC:

[OPCSERVER]
[KASKAD]

и

[opcsrv]

ПРИМЕЧАНИЕ

Общие записи в файле «config», которые могут относиться к разным разделам, необходимо объявлять в разделе [opcsrv], в противном случае соответствующие параметры не будут применены.

В разделе [OPCSERVER] используются следующие ключевые слова:

ЗаписьТипЗначение по умолчаниюДиапазонОписание
STOPWITHLASTCLIENTint10|1Определяет необходимость автоматического останова сервера «КАСКАД Цифра» OPC после завершения работы клиента ОРС (тип: int, значение по умолчанию: 1, диапазон: 0/1). В случае подключения нескольких клиентов к серверу ОРС сервер завершает работу после завершения подключения с последним клиентом.
DEFAULTTRACEFILEstring«»«»С помощью этой записи указывается файл, в котором регистрируются сообщения об отладке (по умолчанию: «»).Пример:[OPCSERVER]STOPWITHLASTCLIENT = 0
DEFAULTTRACEFILE = «C:/TEMP/MyLOG.log»
TRACEFILE = 1
TRACELEVEL = 8
TRACEFILEint00|1Определяет необходимость записи сообщений об отладке в файл, указанный с помощью записи «DEFAULTTRACEFILE»(1 = да; 0 = нет)
TRACELEVELint00 — 31Определяет сообщения об отладке, которые необходимо регистрировать. Значение «TRACELEVEL» – это сумма следующих значений:1: Сохранение успешных вызовов в файл журнала2: Сохранение информационных сообщений в файл журнала4: Сохранение предупреждений в файл журнала8: Сохранение ошибок в файл журнала16: Сохранение прочих сообщений в файл журналаПример:TRACELEVEL = 8 // сохранение только сообщений об ошибкахTRACELEVEL = 12 // сохранение ошибок и предупреждений (4+8)TRACELEVEL = 31 // сохранение всех сообщений (1+2+4+8+16) Примечание.При наличии неверно введенных ключевых слов или значений в файле «config» (например, если пропущена кавычка в начале пути к файлу в значении записи «DEFAULTTRACEFILE») в средстве просмотра журналов выводится сообщение об ошибке и сервер OPC не запускается.
maxLogFileSizeuint10>= 0Определяет максимальный размер файла журнала сервера ОРС (в мегабайтах). Запись используется в разделе файла конфигурации, посвященном интерфейсу поставщика. [opcservervendor]# интерфейс WSKInterface = «WSK150_System1″Interface = «WSK150_System2″Interface = «WSK150_System3″Interface = «WSK150_System4» # Интерфейс WSK[WSK150_System1]# Имя библиотеки DLLVendorDLL = DynWsk# АктивныйActive = Y# Последовательный интерфейсPort = COM3# Настройки портаMode = «BAUD=9600 PARITY=n DATA=8 STOP=1″# Часть, посвященная интерфейсам поставщика «WSK150_System1″# В данной части содержатся особые настройкиmaxLogFileSize = 1DEFAULTTRACEFILE = «D:/KASKAD/emptynothing/log/WSK150_Anlage1LOG.log»TRACEFILE = 1TRACELEVEL = 32 Примечание.Значение по умолчанию равно 10. Тем не менее, если запись «maxLogFileSize» указана в сегменте [general], ее значение также действительно и для сервера OPC.0 = без ограничений
IgnoreTimestampChangebool10|1В случае изменения временной метки элемента, передаваемого с ОРС сервера, это изменение игнорируется. Передачу инициирует только изменение качества или значения.Если эта конфигурационная запись имеет значение 0, ОРС сервер также отсылает элементы в случае изменения временной метки.
OVERWRITELOGFILEbool10|1Обеспечивает возможность долгосрочного прослеживания ОРС сервера. Это значит, что файл журнала перезаписывается, при этом перед перезаписью он копируется и сохраняется с расширением «bak» (поведение до данного момента). Если «OVERWRITELOGFILE = 0», файл трассировки изменяется и сохраняется с расширениями «.0», «.1», «.2» и т. д., при этом файл с самым высоким значением расширения является текущим файлом трассировки. Таким образом, больше не нужно копировать файл журнала, что может занимать много времени, особенно в случае с большим «maxLogFileSize». Необходимо отметить, что в случае возникновения проблем со старыми значениями (в случае необходимости получения предыдущих значений вместо новых значений с ОРС сервера), следует использовать данную конфигурационную запись.

В разделе [KASKAD] используются следующие ключевые слова:

ЗаписьТипЗначение по умолчаниюДиапазонОписание
CompareOldNewint00|1Активирует сравнение предыдущего и нового значений на сервере «КАСКАД Цифра» OPC (тип: int, значение по умолчанию: 0, диапазон: 0/1). Неизменяемые данные от периферийного оборудования не отсылаются в «КАСКАД Цифра». Пример:[KASKAD]CompareOldNew = 1

В разделе [opcsrv] используются следующие ключевые слова:

ЗаписьТипЗначение по умолчаниюДиапазонОписание
rootNodestring«KASKAD»Позволяет указывать корневые узлы серверов OPC.

Установка подключения

ПРОЦЕДУРА УСТАНОВКИ ПОДКЛЮЧЕНИЯ:

  1. Укажите элементы точек данных, которые необходимо только считывать, и включите их в группу «OPCRead».
  2. Укажите элементы точек данных, в которые необходимо сохранять значения, и включите их в группу «OPCWrite». Присвоить им значения можно позже.
  3. Запустите сервер через консоль после запуска менеджера данных и менеджера событий. Сервер был автоматически зарегистрирован во время установки.
  4. Запустите клиент
  5. Настройте подключение сервера OPC, как указано в руководстве клиента. Значение ProgID (идентификатора программы в реестре) сервера OPC равно «»КАСКАД Цифра».OPC.1» — создайте группы и элементы на клиенте.

Автоматический общий запрос при запуске драйвера или при переключении на резерв

Во время запуска драйвер OPC получает все данные от сервера. Таким образом, выполнять общий запрос не требуется. Однако драйвер OPC выполняет общий запрос при переключении на резерв.

ПРИМЕЧАНИЕ

Теоретически клиент также может запускать сервер. Однако при запуске через консоль обеспечивается завершение работы сервера при завершении работы «КАСКАД Цифра», поэтому рекомендуется придерживаться именно такого способа запуска.

OPC DA сервер CNS

В этом разделе описывается функция OPC DA CNS сервера OPC DA “КАСКАД Цифра», которая позволяет сопоставлять представления CNS с адресным пространством сервера. Таким образом, адресное пространство сервера не зависит от структуры точек данных соответствующего проекта и может быть свободно определено.

Использование CNS означает, что группы точек данных не требуются. Необходимую структуру представления CNS можно определить с помощью редактора Plantmodel или функций управления.

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

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

ПРИМЕЧАНИЕ

Сервер OPC DA проверяет конфигурацию.Элемент точки данных CNSView только при запуске. Если в адресное пространство должно быть отображено другое представление, в элементе точки данных должен быть определен другой идентификатор представления. После этого сервер должен быть перезапущен. В случае неверного идентификатора просмотра сервер завершает работу и отображается следующее сообщение об ошибке:
СЕРЬЕЗНОЕ, 54, Непредвиденное состояние, CNSViewBrowser, Конструктор, View ‘View13’ не существует!

Системное имя “КАСКАД Цифра» и имя представления не являются частью адресного пространства сервера. Первым уровнем адресного пространства является корневой узел, настроенный с помощью элемента конфигурации rootNode. Узлы представления CNS отображаются под настроенным корневым узлом.

Уровень доступа

Атрибут AccessLevel должен использоваться для определения способа доступа к значению переменной (чтение /запись). Сервер OPC UA представляет только узлы, для которых определен соответствующий уровень доступа.

Чтобы определить уровень доступа для узла, ключевое слово OA:OPC со значением типа данных UINTEGER_VAR должно быть сохранено в пользовательских данных узла (либо автоматически через редактор Plantmodel – OPC или cnsSetProperty). Все дочерние заметки, для которых явно не задан уровень доступа, наследуют уровень доступа родительского узла.

ПолеБитОписание
Читать0Указывает, является ли значение читабельным 0: Не читабельно1: Читабельно
Запись1Указывает, является ли значение доступным для записи 0: Не доступным для записи 1: доступным для записи
Наследование31Указывает, является ли уровень доступа этого узла наследуемым или действителен только для этого узла.0: Наследуемый 1: Не наследуемый

Сопоставление с адресным пространством сервера

Точки данных могут быть назначены узлам представления CNS. Если узлу назначен элемент точки данных и определен уровень доступа, объект для этого узла представляется как КОНЕЧНЫЙ элемент и представляет текущее значение связанного элемента точки данных.

Узлы CNS без какого-либо связанного элемента точки данных представлены в виде элементов ВЕТВИ.

Обратите внимание на следующую информацию:

  • Узел без уровня доступа не представлен в адресном пространстве сервера, если не определен уровень доступа по крайней мере для одного дочернего узла и дочерний узел не назначен элементу точки данных
  • Узел с определенным уровнем доступа, но без назначенного элемента точки данных, не сопоставляется с адресным пространством, если только не существует хотя бы одного дочернего узла с назначенным элементом точки данных.
  • Родительский узел с назначенным элементом точки данных, но без определенного уровня доступа, отображается как элемент ВЕТВИ, если уровень доступа определен для одного из дочерних узлов.
  • Структура объектов в адресном пространстве соответствует структуре связанной точки данных. Если узлу назначена структура элемента точки данных, сервер OPC UA добавляет все элементы связанной структуры к узлу CNS.
  • Сопоставление узлов с адресным пространством под КОНЕЧНЫМ элементом (т.Е. узлом с назначенным элементом точки данных) невозможно. Если конечный элемент имеет дочерние узлы в представлении CNS, они не отображаются в адресном пространстве и в LogViewer отображается соответствующее сообщение об ошибке.

    ПРИМЕЧАНИЕ

    Имена элементов точек данных связанной структуры используются для идентификатора узла OPC DA. Если имена элементов точки данных связанной структуры конфликтуют с узлами CNS с тем же идентификатором, сервер OPC DA отображает сообщение об ошибке в LogViewer. В этом случае узлы, которые уже существуют в адресном пространстве, остаются неизменными, а новые конфликтующие узлы не добавляются в адресное пространство.

Атрибуты представления CNS сопоставляются с адресным пространством следующим образом:

Просмотр CNSАдресное пространствоКомментарий
Путь к идентификаторуItemIdПолный идентификационный путь соответствующего узла CNS без имени системы и имени представления CNS.
Пользовательские данные (OA: OPC)Уровень доступаУровень доступа (чтение/ запись) узла CNS хранится в его пользовательских данных

Дополнительная информация

Изменения в представлении CNS

Следующие изменения в используемом представлении CNS динамически применяются к адресному пространству во время выполнения:

  • Создание новых узлов
  • Удаление существующих узлов
  • Изменение идентификатора узла
  • Связь элементов точек данных с узлами
  • Удаление назначений элементов точек данных
  • Изменение уровня доступа к узлам

Модификации типов точек данных “КАСКАД Цифра» (например, добавление нового узла к существующему типу точки данных или изменение типа элемента) не применяются к адресному пространству во время выполнения. Поэтому сервер должен быть перезапущен после изменения типа точки данных элемента (структуры) точки данных, который связан с узлом CNS.

Пример сопоставления представления CNS с сервером

В следующем примере показано, как представление CNS может быть сопоставлено с адресным пространством сервера OPC UA.

Просмотр CNSСвязь с точкой передачи данныхОпределен уровень доступа?Сопоставлен с сервером
N1  НЕТНЕТДА
 N1_1 ДАНЕТДа (как ФИЛИАЛ)
  N1_1_1ДАДАДА
 N1_2 НЕТДАНЕТ
 N1_3 ДАДАДА
  N1_3_1ДАНЕТНет (КОНЕЧНЫЙ элемент N1_3 не может иметь дочерних узлов)

Доступ к данным»КАСКАД Цифра»

Менеджер

Связь и обмен данными между любыми клиентами OPC и сервером «КАСКАД Цифра» OPC через «КАСКАД Цифра» осуществляется менеджером WCCOAopcsrv, который устанавливает подключение к менеджеру событий. Этот менеджер необходимо добавить в список менеджеров, а процесс необходимо запустить через консоль:

WCCOAopcsrv

При запуске клиента «КАСКАД Цифра» OPC (WCCOAopc) через консоль сервер «КАСКАД Цифра» OPC автоматически запускается в фоне.

Группы точек данных

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

Стандартные группы точек данных «OPCRead» и «OPCWrite» используются для присвоения элементам точек данных (элементам OPC) свойств только для чтения или для записи соответственно.

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

Процесс включения элементов точек данных в группы точек данных описан в разделе «Группы точек данных».

  • Элементы из группы «OPCRead» поддерживают только чтение со стороны клиента.
  • Элементы из группы «OPCWrite» поддерживают как чтение, так и запись со стороны клиента.

Все элементы точек данных в группе «OPCRead» выводятся на клиенте вместе с соответствующими значениями.

Что касается элементов точек данных из группы «OPCWrite», клиент может не только считывать их значения, но и устанавливать новые значения.    

ПРИМЕЧАНИЕ

  • Обратите внимание, что группы «OPCRead» и «OPCWrite» удалить невозможно. Однако, если группы все таки были удалены, необходимо создать псевдоним этих групп, в противном случае сервер OPC для этих групп не будет найден.
  • Если сервер OPC DA запускается новым пользователем «КАСКАД Цифра», например «OPCCLIENT» (параметр «-user») и если он получает значение от клиента OPC DA, значение всегда записывается от имени корневого пользователя.
  • Поддерживается использование элементов точек данных только текущей системы! Элементы точек данных распределенных систем не поддерживаются.

Диапазон адресов сервера «КАСКАД Цифра» OPC организован неиерархически и не допускает иерархического просмотра через клиент.

После каждого изменения групп (например, добавления нового элемента точки данных или изменения фильтра) необходимо перезапускать сервер OPC (WCCOAopcsrv).

Требования для сервера OPC

Требования

  • Должным образом установленная программа «КАСКАД Цифра» версии 2.12 или выше.
  • Клиент OPC.
  • Для работы системы требуется действительная лицензия!

Информацию о поддерживаемых драйвером OPC DA платформах см. в разделе «Поддерживаемые платформы самых важных драйверов».

Сервер OPC входит в состав стандартной версии «КАСКАД Цифра». Должен быть доступен корректно установленный клиент OPC. Подробная информация приводится в руководстве клиента.

При установке сервера регистрация должна выполняться автоматически. В противном случае сервер следует зарегистрировать с помощью следующей программы:

WCCOAopcsrv.exe /RegServer

ПРИМЕЧАНИЕ

Значение ProgID (идентификатора программы в реестре) сервера OPC равно «»КАСКАД Цифра».OPC.1».

Также имеется возможность запустить второй сервер через консоль. Второй сервер регистрируется и запускается с помощью следующей программы:

WCCOAopcsrv /runServer2 /RegServer

Для удаления из реестра информации о сервере используется параметр «/unregServer».

ПРИМЕЧАНИЕ

Значение ProgID (идентификатора программы в реестре) второго сервера OPC равно «»КАСКАД Цифра».OPC.2».

При поиске ключа «»КАСКАД Цифра».OPC.1» или «»КАСКАД Цифра».OPC.2» в реестре в разделе «CLSID» можно найти элемент «LocalServer32». В нем содержится исполняемая команда. В нее можно добавлять параметры, например имя проекта.

Настройки DCOM для сервера СибКом OPC

ПРИМЕЧАНИЕ

СибКом в общем случае не рекомендует применять DCOM для обеспечения связи с сервером OPC. При сетевых подключениях с резервированием DCOM может становиться причиной проблем. Их можно избежать, если установить удаленный сервер OPC DA на одном компьютере с клиентом OPC DA или использовать двухпортовые сетевые карты. Следует учитывать, что при переключении двухпортовой сетевой карты может возникать кратковременная задержка.

Необходимо внести следующие изменения в «DCOMCNFG» сервера СибКом OPC:

  • Авторизация: выберите пункт «Текущий пользователь» и отредактируйте данные пользователя с правами администратора.
  • Уровень полномочий –> стандартный.
  • Параметры безопасности:
    «Пользовательский доступ» -> использовать стандартные настройки
    «Пользовательские полномочия» -> использовать стандартные настройки
    «Настройка авторизации» -> настройте и разрешите всем пользователям выполнять любые действия
  • Выберите следующий параметр: выполнять приложение на данном компьютере

ВНИМАНИЕ

В некоторых случаях после изменения «DCOMCNFG» может потребоваться перезагрузка системы.

ПРИМЕЧАНИЕ

Изменение настроек DCOM, связанных с правами доступа, предоставляет полные полномочия для управления запуском сервера при использовании Pmon, например удаление разрешения на запуск объекта сервера OPC (Безопасность -> Разрешения на запуск и активацию). Чтобы избежать запуска сервера клиентом, необходимо отключить параметры «Удаленный запуск» и «Локальный запуск».

Сервер OPC: основы

Начиная с версии 2.12 любой клиент OPC может подключаться и обмениваться данными с «КАСКАД Цифра» через сервер OPC «КАСКАД Цифра».

  • Соответствует спецификации Data Access 2.05a (чтение и запись текущих значений).
  • Запускается в качестве менеджера, как и любой другой драйвер.
  • Элементы (элементы точек данных), передаваемые сервером другим клиентам, можно объединять в группы точек данных.
  • Элементы точек данных можно объявлять доступными только для чтения (группа «OPCRead») либо доступными также и для записи (группа «OPCWrite»).
  • Любые клиенты могут просматривать сервер «КАСКАД Цифра» OPC в иерархическом порядке.
  • В качестве драйвера OPC сервер доступен только в системе Windows.

Примеры систем и инструментов, с которыми обеспечивается связь:

  • Системы баз данных
  • Другие системы управления
  • Инструменты долгосрочного архивирования
  • Инструменты отчетности
РазделОписание
Сервер OPC: основыОбщая информация и ссылки на разделы.
Требования для сервера OPCТребования для функционирования сервера OPC
Доступ к данным «КАСКАД Цифра»Группы точек данных «OPCRead» и «OPCWrite» обеспечивают доступ к элементам точек данных при обмене данными.
Установка подключенияКак установить подключение.
Файл конфигурации сервера ОРСЗаписи в файле «config», относящиеся к серверу OPC.
Сопоставление битов состояний «КАСКАД Цифра»Сопоставление битов состояний «КАСКАД Цифра» с битами качества OPC
Резюме и ссылкиДругие полезные разделы по этой теме доступны в справочной системе