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

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

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

В качестве Мастера сети можно использовать:

  • ПК;
  • ПЛК;
  • панель оператора;
  • удаленный облачный сервис.

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

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

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

Graphic
Лицевая панель прибора
Предупреждение

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

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

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

** См. раздел.

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

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

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

    ;
  • установка 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;
  • обмен с удаленным облачным сервисом OwenCloud (необходим доступ в Интернет);
  • обмен по протоколу 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
Битовая маска значений входов0...4095510х33Только чтениеUINT 16
Дополнительный режим работы входа DI1

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты

640х40Чтение и записьUINT 16
Дополнительный режим работы входа DI2

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты

650х41Чтение и записьUINT 16
Дополнительный режим работы входа DI3

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты;

4 – энкодер

660х42Чтение и записьUINT 16
Дополнительный режим работы входа DI4

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты;

4 – энкодер

670х43Чтение и записьUINT 16
Дополнительный режим работы входа DI5

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты;

4 – энкодер

680х44Чтение и записьUINT 16
Дополнительный режим работы входа DI6

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты;

4 – энкодер

690х45Чтение и записьUINT 16
Дополнительный режим работы входа DI7

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты;

4 – энкодер

700х46Чтение и записьUINT 16
Дополнительный режим работы входа DI8

0 – отключен;

1 – измерение периода;

2 – подсчет импульсов;

3 – измерение частоты;

4 – энкодер

710х47Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI1

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

1 – включено

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

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

1 – включено

97

0х61

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI3

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

1 – включено

98

0х62

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI4

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

1 – включено

99

0х63

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI5

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

1 – включено

100

0х64

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI6

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

1 – включено

101

0х65

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI7

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

1 – включено

102

0х66

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI8

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

1 – включено

103

0х67

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI9

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

1 – включено

104

0х68

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI10

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

1 – включено

105

0х69

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI11

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

1 – включено

106

0х6А

Чтение и записьUINT 16
Включение фильтра антидребезга для входа DI12

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

1 – включено

107

0х6B

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

Период измерения частоты входа DI1

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

128

0х80

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

Период измерения частоты входа DI2

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

129

0х81

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

Период измерения частоты входа DI3

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

130

0х82

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

Период измерения частоты входа DI4

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

131

0х83

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

Период измерения частоты входа DI5

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

132

0х84

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

Период измерения частоты входа DI6

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

133

0х85

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

Период измерения частоты входа DI7

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

134

0х86

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

Период измерения частоты входа DI8

0 – 10 миллисекунд;

1 – 100 миллисекунд;

2 – 1 секунд;

3 – 10 секунд

135

0х87

Чтение и записьUINT 16
Значение входа DI1 в дополнительном режиме0…4294967295 импульсов1600хА0Только чтениеUINT 32
Значение входа DI2 в дополнительном режиме0…4294967295 импульсов1620хА2Только чтениеUINT 32
Значение входа DI3 в дополнительном режиме0…4294967295 импульсов1640хА4Только чтениеUINT 32
Значение входа DI4 в дополнительном режиме0…4294967295 импульсов1660хА6Только чтениеUINT 32
Значение входа DI5 в дополнительном режиме0…4294967295 импульсов1680хА8Только чтениеUINT 32
Значение входа DI6 в дополнительном режиме0…4294967295 импульсов1700хААТолько чтениеUINT 32
Значение входа DI7 в дополнительном режиме0…4294967295 импульсов1720хАСТолько чтениеUINT 32
Значение входа DI8 в дополнительном режиме0…4294967295 импульсов 1740хАЕТолько чтениеUINT 32

Значение счетчика импульсов входа DI9

0…4294967295 импульсов

176

0хB0

Только чтение

UINT 32

Значение счетчика импульсов входа DI10

0…4294967295 импульсов

178

0хB2

Только чтение

UINT 32

Значение счетчика импульсов входа DI11

0…4294967295 импульсов

180

0хB4

Только чтение

UINT 32

Значение счетчика импульсов входа DI12

0…4294967295 импульсов

182

0хB6

Только чтение

UINT 32

Сброс значения дополнительного режима входа DI1

0 – сбросить;

1 – не сброшен

224

0xE0

Чтение и запись

UINT 16

Сброс значения дополнительного режима входа DI2

0 – сбросить;

1 – не сброшен

225

0хE1

Чтение и запись

UINT 16

Сброс значения дополнительного режима входа DI3

0 – сбросить;

1 – не сброшен

226

0хE2

Чтение и запись

UINT 16

Сброс значения дополнительного режима входа DI4

0 – сбросить;

1 – не сброшен

227

0хE3

Чтение и запись

UINT 16

Сброс значения дополнительного режима DI5

0 – сбросить;

1 – не сброшен

228

0хE4

Чтение и запись

UINT 16

Сброс значения дополнительного режима входа DI6

0 – сбросить;

1 – не сброшен

229

0хE5

Чтение и запись

UINT 16

Сброс значения дополнительного режима входа DI7

0 – сбросить;

1 – не сброшен

230

0хE6

Чтение и запись

UINT 16

Сброс значения дополнительного режима входа DI8

0 – сбросить;

1 – не сброшен

231

0хE7

Чтение и запись

UINT 16

Сброс значения счетчика импульсов входа DI9

0 – сбросить;

1 – не сброшен

232

0хE8

Чтение и запись

UINT 16

Сброс значения счетчика импульсов входа DI10

0 – сбросить;

1 – не сброшен

233

0хE9

Чтение и запись

UINT 16

Сброс значения счетчика импульсов входа DI11

0 – сбросить;

1 – не сброшен

234

0хEА

Чтение и запись

UINT 16

Сброс значения счетчика импульсов входа DI12

0 – сбросить;

1 – не сброшен

235

0хEВ

Чтение и запись

UINT 16

Режим работы выхода DO1

0 –переключение логического сигнала;

1 –ШИМ

272

0х110

Чтение и запись

UINT 16

Режим работы выхода DO2

0 – переключение логического сигнала,

1 – ШИМ

273

0х111

Чтение и запись

UINT 16

Режим работы выхода DO3

0 – переключение логического сигнала;

1 – ШИМ

274

0х112

Чтение и запись

UINT 16

Режим работы выхода DO4

0 – переключение логического сигнала;

1 – ШИМ

275

0х113

Чтение и запись

UINT 16

Период ШИМ выхода DO1

1000...60000 миллисекунд

308

0х134

Чтение и запись

UINT 16

Период ШИМ выхода DO2

1000...60000 миллисекунд

309

0х135

Чтение и запись

UINT 16

Период ШИМ выхода DO3

1000...60000 миллисекунд

310

0х136

Чтение и запись

UINT 16

Период ШИМ выхода DO4

1000...60000 миллисекунд

311

0х137

Чтение и запись

UINT 16

Значение коэффициента заполнения ШИМ выхода DO1

0...1000 (0,10 %)

340

0х154

Чтение и запись

UINT 16

Значение коэффициента заполнения ШИМ выхода DO2

0...1000 (0,10 %)

341

0х155

Чтение и запись

UINT 16

Значение коэффициента заполнения ШИМ выхода DO3

0...1000 (0,10 %)

342

0х156

Чтение и запись

UINT16

Значение коэффициента заполнения ШИМ выхода DO4

0...1000 (0,10 %)

343

0х157

Чтение и запись

UINT16

Включение диагностики выхода DO1*

0 – выкл, 1 – вкл.

436

0х1B4

Чтение и запись

UINT 16

Включение диагностики выхода DO2*

0 – выкл, 1 – вкл.

437

0х1B5

Чтение и запись

UINT16

Включение диагностики выхода DO3*

0 – выкл, 1 – вкл.

438

0х1B6

Чтение и запись

UINT 16

Включение диагностики выхода DO4*

0 – выкл, 1 – вкл.

439

0х1B7

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

Битовая маска состояния выходов DO1–4

0...15

468

0х1D4

Только чтение

UINT 8

Битовая маска установки состояния выходов DO1–4

0...15

470

0х1D6

Чтение и запись

UINT 8

Битовая маска состояния диагностики реле и обрыва нагрузки*

0...15

472

0х1D8

Только чтение

UINT 8

Безопасное состояние выхода DO1

0...1000 (0,10 %)

474

0х1DA

Чтение и запись

UINT 16

Безопасное состояние выхода DO2

0...1000 (0,10 %)

475

0х1DB

Чтение и запись

UINT 16

Безопасное состояние выхода DO3

0...1000 (0,10 %)

476

0х1DC

Чтение и запись

UINT 16

Безопасное состояние выхода DO4

0...1000 (0,10%)

477

0х1DD

Чтение и запись

UINT 16

Тайм-аут перехода в безопасное состояние

0...60 (секунд)

700

0х2BC

Чтение и записьUINT16

Разрешение конфигурирования из удаленного облачного сервиса

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

1 – разрешено

701

0х2BD

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

Управление и запись значений из удаленного облачного сервиса

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

1 – разрешено

702

0х2BE

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

Доступ к регистрам Modbus из удаленного облачного сервиса

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

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

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

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

703

0х2BF

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

Состояние батареи (напряжение)

0…3300 (мВ)

801

0х321

Только чтениеUINT 16

Период архивирования

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

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

900

0х384

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

Новое время

Дата/Время в секундах с 1 января 2000 г.

61565

0хF07D

Чтение и записьUINT 32

Записать новое время

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

1 – записать

61567

0хF07F

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

Время и дата (UTC)

Дата/Время в секундах с 1 января 2000 г.

61568

0хF080

Только чтениеUINT 32

Часовой пояс

Смещение в минутах от Гринвича

61570

0хF082

Чтение и записьINT 16
MAC адрес616960xF100Только чтениеUINT 48
DNS сервер 1

12

0xСЧтение и записьUINT 32
DNS сервер 2

14

0xЕЧтение и запись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

Коды ошибок для протокола 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 могут включать в себя заполнители – специальные символы, которые обрабатываются брокером особым образом. Существует два типа заполнителей – одноуровневый заполнитель «+» и многоуровневый заполнитель «#».
Предупреждение
Топики являются чувствительными к регистру.

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

  • Серия – наименование серии устройства, всегда имеет значение MX210;
  • Имя_устройства – имя конкретного модуля, заданное в ПО Owen Configurator (см. раздел);
  • Функция – GET (чтение значений входов или выходов модуля) или SET (запись значений выходов модуля);
  • Имя_узла – тип входов или выходов (DI/DO/AI/AO);
  • Параметр – название конкретного параметра (см. таблицу).
Уровни топиков модуля
СерияИмя устройстваФункцияИмя узлаПараметрОписаниеФормат значения
MX210DeviceGETDIMASKБитовая маска дискретных входовЦелочисленный
GETDI1–DI12COUNTERЗначение счетчикаЦелочисленный
SETDOMASKБитовая маска дискретных выходовЦелочисленный
GETDOSTATEБитовая маска дискретных выходовЦелочисленный
GETDODIAGNOSTICSБитовая маска диагностики дискретных выходов*Целочисленный
Примечание
* Только для МК210-312
Пример

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

MX210/Device/GET/DI/MASK

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

2. Запись значений дискретных выходов

MX210/Device/SET/DO/MASK

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

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

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

MX210/Device/GET/DI1/COUNTER

MX210/Device/GET/DI2/COUNTER

MX210/Device/GET/…/COUNTER

MX210/Device/GET/DIn/COUNTER

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

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

MX210/Device/GET/DI/MASK

MX210/Device/GET/DI1/COUNTER

MX210/Device/GET/DI2/COUNTER

MX210/Device/GET/…/COUNTER

MX210/Device/GET/DIn/COUNTER

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

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

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

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

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

Ограничение обмена данными при работе с облачным сервисом OwenCloud

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

Для разрешения подключения в Owen Configurator следует:

  1. Установить пароль для доступа к модулю (см. раздел).
  2. Задать значение Вкл. в параметре Подключение к OwenCloud (рисунок).

Примечание
Если для модуля не задан пароль, то автоматическое подключение к облачному сервису происходить не будет.
Graphic
Настройка автоматического подключения к облачному сервису

Если доступ к модулю через облачный сервис OwenCloud разрешен, то можно настроить следующие ограничения доступа (рисунок):

  • Разрешение конфигурирования — доступ к конфигурационным параметрам модуля;
  • Управление и запись значений — чтение и запись значений модуля;
  • Доступ к регистрам Modbus — чтение и/или запись значений регистров.

Graphic
Настройка удаленного доступа к модулю

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

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

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

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

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

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

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

Первые 8 входов модуля МК210-302 поддерживают следующие дополнительные режимы работы:

  • подсчет количества высокочастотных импульсов (см. раздел);
  • измерение частоты (см. раздел);
  • обработка сигналов энкодера (см. раздел). Возможно подключение до 3 AB-энкодеров (входы 3-4, 5-6, 7-8).

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

Режим определения логического уровня

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

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

Режим подсчета числа высокочастотных импульсов

Режим подсчета числа высокочастотных импульсов работает для входов DI1–DI8.

Максимальная частота входного сигнала — 100 кГц при коэффициенте заполнения 0,5.

Для каждого входа задействован 32-разрядный счетчик. Значения счетчика входа считываются из регистра, соответствующего данному входу.

В случае переполнения счетчика значение обнуляется. Для принудительного обнуления счетчика следует записать значение 0 в регистр сброса значения входа. Обнуление счетчика будет произведено в течение 10 мс после записи значения 0.

Режим измерения частоты и периода

Входы DI1-DI8 можно настроить на режим измерения частоты или периода.

Диапазоны измерения:

  • в режиме «измерение частоты» – от 100 Гц до 100 кГц;
  • в режиме «измерение периода» – от 0 мс до 10 мс.

Интервал измерения частоты или периода настраивается в параметре «Период измерения».

Возможные значения параметра «Период измерения»: 10 мс, 100 мс, 1 с, 10 с. Значение по умолчанию – 10 мс.

Для отображения измеренных значений частоты или периода задействован 32-разрядный регистр.

Режим обработки сигналов с энкодера

К модулю возможно подключение до трех двухканальных энкодеров (без Z канала). Номера входов для подключения: 3-4, 5-6, 7-8.

Максимальная частота сигналов с энкодера – 100 кГц.

Для каждого входа задействован 32–разрядный счетчик, в котором находится накопленное количество импульсов с учетом направления вращения после обнуления, зафиксированное энкодером. Если после обнуления направление вращения меняется, то счет начинается с максимального и уменьшается на количество накопленных импульсов.

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

В случае переполнения счетчика значение обнуляется. Для принудительного обнуления счетчика следует записать значение 0 в регистр сброса значения счетчика. Обнуление счетчика будет произведено в течение 10 мс после записи значения 0.

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

Каждый дискретный выход может работать в одном из следующих режимов:

  • переключение логического сигнала;
  • генерация ШИМ сигнала.

Для выбора режима и изменения параметров выхода следует записать значения в соответствующие Modbus-регистры (см. раздел).

Безопасное состояние выходных элементов

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

Выход переходит в безопасное состояние, если в течение времени тайм-аута отсутствуют команды от Мастера сети. На выходе модуля устанавливается значение параметра Безопасное состояние в процентах (от 0 до 100 %).

Тайм-аут перехода в безопасное состояние задается пользователем. Модуль при включении перейдет в состояние, которое было установлено последним до выключения, и будет находиться в нем до получения новой команды от Мастера сети. Для отключения функции перехода в безопасное состояние следует установить параметр Тайм-аут перехода в безопасное состояние равным 0.

Если Мастером сети является только облачный сервис OwenCloud, необходимо отключить Безопасное состояние для выходов. Для отключения безопасного состояния следует задать значение параметра Тайм-аут перехода в безопасное состояние равным 0.

Примечание
Заводская настройка параметра Тайм-аут перехода в безопасное состояние равна 30 секунд.

Контроль обрыва нагрузки

Для модуля МК210-312 реализована цепь контроля подключения нагрузки и контроль замыкания контактов реле при подключении нагрузки.

Для контроля нагрузки следует включить диагностику выхода в ПО OWEN Configurator. После включения диагностики выхода в параметре «Состояние диагностики реле и обрыва нагрузки» можно отследить состояние выхода. Прибор определяет состояние выхода по напряжению на резисторе:

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

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

Внимание
При выключении в настройках модуля МК210-312 контроля обрыва нагрузки резистор 200 кОм электрически не отсоединяется от цепи выхода, и небольшой ток через нагрузку продолжает протекать.

В случае фиксирования аварии загорается красный светодиод состояния выхода.

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

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

Graphic
Схема контроля обрыва нагрузки

Схема контроля обрыва нагрузки работает при напряжении питания нагрузки не менее 18 В постоянного тока при сопротивлении нагрузки не более 10 кОм и не менее 90 В переменного тока при сопротивлении нагрузки не более 20 кОм.