Перейти к основному содержимому

iRidium для Modbus

набор инструментов для создания интерфейсов управления Modbus-совместимым оборудованием описание

документация обновлена 01.01.2024

iRidium для Modbus - это набор инструментов, позволяющий создать интерфейс для управления домом или офисом на базе Modbus-совместимого оборудования.

iRidium подключается к контроллеру как Modbus Master, контроллер всегда Slave. Поддерживаются протоколы Modbus TCP, RTU, ASCII (возможна работа RS232). Для подключения к OPC серверу можно использовать драйвер Modbus Server, который обеспечивает работу в режиме Slave, но этот режим не подходит для работы с ПЛК.

Лицензирование iRidium для Modbus: подробно

Подключение

Конфигурация оборудования и настройки, необходимые для того, чтобы iRidium начал управлять Modbus-совместимым ПЛК.

Способы подключения к ПЛК

Разные способы связи с ПЛК требуют выбора различных драйверов в iRidium.

  1. Modbus TCP / Modbus TCP Server Modbus_Comm_Scheme.png

  2. Modbus TCP / Modbus TCP to RTU / Modbus TCP to ASCII
    Modbus_Comm_SchemeRTU-ASCII.png

  3. Подключение с использованием клиент-серверной модели, где i3 pro выступает как Master, инициирующий транзакции Slave контроллеру. Для работы с контроллером не нужно дополнительное аппаратное обеспечение, т.к. контроллер оснащен Ethernet интерфейсом.

  4. Используется та же модель передачи данных, но обязательным является наличие преобразователя из протокола TCP/IP в Modbus RTU/ASCII. В качестве преобразователя может служить любой из шлюзов указанного типа (Moxa, ICP-DAS и др.)

Важно

Если вы выбрали работу по протоколу Modbus, учитывайте его особенности:

  • Часто ПЛК имеют ограничение на число одновременных соединений, убедитесь, что ваш контроллер поддерживает нужное вам число подключений в единицу времени
  • Не добавляйте в проект регистры, которые не настроены на ПЛК, это приведет к задержкам управления
  • Увеличьте Update Time контроллера, если он начинает хуже работать при подключении iRidium
  • iRidium по умолчанию отправляет регистрам Coil и Holding команды fc5 и fc6 (single coil, single register). Если контроллер не поддерживает эти команды, он должен вернуть ошибку 01 (illegal function), после чего iRidium автоматически переключается на отправку команд fc15 и fc16 (multiple coils, multiple registers). Если контроллер не возвращает ошибку 01, переключение на fc15 и fc16 не произойдет! Настройте контроллер для работы с функциями fc5 и fc6 (single coil, single register), если управление регистрами не работает, а обратная связь от контроллера есть.

Режимы коммуникации:

  • Modbus TCP - драйвер для прямого подключения к контроллеру по Modbus TCP , без использования дополнительного аппаратного или программного обеспечения. iRidium - Master, контроллер - Slave;
  • Modbus TCP to RTU и Modbus TCP to ASCII - драйверы для подключения к контроллеру через преобразователь с TCP/IP на Modbus RTU (ASCII). iRidium - Master, контроллер - Slave;
  • Modbus RTU и Modbus ASCII - драйверы для подключения к контроллеру по Modbus RTU или ASCII с использованием последовательных сетей RS232/RS485. Приложение iRidium с этими драйверами может быть запущено только на устройстве, физически подключенном к контроллеру с помощью последовательного порта передачи данных. iRidium - Master, контроллер - Slave;
  • Modbus Server - для подключения iRidium к ОРС серверу по протоколу Modbus TCP, iRidium - slave, ОРС сервер - master. Нельзя использовать для связи с обычным ПЛК, т.к. при каждом запуске iRidium происходит сброс переменных Modbus на стороне Slave (необходимо обеспечить защиту ПЛК от сброса переменных при перезапуске приложения). При использовании драйвера Modbus Server данные следует размещать в обратных связях, каналы не используются.

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

Импорт адресов Modbus в iRidium

Протокол Modbus в iRidium, позволяет управлять множеством контроллеров разного производства. Универсальная система импорта данных позволяет создать список команд и каналов обратной связи для драйвера Modbus в таблице Excel. Таблица в формате CSV добавляется в проект iRidium как новый драйвер:

Modbus_import_file.png

  • В блоке, отмеченном синим цветом, указывается IP-адрес, порт и частота транзакций для подключения к контроллеру по Modbus TCP. Если Вы используете другой драйвер, скопируйте его название из редактора GUI Editor и впишите в первую строку шаблона вместо MODBUS TCP (TCP);
  • В блоке, отмеченном зеленым цветом, формируется список команд (Commands), которые должны быть созданы в дереве устройств проекта. Каждая строка - это команда с именем и рядом настроек (подробнее о настройках см. общее описание в разделе "Отправка команд и чтение данных по протоколу Modbus");
  • В блоке, отмеченном оранжевым цветом, формируется список каналов обратной связи (Feedbacks), которые должны быть созданы в дереве устройств проекта. Каждая строка - это канал с именем и рядом настроек (подробнее о настройках см. общее описание в разделе "Отправка команд и чтение данных по протоколу Modbus").

Когда список команд и каналов сформирован, сохраните таблицу Exel в формат *.CSV :

Modbus_import_file_CSV.png

Результатом будет создание файла, готового к импорту в iRidium. Перейдите к редактору iRidium GUI Editor, создайте новый проект и воспользуйтесь механизмом File > Import . Выберите созданный CSV файл и подтвердите Импорт данных в свой проект.

Commands & Feedbacks

Как результат импорта мы имеем два уровня настроек ПЛК:

  • Modbus TCP - драйвер, объединяет в себе список регистров ПЛК;
  • Commands и Feedbacks - команды и каналы обратной связи внутри устройств, которые позволяют управлять регистрами Modbus. Команды - регистры, доступные на запись, каналы - регистры, доступные на чтение.

Команды и каналы обратной связи нужно привязать к графическим элементам проекта для управления оборудованием:

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

Чтобы связать команду или канал с графическим элементом, используйте метод drag&drop - перетягивание.

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

iRidium поддерживает следующие регистры и функции:

  • Coil Register (0x05, 0x0F, 0x01) - регистры флагов, один бит, чтение и запись;
  • Holding Register (0x06, 0x10, 0x03) - регистры хранения, 16-битное слово, чтение и запись;
  • Discret Inputs (0x02) - дискретные входы, один бит, только чтение;
  • Input Register (0x04) - регистры ввода, 16-битное слово, только чтение.

Word Size - длина слова, передаваемого контроллеру, может составлять до 32 бит:

  • Word (16-bit) - 16-битное слово, соответствующее стандартному протоколу Modbus;
  • Word(16 bit) unsigned - 16 битное беззнаковое слово, соответствующее стандартному протоколу Modbus;
  • DWord (32-bit) - 32-битное слово, состоящее из двух стандартных регистров Word;
  • Float (32-bit) - 32-битное слово, поддерживает значения с плавающей запятой;
  • Dword(32 bit) unsigned - 32-битное беззнаковое слово, состоящее из двух стандартных регистров Word.
примечание
  • Если в проекте присутствуют 32-битные регистры и у свойств подустройства включена функция SinglePoll, то адреса у каналов и фидбеков должны быть с разницей на 2 единицы (например, в проекте могут быть адреса 2, 4, 6, 9, 11 и не могут быть 2, 3, 4, 6, 7, 8).

Content Type - классификация по последовательности записи данных и их размеру:

Для 16-бит:

  • Low Endian  - порядок байтов, характерный для стандартного протокола Modbus. Запись данных начинается с младшего и заканчивается старшим байтом (b1, b2);
  • Big Endian  - запись начинается со старшего и заканчивается младшим байтом (b2, b1).

Для 32-бита:

  • Swapped Big Endian  - порядок байтов, характерный для стандартного протокола Modbus. Запись данных начинается с младшего и заканчивается старшим байтом (b1, b2, b3, b4);
  • Swapped Low Endian  - запись начинается со старшего и заканчивается младшим байтом (b4, b3, b2, b1);
  • Low Endian  и Big Endian  - порядок байтов соответствует вышестоящим определениям, но байты в каждом слове попарно поменяны местами (для Low Endian - b3, b4, b1, b2 , для Big Endian b2, b1, b4, b3).

Отправка и получение данных производится драйвером на основе списка команд (Commands) и каналов (Feedbacks). Частота транзакций определяется при настройке подключения.

Настройка подключения к ПЛК

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

Modbus TCP / Modbus TCP to RTU / Modbus TCP to ASCII / Modbus TCP Server:

ModbusTCP.png

  • Host - IP адрес ПЛК (IPv4).
  • Port - ТСР порт подключения к ПЛК (обычно 502).
  • Keep Alive - интервал проверки TCP соединения. В случае отсутствия ответа на запрос Keep Alive, драйвер будет принудительно переведён в состояние отключен. Параметр сделан для корректного отображения онлайн-статуса при экстренном\неправильном отключении клиента. 0 - отключение настройки.
  • Update time (мс) - периодичность опроса ПЛК для обновления данных о его состоянии.
  • Coil Write Function - Режим отправки команды дискретных команд(Single - запись одного регистра флагов, Multiple - запись нескольких регистров флагов).
  • Holding Write Function - Режим отправки команды для выходных регистров(Single - запись одного регистра,Multiple - запись нескольких регистров).

Для работы через Интернет укажите публичный IP-адрес маршрутизатора, к которому подключен контроллер и настройте проброс управляющего порта (Port Forwarding).

Публичный IP-адрес маршрутизатора можно узнать, например, через Яндекс.Интернет

Modbus RTU / Modbus ASCII:

ModbusRTU.png

  • Log Level - уровень логирования.
  • Host - номер СОМ-порта, к которому подключен контроллер.
  • Used with iRidi device - выставляет хост для соответствующего оборудования (при выборе этого параметра строка Host будет не активна).
  • Update Time (мс) - периодичность, с которой iRidium будет запрашивать информацию об изменении статусов переменных контроллера. Рекомендуемые значения - 1000...2000 мс.
  • Baud Rate - скорость обмена данными с контроллером.
  • Data Bits - число информационных разрядов в кадре.
  • Parity - контроль четности.
  • Stop Bits - cтоповый бит в кадре (1; 1,5; 2).
примечание

В веб интерфейсе стоповые биты отображаются как:

iRidium studio:Web-интерфейс:
10
1,51
22
  • Coil Write Function - отправка отдельного пакета на запись каждого регистра (Single - запись одного регистра флагов, Multiple - запись нескольких регистров флагов).
  • Holding Write Function - режим отправки команды для выходных регистров (Single - запись одного регистра,Multiple - запись нескольких регистров).
  • Silent Period - настройка отвечает за паузу между отправкой команд.

RS232 протокол будет работать только на устройстве, которое физически (СОМ-портом) подключено к ПЛК или имеет виртуальный СОМ-порт для связи с ПЛК,

Modbus TCP Network

ModbusTCP_Network.png

  • Log Level - уровень логирования.
  • Host - IP адрес ПЛК (IPv4)
  • Port - ТСР порт подключения к ПЛК (обычно 502)
  • Wait for Data (ms) - ответа от драйвера. После заданного времени делает переподключение драйвера.
  • Keep Alive - интервал проверки TCP соединения. В случае отсутствия ответа на запрос Keep Alive, драйвер будет принудительно переведён в состояние отключен. Параметр сделан для корректного отображения онлайн-статуса при экстренном\неправильном отключении клиента. 0 - отключение настройки.
  • Update time (мс) - периодичность опроса ПЛК для обновления данных о его состоянии.
  • Coil Write Function - отправка отдельного пакета на запись каждого регистра. Single - запись одного регистра флагов, Multiple - запись нескольких регистров флагов).
  • Holding Write Function - режим отправки команды для выходных регистров(Single - запись одного регистра,Multiple - запись нескольких регистров).
  • Single Poll - При включении параметра происходит формирование отдельного пакета для опроса каждого канала сабдевайса.
  • Send Wait Time - Пауза между попытками опроса сабдевайса. Количество попыток указывается в сабдевайсе в поле "Number of attempts".
примечание

У сабдевайсов появился параметр Change Write Function , при активации появляются дополнительные настройки для сабдевайса Coil Write Function и Holding Write Function .

Modbus RTU Network / Modbus ASCII Network

ModbusRTU_Network.png

  • Log Level - уровень логирования.
  • Host - адрес COM-порта.
  • Wait for Data (ms) - общее ожидание ответа от драйвера. После заданного времени делает переподключение драйвера.
  • Used with iRidi device - выставляет хост для соответствующего оборудования (при выборе этого параметра строка Host будет не активна);
  • Update time (мс) - периодичность опроса ПЛК для обновления данных о его состоянии.
  • Baud Rate - скорость обмена данными с контроллером.
  • Data Bits - число информационных разрядов в кадре.
  • Parity - контроль четности.
  • Stop Bits - cтоповый бит в кадре (1; 1,5; 2).
примечание

В веб интерфейсе стоповые биты отображаются как:

iRidium studio:Web-интерфейс:
10
1,51
22
  • Coil Write Function - отправка отдельного пакета на запись каждого регистра(Single - запись одного регистра флагов, Multiple - запись нескольких регистров флагов).
  • Holding Write Function - режим отправки команды для выходных регистров(Single - запись одного регистра,Multiple - запись нескольких регистров).
  • Single Poll - При включении параметра происходит формирование отдельного пакета для опроса каждого канала сабдевайса.
  • Send Wait Time - Пауза между попытками опроса сабдевайса. Количество попыток указывается в сабдевайсе в поле "Number of attempts".
  • Silent Period - Настройка отвечает за паузу между отправкой команд.

Смена настроек подключения

Возможность смены параметров подключения нужна, если вы отключаетесь от Wi-Fi сети объекта автоматизации и начинаете использовать 3G или другую Wi-Fi сеть. Чтобы управление продолжило работать, нужно переключиться с локального на публичный IP адрес интернет-маршрутизатора.

Переключение не происходит автоматически, вам нужно будет нажать на клавишу выбора режима соединения. Для возможности удаленного доступа необходимо сделать порты управления системой автоматизации публичными. Для этого настраивают службу Port Forwarding на интернет-маршрутизаторе. Защищенное соединение может обеспечить VPN.

  1. Скачайте шаблон (*.js) (правая кнопка: "Сохранить объект как..."), добавьте шаблон в редактор скриптов клавишей (+) Add Script from file

  2. Настройте параметры скрипта, как показано в примере:

function Internal_1() {
IR.GetDevice("Modbus TCP").SetParameters({Host: "192.168.0.100", Port: 502, UpdateTime: 1000});
}
function External_1() {
IR.GetDevice("Modbus TCP").SetParameters({Host: "215.110.10.10", Port: 502, UpdateTime: 1000});
}

Скопируйте имя драйвера из Projсet Device Panel, список параметров нужно скопировать из примера в точности.

  1. Выберите кнопку, которая будет отвечать за переключение Internal и External параметров. Откройте Macros Editor для события Press (Object Properties > Programming), выберите команду Script Call и добавьте ее двойным кликом. Выберите имя функции, которую вызовет кнопка:

Script call internal-external.png

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

Особенности ПЛК

Insyte Spyder II

Для работы с контроллером SPIDER 2 по протоколу Modbus TCP, активируйте возможность работы по этому протоколу в сетевых настройках контроллера, вкладка Ethernet. Пример конфигурации:

Insyte_Ethernet_Config.png

примечание
  • Убедитесь, что на контроллер SPIDER 2 установлена прошивка 1.40 или старше, иначе возможны существенные задержки связи с контроллером и проблемы при работе с регистрами Coil.

  • При создании команд сдвигайте адресацию на "-1" относительно INSYTE: в SPIDER 2 адреса регистров начинаются с 1, а в iRidium - с нуля.

  • Для обращения к ПЕРЕМЕННЫМ SPIDER 2 используйте формулу:

Address = 1000 + [номер слота]*2

Номер слота есть у каждой переменной, он будет виден, если навести курсор мыши на переменную. Type: Holding Register, Word Size: Dword(32-bit)

  • Для отправки ИК команд используйте:

Address = номер ИК эмиттера

Value = номер ИК команды

Beckhoff

Карта памяти Modbus/ADS для Beckhoff CX8090:

Modbus areasModbus address (HEX)Modbus address (DEC)ADS area
Digital inputs0x0000 - 0x7FFF0 - 32767Index group:
0xF021 - process image of physical inputs (bit access)
Index offset:
0x0
0x8000 - 0x80FF32768 - 33023Name of the variables in PLC program:
.mb_Input_Coils
Data type:
ARRAY [0..255] OF BOOL
Digital outputs (coils)0x0000 - 0x7FFF0 - 32767Index group:
0xF031 - process image of physical outputs (bit access)
Index offset:
0x0
0x8000 - 0x80FF32768 - 33023Name of the variables in PLC program:
.mb_Output_Coils
Data type:
ARRAY [0..255] OF BOOL
Input registers0x0000 - 0x7FFF0 - 32767Index group:
0xF020 - process image of physical inputs
Index offset:
0x0
0x8000 - 0x80FF32768 - 33023Name of the variables in PLC program:
.mb_Input_Registers
Data type:
ARRAY [0..255] OF WORD
Output registers0x0000 - 0x2FFF0 - 12287Index group:
0xF030 - process image of physical outputs
Index offset:
0x0
0x3000 - 0x5FFF12288 - 245750x4020 - PLC memory area0x0
0x6000 - 0x7FFF24576 - 327670x4040 - PLC data area0x0
0x8000 - 0x80FF32768 - 33023Name of the variables in PLC program:
.mb_Output_Registers
Data type:
ARRAY [0..255] OF WORD

Read/Write Holding Registers:

  • iPad1 AT %MB0 : WORD; (address 12288)
  • iPad2 AT %MB1 : WORD; (address 12289)

Read/Write Coils. Необходимо создать в global_var массив mb_Output_Coils

  • mb_Output_Coils AT %QB1000 : ARRAY[0..255] OF BOOL;
  • Создаем переменные:
    • iPad1 AT %QX1000.0 : BOOL; (address 32768)
    • iPad2 AT %QX1001.0 : BOOL; (address 32769)
    • iPad3 AT %QB1002 : ARRAY[0..5] OF BOOL; (address 32770-32775)
    • iPad3 AT %QB1007 : ARRAY[0..5] OF BOOL; (address 32775-32780)

Карта памяти Modbus/ADS для Beckhoff BC9хх0:

Карту памяти Modbus см. в документации к контроллеру. Вычисление Modbus адреса переменной контроллера Read/Write Holding Registers, созданной программно, производится по формуле:

  • Address = 16384 + 12 = 16395
    • 16384 - начало области %MB (0x4000-0x47FF)
    • 12 – индекс переменной (является свойством переменной)

ОВЕН

При настройке контроллера, в параметр FIX необходимо добавить ТСР Port подключения к контроллеру. По умолчанию - 502. Один порт держит одно подключение ТСР мастера (клиента iRidium).

Номера регистров Modbus можно смотреть по адресам типа %QB7.1.5:

Address = %QB7.1.5 - 1 = 5 - 1 = 4

Последняя цифра адреса минус один - это номер регистра, который будет указываться в iRidium.

Выравнивание переменных CoDeSys при размещении в области памяти Modbus:

переменные размером 8 бит, 2 байта и 4 байта должны располагаться только по определенным адресам. Адрес 4-байтной переменной кратен 4, 2-байтной – кратен 2, а 1-байтной – кратен 1 и может находиться в любой точке пространства памяти. Т.е. если идет первая переменная типа «байт», то она будет расположена по адресу 0х00, следующая – 0х01 и т.д. Если дальше идет 4-байтная переменная, она должна располагаться по адресу 0х04 и т.д. При этом, если однобайтная переменная заняла место, кратное четырем, следующая 4-байтная переменная занимает следующее кратное 4 место. Порядок задания переменных может быть произвольным, выравнивание же ставит переменные на кратные их длине адреса. Соответственно, возникают не занятые пространства памяти, которые должны учитываться пользователем: когда производится опрос прибора. Учет производится на стадии задания переменных.

Добавление и настройка подустройств

В драйвер типа Network вы можете добавить необходимое количество подустройств. Каждое подустройство может отвечать за отдельный тип оборудования (освещение, кондиционер и т.д.). Для добавления подустройства, щелкните ЛКМ по добавленному драйверу (нетворку) и выберите Add subdevice > Custom .

Modbus_Subdevices2.png

Modbus_Subdevices.png

Настройка подустройств:

  • Name - имя подустройства;
  • Driver Type - тип драйвера;
  • Device ID - индивидуальный идентификатор устройства;
  • Number of attempts - количество попыток опроса подустройства, если оно не отвечает;
  • Skip to recovery - количество пропусков опроса подустройства, если оно не отвечает (срабатывает после окончания попыток опроса "Number of attempts");
  • Change Write Function - включает или отключает настройки "Coil Write function" и "Holding write function". Если включено, то берутся настройки подустройства, если выключено, то берутся общие настройки "Coil Write function" и "Holding write function" для нетворка; *Coil Write Function - отправка отдельного пакета на запись каждого регистра. Single - запись одного регистра флагов, Multiple - запись нескольких регистров флагов); *Holding Write Function - режим отправки команды для выходных регистров(Single - запись одного регистра,Multiple - запись нескольких регистров);
  • Single Poll - включает раздельный опрос регистров (если выключен - соседние регистры опрашиваются одним пакетом, если включен - каждый регистр опрашивается отдельным пакетом).

Управление регистрами

SendRecieve.png

Для управления оборудованием настройте команды (Commands) и каналы обратной связи (Feedbacks). Чтобы отправить команду, перетяните ее на графический элемент и укажите значение (Value), которое необходимо отправить. Чтобы отобразить значение с канала обратной связи, перетащите Feedback на графический элемент, и укажите, каким образом вывести значение (Value).

Подробнее о работе с графическими элементами написано в статье "Типы графических элементов".

Возможные настройки команд, каналов и графических элементов представлены далее:

Coil

Command:

ПараметрЗначениеОписание
TypeCoilРегистр флагов, доступный на чтение и запись
Address0 .. nАдрес регистра в десятичном формате
Value *0 .. 10 = Off, 1 = On
  • укажите при перетягивании команды на графический элемент

Feedback:
Настройки аналогичны команде. Значение Value приходит в Feedback и его можно использовать для отображения статуса регистров на элементах


Holding

Command:

ПараметрЗначениеОписание
TypeHolding RegisterРегистр хранения, доступный на чтение и запись
Address0 .. nАдрес регистра в десятичном формате
Word SizeWord(16 bit)16-битное слово, соответствующее стандартному протоколу Modbus
Word(16 bit) unsigned16-битное беззнаковое слово, соответствующее стандартному протоколу Modbus
DWord (32-bit)32-битное слово, состоящее из двух стандартных регистров Word
Float (32-bit)32-битное слово с плавающей запятой
DWord(32 bit) unsigned32-битное беззнаковое слово, состоящее из двух стандартных регистров Word
Content Type
для разных типов оборудования используйте соответствующий "Content Type"
Low EndianЗапись данных начинается с младшего и заканчивается старшим байтом (b1, b2, b3, b4)
Big EndianЗапись начинается со старшего и заканчивается младшим байтом (b4, b3, b2, b1)
Swapped Low Endian, Swapped Big EndianБиты в каждом слове попарно поменяны местами (Swapped Low Endian - b3, b4, b1, b2; Swapped Big Endian - b4, b3, b2, b1)
Value *Word SizeЗначение в соответствии с выбранным размером слова
0 .. 65535Word(16 bit) unsignedБеззнаковые 2 байта
-32768 .. 32767Word(16 bit)Знаковые 2 байта
0 ... 4294967295DWord(32 bit)Беззнаковые 4 байта
-2147483648 .. 2147483647DWord(32 bit)Знаковые 4 байта
-2147483648.0 .. 2147483647.0Float(32 bit)4 байта с плавающей запятой
0 ... 4294967295DWord(32 bit) unsignedБеззнаковые 4 байта

Feedback:
Настройки аналогичны команде. Значение Value приходит в Feedback и его можно использовать для отображения статуса регистров на элементах


Discrete Inputs

Feedback:

ПараметрЗначениеОписание
TypeDiscrete InputsДискретный вход, доступный на чтение
Address0 .. nАдрес регистра в десятичном формате
Value *0 .. 10 = Off, 1 = On
  • значение Value приходит в Feedback и его можно использовать для отображения статуса регистра на элементах

Input Register

Feedback:

ПараметрЗначениеОписание
TypeInput RegisterРегистр ввода, доступный на чтение
Address0 .. nАдрес регистра в десятичном формате
Word SizeWord(16 bit)16-битное слово
DWord (32-bit)32-битное слово, состоящее из двух стандартных регистров Word
Float (32-bit)32-битное слово с плавающей запятой
Content TypeLow EndianЗапись данных начинается с младшего и заканчивается старшим байтом (b1, b2, b3, b4)
Big EndianЗапись начинается со старшего и заканчивается младшим байтом (b4, b3, b2, b1)
Swapped Low Endian, Swapped Big EndianБиты в каждом слове попарно поменяны местами (Swapped Low Endian - b3, b4, b1, b2; Swapped Big Endian - b4, b3, b2, b1)
Value *Word SizeЗначение в соответствии с выбранным размером слова
0 .. 65535Word(16 bit)Беззнаковые 2 байта
-32768 .. 32767Word(16 bit)Знаковые 2 байта
0 ... 4294967295DWord(32 bit)Беззнаковые 4 байта
-2147483648 .. 2147483647DWord(32 bit)Знаковые 4 байта
-2147483648.0 .. 2147483647.0Float(32 bit)4 байта с плавающей запятой
  • значение Value приходит в Feedback и его можно использовать для отображения статуса регистра на элементах

Мониторинг

В web-интерфейсе сервера вы можете увидеть всю информацию об отправляемых и принимаемых значениях контроллера за определенный период времени. Для перехода на вкладку мониторинга, зайдите в web-интерфейс сервера и выберите WORK > Drivers > Monitoring . Система мониторинга работает как для TCP, так и для RTU драйверов.

Monitoring1.png

Пример мониторинга для Modbus RTU Network :

Monitoring2.png

  • Start log - кнопка включения логирования (по умолчанию отключено);
  • Stop log - кнопка остановки логирования (рабочая область с логом не очистится);
  • Save to CSV - кнопка сохранения лога в таблицу excel;
  • Disable Scroll - отключить прокрутку списка с логом;
  • Clear - кнопка очистки лога. По достижении 1000 записей, очистка данных производится автоматически;
  • Date/time - дата и время записи (период опроса задается в настройках драйвера);
  • Log level - уровень логирования (задается в настройках драйвера);
  • Command Type - тип команды:
    • Receive - запись ответа от оборудования (feedback);
    • Send - запись запроса от драйвера к оборудованию (command);
  • Value - отправляемое / принимаемое значение (оборудование посылает пакет, который содержит адрес устройства, тип функции и само значение в шестнадцатеричной системе счисления)