Системное дерево

Home  Back  Next

 

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

 

Системное дерево "System" лежит в

OPC-DA и OpcPipe: прямо в корне(root).
OPC-UA в разделе "Objects.Topic.System"

 

С помощью записи в специальный элемент "AddTopic" можно добавить дополнительные подключения к ПЛК без использования программы конфигурирования.

 

Системную тему можно отключить с помощью конфигурационного программного обеспечения в разделе "Station" - "Общие системные настройки" - "Use OPC system topic".

 

Примеры:

Состояние подключения SPS: Если настроено соединение с именем "s7", то статус соединения находится под заголовком
System.Topics.s7.Status (через OPC UA server.System.Topics.s7.Status)
Режим работы ПЛК находится под
System.Topics.s7.PlcDetails.PlcMode
Добавить новую связь с записью в System.AddTopic..
"s7.tcp://192.168.2.200:102?name=\"my name\",typ=client,ownTSAP=0101,destinationTSAP=0302,slave=9,start1=1,WriteAllowed=1"

 

Элементы в корневой части (root)

OPCPipe и OPC DA стартовый уровень лежит в корневом (root) уровне.
В соответствии с OPC-UA стартовый уровень находится под рубрикой "Objects.Topics".

 

Тема/Топик

Описание

System

Системные данные как перечень пунктов, информация о версиях

Memory

Временные переменные и структуры, которые передаются на память системы.

<user defined>

Темы, заданные пользователем, созданные с помощью конфигурационного программного обеспечения, браузера или путем записи в System.AddTopic.

System

Тема/Топик

Описание

AddTopic

Добавляет подключения к контроллерам.

При записи строки в заданный синтаксис будут добавлены соединения. Синтаксис описан в разделе AddTopic.

Topics / Темы

Предварительно заданный элемент "System.Topics" содержит список настроенных подключений к контроллерам. Элементы позволяют получить доступ к информации о статистике самого OPC-сервера и подключениях к контроллерам.

Дополнительную информацию от контроллеров можно прочитать как название контроллера, режим его работы и многое другое.

Licenses

Информация о действующих лицензиях

Versions

Версии программного обеспечения и его частей с OPC-сервера или PlcEngine.

Internal

Пожалуйста, не используйте это. Сделано для специальных применений.

Platform

Позволяет использовать теги для различных функций платформ, например: входы и выходы на Phytec Regor.

Status

Extended Server status

CurrentTime

и другие теги

Текущая информация о времени и время доступна для дальнейшей обработки.

Значения для System.Topics.<Название рубрики>

Тема/Топик

Описание

Status

Выводит статус соединения..

0-> ok

3 -> отсутствие связи

5 -> доступ запрещён

6 -> ожидание данных

7 -> ждать отправки, готово / wait for send ready

23 -> Коммуникационный партнер отказывается от порта. Ни одна программа его не открыла.

26 -> ARP не может разрешить этот адрес. Чаще всего партнёр отключается или разъединяется

29 -> Отстранено. Ни один клиент OPC или логическая таблица не использовали один элемент.

30 -> Перезагрузка Osi по принципу "peer". В основном, TSAP неверен.

31 -> Порт уже используется, в основном другой программой

32 -> Доменное имя не может быть разрешено. Сервер домена недоступен, или имя не было найдено.

33 -> Сеть недоступна. В большинстве случаев сетевые интерфейсы компьютеров плохо настроены.

ReadCount

Количество обработанных заданий на синхронное чтение. Эта переменная может быть записана.

WriteCount

Количество обработанных заданий на запись. Эта переменная может быть записана.

ActiveCount

Количество активных элементов.

ServerCycle

Количество циклов с измененными данными ПЛК. Эта переменная может быть записана.

Redundancy / дублирование

Это будет работать в соединениях, настроенных только для дублирования Details here.

AddVariable

Этот элемент присутствует только в разделе Memory.

Добавляет переменную в переменные памяти. Этот элемент только для записи.

Синтаксис следующий

<имя переменной>=<тип переменной><[><размер массива><]><;comment>

Поддерживаются следующие типы переменных: у8 (u8), у16 (u16), у32 (u32), у64 (u64), и8 (i8), и16 (i16), и32 (i32), и64 (i64), ф32 (f32), ф64 (f64), ,бит (bit), string.

Пример: MyVariable=u16[10];Массив UINT 16 с 10 элементами

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

Примечание: Символы, созданные с помощью AddVariable, будут удалены, если программное обеспечение OPC или PLC Engine Collect будет остановлено.

DeleteVariable

Удаляет переменную, созданную с помощью AddVariable. Имя переменной должно быть дано. Этот элемент только для записи.

Каждую переменную и каждый узел необходимо удалять отдельно.

Замечание: Если будет удалена переменная, которая не была создана с помощью AddVariable, то доступ будет запрещен.

AddSymbol

Данный элемент существует только в темах контроллеров, которые не поддерживают символы в самом контроллере. В основном это контроллеры Siemens S7 300/400, устройства Modbus или Mitsubishi.

Добавляет символ. Используется синтаксис элемента типа контроллер желаемого типа темы.

SymbolName=<ItemSyntax><;comment>

Пример для S7 300: MyFlag=mw0;Flag word zero

Символ с названием может содержать точки. Таким образом, можно создать несколько уровней.

Примечание: Символы, созданные с помощью AddSymbol, будут удалены, если программное обеспечение OPC или PLC Engine Collect будет остановлено.

DeleteSymbol

Удаляет символ, созданный с помощью AddSymbol.

AddStructure

Не доступно на сегодняшний день

DeleteStructure

Не доступно на сегодняшний день

DeleteTopic

Если соединение было добавлено динамически, этот пункт отображается на экране. Если это также записано, это динамически созданное соединение будет удалено.

Значения для System.Topics.<topicName>.PlcDetail

Если данные не могут быть считаны с контроллера, качество ухудшается (неисправен датчик).

Тема/Топик

Описание

PlcMode

0 -> ПЛК в режиме Stop, 1 -> ПЛК в режиме RUN/STOP, 2 -> ПЛК в режиме RUN.

KeySwitch

0 -> Key switch in position Stop, 1 -> Run/Prog, 2 -> Run, 3 -> Mres

PlcName

Имя, данное контроллеру. Не все контроллеры содержат названия.

PlcType

Тип ПЛК, который производитель дал ему. Не все контроллеры содержат эту информацию.

OrderNumber

Порядковый номер контроллера. Не все контроллеры содержат эту информацию.

Force

Information wheather forces will exist in the controllers program code. Some p,c deliver the number of forces here.

Battery

Status of the battery. 0 -> Ok, 1 -> empty, 2 -> no battery, 3 -> not supported

 

Не все типы контроллеров и версии микропрограммного обеспечения поддерживают все пункты в разделе PlcDetails (Подробности о ПЛК).
Поэтому OrderNumber (номер заказа) будет доступен только в Siemens S7. Подробную информацию можно найти в системных руководствах к контроллерам.

Значения для System.AddTopic

Темы могут быть созданы с помощью этого элемента.

Важно: При использовании AddTopic созданные соединения не являются постоянными. При выключенном питании они потеряются. Они должны быть созданы заново после включения питания.

Тема, созданная с помощью System.Topics.<созданная тема>, может быть удалена с помощью System.Topics.<созданная тема>DeleteTopic.

 

Тема/Топик

Описание

Name

<Topic Name>. Имя созданного соединения. Пожалуйста, обратите внимание на правила для названий тем, которые будут существовать у различных OPC клиентов.

PlcType

Действительными являются:

Значение

Описание

s7

Siemens S7-200, 300, 400 и совместимы с Speed7. Может использоваться для доступа к контроллеру через адаптер MPI от Hilscher, Process Informatik, IBH Softec, Softing, Helmholz.

tia

Siemens S7 1200 и 1500. Это позволит поддерживать оптимизированные блоки данных.

s5

Siemens S5 с network CP Все стоки поддерживаются 135, 155, 188. Все типы CPU.

compactlogics

Rockwell Control Logix и Compact Logix.

slc

Rockwell SLC family.

modbus

Modbus TCP и совместимые системы как Wago, Beckhoff, Modicon, Omron и прочие.

melsecQ

Mitsubishi Melsec family.

raw

Raw data. (сырые данные)

NetworkProtocol

Действительными являются:

Значение

Альтернатива

Description

ip

tcp

TCP/IP TCP через IpV4 (192.168.1.1) или IpV6 <235b:34aa::0001:0030) или доменные имена

udp


TCP/IP UDP через IpV4 (192.168.1.1) или IpV6 <235b:34aa::0001:0030) или доменные имена

h1

osi

OSI/H1 через MAC Addresses (080006010001) или (08:00:06:01:00:01)

NetworkAddress

IpV4 (192.168.1.1) или

IpV6 (235b:34aa::0001:0030) или

имена доменов (s7.mydomain.com)

Port / Порт

1 .. 65534. Это необходимо только для IP-соединений.

ConnectType / Тип соединения

Действительными являются:

Server / Сервер
Client / Клиент

OwnTSAP

в (hexadezimal) шестнадцатеричном формате. Это действительно только для соединений OSI/H1 или порта 102 (RFC1006). (0101)

DestinationTSAP

в (hexadezimal) шестнадцатеричном формате. Это действительно только для соединений OSI/H1 или порта 102 (RFC1006). (0302)

Slave

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

Start1

I Modbus-соединение определяет предполагаемый первый регистр. Фальсификация означает, что первый регистр равен нулю, в противном случае счетчик регистров начинается с единицы.

Create / Создать

Запись значения, отличного от нуля, создает соединение. Эта переменная только для записи.

CreateStatus / Создать Статус

0 -> Тема создана. Эта переменная только для чтения.

1 -> Неверные параметры подключения. В основном это происходит на слишком длинных величинах TSAP.

5 -> Неверный адаптер. Данный адаптер недоступен. В основном на переменных адаптерах (USB к Ethernet), которые были отключены.

17 -> Свободная память недоступна.

101 -> не поддерживается. Это будет происходить по протоколам plc, которые недоступны.

1319 -> не поддерживается. Чаще всего это происходит на неподдерживаемых сетевых протоколах, так как IpV6 не настроен.

1324 -> Лицензионный лимит. Максимальное количество соединений уже создано.

1325 -> не имеющий лицензии.

AddTopic / Добавить Топик

можно использовать вместо переменных Name, PlcType, NetworkProtocol, NetworkAddress, Port, ConnectType, OwnTSAP, DestinationTSAP для создания соединений. Эта переменная только для записи. Синтаксис на примере соединения s7 с именем "s7".

"s7.tcp://192.168.2.200:102?name=\"my name\",typ=client,ownTSAP=0101,destinationTSAP=0302"

Элемент Create(создать) в данном случае не используется.

Значения для System.Versions

Номер версии 0 говорит о том, что компонент не загружен.

 

Тема/Топик

Описание

PlcEngine

Номер версии ядра PlcEngine или OPC сервера.

Wmk

Номер версии библиотеки Wmk. Эта библиотека содержит общие функции.

IpLib

Номер версии библиотеки TCPIP. Эта библиотека содержит все функции IP сокетов.

H1

Номер версии драйвера Osi/H1.

OpcDA

Номер версии библиотеки OPC DA. Эта библиотека содержит классический OPC и доступна только для Windows.

OpcUA

Номер версии библиотеки OPC UA. Эта библиотека содержит OPC UA.

OpcPipe

Номер версии библиотеки OpcPipe. Эта библиотека содержит систему управления документами.

PlcLib

Номер версии библиотеки протоколов ПЛК. Эта библиотека содержит все протоколы ПЛК и управление ими.

ItemSyntax

Номер версии библиотеки синтаксиса элемента. Библиотека преобразует символы в элементы.

ConfigSubs

Номер версии общих функций конфигурации. Библиотека обрабатывает конфигурацию ядра.

..

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

Значения для System.Platform

Platform предлагает переменные, которые отличаются от платформы к платформе. В основном это переменные ввода/вывода.

 

Переменные, которые предлагаются на устройствах Regor компании Phytec:

 

Тема/Топик

Описание

Digital1Dir

Определяет функцию контакта 1/(Pin1) на разъеме ввода/вывода. "true" переключает контакт как выход, "false" как вход.

Digital1In

Если контакт 1/(Pin1) является входом, то "true" - это замкнутое соединение от контакта 1/(Pin1) к заземлению.

Digital1Out

Если контакт 1/(Pin1) является выходом, то переключатель замыкается на "true".


Digital2Dir, Digital2In, Digital2Out для контакта 2/(Pin2). Соответственно для контактов 3 и 4 /(Pin3 и 4).

ErrorLED

"true" означает, что светодиод горит. При записи "false" светодиод гаснет, "true" снова включается.

RunStopLED

"true" означает, что светодиод горит. При записи "false" светодиод гаснет, "true" снова включается.

Значения для System.Licenses

Лицензии и их подробности здесь.

 

Тема/Топик

Описание

BaseLicense / Базовая Лицензия

Номер заказа товара. Комментарий к продукту содержит название продукта.

BaseLicenseExpires / Срок действия базовой лицензии истекает

Дата окончания срока действия ограниченных по времени и тестовых лицензий в формате гггг-мм-дд чч:мм

Например: 2017-12-31 23:59 23:59

BaseLicenseState / Состояние базовой лицензии

Битовое кодированное значение:

Бит 0: Постоянная лицензия присутствует и все в порядке.

Бит 1: Электронный ключ распознан и действителен.

Бит 2: Электронный ключ был распознан в прошлом, но теперь его не удается найти.

Бит 3: Лицензирование с помощью программного обеспечения с кодом подтверждения.

Бит 4: Обнаружен код подтверждения программного обеспечения и OK.

Бит 5: Обнаружен ограниченный по времени код подтверждения. Срок годности указан в пункте BaseLicenseExpires.

Бит 6: Обнаружен и истек ограниченный по времени код подтверждения.

Бит 7: Аппаратное обеспечение (сетевая карта), к которому была подключена лицензия, больше не присутствует.

Бит 8: Лицензия не распознается, это тестовая версия. Срок годности указан в пункте BaseLicenseExpires.

Бит 9: Фаза тестирования истекла, требуется перезапуск.

Бит 10: Бесплатный лицензионный продукт установлен, лицензирование не требуется.

AddonLicenseX / Дополнительная лицензия X

Номер заказа дополнения/разширения. X является порядковым номером и начинается с 1. Если существует несколько дополнений, то будут существовать дополнительные элементы AddonLicenseX. Комментарий к элементу содержит название продукта дополнения/разширения.

 

Values for System.Status

Provides data points for extended status of the entire server.

 

Item name

Description

StructChangeCounter

EnumChangeCounter

These items are incremented when the internal structure or enum lists are modified.

This is not connection-specific, but a single counter for the entire server.

If automatic import is switched off, the counters increment when a structure/enum is imported manually.

If automatic import is switched on, the counters increment when a new structure/enum is read from the PLC.