Relay Module Modbus Management: различия между версиями
Matveevrj (обсуждение | вклад) |
(Добавил описание регистров 123, 124) |
||
(не показано 9 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
{{DISPLAYTITLE:Карта регистров модулей реле}} | {{DISPLAYTITLE:Карта регистров модулей реле}} | ||
{{Wbincludes: | {{Wbincludes:Header Register}} | ||
| 0 || канал 1 || rowspan="6" | coil || rowspan="6" | RW || rowspan="6" | - || rowspan="6" | 1 или 0|| rowspan="6" | состояние канала реле || rowspan="6" | | |||
| | |- | ||
| 1 || канал 2 | |||
|- | |||
| 2 || канал 3 | |||
|- | |||
| 3 || канал 4 | |||
|- | |||
| 4 || канал 5 | |||
|- | |||
| 5 || канал 6 | |||
|- | |||
| 0 || вход 1 || rowspan="7" | discrete input || rowspan="7" | R || rowspan="7" | - || rowspan="7" | 1 или 0|| rowspan="7" | состояние входа || rowspan="7" | | |||
|- | |||
| 1 || вход 2 | |||
|- | |||
| 2 || вход 3 | |||
|- | |||
| 3 || вход 4 | |||
|- | |||
| 4 || вход 5 | |||
|- | |||
| 5 || вход 6 | |||
|- | |||
| 7 || вход 0 | |||
|- | |||
| 5 | |||
| | |||
| holding | |||
| RW | |||
| 0 | |||
| style="text-align:left" | | |||
| | |||
служебный регистр, значение должно быть 0 | |||
| | |||
|- | |||
| 6 | |||
| | |||
|| holding || RW || 0 | | |||
| style="text-align:left;" | | |||
* '''0''': не восстанавливать состояние реле | |||
* '''1''': восстанавливать состояние реле | |||
|| режим работы реле при отключении питания || 1.5.3 | |||
|- | |||
| 8 |||| holding || RW || 0 || секунды || таймаут для безопасного режима || | |||
|- | |||
| 9 || вход 1 || rowspan="7" | holding || rowspan="7" | RW || rowspan="4" | 0 | |||
| style="text-align:left" rowspan="3" | | |||
* '''0''': кнопки без фиксации | |||
* '''1''': выключатель с фиксацией | |||
* '''3''': отключить взаимодействие | |||
| rowspan="6" | режим взаимодействия отдельного цифрового входа с соответствующим релейным выходом. <br>'''В регистре 5 должно стоять значение по умолчанию (0).''' | |||
| rowspan="3" | | |||
|- | |||
| 10 || вход 2 | |||
|- | |||
| 11 || вход 3 | |||
|- | |||
| 12 || вход 4 | |||
| rowspan="4" style="text-align:left" | | |||
* '''2''': отключать все реле при нажатии | |||
* '''4''': управлять по [[I/O_Mapping_Matrix|mapping-матрице]] | |||
* '''5''': управлять по [[I/O_Mapping_Matrix|mapping-матрице]], через 20 минут повторно имитировать состояние ввода '''Только для [[WB-MWAC]]''' | |||
| 1.9.0 | |||
|- | |||
| 13 || вход 5 || rowspan="2" | 1 || rowspan="2" | 1.12.0 | |||
|- | |||
| 14 || вход 6 | |||
|- | |||
| 16 || вход 0 || 2 || режим работы цифрового входа 0 для отключения всех реле || 1.9.0 | |||
|- | |||
| 20 || вход 1 || rowspan="7" | holdreg || rowspan="7" | RW || rowspan="7" | 50 || rowspan="7" | 0 - 100 || rowspan="7" | время защиты входа от дребезга в миллисекундах || rowspan="7" | 1.13.0 | |||
|- | |||
| 21 || вход 2 | |||
|- | |||
| 22 || вход 3 | |||
|- | |||
| 23 || вход 4 | |||
|- | |||
| 24 || вход 5 | |||
|- | |||
| 25 || вход 6 | |||
|- | |||
| 27 || вход 0 | |||
|- | |||
| 32 || вход 1 || rowspan="7" | input || rowspan="7" | R || rowspan="7" | 0 || rowspan="7" | 16-bit unsigned int || rowspan="7" | счетчик срабатываний входа || rowspan="7" | | |||
|- | |||
| 33 || вход 2 | |||
|- | |||
| 34 || вход 3 | |||
|- | |||
| 35 || вход 4 | |||
|- | |||
| 36 || вход 5 | |||
|- | |||
| 37 || вход 6 | |||
|- | |||
| 39 || вход 0 | |||
|- | |||
| 40 || вход 1 || rowspan="7" | input || rowspan="7" | R || rowspan="7" | 0 || rowspan="7" | 16-bit unsigned int || rowspan="7" | целая часть значения частоты сигнала || rowspan="14" | 1.15.0 | |||
|- | |||
| 42 || вход 2 | |||
|- | |||
| 44 || вход 3 | |||
|- | |||
| 46 || вход 4 | |||
|- | |||
| 48 || вход 5 | |||
|- | |||
| 50 || вход 6 | |||
|- | |||
| 54 || вход 0 | |||
|- | |||
| 41 || вход 1 || rowspan="7" | input || rowspan="7" | R || rowspan="7" | 0 || rowspan="7" | 16-bit unsigned int || rowspan="7" | дробная часть значения частоты сигнала <br> 1 Гц = 65536 (2 ^ 16) | |||
|- | |||
| 43 || вход 2 | |||
|- | |||
| 45 || вход 3 | |||
|- | |||
| 47 || вход 4 | |||
|- | |||
| 49 || вход 5 | |||
|- | |||
| 51 || вход 6 | |||
|- | |||
| 55 || вход 0 | |||
|- | |||
|123 |||| input || R || 0 || мВ || Напряжение на микроконтроллере || 1.16.0 | |||
|- | |||
|124 |||| input || R || 0 || °C × 100 || Внутренняя температура микроконтроллера || 1.16.0 | |||
|- | |||
| 384-447 |||| holding || RW || 0 || || регистры [[I/O_Mapping_Matrix|mapping-матрицы]] || 1.9.0 | |||
|} | |} | ||
{{Wbincludes:Common Modbus Registers}} | |||
Регистры настройки параметров обмена данными по RS-485 поддерживаются начиная с прошивки версии 1.6.0 | Регистры настройки параметров обмена данными по RS-485 поддерживаются начиная с прошивки версии 1.6.0 | ||
</translate> |
Версия 13:53, 20 октября 2021
Регистр / адрес | Тип | Чтение / запись |
Значение по умолчанию |
Формат | Назначение | С версии прошивки | |
---|---|---|---|---|---|---|---|
0 | канал 1 | coil | RW | - | 1 или 0 | состояние канала реле | |
1 | канал 2 | ||||||
2 | канал 3 | ||||||
3 | канал 4 | ||||||
4 | канал 5 | ||||||
5 | канал 6 | ||||||
0 | вход 1 | discrete input | R | - | 1 или 0 | состояние входа | |
1 | вход 2 | ||||||
2 | вход 3 | ||||||
3 | вход 4 | ||||||
4 | вход 5 | ||||||
5 | вход 6 | ||||||
7 | вход 0 | ||||||
5 | holding | RW | 0 |
служебный регистр, значение должно быть 0 |
|||
6 | holding | RW |
|
режим работы реле при отключении питания | 1.5.3 | ||
8 | holding | RW | 0 | секунды | таймаут для безопасного режима | ||
9 | вход 1 | holding | RW | 0 |
|
режим взаимодействия отдельного цифрового входа с соответствующим релейным выходом. В регистре 5 должно стоять значение по умолчанию (0). |
|
10 | вход 2 | ||||||
11 | вход 3 | ||||||
12 | вход 4 |
|
1.9.0 | ||||
13 | вход 5 | 1 | 1.12.0 | ||||
14 | вход 6 | ||||||
16 | вход 0 | 2 | режим работы цифрового входа 0 для отключения всех реле | 1.9.0 | |||
20 | вход 1 | holdreg | RW | 50 | 0 - 100 | время защиты входа от дребезга в миллисекундах | 1.13.0 |
21 | вход 2 | ||||||
22 | вход 3 | ||||||
23 | вход 4 | ||||||
24 | вход 5 | ||||||
25 | вход 6 | ||||||
27 | вход 0 | ||||||
32 | вход 1 | input | R | 0 | 16-bit unsigned int | счетчик срабатываний входа | |
33 | вход 2 | ||||||
34 | вход 3 | ||||||
35 | вход 4 | ||||||
36 | вход 5 | ||||||
37 | вход 6 | ||||||
39 | вход 0 | ||||||
40 | вход 1 | input | R | 0 | 16-bit unsigned int | целая часть значения частоты сигнала | 1.15.0 |
42 | вход 2 | ||||||
44 | вход 3 | ||||||
46 | вход 4 | ||||||
48 | вход 5 | ||||||
50 | вход 6 | ||||||
54 | вход 0 | ||||||
41 | вход 1 | input | R | 0 | 16-bit unsigned int | дробная часть значения частоты сигнала 1 Гц = 65536 (2 ^ 16) | |
43 | вход 2 | ||||||
45 | вход 3 | ||||||
47 | вход 4 | ||||||
49 | вход 5 | ||||||
51 | вход 6 | ||||||
55 | вход 0 | ||||||
123 | input | R | 0 | мВ | Напряжение на микроконтроллере | 1.16.0 | |
124 | input | R | 0 | °C × 100 | Внутренняя температура микроконтроллера | 1.16.0 | |
384-447 | holding | RW | 0 | регистры mapping-матрицы | 1.9.0 |
Адрес | Параметры регистра | Описание | Значения | |||
---|---|---|---|---|---|---|
Dec | Hex | Тип | Доступ | Формат | ||
104-105 | 0x0068 - 0x0069 | Input | RO | u32 | Время работы с момента загрузки | секунды |
121 | 0x0079 | Input | RO | u16 | Текущее напряжение питания | мВ |
110 | 0x006E | Holding | RW | u16 | Скорость порта RS-485. Настройка параметров подключения по RS-485 |
x100, Боды 12 — 1200 бит/с, 24 — 2400 бит/с, 48 — 4800 бит/с, 96 — 9600 бит/с, 192 — 19 200 бит/с, 384 — 38 400 бит/с, 576 — 57 600 бит/с, 1152 — 115 200 Кбит/с |
111 | 0x006F | Holding | RW | u16 | Настройка бита чётности порта RS-485 | 0 — нет бита чётности (none), 1 — нечётный, 2 — чётный |
112 | 0x0070 | Holding | RW | u16 | Количество стоп-битов порта RS-485 | 1, 2 |
113 | 0x0071 | Holding | RW | u16 | Время перед отправкой ответа на modbus запрос | 0 - 254 мс |
114 | 0x0072 | Holding | RW | u16 | Режим непрерывного чтения регистров с зазором | 0 - отключен 1 - включен 2 - включение сохраняется после перезагрузки |
128 | 0x0080 | Holding | RW | u16 | Modbus-адрес устройства (подробнее) | |
120 | 0x0078 | Holding | RW | u16 | Перезагрузка устройства без сохранения состояния | любое, отличное от 0 перезагружает устройство |
129 | 0x0081 | Holding | RW | u16 | Перевод в режим обновления прошивки на 2 минуты | любое, отличное от 0 переводит устройство в режим обновления прошивки |
130 | 0x0082 | Holding | RW | u8 | Отключение индикатора состояния | 0 - активен, 1 - отключен |
123 | 0x007B | Input | RO | u16 | Напряжение на микроконтроллере | мВ |
124 | 0x007C | Input | RO | u16 | Внутренняя температура микроконтроллера | x0.1, °C |
200-205 | 0x00C8 - 0x00CD | Input | RO | string | Модель устройства | |
206-219 | 0x00CE - 0x00DB | Input | RO | string | Расширение модели устройства. Для новых устройств WB-LED и WB-MAI6 поле поддерживается изначально, для остальных - в прошивках с "быстрым Modbus". Для чтения модели устройства нужно читать диапазон из 20 регистров (200 - 219). Если устройство возвращает ошибку Illegal Data Address - читать 6 регистров (200 - 205). | |
220-248 | 0x00DC - 0x00F8 | Input | RO | string | Хэш коммита и название ветки откуда собрана прошивка (2 символа в регистре) | |
250-265 | 0x00FA - 0x0109 | Input | RO | string | Версия прошивки | |
266-269 | 0x010A - 0x010D | Input | RO | u64 | Расширение серийного номера | |
270-271 | 0x010E - 0x010F | Input | RO | u32 | Серийный номер | |
290-301 | 0x0122 - 0x012D | Holding | RO | string | Сигнатура прошивки | |
330-336 | 0x014A - 0x0150 | Holding | RO | string | Версия загрузчика |
Версия прошивки в устройствах с «Быстрым Modbus»
В устройствах, поддерживающих Быстрый Modbus, используется другой формат обозначения версии прошивки.
- Диапазон регистров «Модель устройства» расширен до 20 регистров.
- Версия формируется согласно semver и имеет формат
MAJOR.MINOR.PATCH
с опциональным суффиксом(-rc|+wb)SUFFIX
:- суффикс
-rc
означает, что прошивка предназначена для тестирования и может быть нестабильной. Хранится в регистре с отрицательным знаком; - суффикс
+wb
добавляется, когда к прошивке, зафиксированной в релизе, требуется выпустить фикс. Хранится в регистре с положительным знаком.
- суффикс
- Цифры версии доступны по отдельности в формате u16 (для суффикса - s16), регистры 320-323.
- Доступно число u32, содержащее комбинацию цифр версии и позволяющее за одно сравнение понять, увеличилась или уменьшилась версия прошивки:
- число рассчитывается по формуле
if (SUFFIX >= 0) { SUFFIX = SUFFIX + 128; } else { SUFFIX = -1 - SUFFIX; } VERSION = (MAJOR << 24) + (MINOR << 16) + (PATCH << 8) + SUFFIX;
- число доступно для чтения в little-endian и big-endian форматах;
- число для более свежей версии всегда будет больше, чем для предыдущей, в том числе, когда прошивка переходит из тестовой в стабильную.
- Таким образом обеспечивается корректное сравнение версий:
1.2.3-rc1 < 1.2.3-rc10 < 1.2.3 < 1.2.3+wb1 < 1.2.3+wb10.
Адрес | Параметры регистра | Описание | Значения | |||
---|---|---|---|---|---|---|
Dec | Hex | Тип | Доступ | Формат | ||
200-219 | 0x00C8 - 0x00DB | Input | RO | string | Модель устройства | |
320 | 0x0140 | Input | RO | u16 | Версия прошивки в числовом формате | MAJOR |
321 | 0x0141 | MINOR | ||||
322 | 0x0142 | PATCH | ||||
323 | 0x0143 | s16 | SUFFIX | |||
324-325 | 0x0144 - 0x0145 | Input | RO | u32 | Версия прошивки в числовом формате | |
326-327 | 0x0146 - 0x0147 | Input | RO | u32 | Версия прошивки в Big Endian формате |
Регистры настройки параметров обмена данными по RS-485 поддерживаются начиная с прошивки версии 1.6.0