WB-MSW-ZIGBEE v.4 Sensor: различия между версиями

 
(не показано 50 промежуточных версий 4 участников)
Строка 1: Строка 1:
{{DISPLAYTITLE:Универсальный настенный датчик WB-MSW-ZIGBEE v.4}}
{{DISPLAYTITLE:Универсальный настенный датчик WB-MSW-ZIGBEE v.4}}
<!--{{PDF}}-->
<!--{{PDF}}-->
'''[https://wirenboard.com/ru/product/wb-msw-zigbee-v3/ Купить в интернет-магазине]'''
'''[https://wirenboard.com/product/wb-msw4-zigbee/ Купить в интернет-магазине]'''
[[Файл:WB-MSW3-front.JPG |300px|thumb|right| Универсальный датчик WB-MSW-ZIGBEE v.4, вид спереди]]
 
{{NewVersion
| old_name = WB-MSW-ZIGBEE v.3
| new_name = WB-MSW-ZIGBEE v.4
| old_page = WB-MSW_v.3 Zigbee_Sensor
}}
[[Файл:WB-MSW v.4 front.png |300px|thumb|right| Универсальный датчик WB-MSW v.4, вид спереди]]


== Назначение ==
== Назначение ==
{{Wbincludes:WB-MSW v.3 Functions}}
{{Wbincludes:WB-MSW v.3 Functions}}


Устройство работает по протоколу ZigBee.
Устройство работает по беспроводному протоколу ZigBee или через RS-485 по протоколу Modbus RTU — этом случае, смотрите документацию на проводную версию датчика [[WB-MSW v.4 Modbus Sensor]].
 
== Отличие от предыдущей версии ==
{{Wbincludes:WB-MSW v.4 Difference v.3}}
== Меры безопасности ==
{{Wbincludes:Safety|low_voltage=true}}


== Модификации ==
== Модификации ==
Строка 39: Строка 50:
|Количество команд
|Количество команд
|
|
32
80
|-
|-
|Длительность команд
|Длительность команд
| Максимальная длина команды — 508 регистров, плюс два регистра — признак окончания команды.
| Максимальная длина команды — до 1000 символов.  
Каждый регистр кодирует длительность высокого или низкого уровня сигнала (последовательно) в микросекундах.
Каждый регистр кодирует длительность высокого или низкого уровня сигнала (последовательно) в микросекундах.
|-
|-
Строка 69: Строка 80:
|-
|-
|Zigbee
|Zigbee
|полная поддержка в SprutHub и zigbee2mqtt с версии 1.24.0 ([https://www.zigbee2mqtt.io/devices/WB-MSW-ZIGBEE_v.3.html страница устройства на сайте проекта])
| поддержка в SprutHub и zigbee2mqtt 1.32.2 и новее
|-
|RS-485, Modbus
| проводной режим, выбирается [[#Выбор режима работы | переключателем на плате]] устройства
|-
|-
|Готовность к работе после подачи питания
|Готовность к работе после подачи питания
Строка 75: Строка 89:
|-
|-
{{Wbincludes:Operating conditions}}
{{Wbincludes:Operating conditions}}
{{Wbincludes:Operating conditions CO2}}
{{Wbincludes:WB-MSW v.4 Operating conditions CO2}}
|-
|-
! colspan="2" |Габариты
! colspan="2" |Габариты
|-
|-
| Габариты
| Габариты
| 83 x 83 x 21 мм
| 80 x 80 x 23.6 мм (с линзой)
{{Wbincludes:Weight}} 90 г
{{Wbincludes:Weight}} 90 г
|}
|}
Строка 89: Строка 103:


Модуль автоматически корректирует показания температуры и влажности, учитывая базовый нагрев платы от микросхемы питания (0.3 °C), а также нагрев от установленных датчиков СО2 (0.31 °C) и VOC (0.14 °C).
Модуль автоматически корректирует показания температуры и влажности, учитывая базовый нагрев платы от микросхемы питания (0.3 °C), а также нагрев от установленных датчиков СО2 (0.31 °C) и VOC (0.14 °C).
В датчике есть нагреватель, который позволят высушивать конденсат, образующийся при повышенной влажности. Нагреватель включается автоматически при влажности более 95 %, работает 1 секунду и отключается.


=== Датчик движения ===   
=== Датчик движения ===   
Строка 100: Строка 116:
=== Эмуляция ИК-пультов ===  
=== Эмуляция ИК-пультов ===  
==== Описание ====
==== Описание ====
В WB-MSW v.3 под линзой расположены ИК-приёмник для обучения и 8 ИК-светодиодов.  
В WB-MSW v.4 под линзой расположены ИК-приёмник для обучения и 8 ИК-светодиодов.  


{{Wbincludes:WB-MSW v.3 IR universal text}}
{{Wbincludes:WB-MSW v.3 IR universal text}}
Строка 128: Строка 144:


=== Датчик качества воздуха (VOC) ===  
=== Датчик качества воздуха (VOC) ===  
{{Wbincludes:VOC WB-MSW v.4}}
==== Зачем измерять VOC ====
{{Wbincludes:VOC}}
{{Wbincludes:VOC}}


=== Датчик CO2 ===
=== Датчик CO2 ===
{{Wbincludes:WB-MSW v.4 CO2}}
{{Wbincludes:WB-MSW v.4 CO2}}
<!--
====Принудительная калибровка====
В большинстве случаев отключение автокалибровки или принудительная калибровка не требуются — датчик показывает правильные значения без дополнительных манипуляций, но иногда без неё не обойтись:
# Нужно срочно откалибровать датчик и некогда ждать, пока сработает автоматическая калибровка.
# Датчик находится в помещении, которое плохо проветривается и уровень CO2 никогда не достигает 400 ppm. В этом случае не забудьте отключить автоматическую калибровку.


Суть принудительной калибровки заключается в том, что мы помещаем датчик в среду, где уровень CO2 равен атмосферному (400 ppm) и устанавливаем это значение как начало отсчёта. Чтобы уменьшить ошибки при измерении CO2, калибруйте датчик при комнатной температуре.
====Автокалибровка====
{{Wbincludes:WB-MSW v.4 CO2 Autocalibration}}


Поместите работающий датчик в хорошо проветренное помещение и подождите 20 минут. Затем выполните следующие шаги:
# Если нужно отключить автоматическую калибровку — установите параметр '''co2_autocalibration''' в значение '''OFF'''.
# Включите параметр '''co2_manual_calibration''', а через секунду выключите.
# В течение пяти минут измеренное значение CO2 станет около 400 ppm. Калибровка завершена.
Способы изменения параметров смотрите в разделе [[#Настройка |Настройка]].
-->
==== Зачем нужно измерять CO2?====
==== Зачем нужно измерять CO2?====
{{Wbincludes:WB-MSW v.3 CO2 why do I need to measure}}
{{Wbincludes:WB-MSW v.3 CO2 why do I need to measure}}
Строка 152: Строка 159:
== Монтаж == <!--T:24-->
== Монтаж == <!--T:24-->
=== Выбор режима работы ===
=== Выбор режима работы ===
[[Image: WB-MSW v.3 Zigbee Change Mode.jpg  |250px|thumb|right| Кнопка сопряжения и переключатель режимов]]
[[Image: WB-MSW v.4 Zigbee Change Mode.jpg  |250px|thumb|right| Кнопка сопряжения и переключатель режимов]]
{{Wbincludes: Wireless Device Change Mode}} Однако, радиомодуль может быть использован, как роутер для расширения покрытия сети.
{{Wbincludes: Wireless Device Change Mode}} Однако, радиомодуль может быть использован, как роутер для расширения покрытия сети.
Переключатель режимов появился в ревизии 2.1, в более ранних ревизиях для использования RS-485 разорвите сопряжение с Zigbee-координатором.


=== Подключение ===
=== Подключение ===
[[Файл:WB-MSW v.3 Wireles Installation.png |250px|thumb|right| Подключение питания к датчику WB-MSW v.3 Zigbee]]
[[Файл:WB-MSW v.3 Wireles Installation.png |250px|thumb|right| Подключение питания к датчику WB-MSW v.3 Zigbee]]
Подключите питание к клеммам V+ и GND датчика, используйте комплектный блок питания, или любой с напряжением 9 В – 28 В постоянного тока.
{{Wbincludes:Wireless Mount}}
 
Перед подключением датчика к контроллеру Wiren Board, [[Zigbee | настройте контроллер]] для работы по протоколу Zigbee.
 
Теперь нужно спарить датчик и Zigbee-координатор (контроллер):
# Включите в настройках координатора режим спаривания устройств (Pairing).
# Проведите магнитом по боковой части корпуса датчика со стороны светодиода Status. Зелёный индикатор в отверстии должен замигать.
# Подождите, пока датчик не появится в списке устройств, известных координатору.
# Отключите режим спаривания устройств (Pairing) в настройках координатора.
 
При необходимости удаления датчика из сети Zigbee отключите режим спаривания устройств, после чего приложите магнит к боковой части корпуса датчика со стороны светодиода Status, задержите на 5 секунд и уберите. Зелёный индикатор в отверстии должен перестать мигать.


Вместо прикладывания магнита можно разобрать корпус датчика и нажимать на кнопку сопряжения на радиомодуле.
{{Wbincludes:WB-MSW Zigbee Pairing}}


=== Монтаж на стену ===
=== Монтаж на стену ===
{{Wbincludes:WB-MSW v.4 Mounting}}
{{Wbincludes:WB-MSW v.4 Mounting}}
Вы можете подождать 7 дней без отключения питания, пока функция автокалибровки не приведёт показания датчика в норму или подключить датчик через RS-485 и выполнить принудительную калибровку для сенсора CM-1106.
=== Как открыть корпус датчика ===
=== Как открыть корпус датчика ===
{{Wbincludes:WB-MSW v.4 How To Disassemble}}
{{Wbincludes:WB-MSW v.4 How To Disassemble}}
Строка 180: Строка 177:
== Представление в контроллере ==
== Представление в контроллере ==
=== Программное обеспечение ===
=== Программное обеспечение ===
Датчик можно использовать на контроллере Wiren Board и других устройствах со SprutHub, zigbee2mqtt пока не поддерживается.  
{{SupportedSinceRelease
| release = wb-2310
| deb = zigbee2mqtt
| version = 1.32.2
|content=
Датчик можно использовать на контроллере Wiren Board и других устройствах со SprutHub или zigbee2mqtt 1.32.2.  


<!--
Подробнее о поддержке Zigbee-устройств на контроллерах Wiren Board, читайте в статье [[Zigbee]].
Подробнее о поддержке Zigbee-устройств на контроллерах Wiren Board, читайте в статье [[Zigbee]].
}}


<gallery mode="packed" heights="250px" caption="Представление датчика в разном программном обеспечении">
<gallery mode="packed" heights="250px" caption="Представление датчика в разном программном обеспечении">
Строка 222: Строка 224:


Про управление ИК-приёмопередатчиком и настройку параметров читайте в разделе [[#Настройка | Настройка]].
Про управление ИК-приёмопередатчиком и настройку параметров читайте в разделе [[#Настройка | Настройка]].
-->


== Настройка ==
== Настройка ==
=== Как настраивать ===
=== Как настраивать ===
Датчик можно настраивать в SprutHub, поддержки в zigbee2mqtt пока нет.
<!--
Вы можете настроить устройство [[Zigbee#Веб-интерфейс (Frontend)|веб-интерфейсе]] zigbee2mqtt, а также через запись JSON-команд в mqtt-топики устройства с помощью [[MQTT Explorer]] или [[wb-rules]]. Про настройку датчика в SprutHub, читайте в его документации.
Вы можете настроить устройство [[Zigbee#Веб-интерфейс (Frontend)|веб-интерфейсе]] zigbee2mqtt, а также через запись JSON-команд в mqtt-топики устройства с помощью [[MQTT Explorer]] или [[wb-rules]]. Про настройку датчика в SprutHub, читайте в его документации.


Строка 295: Строка 294:
| humidity || Влажность ||  msRelativeHumidity || measuredValue || 10|| 3600|| 100
| humidity || Влажность ||  msRelativeHumidity || measuredValue || 10|| 3600|| 100
|-
|-
| occupancy || Флаг наличия движения ||  msOccupancySensing || occupancy || 0|| 3600|| 0
| occupancy || Флаг наличия движения ||  msOccupancySensing || occupancy || 10|| 60|| 0
|-
|-
| occupancy_level || Уровень движения ||  msOccupancySensing || sprutOccupancyLevel || 10|| 60|| 5
| occupancy_level || Уровень движения ||  msOccupancySensing || sprutOccupancyLevel || 10|| 60|| 20
|-
|-
| noise || Уровень шума ||  sprutNoise || noise || 10|| 60|| 5
| noise || Уровень шума ||  sprutNoise || noise || 10|| 60|| 5
|-
| co2 || Уровень CO2 ||  msCO2 || measuredValue || 10|| 3600|| 10
|-
| voc || Уровень VOC ||  sprutVoc || voc || 10|| 3600|| 10
|-
|-
|}
|}


=== Параметры датчиков ===
=== Параметры датчиков ===
При настройке через MQTT, сформируйте JSON-запрос по образцу и отправьте его в mqtt-топик:
Для настройки параметров через MQTT, отправьте устройству подготовленный JSON-запрос в топик <code>zigbee2mqtt/FRIENDLY_NAME/set</code>, где <code>FRIENDLY_NAME</code> — идентификатор устройства.
* чтение <code>zigbee2mqtt/FRIENDLY_NAME/get</code> ответ будет опубликован в топике устройства и отобразится в веб-интерфейсе контроллера в карточке устройства на вкладке Devices.
* запись <code>zigbee2mqtt/FRIENDLY_NAME/set</code>
 
<code>FRIENDLY_NAME</code> — идентификатор устройства.
 
==== Таймауты детекторов движения и шума ====
==== Таймауты детекторов движения и шума ====


Строка 326: Строка 324:


==== Прочие параметры ====
==== Прочие параметры ====
Для настройки параметров, указанных в таблице «Параметры», нужно отправить устройству подготовленный JSON-запрос.
Чтобы прочитать параметр, заполните в шаблоне ниже ''cluster'' и ''attributes'', значениями которые можно взять из таблицы:
 
Для чтения параметра заполните в шаблоне ниже ''cluster'' и ''attributes'', значениями которые можно взять из таблицы:
<syntaxhighlight lang="js">
<syntaxhighlight lang="js">
{
{
Строка 341: Строка 337:
</syntaxhighlight>
</syntaxhighlight>


Для записи параметра заполните в шаблоне ниже ''cluster'' и ''payload'', значениями которые можно взять из таблицы и укажите новое значение вместо ''NEW_VALUE'':
Чтобы записать новое значение параметра, заполните в шаблоне ниже ''cluster'' и ''payload'', значениями из таблицы ниже и укажите новое значение вместо ''NEW_VALUE'':
<syntaxhighlight lang="js">
<syntaxhighlight lang="js">
{
{
Строка 354: Строка 350:
</syntaxhighlight>
</syntaxhighlight>


Например, включим с помощью wb-rules принудительную калибровку датчика CO2 в устройстве с адресом ''0x842e14fffe8b184e'':
Например, установим с помощью wb-rules минимальный уровень шума в устройстве с адресом ''0x842e14fffe8b184e'':
<syntaxhighlight lang="js">
<syntaxhighlight lang="js">
message = {  
message = {  
   "write": {
   "write": {
     "cluster": "msCO2",
     "cluster": "msOccupancySensing",
     "options": {"manufacturerCode":26214},
     "options": {"manufacturerCode":26214},
     "payload": {
     "payload": {
       "sprutCO2Calibration": 1
       "sprutOccupancySensitivity": 100
     }
     }
   }
   }
Строка 379: Строка 375:
| occupancy_sensitivity || Чувствительность датчика движения. Если датчик срабатывает при малейшем движении, уменьшите чувствительность, в противном случае увеличьте ее. ||  msOccupancySensing || sprutOccupancySensitivity || 0 – 2000|| 50
| occupancy_sensitivity || Чувствительность датчика движения. Если датчик срабатывает при малейшем движении, уменьшите чувствительность, в противном случае увеличьте ее. ||  msOccupancySensing || sprutOccupancySensitivity || 0 – 2000|| 50
|-
|-
| temperature_offset|| Пользовательская компенсация измеренного значения температуры в °C. Указанное значение вычитается из измеренного. Доступна только запись.|| msTemperatureMeasurement|| sprutTemperatureOffset|| −10…+10|| 0
| temperature_offset || Температурная компенсация,вычитается из измеренного значения. '''Только для записи.''' || msTemperatureMeasurement || sprutTemperatureOffset || −10 … 10|| 0
|-
| co2_autocalibration|| Автоматическая калибровка датчика CO2 на атмосферный уровень. Только для сенсора MH-Z19B.|| msCO2|| sprutCO2AutoCalibration|| 0 или 1|| 1
|-
| co2_manual_calibration|| Принудительная калибровка датчика CO2 на атмосферный уровень. Только для сенсора MH-Z19B.
|-
|-
|}
|}
Строка 396: Строка 388:
Сигналы, записанные в постоянную память (ROM) сохраняются после отключения питания.
Сигналы, записанные в постоянную память (ROM) сохраняются после отключения питания.


Доступные команды, ''rom'' — номера ячеек памяти от 0 до 31:
Доступные команды, ''rom'' — номера ячеек памяти от 0 до 79:
* Начать обучение:
* Начать обучение:
*:<syntaxhighlight lang="js">
*:<syntaxhighlight lang="js">
Строка 462: Строка 454:
-->
-->
== Обновление прошивки ==
== Обновление прошивки ==
{{note|note| Файлы прошивок для обновления через zigbee2mqtt пока недоступны, следите за новостями.}}
<!--
Устройство поддерживает обновление прошивок «по воздуху» (OTA). Здесь мы рассмотрим обновление при использовании датчика с zigbee2mqtt. Если вы используете SprutHub, смотрите инструкцию по обновлению в его документации.
Устройство поддерживает обновление прошивок «по воздуху» (OTA). Здесь мы рассмотрим обновление при использовании датчика с zigbee2mqtt. Если вы используете SprutHub, смотрите инструкцию по обновлению в его документации.
=== Из веб-интерфейса zigbee2mqtt ===
=== Из веб-интерфейса zigbee2mqtt ===
[[Image: zigbee2mqtt WebUI-OTA.png |300px|thumb|right| Раздел OTA в веб-интерфейсе zigbee2mqtt ]]
[[Image: WB-MSW-ZIGBEE v.4 zigbee2mqtt Web OTA.png |300px|thumb|right| Раздел OTA в веб-интерфейсе zigbee2mqtt ]]
Обновить прошивку можно через веб-интерфейс zigbee2mqtt:
Обновить прошивку можно через веб-интерфейс zigbee2mqtt:
# Включите [[Zigbee#Веб-интерфейс (Frontend) | веб-интерфейс zigbee2mqtt]] и перейдите в него.
# Включите [[Zigbee#Веб-интерфейс (Frontend) | веб-интерфейс zigbee2mqtt]] и перейдите в него.
Строка 478: Строка 468:
=== Через MQTT ===
=== Через MQTT ===
Если вы используете zigbee2mqtt, но по каким-то причинам не хотите обновлять прошивку устройства через веб-интерфейс, вы можете это сделать с помощью отправки JSON-сообщений в MQTT с помощью [[MQTT Explorer]]. Название топиков и примеры JSON-команд, смотрите в инструкции [https://www.zigbee2mqtt.io/guide/usage/ota_updates.html#automatic-checking-for-available-updates OTA updates].
Если вы используете zigbee2mqtt, но по каким-то причинам не хотите обновлять прошивку устройства через веб-интерфейс, вы можете это сделать с помощью отправки JSON-сообщений в MQTT с помощью [[MQTT Explorer]]. Название топиков и примеры JSON-команд, смотрите в инструкции [https://www.zigbee2mqtt.io/guide/usage/ota_updates.html#automatic-checking-for-available-updates OTA updates].
-->


==Примеры правил==
==Примеры правил==
Строка 484: Строка 473:


==Известные неисправности==
==Известные неисправности==
{{Wbincludes:WB-MSW v.4 Errata}}
[[WB-MSW-ZIGBEE v.4: Errata | Аппаратные ошибки/особенности WB-MSW-ZIGBEE v.4]], найденные при эксплуатации устройства.


== Ревизии устройства ==
== Ревизии устройства ==
{{Wbincludes:Revision}}
{{Wbincludes:Revision}}
|-
|-
|5.4
|v5.4A/Z - ...
|04.2024 - ...
|
|
* На базе MSW ревизии 5.4
* Модуль ZigBee заменен с MGM210PA32JIA2 на ZSU
|-
|5.3
|v5.3C/Z, v5.3C/Z/2, v5.3C/Z/3, v5.3C/Z/4
|11.2023 - 04.2024
|
|
* На базе MSW ревизии 5.3
|-
|5.2
|v5.2B/Z3/P
|08.2023
|
|
* С этой партии датчики VOC на ENS160, прошивка 4.30.0
|-
|-
|5.2
|v5.2B/Z1, v5.2B/Z2, v5.2B/Z3
|06.2023 - 08.2023
|
|
 
* Первая версия, на базе MSW ревизии 5.2
|-
 
|-
|-
|}
|}
Строка 501: Строка 508:
== Изображения и чертежи устройства ==
== Изображения и чертежи устройства ==
{{Wbincludes:WB-MSW v.4 Images}}
{{Wbincludes:WB-MSW v.4 Images}}
<gallery mode="packed" heights="250px">
<gallery mode="packed" heights="250px">
Image: WB-MSW v.4 Zigbee side.png | Универсальный датчикWB-MSW-ZIGBEE v.4, <br>вид сзади
Image: WB-MSW v.4 Zigbee side.png | Универсальный датчикWB-MSW-ZIGBEE v.4, <br>вид сзади
Image: WB-MSW v.4 Zigbee PCB.png  | Плата WB-MSW-ZIGBEE v.4
Image: WB-MSW v.4 Zigbee PCB.png  | Плата WB-MSW-ZIGBEE v.4
</gallery>
</gallery>
wb_editors
64

правки