Транспорты AgavaSCADA/AgavaPLC: различия между версиями

Материал из docs.kb-agava.ru
Перейти к навигации Перейти к поиску
 
Строка 128: Строка 128:
 
Узел для чтения/записи
 
Узел для чтения/записи
  
 +
{{Шаблон:AgavaSCADA_плагин_OPC_UA}}
 
{{Шаблон:AgavaSCADA_плагин_SNMP}}
 
{{Шаблон:AgavaSCADA_плагин_SNMP}}
  
 
[[Категория:AgavaSCADA/AgavaPLC]]
 
[[Категория:AgavaSCADA/AgavaPLC]]

Текущая версия на 11:05, 18 декабря 2024

1 Транспорты Modbus-RTU, Modbus-TCP

Данные виды транспортов предназначены для приема и передачи данных по протоколу Modbus. Поддерживаются последовательные и Ethernet подключения.

1.1 Узлы

  • TransportModbus-RTU - транспорт, работающий по последовательным линиям связи.
  • TransportModbus-TCP - транспорт, работающий по ethernet.
  • ModbusRegister - источник типа "Регистр Modbus".

1.1.1 TransportModbus-RTU

Узел, представляющий транспорт Modbus, работающий по последовательным линиям связи RS-485, RS-422, RS-232.

1.1.1.1 Доступные дочерние узлы
  • Группа узлов
  • ModbusRegister
1.1.1.2 Свойства

1.1.2 TransportModbus-TCP

Узел, представляющий транспорт Modbus, работающий по линиям связи Ethernet.

1.1.2.1 Доступные дочерние узлы
  • Группа узлов
  • ModbusRegister
1.1.2.2 Свойства

1.1.3 ModbusRegister

Узел, представляющий источник типа "Регистр Modbus".

1.1.3.1 Доступные дочерние узлы

Нет

1.1.3.2 Свойства
Наименование свойства Идентификатор Тип Доступ Описание
Устройство DeviceAddr INT Чтение / запись
Функция чтения ReadFunction INT Чтение / запись
Регистр чтения ReadRegister INT Чтение / запись
Размер регистра ParamSize INT Чтение / запись
Приоритет Priority INT Чтение / запись
Функция записи WriteFunction INT Чтение / запись
Регистр записи WriteRegister INT Чтение / запись
Тип значения ValueType INT Чтение / запись
Порядок байт ByteOrder INT Чтение / запись
Операции после чтения OperationsOnRead NODESARRAY Чтение / запись
Операции перед записью OperationsOnWrite NODESARRAY Чтение / запись
Узел для чтения/записи SourceId NODE Чтение / запись

Устройство

Функция чтения

Регистр чтения

Размер регистра

Приоритет

Функция записи

Регистр записи

Тип значения

Порядок байт

Операции после чтения

Операции перед записью

Узел для чтения/записи

2 Транспорт OPC-UA

2.1 Узлы

  • Транспорт OPC-UA - транспорт, работающий по протоколу OPC-UA.
  • Группа тегов - узел, позволяющий группировать теги.
  • Тег OPC-UA - источник (параметр), хранящий значения.

2.1.1 Транспорт OPC-UA

2.1.1.1 Свойства
Наименование свойства Идентификатор Тип Доступ Описание
Режим работы TransportMode ENUM Чтение / запись
Адрес IPAddr STRING Чтение / запись
Таймаут Timeout INT Чтение / запись
Разделитель TagSeparator STRING Чтение / запись

2.1.2 Группа тегов

2.1.2.1 Свойства
Наименование свойства Идентификатор Тип Доступ Описание
Пространство имен NamespaceIndex UCHAR Чтение / запись

2.1.3 Тег OPC-UA

2.1.3.1 Свойства
Наименование свойства Идентификатор Тип Доступ Описание

2.2 Создание и настройка транспорта OPC-UA

Для использования транспорта OPC-UA в проекте должна присутствовать транспортная система. Добавьте в систему узел типа Транспорт OPC UA.

Выберите режим работы транспорта:

  • Клиент - транспорт работает как ведущий и выполняет запрос значений параметров у севера.
  • Сервер - транспорт работает в режиме "ведомый" и отвечает на запросы клиентов.

Задайте свойствам транспорта необходимые значения.

2.3 Добавление параметров в Транспорт OPC-UA, работающий в режиме "Клиент"

Для добавления параметров (OPC-UA тегов) в транспорт необходимо знать их имена. Определение имен параметров, предоставляемых OPC UA сервером, можно произвести путем просмотра дерева параметров сервера с помощью доступных OPC-UA клиентов, например:

  • Unified Automation UaExpert (бесплатный).

После определения имен интересующих параметров необходимо добавить в транспорт нужные параметры в виде древовидной структуры в соответствии со структурой параметров в сервере.

Для примера продемонстрируем порядок настройки транспорта на примере публичного OPC UA сервера по адресу opc.tcp://milo.digitalpetri.com:62541/milo

Данный сервер предоставляет большой набор параметров, среди которых есть динамически меняющиеся, которые можно найти с помощью упомянутых выше OPC-UA клиентов:

Root/Objects/Dynamic/RandomDouble
Root/Objects/Dynamic/RandomFloat
Root/Objects/Dynamic/RandomInt32
Root/Objects/Dynamic/RandomInt64

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

ns=2;s=Dynamic/RandomDouble
ns=2;s=Dynamic/RandomFloat
ns=2;s=Dynamic/RandomInt32
ns=2;s=Dynamic/RandomInt64

Добавим в транспорт узел типа Группа тегов, установим его свойства следующим образом:

  • Пространство имен = 2;
  • Имя = Dynamic.

Добавим в данную группу узлы типа Тег OPC-UA с именами RandomDouble, RandomFloat, RandomInt32, RandomInt64и установим в их свойствах соответствующий тип значения.

После сохранения, компиляции и запуска проекта транспорт будет запрашивать у сервера добавленные теги.

3 Транспорт SNMP

Протокол SNMP (Simple Network Management Protocol) широко используется для мониторинга и управления сетевыми устройствами, такими как маршрутизаторы, коммутаторы, серверы и принтеры. Он позволяет собирать информацию о состоянии устройств и выполнять удалённые настройки. Для эффективного использования SNMP в AgavaSCADA необходимо правильно настроить транспорт SNMP и его параметры. В следующих разделах описывается процесс создания и настройки транспорта SNMP, а также добавления необходимых параметров для обеспечения надежного взаимодействия с управляемыми устройствами.

3.1 Создание и настройка транспорта SNMP

  1. В дереве проекта, правой кнопкой мыши выделить группу узлов, представляющие транспорты проекта, выбрать Добавить узел -> Транспорт SNMP, в результате чего в дереве проекта будет создан узел транспорта SNMP.
  2. В свойствах созданного транспорта необходимо указать IP-адрес устройства, версию SNMP протокола, используемого устройством, и необходимую информацию для получения доступа к устройству (community-строку для SNMP v2c или имя пользователя и пароль для SNMP v3).

3.1.1 Как определить версию SNMP для устройства

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

3.1.2 Авторизация в версиях SNMP v1 и SNMP v2c

Авторизация осуществляется с помощью community-строк, которые действуют как простые пароли. Community-строка передается в открытом виде и может быть установлена на значения по умолчанию, такие как public для операций чтения или private для операций записи. Администратор системы может установить собственные значения для community-строк, используемых устройством. Безопасность в этих версиях протокола минимальна.

3.1.3 Авторизация в версиях SNMP v3

Предоставляет усовершенствованные механизмы безопасности, включая аутентификацию и шифрование. Авторизация требует имя пользователя, а также может потребовать пароль аутентификации и пароль шифрования. Данная версия протокола поддерживает различные уровни безопасности:

  • noAuthNoPriv: Только имя пользователя без аутентификации и шифрования.
  • authNoPriv: Аутентификация без шифрования.
  • authPriv: Полная аутентификация и шифрование данных.
Пример корректно заданного Транспорта SNMP
Свойство Значение
Версия SNMP SNMP v2c
IP адрес 172.16.3.22
Имя пользователя public
Пароль

3.2 Добавление параметров в Транспорт SNMP

  1. В дереве проекта найти и правой кнопкой мыши выделить узел транспорт SNMP и выбрать Добавить узел -> Параметр SNMP, в результате чего в дереве проекта будет создан узел параметра SNMP.
  2. В свойствах узла, представляющего параметр SNMP, помимо группы свойств Основные, доступна также группа свойств Параметр SNMP, содержащая свойства, специфичные для параметра транспорта: OID, Тип значения и Права доступа.
    • OID (Object Identifier) — это уникальный идентификатор объекта управления в MIB (Management Information Base). Он представляет собой последовательность чисел, разделенных точками, например: 1.3.6.1.2.1.1.1.0. OID можно получить несколькими способами: обратиться к документации производителя, которая часто содержит список доступных OID и их описание; использовать MIB-файлы — специальные файлы, предоставляемые производителем устройства и содержащие все OID и их свойства; или воспользоваться сторонними утилитами (например SNMP Walk, позволяющая просмотреть все доступные OID на устройстве).
    • Тип значения определяет тип данных, которые будет получен и/или отправлен при взаимодействии с устройством по определенному OID.
    • Права доступа — свойство определяющее, какие операции могут быть выполнены с данным OID — только чтение или чтение и запись.
Пример корректно заданного Параметра SNMP
Свойство Значение
Тип значения String
Права доступа Чтение и запись
OID 1.3.6.1.2.1.1.1.0

После корректного задания свойств Транспорта SNMP и добавления параметров SNMP для данного транспорта, пользователь AgavaSCADA сможет эффективно использовать передаваемую информацию узлами-параметрами SNMP. Это позволит осуществлять мониторинг и анализ данных устройств, интегрированных в сеть.