M1W2 Registers: различия между версиями

Материал из Wiren Board
(не показано 60 промежуточных версий 9 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE: Карта регистров WB-M1W2 для ревизий 2.1F, 3.x и новее}}
<!--T:15-->
== Описание ==
{| class="wikitable"
{{Wbincludes:Header Registers Universal|fw=true|channel=true}}
! rowspan="2" |Регистр/ адрес
! rowspan="2" |Тип
! rowspan="2" |Чтение/ запись
! rowspan="2" |Значение по умолчанию
! rowspan="2" |Формат
! rowspan="2" |Назначение
!Версии
прошивки
|-
|-
| 0
!
| 0x0000
| rowspan="2" | Discrete input {{Sporadic}}
| rowspan="2" | RO
| rowspan="2" | bool
| Вход 1
| rowspan="2" | Состояние входа
| rowspan="2" | 0 — разомкнут или выбран режим 1-wire,<br />1 — замкнут
| rowspan="2" | ≥ 4.0.0
|-
|-
| 1
|6
| 0x0001
|input
| Вход 2
|R
|0x7FFF
|°C × 16 (signed)
|Температура со встроенного датчика
|
|-
|-
| 16
|7
| 0x0010
|input
| rowspan="2" | Discrete input
|R
| rowspan="2" | RO
|0x7FFF
| rowspan="2" | bool
|°C × 16 (signed)
| Вход 1
|Температура с первого внешнего датчика 1-Wire
| rowspan="2" | Статус опроса 1-Wire датчика
|
| rowspan="2" | 0 — датчик не подключен,<br />1 — датчик подключен и корректно опрашивается
| rowspan="2" | ≥ 4.6.0
|-
|-
| 17
|8
| 0x0011
|input
| Вход 2
|R
|0x7FFF
|°C × 16 (signed)
|Температура со второго внешнего датчика 1-Wire
|
|-
|-
| 7
|20
| 0x0007
|input
| rowspan="2" | Input
|R
| rowspan="2" | RO
|0
| rowspan="2" | s16
|°C × 16 (signed)
| Вход 1
|Температура с первого внешнего датчика 1-Wire. При ошибке опроса датчика сохраняет предыдущее валидное значение (статус датчика читать из discrete регистра 16).
| rowspan="2" | Температура датчика DS18B20
| rowspan="2" |начиная с прошивки 4.6.0
| rowspan="2" | x0.0625, °C<br />Error: 0x7FFF
| rowspan="2" |
|-
|-
| 8
|21
| 0x0008
|input
| Вход 2
|R
|0
|°C × 16 (signed)
|Температура со второго внешнего датчика 1-Wire. При ошибке опроса датчика сохраняет предыдущее валидное значение (статус датчика читать из discrete регистра 17).
|-
|-
| 20
|99||holding||RW||16|| 1 = 0.0625C
| 0x0014
||(доступно с версии прошивки 3.10.0)
| rowspan="2" | Input
Фильтр подозрительных значений для датчиков 1-Wire (85.000C, 127.937C).
| rowspan="2" | RO
Значения отбрасываются, если предыдущее отличается от подозрительного больше, чем на значение регистра*0.0625C.
| rowspan="2" | s16
Запишите 0, чтобы отключить фильтр.
| Вход 1
|3.10.0
| rowspan="2" | Последнее валидное значение температуры датчика DS18B20
|-
| rowspan="2" | x0.0625, °C
 
| rowspan="2" | ≥ 4.6.0
 
<!--T:16-->
|104-105 || input || R || || 32-bit unsigned int
|| Время работы устройства (uptime counter) в секундах
|
|-
|-
| 21
 
| 0x0015
 
| Вход 2
 
<!--T:17-->
|110
|holding
|RW
|96
|baud rate / 100
|скорость порта RS-485, '''делённая на 100'''. Допустимые скорости: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200
| rowspan="3" |>3.1.0
|-
|-
| 99
|111
| 0x0063
|holding
| Holding
|RW
| RW
|0
| u16
|
|
| Коэффициент фильтра подозрительных значений для датчиков DS18B20.<br />Если разница между новым и предыдущим значением больше коэффициента, то новое значение отбрасывается. Используется только для фильтрации ошибочных значений 85 °C, получаемых при ошибке конверсии температуры.
|настройка бита чётности порта RS-485. Допустимые значения: 0 - нет бита чётности (none), 1 - нечётный (odd), 2 - чётный (even)
| x0.0625, °C<br />0 — фильтр отключен, а число больше нуля — коэффициент фильтра<br> По умолчанию: '''16'''
| ≥ 3.10.0
|-
|-
| 100
|112
| 0x0064
|holding
| Holding
|RW
| RW
|2
| u8
|
|
| Сброс счетчиков срабатываний входов
|количество стоп-битов порта RS-485. Допустимые значения: 1, 2
| 1 - сброс счетчиков
| ≥ 4.33.0
|-
|-
| 101
| 0x0065
| Holding
| RW
| u16
|
|
| Период опроса датчиков температуры. При изменении данного параметра, следует также изменить коэффициент в регистре 99.
|
| с, <br />1 - 60 ('''2''')
|
| ≥ 4.33.1
|
|
|
|
|-
|-
| 119
|120 (0x78)
| 0x0077
|holding
| Input
|RW
| RO
|0
| u16
|отличное от 0
|запись в регистр вызывает перезагрузку модуля без сохранения состояния
|
|
| Миниальное напряжение МК с момента включения
| мВ
| ≥ 4.33.1
|-
|-
| 130
|121 (0x79)
| 0x0082
|input
| Holding
|R
| RW
| -
| u8
|mV
|текущее напряжение питания модуля
|
|
| Выключение статусного светодиода
| 0 - включен, <br />1 - выключен
|-
|-
| 275
|128 (0x80)
| 0x0113
|holding
| rowspan="2" | Holding
|RW
| rowspan="2" | RW
|указан на устройстве
| rowspan="2" | u16
|
| Вход 1
|Modbus-адрес устройства
| rowspan="2" | Режим входа
|
| rowspan="2" | '''0 — 1-wire''',<br />1 — дискретный вход: счет и детектирование нажатий
| rowspan="4" | ≥ 4.0.0
|-
|-
| 276
| 129 (0x81) || holding || RW || 0 || 0 или 1 || Переход в [[WB-MCU-Flasher|режим загрузчика]] || начиная с прошивки 4.5.0
| 0x0114
| Вход 2
|-
|-
| 277
|200-206
| 0x0115
|input
| rowspan="2" | Input {{Sporadic}}
|R
| rowspan="2" | RO
|см. [[Sensors Modbus Management|Сигнатура устройства]]
| rowspan="2" | u16
|
| Вход 1
|сигнатура
| rowspan="2" | Счетчик срабатываний входа
|
|-
|-
| 278
|220-241
| 0x0116
|input
| Вход 2
|R
|
|__date__ __time__
|дата сборки прошивки
|
|-
|-
| 340
|245
| 0x0154
|holding
| rowspan="2" | Holding
|RW
| rowspan="2" | RW
|216
| rowspan="2" | u16
|°C × 100 (signed)
| Вход 1
|Компенсация самонагрева встроенного датчика температуры.
| rowspan="2" | Время подавления дребезга для входа
Значение регистра вычитается из температуры, измеренной встроенным датчиком (регистр 6)
| rowspan="2" | мс, <br />0 - 100 ('''50''')
|
| rowspan="2" | ≥ 4.32.0
|-
|-
| 341
|250-269
| 0x0155
|input
| Вход 2
|R
|
|строка, null-terminated
|версия прошивки
|
|-
|-
| 376
|270-271
| 0x0178
|input
| rowspan="2" | Input
|R
| rowspan="2" | RO
|
| rowspan="2" | u8
|32-bit unsigned int
| Вход 1
|уникальный идентификатор (S/N)
| rowspan="2" | Наличие 1-Wire датчика
|
| rowspan="2" | 0 или 1
| rowspan="2" | ≥ 4.24.0
|-
|-
| 377
|
| 0x0179
|
| Вход 2
|
|
|
|
|
|-
|-
| 448
|275
| 0x01C0
|holding
| rowspan="2" | Input
|RW
| rowspan="2" | RO
|0
| rowspan="2" | u8
|0 или 1
| Вход 1
|Режим входа №1: 0 - 1-wire, 1 - дискретный вход
| rowspan="2" | Статус питания датчика DS18B20. На некоторых датчиках-клонах может работать неправильно
| rowspan="6" |>=4.0.0
| rowspan="2" | 1 - запитан, <br />0 - паразитное питание
| rowspan="2" | 4.32.0
|-
|-
| 449
|276
| 0x01C1
|holding
| Вход 2
|RW
|-style="background-color:lightgray"
|0
| 456
|0 или 1
| 0x01C8
|Режим входа №2: 0 - 1-wire, 1 - дискретный вход
| rowspan="2" | Input
| rowspan="2" | RO
| rowspan="2" | u16
| Вход 1
| rowspan="2" | Счётчик ошибок занятости линии
| rowspan="2" |
| rowspan="2" | ≥ 4.32.3
|-style="background-color:lightgray"
| 457
| 0x01C9
| Вход 2
|-
|-
| 464
|277
| 0x01D0
|input
| rowspan="2" | Input {{Sporadic}}
|R
| rowspan="2" | RO
|
| rowspan="2" | u16
|16-bit unsigned int
| Вход 1
|Счетчик срабатываний для входа №1
| rowspan="2" | Счётчик коротких нажатий
| rowspan="2" |
| rowspan="8" | ≥ 4.32.0
|-
|-
| 465
|278
| 0x01D1
|input
| Вход 2
|R
|
|16-bit unsigned int
|Счетчик срабатываний для входа №2
|-
|-
| 480
|0
| 0x01E0
|discrete
| rowspan="2" | Input {{Sporadic}}
|R
| rowspan="2" | RO
|
| rowspan="2" | u16
|0 или 1
| Вход 1
|Текущее состояние входа №1: 0 - разомкнут, 1 - замкнут на GND. Если для входа выбран режим 1-wire, значение всегда равно 0.
| rowspan="2" | Счётчик длинных нажатий
| rowspan="2" |
|-
|-
| 481
|1
| 0x01E1
|discrete
| Вход 2
|R
|
|0 или 1
|Текущее состояние входа №2: 0 - разомкнут, 1 - замкнут на GND. Если для входа выбран режим 1-wire, значение всегда равно 0.
|-
|-
| 496
|16
| 0x01F0
|discrete
| rowspan="2" | Input {{Sporadic}}
|R
| rowspan="2" | RO
|
| rowspan="2" | u16
|0 или 1
| Вход 1
|Статус опроса датчика 1-Wire входа №1: 0 - датчик не подключен, 1 - датчик подключен и корректно опрашивается
| rowspan="2" | Счётчик двойных нажатий
| rowspan="2" |начиная с прошивки 4.6.0
| rowspan="2" |
|-
|-
| 497
|17
| 0x01F1
|discrete
| Вход 2
|R
|-
|
| 512
|0 или 1
| 0x0200
|Статус опроса датчика 1-Wire входа №2: 0 - датчик не подключен, 1 - датчик подключен и корректно опрашивается
| rowspan="2" | Input {{Sporadic}}
| rowspan="2" | RO
| rowspan="2" | u16
| Вход 1
| rowspan="2" | Счётчик короткого, а затем длинного нажатий
| rowspan="2" |
|-
| 513
| 0x0201
| Вход 2
|-
|}
{{Wbincludes:Header Registers Universal|note=true|no_description=true|header=Параметры подключения, версия прошивки и другие служебные регистры}}
{{Wbincludes: Registers Connection Settings}}
{{Wbincludes: Registers FW Version For Supported Device With Bootloader}}
{{Wbincludes: Registers Service Main}}
{{Wbincludes: Registers Timeout For Device With Bootloader}}
{{Wbincludes: Register bootloader start}}
{{Wbincludes: Registers Сontinuous Reading Mode For Device With Bootloader}}
{{Wbincludes: Registers Vin}}
{{Wbincludes: Registers Temperature MCU}}
|}
|}

Версия 20:53, 24 апреля 2020

Регистр/ адрес Тип Чтение/ запись Значение по умолчанию Формат Назначение Версии

прошивки

6 input R 0x7FFF °C × 16 (signed) Температура со встроенного датчика
7 input R 0x7FFF °C × 16 (signed) Температура с первого внешнего датчика 1-Wire
8 input R 0x7FFF °C × 16 (signed) Температура со второго внешнего датчика 1-Wire
20 input R 0 °C × 16 (signed) Температура с первого внешнего датчика 1-Wire. При ошибке опроса датчика сохраняет предыдущее валидное значение (статус датчика читать из discrete регистра 16). начиная с прошивки 4.6.0
21 input R 0 °C × 16 (signed) Температура со второго внешнего датчика 1-Wire. При ошибке опроса датчика сохраняет предыдущее валидное значение (статус датчика читать из discrete регистра 17).
99 holding RW 16 1 = 0.0625C (доступно с версии прошивки 3.10.0)

Фильтр подозрительных значений для датчиков 1-Wire (85.000C, 127.937C). Значения отбрасываются, если предыдущее отличается от подозрительного больше, чем на значение регистра*0.0625C. Запишите 0, чтобы отключить фильтр.

3.10.0
104-105 input R 32-bit unsigned int Время работы устройства (uptime counter) в секундах
110 holding RW 96 baud rate / 100 скорость порта RS-485, делённая на 100. Допустимые скорости: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 >3.1.0
111 holding RW 0 настройка бита чётности порта RS-485. Допустимые значения: 0 - нет бита чётности (none), 1 - нечётный (odd), 2 - чётный (even)
112 holding RW 2 количество стоп-битов порта RS-485. Допустимые значения: 1, 2
120 (0x78) holding RW 0 отличное от 0 запись в регистр вызывает перезагрузку модуля без сохранения состояния
121 (0x79) input R - mV текущее напряжение питания модуля
128 (0x80) holding RW указан на устройстве Modbus-адрес устройства
129 (0x81) holding RW 0 0 или 1 Переход в режим загрузчика начиная с прошивки 4.5.0
200-206 input R см. Сигнатура устройства сигнатура
220-241 input R __date__ __time__ дата сборки прошивки
245 holding RW 216 °C × 100 (signed) Компенсация самонагрева встроенного датчика температуры.

Значение регистра вычитается из температуры, измеренной встроенным датчиком (регистр 6)

250-269 input R строка, null-terminated версия прошивки
270-271 input R 32-bit unsigned int уникальный идентификатор (S/N)
275 holding RW 0 0 или 1 Режим входа №1: 0 - 1-wire, 1 - дискретный вход >=4.0.0
276 holding RW 0 0 или 1 Режим входа №2: 0 - 1-wire, 1 - дискретный вход
277 input R 16-bit unsigned int Счетчик срабатываний для входа №1
278 input R 16-bit unsigned int Счетчик срабатываний для входа №2
0 discrete R 0 или 1 Текущее состояние входа №1: 0 - разомкнут, 1 - замкнут на GND. Если для входа выбран режим 1-wire, значение всегда равно 0.
1 discrete R 0 или 1 Текущее состояние входа №2: 0 - разомкнут, 1 - замкнут на GND. Если для входа выбран режим 1-wire, значение всегда равно 0.
16 discrete R 0 или 1 Статус опроса датчика 1-Wire входа №1: 0 - датчик не подключен, 1 - датчик подключен и корректно опрашивается начиная с прошивки 4.6.0
17 discrete R 0 или 1 Статус опроса датчика 1-Wire входа №2: 0 - датчик не подключен, 1 - датчик подключен и корректно опрашивается