Устройство и принцип работы

Принцип работы

Работой модуля управляет Мастер сети. Модуль передает в сеть данные о состоянии входов при запросе от Мастера.

Мастером может являться:

  • ПК

    ;
  • ПЛК

    ;
  • панель оператора

    ;
  • удаленный облачный сервис

    .

Индикация и управление

На лицевой панели прибора расположены элементы индикации. Расшифровка значений приведена в таблице.

Graphic
Лицевая панель прибора

В нижней части лицевой панели расположено поле «IP».

Предупреждение
Поле «IP» предназначено для нанесения IP-адреса модуля тонким маркером или на бумажной наклейке.
Назначение прибора
ИндикаторСостояние индикатораНазначение
Питание Graphic (зеленый)ВключенНапряжение питания прибора подано (рабочий режим) / подано питание от USB (режим конфигурирования)*
Eth 1 (зеленый)МигаетПередача данных по порту 1 Ethernet
Eth 2 (зеленый)МигаетПередача данных по порту 2 Ethernet
Авария Graphic (красный)**Не светитсяСбои отсутствуют
Светится постоянноСбой основного приложения и/или конфигурации
Включается на 200 мс один раз в три секундыНеобходимо заменить батарею питания часов (напряжение батареи ниже 2 В)
Включается на 100 мс два раза в секунду (через паузу 400 мс)Модуль находится в безопасном состоянии
Включен 900 мс, 100 мс выключенАппаратный сбой периферии (Flash, RTC, Ethernet Switch)

Индикаторы состояния дискретных входов для подключения датчиков типа «сухой контакт».

Включен зеленыйЗамкнутое состояние входа
ВыключенРазомкнутое состояние входа

Индикаторы состояния дискретных входов для подключения сигналов ~230 В

Включен зеленыйЕсть напряжение на входе
Выключен Напряжение отсутствует
Включен красныйОбрыв фазы в трехфазной сети
Включен оранжевыйСбой чередования фаз в трехфазной сети
Примечание

* В режиме конфигурирования (при питании от USB и отсутствии основного питания) Ethernet-порты модуля находятся в режиме Ethernet Bypass, встроенный коммутатор не функционирует. Входы/выходы модуля не функционируют.

** Приоритеты индикации светодиода «Авария» от большего к меньшему: аппаратный сбой, программные ошибки, безопасный режим, уровень заряда батареи.

Под лицевой панелью расположены клеммники и сервисная кнопка (рисунок).

Сервисная кнопка предназначена для выполнения следующих функций:

  • восстановление заводских настроек (см. раздел)

    ;
  • установка IP-адреса (см. раздел)

    ;
  • обновление встроенного программного обеспечения (см. раздел).

Часы реального времени

В приборе есть встроенные часы реального времени (RTC). Часы реального времени работают от собственного батарейного источника питания.

Отсчет времени производится по UTC в секундах, начиная с 00:00 01 января 2000 года. Значение RTC используется для записи в архив.

Подробнее о настройке часов реального времени см. раздел.

Запись архива

В модуль встроена флеш-память (flash), размеченная под файловую систему с шифрованием файлов. Алгоритм шифрования — Data Encryption Standard (DES) в режиме сцепления блоков шифротекста (CBC). В качестве ключа используется строка superkey. Вектор инициализации генерируется с помощью хеш-функции (см. приложение А). Аргументом функции является пароль, заданный в ПО Owen Configurator. В конце файла сохраняется контрольная сумма, рассчитанная по алгоритму CRC32 (контрольная сумма также шифрируется).

Архив модуля сохраняется в виде набора файлов. Период архивации, ограничение на размер одного файла и их количество задается пользователем в ПО Owen Configurator. Если архив полностью заполнен, то данные перезаписываются, начиная с самых старых данных самого старого файла.

Файл архива состоит из набора записей. Записи разделены символами переноса строки (0x0A0D). Каждая запись соответствует одному параметру и состоит из полей, разделенных символом «;» (без кавычек). Формат записи приведен в таблице ниже.

Формат записи в файле архива
ПараметрТипРазмерКомментарий
Метка времениBinary data4 байтаВ секундах начиная с 00:00 01.01.2000 (UTC+0)
РазделительСтрока1 байтСимвол «;» (без кавычек)
Уникальный идентификатор параметра (UID)Строка8 байтВ виде строки из HEX-символов с ведущими нулями
РазделительСтрока1 байтСимвол «;» (без кавычек)
Значение параметраСтроказависит от параметраВ виде строки из HEX-символов с ведущими нулями
РазделительСтрока1 байтСимвол «;» (без кавычек)
Статус параметраBinary data1 байт1 – значение параметра корректно, 0 – значение параметра некорректно и его дальнейшая обработка не рекомендована
Перенос строкиBinary data2 байта\n\r (0x0A0D)
Пример

Расшифрованная запись:

0x52 0x82 0xD1 0x24 0x3B 0x30 0x30 0x30 0x30 0x61 0x39 0x30 0x30 0x3B 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x31 0x3B 0x31 0x0A 0x0D

где

  • 0x52 0x82 0xD1 0x24 — метка времени. Для получения даты и времени в формате UnixTime следует изменить порядок байт на противоположный и добавить константу-смещение (число секунд между 00:00:00 01.01.1970 и 00:00:00 01.01.2000): 0x24D18252 (HEX) + 946684800 (DEC) = 1564394971 (DEC, соответствует 29 июля 2019 г., 10:09:31);

  • 0x3B — разделитель;

  • 0x30 0x30 0x30 0x30 0x61 0x39 0x30 0x30 — уникальный идентификатор параметра (00003ba00);

  • 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x31 — значение параметра (00000001);

  • 0x31 — статус параметра (1 – значение параметра корректно);

  • 0x0A 0x0D — символы переноса строки.

Прибор фиксирует время в архивных файлах по встроенным часам реального времени. Также можно задать часовой пояс, который будет считываться OwenCloud или внешним ПО. Запись во флеш-память (flash) происходит с определенной частотой, рассчитанной таким образом, чтобы ресурса флеш-памяти (flash) прибора хватило на срок не менее 10 лет работы.

Для чтения архива можно использовать:

  • облачный сервис OwenCloud (автоматическое чтение в случае потери и дальнейшего восстановления связи);

  • ПО Owen Configurator (например, для ручного анализа);

  • ПО пользователя (с помощью 20 функции Modbus).

Список архивируемых параметров доступен в Owen Configurator на вкладке Информация об устройстве. Порядок записи параметров в архив соответствует порядку параметров на вкладке.

Архив считывается с помощью 20 функции Modbus (0x14). Данная функция возвращает содержание регистров файла памяти и позволяет с помощью одного запроса прочитать одну или несколько записей из одного или нескольких файлов.

В запросе чтения файла для каждой записи указывается:

  • тип ссылки – 1 байт (должен быть равен 6);

  • номер файла – 2 байта;

  • начальный адрес регистра внутри файла – 2 байта;

  • количество регистров для чтения – 2 байта.

Примечание
Номер файла в запросе по Modbus рассчитывается как 4096 + порядковый номер файла. Порядковая нумерация файлов ведется с нуля. Параметр «Последний индекс архива» содержит порядковый номер файла архива, в который последний раз записывались данные.

Количество считываемых регистров в запросе должно быть подобрано таким образом, чтобы длина ответа не превышала допустимую длину пакета Modbus (256 байт).

Размер файла архива заранее неизвестен, поэтому следует считывать порции данных с помощью отдельных запросов. Если в ответ на запрос будет получено сообщение с кодом ошибки 0х04 (MODBUS_SLAVE_DEVICE_FAILURE), то можно сделать вывод, что адреса регистров в запросе находятся за пределами файла. Чтобы считать последние данные файла, требуется уменьшить количество регистров в запросе.

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

Режимы обмена данными

Модуль поддерживает следующие режимы обмена данными:

  • обмен с Мастером по протоколу Modbus TCP (порт 502) — до 4 одновременных соединений с разными Мастерами сети;
  • соединение и обмен данными с ПК с помощью ПО OWEN Configurator;
  • обмен с удаленным облачным сервисом (необходим доступ в Интернет);
  • обмен по протоколу MQTT;
  • обмен по протоколу SNMP.

Работа по протоколу Modbus TCP

Чтение и запись параметров по протоколу Modbus TCP
ОперацияФункция
Чтение3 (0х03) или 4 (0х04)
Запись6 (0х06) или 16 (0х10)

Список регистров Modbus считывается с прибора с помощью ПО OWEN Configurator во вкладке Параметры устройства. А также список регистров Modbus представлен в таблицах ниже.

Общие регистры оперативного обмена по протоколу Modbus
НазваниеРегистрРазмер/тип/описание
Название (имя) прибора для показа пользователю (DEV)0xF000Символьная строка до 32 байт, кодировка Win1251
Версия встроенного ПО прибора для показа пользователю (VER)0xF010Символьная строка до 32 байт, кодировка Win1251
Название платформы0xF020Символьная строка до 32 байт, Win1251
Версия платформы0xF030Символьная строка до 32 байт, Win1251
Версия аппаратного обеспечения0xF040Символьная строка до 16 байт, Win1251
Дополнительная символьная информация0xF048Символьная строка до 16 байт, Win1251
Время и дата0xF0804 байта, в секундах с 2000 г.
Часовой пояс 0xF0822 байта, signed short, смещение в минутах от Гринвича
Заводской номер прибора0xF084Символьная строка 32 байта, кодировка Win1251, используется 17 символов
Регистры обмена по протоколу ModBus
ПараметрЗначение (ед. изм.)Адрес регистраТип доступаФормат данных
DECHEX
Состояние дискретных входов DI1–DI6, битовая маска0…63510х33Только чтениеUINT 8
Включение фильтра антидребезга для входа DI10 – выключено;

1 – включено

960х60Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI20 – выключено;

1 – включено

970х61Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI30 – выключено;

1 – включено

980х62Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI40 – выключено;

1 – включено

990х63Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI50 – выключено;

1 – включено

1000х64Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI60 – выключено;

1 – включено

1010х65Чтение и записьUINT 16
Значение счетчика импульсов для входа DI10…42949672951600хA0Только чтениеUINT 32
Значение счетчика импульсов для входа DI20…42949672951620хA2Только чтениеUINT 32
Значение счетчика импульсов для входа DI30…42949672951640хA4Только чтениеUINT 32
Значение счетчика импульсов для входа DI40…42949672951660хA6Только чтениеUINT 32
Значение счетчика импульсов для входа DI50…42949672951680хA8Только чтениеUINT 32
Значение счетчика импульсов для входа DI60…42949672951700хAAТолько чтениеUINT 32
Сброс значения счётчика импульсов для входа DI10 – сбросить;

1 – не сброшен

2240хE0Чтение и записьUINT 16
Сброс значения счётчика импульсов для входа DI20 – сбросить;

1 – не сброшен

2250хE1Чтение и записьUINT 16
Сброс значения счётчика импульсов для входа DI30 – сбросить;

1 – не сброшен

2260хE2Чтение и записьUINT 16
Сброс значения счётчика импульсов для входа DI40 – сбросить;

1 – не сброшен

2270хE3Чтение и записьUINT 16
Сброс значения счётчика импульсов для входа DI50 – сбросить;

1 – не сброшен

2280хE4Чтение и записьUINT 16
Сброс значения счётчика импульсов для входа DI60 – сбросить;

1 – не сброшен

2290хE5Чтение и записьUINT 16
Тайм-аут перехода в безопасное состояние0…60 (секунд)7000х2BCЧтение и записьUINT 8
Разрешение конфигурирования из удаленного облачного сервиса

0 – заблокировано;

1 – разрешено

7010х2BDЧтение и записьUINT 16
Управление и запись значений из удаленного облачного сервиса

0 – заблокировано;

1 – разрешено

7020х2BEЧтение и записьUINT 16
Доступ к регистрам Modbus из удаленного облачного сервиса

0 – полный запрет;

1 – только чтение;

2 – только запись;

3 – полный доступ

7030х2BFЧтение и записьUINT 16
Состояние батареи (напряжение)0…3300 (мВ)8010х321Только чтениеUINT 16
Период архивирования

10…3600 (секунд);

заводская настройка – 30

9000х384Чтение и записьUINT 16
Наличие напряжения на входах А1-В1-…-С3, битовая маска0…51150000x1388Только чтениеUINT 16
Группировать входы 1 в трехфазную сеть

0 – нет;

1 – группировать

50010x1389Чтение и записьUINT 16
Группировать входы 2 в трехфазную сеть

0 – нет;

1 – группировать

50020x138AЧтение и записьUINT 16
Группировать входы 3 в трехфазную сеть

0 – нет;

1 – группировать

50030x138BЧтение и записьUINT 16
Сбой чередования или пропадание фаз входов группы 1

0 – нет сбоя;

1 – сбой чередования;

2 – обрыв фазы

50070x138FТолько чтениеUINT 16
Сбой чередования или пропадание фаз входов группы 2

0 – нет сбоя;

1 – сбой чередования;

2 – обрыв фазы

50080x1390Только чтениеUINT 16
Сбой чередования или пропадание фаз входов группы 3

0 – нет сбоя;

1 – сбой чередования;

2 – обрыв фазы

50090x1391Только чтениеUINT 16
Наработка Вход А10…4294967295 (секунд)50100x1392Только чтениеUINT 32
Наработка Вход B10…4294967295 (секунд)50120x1394Только чтениеUINT 32
Наработка Вход C10…4294967295 (секунд)50140x1396Только чтениеUINT 32
Наработка Вход А20…4294967295 (секунд)50160x1398Только чтениеUINT 32
Наработка Вход B20…4294967295 (секунд)50180x139AТолько чтениеUINT 32
Наработка Вход C20…4294967295 (секунд)50200x139CТолько чтениеUINT 32
Наработка Вход А30…4294967295 (секунд)50220x139EТолько чтениеUINT 32
Наработка Вход B30…4294967295 (секунд)50240x13A0Только чтениеUINT 32
Наработка Вход C30…4294967295 (секунд)50260x13A2Только чтениеUINT 32
Сброс значения счётчика наработки входа А1

0 – сбросить;

1 – не сброшен

50280x13A4Чтение и записьUINT 16
Сброс значения счётчика наработки входа B1

0 – сбросить;

1 – не сброшен

50290x13A5Чтение и записьUINT 16
Сброс значения счётчика наработки входа C1

0 – сбросить;

1 – не сброшен

50300x13A6Чтение и записьUINT 16
Сброс значения счётчика наработки входа А2

0 – сбросить;

1 – не сброшен

50310x13A7Чтение и записьUINT 16
Сброс значения счётчика наработки входа B2

0 – сбросить;

1 – не сброшен

50320x13A8Чтение и записьUINT 16
Сброс значения счётчика наработки входа C2

0 – сбросить;

1 – не сброшен

50330x13A9Чтение и записьUINT 16
Сброс значения счётчика наработки входа А3

0 – сбросить;

1 – не сброшен

50340x13AАЧтение и записьUINT 16
Сброс значения счётчика наработки входа B3

0 – сбросить;

1 – не сброшен

50350x13AВЧтение и записьUINT 16
Сброс значения счётчика наработки входа C3

0 – сбросить;

1 – не сброшен

50360x13ACЧтение и записьUINT 16
Счётчик количества включений входа А10…429496729550370x13ADТолько чтениеUINT 32
Счётчик количества включений входа В10…429496729550390x13AFТолько чтениеUINT 32
Счётчик количества включений входа C10…429496729550410x13B1Только чтениеUINT 32
Счётчик количества включений входа А20…429496729550430x13B3Только чтениеUINT 32
Счётчик количества включений входа В20…429496729550430x13B5Только чтениеUINT 32
Счётчик количества включений входа C20…429496729550470x13B7Только чтениеUINT 32
Счётчик количества включений входа А30…429496729550490x13B9Только чтениеUINT 32
Счётчик количества включений входа В30…429496729550510x13BBТолько чтениеUINT 32
Счётчик количества включений входа C30…429496729550530x13BDТолько чтениеUINT 32
Сброс значения счётчика количества включений входа А1

0 – сбросить;

1 – не сброшен

50550x13BFЧтение и записьUINT 16
Сброс значения счётчика количества включений входа В1

0 – сбросить;

1 – не сброшен

50560x13C0Чтение и записьUINT 16
Сброс значения счётчика количества включений входа С1

0 – сбросить;

1 – не сброшен

50570x13C1Чтение и записьUINT 16
Сброс значения счётчика количества включений входа А2

0 – сбросить;

1 – не сброшен

50580x13C2Чтение и записьUINT 16
Сброс значения счётчика количества включений входа В2

0 – сбросить;

1 – не сброшен

50590x13C3Чтение и записьUINT 16
Сброс значения счётчика количества включений входа С2

0 – сбросить;

1 – не сброшен

50600x13C4Чтение и записьUINT 16
Сброс значения счётчика количества включений входа А3

0 – сбросить;

1 – не сброшен

50610x13C5Чтение и записьUINT 16
Сброс значения счётчика количества включений входа В3

0 – сбросить;

1 – не сброшен

50620x13C6Чтение и записьUINT 16
Сброс значения счётчика количества включений входа С3

0 – сбросить;

1 – не сброшен

50630x13C7Чтение и записьUINT 16
Время последнего включения и выключения входа А1с 2000 г., дд.мм.гггг чч:мм:сс50640x13C8Только чтениеUINT 32
Время последнего включения и выключения входа B1с 2000 г., дд.мм.гггг чч:мм:сс50660x13CAТолько чтениеUINT 32
Время последнего включения и выключения входа C1с 2000 г., дд.мм.гггг чч:мм:сс50680x13CCТолько чтениеUINT 32
Время последнего включения и выключения входа А2с 2000 г, дд.мм.гггг чч:мм:сс50700x13CEТолько чтениеUINT 32
Время последнего включения и выключения входа B2с 2000 г., дд.мм.гггг чч:мм:сс50720x13D0Только чтениеUINT 32
Время последнего включения и выключения входа C2с 2000 г., дд.мм.гггг чч:мм:сс50740x13D2Только чтениеUINT 32
Время последнего включения и выключения входа А3с 2000 г., дд.мм.гггг чч:мм:сс50760x13D4Только чтениеUINT 32
Время последнего включения и выключения входа B3с 2000 г., дд.мм.гггг чч:мм:сс50780x13D6Только чтениеUINT 32
Время последнего включения и выключения входа C3с 2000 г., дд.мм.гггг чч:мм:сс50800x13D8Только чтениеUINT 32
Время в миллисекундах 615630xF07BТолько чтениеUINT 32
Новое времяс 2000 г. (секунд)615650хF07DЧтение и записьUINT 32
Записать новое время

0 – не записывать;

1 – записать

615670хF07FЧтение и записьUINT 16
Время и дата (UTC)с 2000 г. (секунд)615680хF080Только чтениеUINT 32
Часовой пояссмещение в минутах от Гринвича615700хF082Чтение и записьINT 16
MAC адрес616960xF100Только чтениеUINT 48
DNS сервер 1120xСЧтение и записьUINT 32
DNS сервер 2140xЕЧтение и записьUINT 32
Установить IP-адрес200x14Чтение и записьUINT 32
Установить маску подсети220x16Чтение и записьUINT 32
Установить IP-адрес шлюза240x18Чтение и записьUINT 32
Текущий IP-адрес260x1AТолько чтениеUINT 32
Текущая маска подсети280x1CТолько чтениеUINT 32
Текущий IP-адрес шлюза300x1EТолько чтениеUINT 32
Режим DHCP

0 – полный запрет;

1 – только чтение;

2 – только запись;

320x20Чтение и записьUINT 16
Подключение к OwenCloud

0 – выключено;

1 – включено

350x23Чтение и записьUINT 16
Статус подключения к OwenCloud

0 – нет связи;

1 – соединение;

2 – работа;

3 – ошибка;

4 – нет пароля

360x24Только чтениеUINT 16
Включение/Отключение NTP

0 – выкл.;

1 – вкл.

56320x1600Чтение и записьUINT 16
Пул NTP серверов56330x1601Чтение и записьSTRING 256
NTP сервер 156970x1641Чтение и записьUINT 32
NTP сервер 256990x6143Чтение и записьUINT 32
Период синхронизации NTP5…65535 с57010x1645Чтение и записьUINT 16
Статус NTP

0 – отключено;

1 – опрос;

2 – синхронизировано

57020x1646Чтение и записьUINT 16
Подключение к брокеру MQTT

0 – выкл.;

1 – вкл.

58880x1700Только чтениеUINT 16
Логин MQTT59280x1728Чтение и записьSTRING 256
Пароль MQTT59600x1748Чтение и записьSTRING 256
Имя устройства MQTT58960x1708Чтение и записьSTRING 256
Адрес брокера MQTT59930x1769Чтение и записьSTRING 256
Порт MQTT0…6553558910x1703Чтение и записьUINT 16
Хранение последнего сообщения MQTT

0 – выкл.;

1 – вкл.

58950x1707Чтение и записьUINT 16
Интервал публикации MQTT5…600 с58920x1704Чтение и записьUINT 16
Качество обслуживания MQTT

0 – QoS0;

1 – QoS1;

2 – QoS2

58930x1705Чтение и записьUINT 16
Интервал Keep Alive MQTT0…600 с59920x1768Чтение и записьUINT 16
Статус MQTT

0 – отключено;

1 – подключено;

2 – ошибка соединения

60250x1789Только чтениеUINT 16
Включить (MQTTstatus)

0 – выкл.;

1 – вкл.

60260x178AЧтение и записьUINT 16
Включение/Отключение SNMP

0 – выкл.;

1 – вкл.

51200x1400Чтение и записьUINT 16
Сообщество для чтения SNMP60010x1771Чтение и записьSTRING 256
Сообщество для записи SNMP60170x1781Чтение и записьSTRING 256
IP адрес для ловушки SNMP51210x1401Чтение и записьUINT 32
Номер порта для ловушки0…6553551230x1403Чтение и записьUINT 16
Версия SNMP

0 – SNMPv1;

1 – SNMPv2

51240x1404Чтение и записьUINT 16

Коды ошибок для протокола Modbus

Во время работы модуля по протоколу Modbus возможно возникновение ошибок, представленных в таблице. В случае возникновения ошибки модуль отправляет Мастеру сети ответ с кодом ошибки.

Список возможных ошибок
Название ошибкиВозвращаемый кодОписание ошибки
MODBUS_ILLEGAL_FUNCTION01 (0x01)Недопустимый код функции – ошибка возникает, если модуль не поддерживает функцию Modbus, указанную в запросе
MODBUS_ILLEGAL_DATA_ADDRESS02 (0x02)Недопустимый адрес регистра – ошибка возникает, если в запросе указаны адреса регистров, отсутствующие в модуле
MODBUS_ILLEGAL_DATA_VALUE03 (0x03)Недопустимое значение данных – ошибка возникает, если запрос содержит недопустимое значение для записи в регистр
MODBUS_SLAVE_DEVICE_FAILURE04 (0x04)Ошибка возникает, если запрошенное действие не может быть завершено

Во время обмена по протоколу Modbus модуль проверяет соответствие запросов спецификации Modbus. Не прошедшие проверку запросы игнорируются модулем. Запросы, в которых указан адрес, не соответствующий адресу модуля, также игнорируются.

Далее проверяется код функции. Если в модуль приходит запрос с кодом функции, не указанной в таблице, возникает ошибка MODBUS_ILLEGAL_FUNCTION.

Список поддерживаемых функций
Название функцииКод функцииОписание функции
MODBUS_READ_HOLDING_REGISTERS3 (0x03)Чтение значений из одного или нескольких регистров хранения
MODBUS_READ_INPUT_REGISTERS4 (0x04)Чтение значений из одного или нескольких регистров ввода
MODBUS_WRITE_SINGLE_REGISTER6 (0x06)Запись значения в один регистр
MODBUS_WRITE_MULTIPLE_REGISTERS16 (0x10)Запись значений в несколько регистров
MODBUS_READ_FILE_RECORD20 (0x14)Чтение архива из файла
MODBUS_WRITE_FILE_RECORD21 (0x15)Запись архива в файл

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

Ошибки во время работы с регистрами
Используемая функцияНаименование ошибкиВозможные ситуации, приводящие к ошибке

MODBUS_READ_HOLDING_REGISTERS

MODBUS_ILLEGAL_DATA_ADDRESS

  • количество запрашиваемых регистров больше максимального возможного числа (125);
  • запрос несуществующего параметра

MODBUS_READ_INPUT_REGISTERS

MODBUS_ILLEGAL_DATA_ADDRESS

  • количество запрашиваемых регистров больше максимального возможного числа (125);
  • запрос несуществующего параметра

MODBUS_WRITE_SINGLE_REGISTER

MODBUS_ILLEGAL_DATA_ADDRESS

  • попытка записи параметра, размер которого превышает 2 байта;
  • попытка записи параметра, доступ на запись к которому запрещен;
  • попытка записи параметра такого типа, запись в который не может быть осуществлена данной функцией. Поддерживаемые типы:

    • знаковые и беззнаковые целые (размер не более 2 байт);
    • перечисляемые;

    • float16 (на данный момент в модуле такой тип не используется).

  • запрос несуществующего параметра

MODBUS_ILLEGAL_DATA_VALUE

  • выход за пределы максимального или минимального ограничений для параметра

MODBUS_WRITE_MULTIPLE_REGISTERS

MODBUS_ILLEGAL_DATA_ADDRESS

  • запись несуществующего параметра;
  • попытка записи параметра, доступ на запись к которому запрещен;
  • количество записываемых регистров больше максимального возможного числа (123)

MODBUS_ILLEGAL_DATA_VALUE

  • не найден терминирующий символ (\0) в строковом параметре;

  • размер запрашиваемых данных меньше размера первого или последнего в запросе параметра;

  • выход за пределы максимального или минимального ограничений для параметра

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

Ошибки во время работы с архивом
Используемая функцияНаименование ошибкиВозможные ситуации, приводящие к ошибке

MODBUS_READ_FILE_RECORD

MODBUS_ILLEGAL_FUNCTION

  • ошибочный размер данных (0x07 <= data length <= 0xF5)

MODBUS_ILLEGAL_DATA_ADDRESS

  • reference type не соответствует спецификации;

  • не удалось открыть файл для чтения (возможно, он отсутствует)

MODBUS_ILLEGAL_DATA_VALUE

  • не удалось переместиться к нужному смещению в файле

MODBUS_SLAVE_DEVICE_FAILURE

  • ошибка удаления файла при запросе на удаление;

  • запрос слишком большого количества данных (больше 250 байт);

  • недопустимый record number (больше 0x270F);

  • недопустимый record length (больше 0x7A)

MODBUS_WRITE_FILE_RECORD

MODBUS_ILLEGAL_FUNCTION

  • ошибочный размер данных (0x09 <= data length <= 0xFB)

MODBUS_ILLEGAL_DATA_ADDRESS

  • reference type не соответствует спецификации;

  • не удалось открыть файл для записи

MODBUS_SLAVE_DEVICE_FAILURE

  • запрашиваемый файл отсутствует;

  • запрашиваемый файл доступен только для чтения;

  • не удалось записать необходимое количество байт

Работа по протоколу MQTT

Архитектура MQTT определяет три типа устройств в сети:

  • брокер – устройство (обычно – ПК с серверным ПО), которое осуществляет передачу сообщений от издателей к подписчикам;
  • издатели – устройства, которые являются источниками данных для подписчиков;
  • подписчики – устройства, которые получают данные от издателей.

Одно устройство может совмещать функции издателя и подписчика.

Graphic
Структурная схема обмена по протоколу MQTT

Подписка и публикация данных происходит в рамках топиков. Топик представляет собой символьную строку с кодировкой UTF-8, которая позволяет однозначно идентифицировать определенный параметр. Топики состоят из уровней, разделяемых символом «/».

Примечание
Топики MQTT могут включать в себя заполнители – специальные символы, которые обрабатываются брокером особым образом. Существует два типа заполнителей – одноуровневый заполнитель «+» и многоуровневый заполнитель «#».
Предупреждение
Топики являются чувствительными к регистру.

Структура топиков модулей: Серия/Имя_устройства/Функция/Имя_узла/Параметр, где:

  • Серия – наименование серии устройства, всегда имеет значение МХ210;
  • Имя_устройства – имя конкретного модуля, заданное в ПО Owen Configurator (см. раздел);
  • Функция – GET (чтение значений входов или выходов) или SET (запись значений выходов модуля);
  • Имя_узла – тип входов или выходов (DI/DI/AI/AO);
  • Параметр – название конкретного параметра (см. таблицу).
Уровни топиков модуля
СерияИмя устройстваФункцияИмя узлаПараметрОписаниеФормат значения
MX210DeviceGETDIMASKБитовая маска дискретных входовЦелочисленный
Пример

1. Чтение значения дискретных входов

MX210/Device/GET/DI/MASK

Пример полученного значения: 15 (замкнуты входы 1–4)

2. Использование одноуровневого заполнителя

MX210/Device1/SET/+/COUNTER – будет получена информация о значениях счетчиков всех дискретных входов модуля, то есть этот топик эквивалентен набору топиков:

MX210/Device1/GET/DI1/COUNTER

MX210/Device1/GET/DI2/COUNTER

MX210/Device1/GET/…/COUNTER

MX210/Device1/GET/DIn/COUNTER

3. Использование многоуровневого заполнителя

MX210/Device1/GET/# – будет получена информация о всех параметрах модуля, доступных для чтения (GET), то есть этот топик эквивалентен набору топиков:

MX210/Device1/GET/DI/MASK

MX210/Device1/GET/DI1/COUNTER

MX210/Device1/GET/DI2/COUNTER

MX210/Device1/GET/…/COUNTER

MX210/Device1/GET/DIn/COUNTER

Работа по протоколу SNMP

Протокол основан на архитектуре «Клиент/Сервер», при этом в терминологии протокола клиенты называются менеджерами, а серверы – агентами.

Менеджеры могут производить чтение (GET) и запись (SET) параметров агентов. Агенты могут отправлять менеджерам уведомления (трапы) – например, о переходе оборудования в аварийное состояние.

Каждый параметр агента имеет уникальный идентификатор (OID), представляющий собой последовательность цифр, разделенных точками. Для упрощения настройки обмена производители устройств-агентов обычно предоставляют MIB-файлы, которые включают в себя список параметров прибора с их названиями и идентификаторами. Эти файлы могут быть импортированы в SNMP-менеджер.

Graphic
Структурная схема обмена по протоколу SNMP

Режимы работы дискретных входов

Режимы работы входов типа «сухой контакт»

Группа входов DI1–DI6 модуля выполняет определение логического уровня.

Для каждого входа задействован счетчик импульсов, поступающих на вход.

Примечание
По умолчанию счетчики входов всегда включены. Счетчики входов с дополнительными режимами включены только в том случае, если дополнительный режим у входа отключен.
Параметры счетчика импульсов
ПараметрЗначение
Разрядность32 бит
Максимальная частота входного сигнала400 Гц
Подавление дребезгаВкл./Выкл. Настраивается в ПО OWEN Configurator
Время подавления дребезга25 мс (не настраивается)
Внимание
Для работы с сигналами частотой более 40 Гц при скважности 0,5 и менее не следует включать подавление дребезга контактов, так как полезный сигнал будет принят за дребезг и пропущен.
Если счетчик переполнился, то соответствующий регистр обнуляется автоматически. Последовательность действий для принудительного обнуления приведена в разделе.

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

Значения состояния дискретных входов хранятся в виде битовой маски и считываются из соответствующего регистра.

Режимы работы входов с сигналами переменного напряжения 230 В

Группа входов A1-A3, B1-B3, C1-C3 модуля рассчитаны на подключение сигналов переменного напряжения с уровнем «логической единицы» от 80 В до 264 В частой от 47 до 63 Гц.

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

Функции входов модуля
ФункцияОписание
Наработка (моточасы)1)Для каждого из входов задействован 32-х битный счетчик, в который записывается наработка в секундах
Счетчик количества включений напряжения1)Для каждого из входов задействован 32-х битный счетчик включения напряжения
Время последнего включения и выключения напряжения на входеВремя записывается в UTC. При последующем включении или выключении прибора значение в регистре перезаписывается
При подключении однофазной сети
Наличие или отсутствие напряжения в сетиЗначения состояния дискретных входов хранится в виде битовой маски и считывается из соответствующего регистра
При подключении трехфазной сети
Диагностика обрыва фазы в трехфазной сети2)

При отсутствии напряжения загорается красный светодиод на диагностированных входах.

Значение ошибки записывается в регистр Сбой чередования или пропадание фаз соответствующей группы

Контроль чередования фаз в трехфазной сети2)

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

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

2) Диагностика включается при настройке модуля с помощью ПО OWEN Configurator или по протоколу Modbus TCP. В модуле имеется возможность подключения от одной до трех схем контроля трехфазной сети

Чтобы определить неисправность при подключении трехфазной сети, в Мастере сети следует настроить контроль регистров для каждой группы входов:

  • Наличие напряжения на входах А1–В1–…–С3;

  • Сбой чередования или пропадание фаз.

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

  • Сбой чередования или пропадание фаз = 2;

  • биты соответствующего входа в регистре Наличие напряжения на входах А1–В1–…–С3 = 0.

При ошибке чередования фаз группы регистры примут значения:

  • Сбой чередования или пропадание фаз = 1.