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

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

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

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

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

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

На лицевой панели МК210-301 и МК210-311 расположены элементы индикации — светодиоды. Расшифровка значений приведена в таблице.

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

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

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

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

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

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

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

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

    ;
  • установку 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
НазваниеРегистрРазмер/тип/описание
Название (имя) прибора для отображения пользователю (DEV)0xF000Символьная строка 32 до байт, кодировка Win1251
Версия встроенного ПО прибора для отображения пользователю (VER)0xF010Символьная строка 32 до байт, кодировка Win1251
Время0xF0804 байта, в секундах с 2000 г
Часовой пояс 0xF0822 байта, signed short, смещение в минутах от Гринвича
Заводской номер прибора0xF084Символьная строка 32 байта, кодировка Win1251, используется 17 символов
Регистры обмена по протоколу ModBus
ПараметрЗначение (ед. изм.)Адрес регистраТип доступаФормат данных
DECHEX
Состояние дискретных входов DI1-DI6, битовая маска0…63510х33Только чтениеUINT 8
Включение фильтра антидребезга для входа DI1

0 – выключено

1 – включено

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

0 – выключено

1 – включено

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

0 – выключено

1 – включено

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

0 – выключено

1 – включено

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

0 – выключено

1 – включено

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

0 – выключено

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
Сброс значения счетчика импульсов входа DI1

0 – сбросить

1 – не сброшен

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

0 – сбросить

1 – не сброшен

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

0 – сбросить

1 – не сброшен

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

0 – сбросить

1 – не сброшен

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

0 – сбросить

1 – не сброшен

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

0 – сбросить

1 – не сброшен

2290хE5Чтение и записьUINT 16
Режим работы выхода DO1

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

1 – ШИМ

2720х110Чтение и записьUINT 16
Режим работы выхода DO2

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

1 – ШИМ

2730х111Чтение и записьUINT 16
Режим работы выхода DO3

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

1 – ШИМ

2740х112Чтение и записьUINT 16
Режим работы выхода DO4

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

1 – ШИМ

2750х113Чтение и записьUINT 16
Режим работы выхода DO5

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

1 – ШИМ

2760х114Чтение и записьUINT 16
Режим работы выхода DO6

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

1 – ШИМ

2770х115Чтение и записьUINT 16
Режим работы выхода DO7

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

1 – ШИМ

2780х116Чтение и записьUINT 16
Режим работы выхода DO8

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

1 – ШИМ

2790х117Чтение и записьUINT 16
Период ШИМ выхода DO11000…60000 (миллисекунд)3080х134Чтение и записьUINT 16
Период ШИМ выхода DO21000…60000 (миллисекунд)3090х135Чтение и записьUINT 16
Период ШИМ выхода DO31000…60000 (миллисекунд)3100х136Чтение и записьUINT 16
Период ШИМ выхода DO41000…60000 (миллисекунд)3110х137Чтение и записьUINT 16
Период ШИМ выхода DO51000…60000 (миллисекунд)3120х138Чтение и записьUINT 16
Период ШИМ выхода DO61000…60000 (миллисекунд)3130х139Чтение и записьUINT 16
Период ШИМ выхода DO71000…60000 (миллисекунд)3140х13АЧтение и записьUINT 16
Период ШИМ выхода DO81000…60000 (миллисекунд)3150х13ВЧтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO10…1000 (0,10%)3400х154Чтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO20…1000 (0,10%)3410х155Чтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO30…1000 (0,10%)3420х156Чтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO40…1000 (0,10%)3430х157Чтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO50…1000 (0,10%)3440х158Чтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO60…1000 (0,10%)3450х159Чтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO70…1000 (0,10%)3460х15АЧтение и записьUINT 16
Коэффициент заполнения ШИМ выхода DO80…1000 (0,10%)3470х15BЧтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO1*

0 – выкл.

1 – вкл.

4360x1B4Чтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO2*

0 – выкл.

1 – вкл.

4370x1B5Чтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO3*

0 – выкл.

1 – вкл.

4380x1B6Чтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO4*

0 – выкл.

1 – вкл.

4390x1B7Чтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO5*

0 – выкл.

1 – вкл.

4400x1B8Чтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO6*

0 – выкл.

1 – вкл.

4410x1B9Чтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO7*

0 – выкл.

1 – вкл.

4420x1BAЧтение и записьUINT 16
Диагностика исправности реле и обрыва нагрузки выхода DO8*

0 – выкл.

1 – вкл.

4430x1BBЧтение и записьUINT 16
Битовая маска состояния выходов DO1-DO80…2554680x1D4Только чтениеUINT 8
Битовая маска установки состояния выходов DO1-DO80…2554700x1D6Чтение и записьUINT 8
Битовая маска состояния диагностики реле и обрыва нагрузки DO1-DO8*0…2554720x1D8Только чтениеUINT 8
Безопасное состояние выхода DO10…1000 (0,10%)4740x1DAЧтение и записьUINT 16
Безопасное состояние выхода DO20…1000 (0,10%)4750x1DВЧтение и записьUINT 16
Безопасное состояние выхода DO30…1000 (0,10%)4760x1DСЧтение и записьUINT 16
Безопасное состояние выхода DO40…1000 (0,10%)4770x1DDЧтение и записьUINT 16
Безопасное состояние выхода DO50…1000 (0,10%)4780x1DEЧтение и записьUINT 16
Безопасное состояние выхода DO60…1000 (0,10%)4790x1DFЧтение и записьUINT 16
Безопасное состояние выхода DO70…1000 (0,10%)4800x1D0Чтение и записьUINT 16
Безопасное состояние выхода DO80…1000 (0,10%)4810x1E1Чтение и записьUINT 16
Тайм-аут перехода в безопасное состояние0…60 (секунд)7000x2BCЧтение и записьUINT 8
Разрешение конфигурирования из удаленного облачного сервиса

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

1 – разрешено

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

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

1 – разрешено

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

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

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

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

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

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

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

заводская настройка – 30
9000x384Чтение и записьUINT 16
Новое времяс 2000 г., секунд

61565

61566

0xF07D

0xF07E

Чтение и записьUINT 32
Записать новое время

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

1 – записать

61567

0xF07F

Чтение и записьUINT 16
Время и дата (UTC)с 2000 г., секунд

61568

61569

0xF080

0xF081

Только чтениеUINT 32
Часовой пояс

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

61570

0xF082

Чтение и записьUINT 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
Примечание

*Только для МК210-311

Коды ошибок для протокола 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–DI6COUNTERЗначение счетчикаЦелочисленный
SETDOMASKБитовая маска дискретных выходовЦелочисленный
GETDOSTATEБитовая маска дискретных выходовЦелочисленный
GETDODIAGNOSTICSБитовая маска диагностики дискретных выходов*Целочисленный
Примечание
* Только для МК210-311
Пример

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/Device1/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 является надежным хранилищем данных, обмен информации с которым шифруется модулем. Можно ограничить доступ и обмен данными с облачным сервисом в ПО OWEN Configurator.

По умолчанию подключение модуля к облачному сервису запрещено.

Для того, чтобы разрешить подключение, следует:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

К модулю МК210-311 можно подключать дополнительную цепь для контроля подключения нагрузки. Прибор контролирует состояние выходов с помощью дополнительного резистора.

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

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

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

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

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

Состояние выходов записывается в регистр состояния выходов.

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

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

Схема работает при следующих параметрах нагрузки:

  • напряжение питания не менее 18 В постоянного тока при сопротивлении не более 10 кОм;

  • напряжение питания не менее 90 В переменного тока при сопротивлении не более 20 кОм.