WB-MRGBW-D Modbus Registers v.3: различия между версиями

Материал из Wiren Board
(→‎Описание: Регистры WB-LED)
(Содержимое страницы заменено на «{{DISPLAYTITLE: Карта регистров WB-MRGBW-D для прошивки 3.x}} == Описание == {{Modbus Registers Version FW | fw_this= 3.x | fw_other= 1.0 | fw_other_page= WB_Dimmers_Modbus_Registers_Map_v.1 }} Экспериментальная версия 2.0, не пошла в серию: Таблица регистров. Про обновление прошивки ч...»)
Метка: замена
Строка 8: Строка 8:


Про обновление прошивки читайте на [[WB-MRGBW-D Modbus LED Dimmer | странице устройства]] в разделе «Обновление прошивки и сброс настроек».
Про обновление прошивки читайте на [[WB-MRGBW-D Modbus LED Dimmer | странице устройства]] в разделе «Обновление прошивки и сброс настроек».
 
{{Wbincludes:LED Dimmer Modbus Registers}}
{{Wbincludes:Header Registers Universal|fw=true|channel=true}}
|-
! colspan="9" style="text-align: left;"| Состояние входов и счётчики нажатий
|-
| class ="text-right" | 0
| 0x0000
| rowspan="4" | Discrete Input
| rowspan="4" | RO
| rowspan="4" | bool 
| Вход 1
| rowspan="4" | Состояние
| rowspan="4" |
0 - разомкнут,<br />
1 - замкнут
| rowspan="4" |
|-
| class ="text-right" | 1
| 0x0001
| Вход 2
|-
| class ="text-right" | 2
| 0x0002
| Вход 3
|-
| class ="text-right" | 3
| 0x0003
| Вход 4
|-
| class ="text-right" | 32
| 0x0020
| rowspan="4" | Input
| rowspan="4" | RO
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Счётчик замыканий
| rowspan="4" | 0 − 65535<br /> по кругу
| rowspan="4" |
|-
| class ="text-right" | 33
| 0x0021
| Вход 2
|-
| class ="text-right" | 34
| 0x0022
| Вход 3
|-
| class ="text-right" | 35
| 0x0023
| Вход 4
|-
| class ="text-right" | 464
| 0x01D0
| rowspan="4" | Input
| rowspan="4" | RO
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Счётчик короткого нажатия
| rowspan="4" | 0 − 65535<br /> по кругу
| rowspan="4" |
|-
| class ="text-right" | 465
| 0x01D1
| Вход 2
|-
| class ="text-right" | 466
| 0x01D2
| Вход 3
|-
| class ="text-right" | 467
| 0x01D3
| Вход 4
|-
| class ="text-right" | 480
| 0x01E0
| rowspan="4" | Input
| rowspan="4" | RO
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Счётчик долгого нажатия
| rowspan="4" | 0 − 65535<br /> по кругу
| rowspan="4" |
|-
| class ="text-right" | 481
| 0x01E1
| Вход 2
|-
| class ="text-right" | 482
| 0x01E2
| Вход 3
|-
| class ="text-right" | 483
| 0x01E3
| Вход 4
|-
| class ="text-right" | 496
| 0x01F0
| rowspan="4" | Input
| rowspan="4" | RO
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Счётчик двойного нажатия
| rowspan="4" | 0 − 65535<br /> по кругу
| rowspan="4" |
|-
| class ="text-right" | 497
| 0x01F1
| Вход 2
|-
| class ="text-right" | 498
| 0x01F2
| Вход 3
|-
| class ="text-right" | 499
| 0x01F3
| Вход 4
|-
| class ="text-right" | 512
| 0x0200
| rowspan="4" | Input
| rowspan="4" | RO
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Счётчик короткого, а затем долгого нажатия
| rowspan="4" | 0 − 65535<br /> по кругу
| rowspan="4" |
|-
| class ="text-right" | 513
| 0x0201
| Вход 2
|-
| class ="text-right" | 514
| 0x0202
| Вход 3
|-
| class ="text-right" | 515
| 0x0203
| Вход 4
|-
! colspan="9" style="text-align: left;"| Состояние выходов
|-
| class ="text-right" | 0
| 0x0000
| rowspan="3" | Coil
| rowspan="3" | RW
| rowspan="3" | bool
| Канал 1
| rowspan="3" | Состояние при независимой работе
| rowspan="3" |
'''0 - выключен''',<br />
1 - включён
| rowspan="3" |
|-
| class="text-right" | 1
| 0x0001
| Канал 2
|-
| class="text-right" | 2
| 0x0002
| Канал 3
|-
| class ="text-right" | 3
| 0x0003
| Coil
| RW
| bool
| Канал 4
| Состояние при независимой работе или в режиме RGB+W
|
'''0 - выключен''',<br />
1 - включён
|
|-
| class ="text-right" | 4
| 0x0004
| rowspan="3" | Coil
| rowspan="3" | RW
| rowspan="3" | bool
| Каналы 1 и 2
| rowspan="3" | Состояние при параллельной работе
| rowspan="3" |
'''0 - выключен''',<br />
1 - включён
| rowspan="3" |
|-
| class="text-right" | 5
| 0x0005
| Каналы 3 и 4
|-
| class="text-right" | 6
| 0x0006
| Каналы 1, 2, 3, 4
|-
| class ="text-right" | 7
| 0x0007
| rowspan="2" | Coil
| rowspan="2" | RW
| rowspan="2" | bool
| Каналы 1 и 2
| rowspan="2" | Состояние каналов при работе с CCT лентой
| rowspan="2" |
'''0 - выключен''',<br />
1 - включён
| rowspan="2" |
|-
| class="text-right" | 8
| 0x0008
| Каналы 3 и 4
|-
| class ="text-right" | 9
| 0x0009
| Coil
| RW
| bool
| Каналы 1, 2, 3
| Состояние каналов при работе с RGB лентой
|
'''0 - выключен''',<br />
1 - включён
|
|-
| class ="text-right" | 10
| 0x00010
| Coil
| RW
| bool
| Каналы 1, 2, 3, 4
| Непрерывная смена цвета RGB ленты
|
'''0 - выключен''',<br />
1 - включён
|
|-
! colspan="9" style="text-align: left;"| Управление каналами
|-
| class ="text-right" | 2000
| 0x07D0
| rowspan="3" | Holding
| rowspan="3" | RW
| rowspan="3" | u16
| Канал 1
| rowspan="3" | Яркость при независимой работе
| rowspan="3" | %<br /> 0 - 100 ('''50''')<br />Error: 0xFFFF
| rowspan="3" |
|-
| class="text-right" | 2001
| 0x07D1
| Канал 2
|-
| class="text-right" | 2002
| 0x07D2
| Канал 3
|-
| class ="text-right" | 2003
| 0x07D3
| Holding
| RW
| u16
| Канал 4
| Яркость при независимой работе
| %<br />0 - 100 ('''50''')<br />Error: 0xFFFF
|
|-
| class ="text-right" | 2004
| 0x07D4
| rowspan="3" | Holding
| rowspan="3" | RW
| rowspan="3" | u16
| Каналы 1 и 2
| rowspan="3" | Яркость при параллельной работе
| rowspan="3" | %<br /> 0 - 100 ('''50''')<br />Error: 0xFFFF
| rowspan="3" |
|-
| class="text-right" | 2005
| 0x07D5
| Каналы 3 и 4
|-
| class="text-right" | 2006
| 0x07D6
| Каналы 1, 2, 3, 4
|-
| class ="text-right" | 2007
| 0x07D7
| Holding
| RW
| u16
| Каналы 1 и 2
| Цветовая температура CCT ленты
| %<br />0 - 100 ('''50''')<br />* 0 - тёплый цвет<br />* 100 - холодный цвет<br />Error: 0xFFFF
|
|-
| class ="text-right" | 2008
| 0x07D8
| Holding
| RW
| u16
| Каналы 1 и 2
| Яркость CCT ленты
| %<br />0 - 100 ('''50''')<br />Error: 0xFFFF
|
|-
| class ="text-right" | 2009
| 0x07D9
| Holding
| RW
| u16
| Каналы 3 и 4
| Цветовая температура CCT ленты
| %<br />0 - 100 ('''50''')<br />* 0 - тёплый цвет<br />* 100 - холодный цвет<br />Error: 0xFFFF
|
|-
| class ="text-right" | 2010
| 0x07DA
| Holding
| RW
| u16
| Каналы 3 и 4
| Яркость CCT ленты
| %<br />0 - 100 ('''50''')<br />Error: 0xFFFF
|
|-
| class ="text-right" | 2011
| 0x07DB
| rowspan="3" | Holding
| rowspan="3" | RW
| rowspan="3" | u16
| Компонент R
| rowspan="3" | в цвете RGB ленты, RGB палитра
| rowspan="3" | 0 - 255 ('''127''')<br />Error: 0xFFFF
| rowspan="3" |
|-
| class="text-right" | 2012
|  | 0x07DC
|  | Компонент G
|-
| class="text-right" | 2013
|  | 0x07DD
|  | Компонент B
|-
| class ="text-right" | 2014
| 0x07DE
| rowspan="3" | Holding
| rowspan="3" | RW
| rowspan="3" | u16
| Компонент H
| rowspan="3" | в цвете RGB ленты, HSV палитра
| °<br /> '''0''' - 360 <br />Error: 0xFFFF
| rowspan="3" |
|-
| class="text-right" | 2015
|  | 0x07DF
|  | Компонент S
|  | %<br />0 - '''100'''<br />Error: 0xFFFF
|-
| class="text-right" | 2016
|  | 0x07E0
|  | Компонент V
|  | %<br />0 - 100 ('''50''')<br />Error: 0xFFFF
|-
| class ="text-right" | 2017
| 0x07E1
| Holding
| RW
| u16
|
| Скорость непрерывного изменения цвета RGB ленты, период увеличения Hue на 1 градус
| мс<br />3 - 10000 ('''30''')<br />Error: 0xFFFF
|
|-
! colspan="9" style="text-align: left;"| Настройка выходов и прямое управление ШИМ выходов
|-
| class ="text-right" | 70
| 0x0046
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Канал 1
| rowspan="4" | Минимальный ШИМ
| rowspan="4" | 0 – 2048 ('''6''')
| rowspan="4" |
|-
| class="text-right" | 71
| 0x0047
| Канал 2
|-
| class="text-right" | 72
| 0x0048
| Канал 3
|-
| class="text-right" | 73
| 0x0049
| Канал 4
|-
| class ="text-right" | 80
| 0x0050
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Канал 1
| rowspan="4" | Максимальный ШИМ
| rowspan="4" | 0 – '''2048'''
| rowspan="4" |
|-
| class="text-right" | 81
| 0x0051
| Канал 2
|-
| class="text-right" | 82
| 0x0052
| Канал 3
|-
| class="text-right" | 83
| 0x0053
| Канал 4
|-
| class ="text-right" | 90
| 0x005A
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Канал 1
| rowspan="4" | Прямое управление
| rowspan="4" | '''0''' – 2048
| rowspan="4" |
|-
| class="text-right" | 91
| 0x005B
| Канал 2
|-
| class="text-right" | 92
| 0x005C
| Канал 3
|-
| class="text-right" | 93
| 0x005D
| Канал 4
|-
! colspan="9" style="text-align: left;"| Обработка типов нажатий
|-
| class ="text-right" | 1100
| 0x044C
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Время длинного нажатия
Если нажатие длится больше указанного времени - считаем его длинным
| rowspan="4" | мс<br />500 – 5000 ('''1000''')
| rowspan="4" |
|-
| class="text-right" | 1101
| 0x044D
| Вход 2
|-
| class="text-right" | 1102
| 0x044E
| Вход 3
|-
| class="text-right" | 1103
| 0x044F
| Вход 4
|-
| class ="text-right" | 1120
| 0x0460
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Скорость изменения параметра при удержании кнопки
Чем меньше значение, тем быстрее изменяется параметр
| rowspan="4" | мс/ед<br />5 – 500 ('''20''')
| rowspan="4" |
|-
| class="text-right" | 1121
| 0x0461
| Вход 2
|-
| class="text-right" | 1122
| 0x0462
| Вход 3
|-
| class="text-right" | 1123
| 0x0463
| Вход 4
|-
| class ="text-right" | 1140
| 0x0474
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Время ожидания второго нажатия
Если за указанное время второго нажатия не было - считаем нажатие одиночным. 0 - отключит все нажатия кроме короткого и длинного
| rowspan="4" | мс<br />0 – 2000 ('''300''')
| rowspan="4" |
|-
| class="text-right" | 1141
| 0x0475
| Вход 2
|-
| class="text-right" | 1142
| 0x0476
| Вход 3
|-
| class="text-right" | 1143
| 0x0477
| Вход 4
|-
| class ="text-right" | 1160
| 0x0488
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Вход 1
| rowspan="4" | Время подавления дребезга
Должно быть в 5-10 раз меньше, чем время ожидания второго нажатия. Если двойные нажатия отключены - любое значение
| rowspan="4" | мс<br />5 – 200 ('''50''')
| rowspan="4" |
|-
| class="text-right" | 1161
| 0x0489
| Вход 2
|-
| class="text-right" | 1162
| 0x048A
| Вход 3
|-
| class="text-right" | 1163
| 0x048B
| Вход 4
|-
! colspan="9" style="text-align: left;"| Время изменения яркости, цветовой температуры и насыщенности цвета
|-
| class ="text-right" | 3000
| 0x0BB8
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Канал 1
| rowspan="4" | Время увеличения яркости при независимой работе
| rowspan="4" | мс<br />0 – 30000 ('''100''')
| rowspan="4" |
|-
| class="text-right" | 3001
| 0x0BB9
| Канал 2
|-
| class="text-right" | 3002
| 0x0BBA
| Канал 3
|-
| class="text-right" | 3003
| 0x0BBB
| Канал 4
|-
| class ="text-right" | 3004
| 0x0BBС
| rowspan="3" | Holding
| rowspan="3" | RW
| rowspan="3" | u16 
| Каналы 1 и 2
| rowspan="3" | Время увеличения яркости при параллельной работе
| rowspan="3" | мс<br />0 – 30000 ('''100''')
| rowspan="3" |
|-
| class="text-right" | 3005
| 0x0BBD
| Каналы 3 и 4
|-
| class="text-right" | 3006
| 0x0BBE
| Каналы 1, 2, 3, 4
|-
| class ="text-right" | 3007
| 0x0BBF
| Holding
| RW
| u16 
| Каналы 1 и 2
| Время увеличения цветовой температуры CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3008
| 0x0BC0
| Holding
| RW
| u16 
| Каналы 1 и 2
| Время увеличения яркости CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3009
| 0x0BC1
| Holding
| RW
| u16 
| Каналы 3 и 4
| Время увеличения цветовой температуры CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3010
| 0x0BC2
| Holding
| RW
| u16 
| Каналы 3 и 4
| Время увеличения яркости CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3011
| 0x0BC3
| Holding
| RW
| u16 
| HSV-H
| Время увеличения цвета RGB ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3012
| 0x0BC3
| Holding
| RW
| u16 
| HSV-S
| Время увеличения насыщенности цвета RGB ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3013
| 0x0BC3
| Holding
| RW
| u16 
| HSV-V
| Время увеличения яркости RGB ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3100
| 0x0C1C
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16 
| Канал 1
| rowspan="4" | Время уменьшения яркости при независимой работе
| rowspan="4" | мс<br />0 – 30000 ('''100''')
| rowspan="4" |
|-
| class="text-right" | 3101
| 0x0BB9
| Канал 2
|-
| class="text-right" | 3102
| 0x0BBA
| Канал 3
|-
| class="text-right" | 3103
| 0x0BBB
| Канал 4
|-
| class ="text-right" | 3104
| 0x0C20
| rowspan="3" | Holding
| rowspan="3" | RW
| rowspan="3" | u16 
| Каналы 1 и 2
| rowspan="3" | Время уменьшения яркости при параллельной работе
| rowspan="3" | мс<br />0 – 30000 ('''100''')
| rowspan="3" |
|-
| class="text-right" | 3105
| 0x0BBD
| Каналы 3 и 4
|-
| class="text-right" | 3106
| 0x0BBE
| Каналы 1, 2, 3, 4
|-
| class ="text-right" | 3107
| 0x0C23
| Holding
| RW
| u16 
| Каналы 1 и 2
| Время уменьшения цветовой температуры CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3108
| 0x0C24
| Holding
| RW
| u16 
| Каналы 1 и 2
| Время уменьшения яркости CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3109
| 0x0C25
| Holding
| RW
| u16 
| Каналы 3 и 4
| Время уменьшения цветовой температуры CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3110
| 0x0C26
| Holding
| RW
| u16 
| Каналы 3 и 4
| Время уменьшения яркости CCT ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3111
| 0x0C27
| Holding
| RW
| u16 
| HSV-H
| Время уменьшения цвета RGB ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3112
| 0x0C28
| Holding
| RW
| u16 
| HSV-S
| Время уменьшения насыщенности цвета RGB ленты
| мс<br />0 – 30000 ('''100''')
|
|-
| class ="text-right" | 3113
| 0x0C29
| Holding
| RW
| u16 
| HSV-V
| Время уменьшения яркости RGB ленты
| мс<br />0 – 30000 ('''100''')
|
|-
! colspan="9" style="text-align: left;"| Общие для всех режимов настройки
|-
| class ="text-right" | 9
| 0x0009
| Holding
| RW
| u16 
|
| Настройка частоты ШИМ выходов
| 1 – 240 ('''8''')<br />F = 24 кГц / значение
|
|-
| class ="text-right" | 4000
| 0x0FA0
| Holding
| RW
| u16 
|
| Настройка режима работы диммера
| Код режима можно взять в [[WB-MRGBW-D_Modbus_LED_Dimmer#Режимы | таблице режимов работы]]<br />'''256'''
|
|-
! colspan="9" style="text-align: left;"| Данные для диагностики
|-
| class ="text-right" | 400
| 0x190
| Input
| RO
| i16 
|
| Температура платы диммера. Используется для оценки перегрева и снижения максимальной мощности при перегреве.
| -55 .. +150 °C
| WB-LED
|-
| class ="text-right" | 401
| 0x0191
| Input
| RO
| u16 
|
| Располагаемая мощность диммера в процентах от максимальной. Если температура платы диммера ниже 70 °C, диммер работает на 100 % своей мощности. При повышении температуры выше 70 °C ограничивается максимальный ШИМ выходов и при достижении температуры 80 °C выходы полностью отключаются.
| 0 .. 100 %
| WB-LED
|-
| class ="text-right" | 402
| 0x0192
| Input
| RO
| u16 
|
| Состояние аппаратной защиты по току и КЗ. После сработки защиты выходы отключаются на 3 с и затем по очереди плавно включаются.
| 1 - защита сработала
| WB-LED
|-
|}
 
{{Wbincludes:Header Registers Universal|fw=true|channel=true|no_description=true|header=Регистры настройки действий}}
|+ Действия по типам нажатий
|-
| class ="text-right" | 1000
| 0x03E8
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16
| Вход 1
| rowspan="4" | Действие при коротком нажатии
| rowspan="4" | Смотрите формулу расчёта ниже<br />'''0'''
| rowspan="4" |
|-
| class="text-right" | 1001
| 0x03E9
| Вход 2
|-
| class="text-right" | 1002
| 0x03EA
| Вход 3
|-
| class="text-right" | 1003
| 0x03EB
| Вход 4
|-
| class ="text-right" | 1020
| 0x03FC
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16
| Вход 1
| rowspan="4" | Действие при долгом нажатии
| rowspan="4" | Смотрите формулу расчёта ниже<br />'''0'''
| rowspan="4" |
|-
| class="text-right" | 1021
| 0x03FD
| Вход 2
|-
| class="text-right" | 1022
| 0x03FE
| Вход 3
|-
| class="text-right" | 1023
| 0x03FF
| Вход 4
|-
| class ="text-right" | 1040
| 0x0410
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16
| Вход 1
| rowspan="4" | Действие при двойном нажатии
| rowspan="4" | Смотрите формулу расчёта ниже<br />'''0'''
| rowspan="4" |
|-
| class="text-right" | 1041
| 0x0411
| Вход 2
|-
| class="text-right" | 1042
| 0x0412
| Вход 3
|-
| class="text-right" | 1043
| 0x0413
| Вход 4
|-
| class ="text-right" | 1060
| 0x0424
| rowspan="4" | Holding
| rowspan="4" | RW
| rowspan="4" | u16
| Вход 1
| rowspan="4" | Действие при коротком, а затем долгом нажатии
| rowspan="4" | Смотрите формулу расчёта ниже<br />'''0'''
| rowspan="4" |
|-
| class="text-right" | 1061
| 0x0425
| Вход 2
|-
| class="text-right" | 1062
| 0x0426
| Вход 3
|-
| class="text-right" | 1063
| 0x0427
| Вход 4
|}
 
Для настройки действий для типа нажатия нужно в соответствующий регистр записать число, составленное по следующему правилу:
 
'''0000''' 0000 0000 0000
 
Старшие 4 бита - тип действия:
* 0 - нет действия
* 0b0001 - установить coil регистр в 0
* 0b0010 - установить coil регистр в 1
* 0b0011 - переключить coil регистр 0 <-> 1
* 0b1001 - увеличить значение в holding регистре (уменьшается на 1 за каждое событие от кнопки)
* 0b1010 - уменьшить значение в holding регистре (увеличивается на 1 за каждое событие от кнопки)
* 0b1011 - уменьшить/увеличить значение в holding регистре. Направление меняется при каждом новом нажатии.
 
0000 '''0000 0000 0000'''
 
Младшие 12 бит - номер регистра '''без базового адреса'''. То есть для coil регистров адреса начинаются с нуля, и номер регистра совпадает с его адресом. Для регистров данных - адреса начинаются с 2000 - это базовый адрес. Из адреса holding регистра нужно вычесть 2000 и это значение (от 0 до 17) поместить в младшие 12 бит.
 
'''Value = (action << 12) | reg_number'''
 
Кнопки меняют значения modbus-регистров. Могут быть изменены значения только coil регистров включения (coil 0-10) и holding регистров данных (2000-2017).
 
== Общие регистры ==
Обратите внимание, что в этом устройстве изменился формат версионирования прошивки, изменения:
* Диапазон регистров «Модель устройства» расширен до 20 регистров
* Версия формируется согласно semver и имеет формат <code>MAJOR.MINOR.PATCH</code> с опциональным суффиксом <code>(-rc|+wb)SUFFIX</code>
*: Суффикс <code>-rc</code> означает, что прошивка предназначена для тестирования и может быть нестабильной. Хранится в регистре с отрицательным знаком
*: Суффикс <code>+wb</code> добавляется, когда к прошивке, зафиксированной в релизе, требуется выпустить фикс. Хранится в регистре с положительным знаком
* Цифры версии доступны по отдельности в формате u16 (для суффикса - i16), регистры 320-323
* Доступно число u32, содержащее комбинацию цифр версии и позволяющее за одно сравнение понять, увеличилась или уменьшилась версия прошивки
*: Число рассчитывается по формуле:
*: <syntaxhighlight>
if (SUFFIX >= 0) {
    SUFFIX = SUFFIX + 128;
} else {
    SUFFIX = -1 - SUFFIX;
}
VERSION = (MAJOR << 24) + (MINOR << 16) + (PATCH << 8) + SUFFIX;
</syntaxhighlight>
*: Число доступно для чтения в little-endian и big-endian форматах
*: Число для более свежей версии всегда будет больше, чем для предыдущей, в том числе, когда прошивка переходит из тестовой в стабильную
*: Таким образом обеспечивается корректное сравнение версий:
*:<syntaxhighlight lang="js">
1.2.3-rc1 < 1.2.3-rc10 < 1.2.3 < 1.2.3+wb1 < 1.2.3+wb10
</syntaxhighlight>
 
{{Wbincludes:Header Registers Universal|fw=true|no_description=true|header=Новые регистры для хранения версии прошивки}}
|-
| class ="text-right" | 200-219
| 0x00C8 - 0x00DB
| Input
| RO
| string
| Модель устройства
|
| rowspan="7" | 3.0.0
|-
| class ="text-right" | 320
| 0x0140
| rowspan="4" | Input
| rowspan="4" | RO
| rowspan="4" | u16 
| rowspan="4" | Версия прошивки в числовом формате
| MAJOR
|-
| class ="text-right" | 321
| 0x0141
| MINOR
|-
| class ="text-right" | 322
| 0x0142
| PATCH
|-
| class ="text-right" | 323
| 0x0143
| SUFFIX
|-
| class ="text-right" | 324-325
| 0x0144 - 0x0145
| Input
| RO
| u32
| Версия прошивки в числовом формате
|-
| class ="text-right" | 326-327
| 0x0146 - 0x0147
| Input
| RO
| u32
| Версия прошивки в Big Endian формате
|-
|}
{{Wbincludes:Common Modbus Registers}}

Версия 14:45, 5 июля 2022

Описание

Обратите внимание на версию прошивки устройства — таблицы регистров в разных версиях отличаются. На этой странице описаны регистры прошивки 3.x, описание регистров прошивки 1.0. Экспериментальная версия 2.0, не пошла в серию: Таблица регистров.

Про обновление прошивки читайте на странице устройства в разделе «Обновление прошивки и сброс настроек».

Условные обозначения
RO / RW Read only / Read/Write
Выделено жирным Значение регистра по умолчанию
xN Множитель, на который надо умножить число из регистра, чтобы получить значение в единицах измерения.

Не указан — считать равным 1

Регистр поддерживает отправку данных с помощью событий Быстрого Modbus.
FW Версия прошивки устройства, с которой появился регистр. Пусто — регистр был всегда.
Error: Значение при ошибке
Серый цвет ячейки Служебный регистр: назначение, формат и содержимое может измениться в новых версиях прошивки
Modbus-регистры устройства
Адрес Параметры регистра no_description Канал Описание Значения FW
Dec Hex Тип Доступ Формат
Состояние входов и счётчики нажатий
0 0x0000 Discrete Input RO bool Вход 1 Состояние

0 - разомкнут,
1 - замкнут

1 0x0001 Вход 2
2 0x0002 Вход 3
3 0x0003 Вход 4
32 0x0020 Input RO u16 Вход 1 Счётчик замыканий 0 − 65535
по кругу
33 0x0021 Вход 2
34 0x0022 Вход 3
35 0x0023 Вход 4
464 0x01D0 Input RO u16 Вход 1 Счётчик короткого нажатия 0 − 65535
по кругу
465 0x01D1 Вход 2
466 0x01D2 Вход 3
467 0x01D3 Вход 4
480 0x01E0 Input RO u16 Вход 1 Счётчик долгого нажатия 0 − 65535
по кругу
481 0x01E1 Вход 2
482 0x01E2 Вход 3
483 0x01E3 Вход 4
496 0x01F0 Input RO u16 Вход 1 Счётчик двойного нажатия 0 − 65535
по кругу
497 0x01F1 Вход 2
498 0x01F2 Вход 3
499 0x01F3 Вход 4
512 0x0200 Input RO u16 Вход 1 Счётчик короткого, а затем долгого нажатия 0 − 65535
по кругу
513 0x0201 Вход 2
514 0x0202 Вход 3
515 0x0203 Вход 4
Состояние выходов
0 0x0000 Coil RW bool Канал 1 Состояние при независимой работе

0 - выключен,
1 - включён

1 0x0001 Канал 2
2 0x0002 Канал 3
3 0x0003 Coil RW bool Канал 4 Состояние при независимой работе или в режиме RGB+W

0 - выключен,
1 - включён

4 0x0004 Coil RW bool Каналы 1 и 2 Состояние при параллельной работе

0 - выключен,
1 - включён

5 0x0005 Каналы 3 и 4
6 0x0006 Каналы 1, 2, 3, 4
7 0x0007 Coil RW bool Каналы 1 и 2 Состояние каналов при работе с CCT лентой

0 - выключен,
1 - включён

8 0x0008 Каналы 3 и 4
9 0x0009 Coil RW bool Каналы 1, 2, 3 Состояние каналов при работе с RGB лентой

0 - выключен,
1 - включён

10 0x000A Coil RW bool Каналы 1, 2, 3, 4 Непрерывная смена цвета RGB ленты

0 - выключен,
1 - включён

Управление каналами
2000 0x07D0 Holding RW u16 Канал 1 Яркость при независимой работе %
0 - 100 (50)
Error: 0xFFFF
2001 0x07D1 Канал 2
2002 0x07D2 Канал 3
2003 0x07D3 Holding RW u16 Канал 4 Яркость при независимой работе %
0 - 100 (50)
Error: 0xFFFF
2004 0x07D4 Holding RW u16 Каналы 1 и 2 Яркость при параллельной работе %
0 - 100 (50)
Error: 0xFFFF
2005 0x07D5 Каналы 3 и 4
2006 0x07D6 Каналы 1, 2, 3, 4
2007 0x07D7 Holding RW u16 Каналы 1 и 2 Цветовая температура CCT ленты %
0 - 100 (50)
* 0 - тёплый цвет
* 100 - холодный цвет
Error: 0xFFFF
2008 0x07D8 Holding RW u16 Каналы 1 и 2 Яркость CCT ленты %
0 - 100 (50)
Error: 0xFFFF
2009 0x07D9 Holding RW u16 Каналы 3 и 4 Цветовая температура CCT ленты %
0 - 100 (50)
* 0 - тёплый цвет
* 100 - холодный цвет
Error: 0xFFFF
2010 0x07DA Holding RW u16 Каналы 3 и 4 Яркость CCT ленты %
0 - 100 (50)
Error: 0xFFFF
2011 0x07DB Holding RW u16 Компонент R в цвете RGB ленты, RGB палитра 0 - 255 (127)
Error: 0xFFFF
2012 0x07DC Компонент G
2013 0x07DD Компонент B
2014 0x07DE Holding RW u16 Компонент H в цвете RGB ленты, HSV палитра °
0 - 360
Error: 0xFFFF
2015 0x07DF Компонент S %
0 - 100
Error: 0xFFFF
2016 0x07E0 Компонент V %
0 - 100 (50)
Error: 0xFFFF
2017 0x07E1 Holding RW u16 Скорость непрерывного изменения цвета RGB ленты, период увеличения Hue на 1 градус мс
3 - 10000 (30)
Error: 0xFFFF
Настройка выходов и прямое управление ШИМ выходов
70 0x0046 Holding RW u16 Канал 1 Минимальный ШИМ 0 – 2048 (6)
71 0x0047 Канал 2
72 0x0048 Канал 3
73 0x0049 Канал 4
80 0x0050 Holding RW u16 Канал 1 Максимальный ШИМ 0 – 2048
81 0x0051 Канал 2
82 0x0052 Канал 3
83 0x0053 Канал 4
90 0x005A Holding RW u16 Канал 1 Прямое управление 0 – 2048
91 0x005B Канал 2
92 0x005C Канал 3
93 0x005D Канал 4
Обработка типов нажатий
1100 0x044C Holding RW u16 Вход 1 Время длинного нажатия

Если нажатие длится больше указанного времени - считаем его длинным

мс
500 – 5000 (1000)
1101 0x044D Вход 2
1102 0x044E Вход 3
1103 0x044F Вход 4
1120 0x0460 Holding RW u16 Вход 1 Скорость изменения параметра при удержании кнопки

Чем меньше значение, тем быстрее изменяется параметр

мс/ед
5 – 500 (20)
1121 0x0461 Вход 2
1122 0x0462 Вход 3
1123 0x0463 Вход 4
1140 0x0474 Holding RW u16 Вход 1 Время ожидания второго нажатия

Если за указанное время второго нажатия не было - считаем нажатие одиночным. 0 - отключит все нажатия кроме короткого и длинного

мс
0 – 2000 (300)
1141 0x0475 Вход 2
1142 0x0476 Вход 3
1143 0x0477 Вход 4
1160 0x0488 Holding RW u16 Вход 1 Время подавления дребезга

Должно быть в 5-10 раз меньше, чем время ожидания второго нажатия. Если двойные нажатия отключены - любое значение

мс
5 – 200 (50)
1161 0x0489 Вход 2
1162 0x048A Вход 3
1163 0x048B Вход 4
Время изменения яркости, цветовой температуры и насыщенности цвета
3000 0x0BB8 Holding RW u16 Канал 1 Время увеличения яркости при независимой работе мс
0 – 30000 (100)
3001 0x0BB9 Канал 2
3002 0x0BBA Канал 3
3003 0x0BBB Канал 4
3004 0x0BBС Holding RW u16 Каналы 1 и 2 Время увеличения яркости при параллельной работе мс
0 – 30000 (100)
3005 0x0BBD Каналы 3 и 4
3006 0x0BBE Каналы 1, 2, 3, 4
3007 0x0BBF Holding RW u16 Каналы 1 и 2 Время увеличения цветовой температуры CCT ленты мс
0 – 30000 (100)
3008 0x0BC0 Holding RW u16 Каналы 1 и 2 Время увеличения яркости CCT ленты мс
0 – 30000 (100)
3009 0x0BC1 Holding RW u16 Каналы 3 и 4 Время увеличения цветовой температуры CCT ленты мс
0 – 30000 (100)
3010 0x0BC2 Holding RW u16 Каналы 3 и 4 Время увеличения яркости CCT ленты мс
0 – 30000 (100)
3011 0x0BC3 Holding RW u16 HSV-H Время увеличения цвета RGB ленты мс
0 – 30000 (100)
3012 0x0BC4 Holding RW u16 HSV-S Время увеличения насыщенности цвета RGB ленты мс
0 – 30000 (100)
3013 0x0BC5 Holding RW u16 HSV-V Время увеличения яркости RGB ленты мс
0 – 30000 (100)
3100 0x0C1C Holding RW u16 Канал 1 Время уменьшения яркости при независимой работе мс
0 – 30000 (100)
3101 0x0C1D Канал 2
3102 0x0C1E Канал 3
3103 0x0C1F Канал 4
3104 0x0C20 Holding RW u16 Каналы 1 и 2 Время уменьшения яркости при параллельной работе мс
0 – 30000 (100)
3105 0x0C21 Каналы 3 и 4
3106 0x0C22 Каналы 1, 2, 3, 4
3107 0x0C23 Holding RW u16 Каналы 1 и 2 Время уменьшения цветовой температуры CCT ленты мс
0 – 30000 (100)
3108 0x0C24 Holding RW u16 Каналы 1 и 2 Время уменьшения яркости CCT ленты мс
0 – 30000 (100)
3109 0x0C25 Holding RW u16 Каналы 3 и 4 Время уменьшения цветовой температуры CCT ленты мс
0 – 30000 (100)
3110 0x0C26 Holding RW u16 Каналы 3 и 4 Время уменьшения яркости CCT ленты мс
0 – 30000 (100)
3111 0x0C27 Holding RW u16 HSV-H Время уменьшения цвета RGB ленты мс
0 – 30000 (100)
3112 0x0C28 Holding RW u16 HSV-S Время уменьшения насыщенности цвета RGB ленты мс
0 – 30000 (100)
3113 0x0C29 Holding RW u16 HSV-V Время уменьшения яркости RGB ленты мс
0 – 30000 (100)
Общие для всех режимов настройки
9 0x0009 Holding RW u16 Настройка частоты ШИМ выходов 1 – 240 (8)
F = 24 кГц / значение
4000 0x0FA0 Holding RW u16 Настройка режима работы диммера Код режима можно взять в таблице режимов работы
256
Данные для диагностики
400 0x190 Input RO s16 Температура платы диммера. Используется для оценки перегрева и снижения максимальной мощности при перегреве. -55 .. +150 °C WB-LED
401 0x0191 Input RO u16 Разрешенная мощность диммера в процентах от максимальной. Если температура платы диммера ниже 70 °C, диммер работает на 100 % своей мощности. При повышении температуры выше 70 °C ограничивается максимальный ШИМ выходов и при достижении температуры 80 °C выходы полностью отключаются. 0 .. 100 % WB-LED
402 0x0192 Input RO u16 Состояние аппаратной защиты по току и КЗ. После сработки защиты выходы отключаются на 3 с и затем по очереди плавно включаются. 1 - защита сработала WB-LED


Регистры настройки действий
Адрес Параметры регистра no_description Канал Описание Значения FW
Dec Hex Тип Доступ Формат
Действия по типам нажатий
1000 0x03E8 Holding RW u16 Вход 1 Действие при коротком нажатии Смотрите формулу расчёта ниже
0
1001 0x03E9 Вход 2
1002 0x03EA Вход 3
1003 0x03EB Вход 4
1020 0x03FC Holding RW u16 Вход 1 Действие при долгом нажатии Смотрите формулу расчёта ниже
0
1021 0x03FD Вход 2
1022 0x03FE Вход 3
1023 0x03FF Вход 4
1040 0x0410 Holding RW u16 Вход 1 Действие при двойном нажатии Смотрите формулу расчёта ниже
0
1041 0x0411 Вход 2
1042 0x0412 Вход 3
1043 0x0413 Вход 4
1060 0x0424 Holding RW u16 Вход 1 Действие при коротком, а затем долгом нажатии Смотрите формулу расчёта ниже
0
1061 0x0425 Вход 2
1062 0x0426 Вход 3
1063 0x0427 Вход 4

Настройка действий для нажатий

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

0000 0000 0000 0000

Старшие 4 бита - тип действия:

  • 0 - нет действия
  • 0b0001 - установить coil регистр в 0
  • 0b0010 - установить coil регистр в 1
  • 0b0011 - переключить coil регистр 0 <-> 1
  • 0b0100 - установить все coil регистры в 0 (выключить все каналы). Доступно начиная с прошивки 3.3.0
  • 0b1001 - увеличить значение в holding регистре (увеличивается на 1 за каждое событие от кнопки)
  • 0b1010 - уменьшить значение в holding регистре (уменьшается на 1 за каждое событие от кнопки)
  • 0b1011 - уменьшить/увеличить значение в holding регистре. Направление меняется при каждом новом нажатии.

0000 0000 0000 0000

Младшие 12 бит - номер регистра без базового адреса. То есть для coil регистров адреса начинаются с нуля, и номер регистра совпадает с его адресом. Для регистров данных - адреса начинаются с 2000 - это базовый адрес. Из адреса holding регистра нужно вычесть 2000 и это значение (от 0 до 17) поместить в младшие 12 бит. Для действия "выключить все каналы" в младшие 12 бит нужно записать нули.

Value = (action << 12) | reg_number

Кнопки меняют значения modbus-регистров. Могут быть изменены значения только coil регистров включения (coil 0-10) и holding регистров данных (2000-2017).

полезный пример на портале