Универсальный настенный датчик WB-MSW-ZIGBEE v.4

From Wiren Board
This is the approved revision of this page, as well as being the most recent.


Купить в интернет-магазине

Эта страница описывает новое устройство WB-MSW-ZIGBEE v.4, описание предыдущей версии WB-MSW-ZIGBEE v.3.

Страница описывает последнюю ревизию устройства с последней stable-прошивкой. Если прошивка вашего устройства старая, обновите ее по возможности (см. Обновление прошивки).
Универсальный датчик WB-MSW v.4, вид спереди

Назначение

Комбинированный цифровой датчик температуры, влажности, освещенности, движения, уровня шума, концентрации CO2 и летучих органических соединений. Оснащён ИК приемопередатчиком.

Предназначен для контроля климата в жилых и офисных помещениях, для бытового использования. Датчик выполнен в пластиковом корпусе и предназначен для крепления на стену.

Является средством измерений. Номер в Госреестре средств измерений 87443-22.


Устройство работает по беспроводному протоколу ZigBee или через RS-485 по протоколу Modbus RTU — в этом случае, смотрите документацию на проводную версию датчика WB-MSW v.4 Modbus Sensor.

Отличие от предыдущей версии

Отличия от WB-MSW v.3:

  • корпус тоньше и меньше;
  • другая форма и расположение крепёжных отверстий;
  • имеется заглушка на отверстии под кабель-канал.

Модификации

В датчик WB-MSW-ZIGBEE по умолчанию не включены сенсоры CO2 и VOC, их нужно выбрать при покупке отдельно.

Если какой-то из сенсоров не установлен, то вместо показаний этого сенсора будут передаваться нули или N/A. Это не влияет на работу датчика в целом.

Корпус

Датчик может поставляться в стандартном белом корпусе или в чёрном корпусе с чёрной линзой (опция выбирается при заказе).

Внимание! Чёрная линза плохо пропускает обычный видимый свет и ближний инфракрасный свет, используемый для дистанционного управления устройствами, поэтому, заказывая датчик в чёрном корпусе, обратите внимание:

  • показания освещённости в корпусе с чёрной линзой будут занижены в 5 – 7 раз;
  • дальность действия ИК-передатчиков снизится до 2,5 – 3 раз (до 3 – 4 метров в прямой видимости);
  • яркость светодиодных индикаторов также существенно снизится (вплоть до невозможности считывания на свету).

Если не требуются датчик движения, передача ИК-команд, светодиодные индикаторы и измерение уровня освещённости, можно заказать датчик в корпусе с плоской крышкой (без линзы) – опция выбирается при заказе.

Кроме того, можно отдельно приобрести любой из четырёх видов корпусов: белого цвета с линзой, белого цвета с плоской крышкой, чёрного цвета с линзой, чёрного цвета с плоской крышкой – и переставить плату датчика в новый корпус.

Все корпуса MSW v.4 имеют одинаковое крепление крышки. Можно, например, установить белую крышку на чёрное основание.

Если нужен другой цвет датчика, то корпуса легко поддаются покраске, см. Покраска корпуса MSW

Технические характеристики

Измеряемая величина Диапазон Погрешность Готовность к работе

после подачи питания

Концентрация CO2 400 – 10000 ppm (миллионных долей) 100 ppm + 5% от измеренного значения 3 мин,

автокалибровка каждые 7 дн.

Температура −40 °С – +80 °С ±0.3 °С (в диапазоне 0 – 70 °C)

±0.5 °С (в диапазоне −40 – 0 °C и 70 – 80 °C)

1 сек

постоянная времени (выравнивание

с окружающим воздухом) ~4 мин

Относительная влажность 5 – 95 % ±3 % 1 сек
Уровень шума (звуковое давление) 39 – 90 дБА ±2 дБ 5 сек
Освещённость¹ 0 – 145 000 лк ±10 % 1 сек
Качество воздуха

(концентрация летучих органических соединений — VOC)

0 ppm – 60000 ppb (миллиардных долей) по этанолу ±15 % (тип)

±40 % (макс)

6 мин

(самокалибровка спустя 12 ч)

Датчик движения (недоступен в версии с LoRa) До 8 м, 120 градусов 8 сек
Передача ИК-команд² До 10 м (зависит от окружающих условий) 1 сек

Примечания:

¹ Характеристики освещённости указаны для датчиков в стандартном корпусе с белой линзой. Для датчиков с чёрной линзой показания не будут соответствовать реальной освещённости – будут ниже в 5 – 7 раз; погрешность не нормируется.

² Примерная дальность передачи ИК-команд указана для датчиков в стандартном корпусе с белой линзой. Для датчиков с чёрной линзой дальность действия ИК-передатчика уменьшается в 2,5 – 3 раза (до 3 – 4 м).

Параметр Значение
Питание
Напряжение питания 9 В – 28 В постоянного тока
Потребляемая мощность
  • 0.5 Вт;
  • пиковая при измерении CO2 до 1.6 Вт;
  • пиковая при измерении CO2 и передаче ИК сигнала до 4 Вт.

Пожалуйста, выбирайте кабель и блок питания с учётом падения напряжения на кабеле при пиковом потреблении устройств.

ИК-команды
Количество запоминаемых команд

80

Длительность команд Максимальная длина команды — до 1000 символов.

Каждый регистр кодирует длительность высокого или низкого уровня сигнала (последовательно) в микросекундах.

Клеммники и сечение проводов
Рекомендуемое сечение провода с НШВИ, мм2 0.35 – 1 мм2 — одинарные, 0.35 – 0.5 мм2 — сдвоенное обжатие,
Длина стандартной втулки НШВИ, мм 8
Момент затяжки винтов, Н∙м 0.2
Индикация
Светодиодная, звуковая Подробнее в разделе Индикация
Управление
Zigbee поддержка в SprutHub и zigbee2mqtt 1.32.2 и новее
RS-485, Modbus проводной режим, выбирается переключателем на плате устройства
Готовность к работе после подачи питания ~2 c
Условия эксплуатации
Температура воздуха От −40 до +80 °С
Относительная влажность До 95 %, без конденсации влаги
Климатическое исполнение по ГОСТ 15150-69 O2.1*
Гарантийный срок 2 года
Срок службы 5 лет
Температура воздуха при установленном датчике CO₂ От -10 до +50 °C
Габариты
Габариты 80 x 80 x 23.6 мм (с линзой)
Монтаж
  • на стену, расстояние между отверстиями 60 мм;
  • на установочную коробку (подрозетник) 68 мм (EU type), круглый.
Масса (с коробкой) 90 г

Общий принцип работы

Датчик TH

В датчике используется сенсор температуры и влажности (TH) Sensirion SHT40, который распаян на плате модуля.

Модуль автоматически корректирует показания температуры и влажности, учитывая базовый нагрев платы от микросхемы питания (0.3 °C), а также нагрев от установленных датчиков СО2 (0.31 °C) и VOC (0.14 °C). Значения до корректировки можно посмотреть в регистрах 284 и 285. Доступна пользовательская температурная компенсация, которую можно записать в регистр 245. Может быть полезно, если вы монтируете датчик близко к потолку и хотите скорректировать значения.

В датчике есть нагреватель, который позволят высушивать конденсат, образующийся при повышенной влажности. Нагреватель включается автоматически при влажности более 95 %, работает 1 секунду и отключается. Если вам нужно высушить датчик датчика при других значениях влажности, запишите 1 в регистр Включение подогрева (heater) в микросхеме сенсора температуры и влажности (coil-регистр 2).

Режим очистки датчика Доступно c версии прошивки 4.35.0 Чувствительный элемент датчика может подвергаться загрязнению парами органических веществ, что приводит к увеличению погрешности датчика. Например, это возможно при проведении лакокрасочных работ поблизости. Если вы заподозрили, что датчик начал показывать некорректные значения влажности, рекомендуется выполнить процедуру очистки. Режим включает встроенный в датчик нагреватель в течение 1 часа, поддерживая необходимую температуру нагрева около 110°C, что удаляет адсорбированные в чувствительном элементе посторонние молекулы. Процедуру следует проводить при температуре окружающей среды от 15°C до 40°C (при температуре выше 50°C режим не включится). Во время очистки нормальное функционирование устройства прекращается - считываются только сырые значения температуры и влажности для контроля процесса.

Важно: По информации производителя датчика, срок службы нагревателя ограничен. Включайте режим очистки только тогда, когда это действительно необходимо.

Для включения режима выберите соответствующий переключатель в веб-интерфейсе устройства либо запишите 1 в coil-регистр 8. Режим отключится автоматически через 1 час. Вы можете также отключить его вручную в веб-интерфейсе либо записью 0 в coil-регистр 8. Оставшееся время очистки в секундах представлено в веб-интерфейсе и в holding-регистре 365.

Датчик движения

PIR-датчик движения обнаруживает перемещение объектов на расстоянии до 8 м с углом обзора около 100-120 градусов. Датчик выдает два параметра:

  • Current motion — это текущее значение интенсивности движения, усредненное за несколько секунд.
  • Max Motion — максимальное значение регистра Current motion за последние N секунд (задается в регистре 282, по умолчанию 10 секунд)

Если датчик движения опрашивается быстро (несколько раз в секунду), можно использовать Current motion для обнаружения движения с хорошим временным разрешением. Но если датчик опрашивается редко (например, раз в 30 секунд, в большой сети), то чтобы не пропустить быстрое однократное движение, используйте значение Max Motion и установите ширину временного окна N больше, чем период опроса датчика.

Значения регистров Current motion и Max Motion можно получать событиями через Быстрый Modbus — минимум задержек при любой загруженности шины. Читайте подробнее в разделе Работа по Modbus.

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

Взаимосвязь параметров датчика движения, голубые отрезки — периоды интенсивного движения. Окно для Max Motion (N) - 10 секунд

Доступно c версии прошивки 4.37.0 Постоянную времени RC-фильтра датчика движения можно настроить. Она управляет скоростью затухания текущего значения Current motion. Чем больше постоянная времени, тем медленнее затухание и сильнее сглаживание, а чем она меньше, тем быстрее затухание, но более шумный сигнал.

Светодиодные индикаторы и зуммер

Светодиодные индикаторы расположены на одной плате с датчиком освещённости и ИК-передатчиком, поэтому, если вы не выбирали одну из этих опций, индикаторов у вас не будет. Зуммер находится на плате и доступен во всех комплектациях.

Работа светодиодного индикатора

Также во всех комплектациях доступен зелёный индикатор обмена данными, который виден в технологическом отверстии на нижней части корпуса.

Пользователь может управлять:

  • Двумя яркими светодиодами — зеленым и красным, которые подсвечивают линзу на корпусе. Индикаторы могут только мигать.
  • Звуковым индикатором (зуммер, buzzer).

Индикаторы позволяют обеспечить обратную связь при монтаже и эксплуатации. Например, датчик может мигать красным при превышении оптимальной концентрации углекислого газа (примеры правил). При монтаже большого количества датчиков индикаторы (или бипер) помогут определить, к какому конкретно датчику вы сейчас обращаетесь.

Про управление светодиодными индикаторами и зуммером, читайте в разделе Управление.

Эмуляция ИК-пультов

О принципах отправки ИК команд при подключении датчика по zigbee, читайте в разделе ИК-команды.

Под линзой устройства расположены ИК-приёмник для обучения и 8 ИК-светодиодов.

Подробное описание использования модуля, а также карта регистров, описаны в статье Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MSW, WB-MIR.

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

Обычно используется для управления кондиционерами и тепловыми завесами. Учтите, что ИК-команды отправляются всем устройствам в зоне видимости, поэтому передать разные команды на одинаковые устройства не получится. Для индивидуального управления каждым кондиционером используйте модуль WB-MIR v2 / WB-MIR v3.

Датчик освещенности

Датчик освещенности имеет фильтр, который повторяет кривую спектральной чувствительности человеческого глаза. Это позволяет измерять освещенность в люксах, что позволяет обеспечить контроль освещенности в соответствии с нормами СанПиН.

Максимальное время реакции на резкое изменение освещённости — 1.5 c.

Датчик шума

В модуле используется микрофон с усилителем и фильтрами для коррекции по шкале А с учётом особенностей восприятия человеческим ухом звуков разных частот. Шум измеряется в акустических децибелах (дБА), что позволяет контролировать шумовую обстановку в соответствии со стандартами и санитарными нормами.

Датчик качества воздуха (VOC)

Версии до августа 2023 года

Измерение VOC сделано на отдельном модуле с сенсором Sensiron SGPC3 (datasheet), устанавливаемом по стрелочке в специальный разъём.

Сенсор готов к работе через 6 минут после включения. До этого в регистре качества воздуха находится значение, сигнализирующее об ошибке (0xFFFF).

Используемый нами сенсор VOC содержит встроенный алгоритм самокалибровки, который срабатывает каждые 12 часов. Однако, из-за особенностей алгоритма, синхронизация показаний с двух датчиков Wiren Board может происходить значительно дольше. Не отключайте питание датчика — это сбросит значения калибровки и процесс стабилизации значений начнётся сначала.

Версии с августа 2023 года

Измерение VOC сделано на отдельном модуле с сенсором ScioSense ENS160 (datasheet), устанавливаемом в специальный разъём на плате датчика WB-MSW. Маркировка модуля VOC sensor v1.5.

Сенсор отдаёт значение VOC в ppb, а также «Индекс качества воздуха (AQI)» в виде числа от 1 до 5. Индекс качества воздуха удобно использовать в правилах, вместо анализа диапазона значений.

Показания с сенсора будут доступны сразу после включения, но датчик довольно долго выходит на рабочий режим — после первого включения датчику нужно непрерывно поработать как минимум 24 часа для самокалибровки. Однако, из-за особенностей алгоритма самокалибровки, синхронизация показаний с двух датчиков Wiren Board может происходить значительно дольше. Не отключайте питание датчика — это сбросит значения калибровки и процесс стабилизации значений начнётся сначала.

Зачем измерять VOC

Летучие органические вещества (ЛОВ, VOC) — это легкоиспаряющиеся вещества, выделяющиеся в атмосферу в виде газов. ЛОВ в бытовых помещениях выделяются из мебели, материалов отделки, а также из средств бытовой химии — аэрозоли, краски, и т.п. Сильное выделение ЛОВ наблюдается в новых помещениях. Многие из выделяемых ЛОВ являются вредными для здоровья человека (подробнее про VOC).


Датчик определяет общую концентрацию летучих органических соединений косвенным методом, подробную информацию смотрите в спецификации производителя (Sensiron SGPC3, ScioSense ENS160).

Внимание! Датчик VOC не предназначен для контроля загазованности помещения любыми газами. Внимание! Некоторые вещества могут повредить датчик. Например, амилнитрит и вещества подобного класса при попадании на датчик VOC вызывают сильный дрейф показаний с длительным и неполным восстановлением. Датчик VOC работает по электрохимическому принципу: VOC вещества окружающей среды вступают в химическую реакцию с материалом чувствительной керамической таблетки (восстанавливают оксиды) и изменяют электрическую проводимость. Состав материала датчика и его режим работы подобраны так, что эта химическая реакция обратима, после окончания воздействия VOC материал обратно окисляется кислородом воздуха. Это относится к большинству веществ VOC, встречающихся в бытовом помещении. Но некоторые вещества однако могут вступать в необратимую реакцию с материалом датчика и вызывать его быстрое повреждение.

Ограничения использования датчика VOC:

  • датчик VOC не предназначен для обнаружения вредных веществ в воздухе производственных помещений;
  • датчик VOC слабо реагирует на малые концентрации сильнопахнущих веществ, поэтому его вряд ли получится использовать для включения вытяжки в санузле;
  • датчик сильно реагирует на спирты, содержащиеся в алкогольных напитках и парфюмерно-косметической продукции.


Производителем сенсора ENS160 установлены следующие пороги допустимой концентрации VOC:

AQI Концентрация (ppb) Уровень Соответствие гигиеническим нормам Рекомендации Предельное время воздействия
5 2200 - 5500 Опасно для здоровья Ситуация неприемлема Подвергаться воздействию только в критических случаях / Необходимо интенсивное вентилирование часы
4 660-2200 Неудовлетворительно Серьезные претензии Необходимо интенсивное вентилирование или проветривание, требуется поиск источников загрязнения < 1 месяца
3 220 - 660 Приемлемо Некоторые претензии Рекомендуется интенсивное вентилирование или проветривание, требуется поиск источников загрязнения < 12 месяцев
2 65 - 220 Хорошо Без особых претензий Рекомендуется вентилирование или проветривание нет предела
1 0-65 Отлично Без претензий Требуемое значение нет предела


Примеры нестандартного применения датчика VOC:

  • обнаружение испорченных фруктов и овощей на полках в продуктовом магазине;
  • контроль использования санитарных растворов при уборке помещения.

Датчик CO2

Устройство датчиков CO₂

Для измерения концентрации CO₂ в воздухе используется недисперсионный инфракрасный (NDIR) датчик. Принцип действия основан на поглощении углекислым газом инфракрасного света. Оптический способ измерения CO₂ намного точнее, чем с помощью более дешевых электрохимических датчиков.

Автокалибровка

По умолчанию измеренное минимальное значение в течение 7 дней принимается за 400 ppm — это значение концентрации CO₂ на улице. Концентрация CO₂ упадёт до уличной, если в помещении нет людей хотя бы несколько часов в день, или если в помещении работает вытяжная вентиляция, или в помещении иногда открывают окна.

Зачем нужно измерять CO2?

Углекислый газ в высоких концентрациях токсичен. Незначительные повышения концентрации, вплоть до 0.2−0.4 % (2000−4000 ppm), в помещениях приводят к развитию у людей сонливости и слабости. Для помещений нормальным является уровень CO₂ около 600 ppm. Повышенные концентрации углекислого газа снижают когнитивные способности людей. Уже при 1200 ppm расширяются кровеносные сосуды в мозге, снижается активность нейронов и уменьшается объём коммуникации между областями мозга.

Влияние на взрослых здоровых людей Концентрация углекислого газа, ppm
Нормальный уровень на открытом воздухе 400—450
Приемлемые уровни <600
Жалобы на несвежий воздух 600—1000
Общая вялость 1000—2500
Возможны нежелательные эффекты на здоровье 2500—5000
Максимально допустимая концентрация в течение 8 часового рабочего дня 5000

Классификация воздуха в помещениях по ГОСТ 30494-2011

Класс Качество воздуха в помещении Допустимое содержание CO₂ *, см³/м³
Оптимальное Допустимое
1 Высокое - 400 и менее
2 Среднее - 400-600
3 - Допустимое 600-1000
4 - Низкое 1000 и более
* Допустимое содержание CO₂ в помещениях принимают сверх содержания CO₂ в наружном воздухе, см³/м³

Монтаж

Выбор режима работы

Кнопка сопряжения и переключатель режимов
Переключатель режимов начиная с версии платы v4.56

С завода в устройстве установлен беспроводной режим, разберите устройство и измените режим переключателем S1:

  • ON — беспроводной;
  • 1 — подключение по RS-485: по работе в этом режиме смотрите документацию на проводную версию устройства.

В режиме 1 радиомодуль продолжает работать, поэтому он может подключиться к координатору, но работать с датчиком по радиоканалу не получится. Однако радиомодуль может быть использован как роутер для расширения покрытия сети.

В новых устройствах (начиная с версии платы v. 4.56) вместо переключателя установлен джампер:

  • 1 — подключение по RS-485: по работе в этом режиме смотрите документацию на проводную версию устройства;
  • 2 — беспроводной режим.

Для работы датчика по ZigBee важно, чтобы параметры связи по Modbus RTUбыли следующими: скорость - 9600 бит/с (как по умолчанию). Т.к. радиомодуль работает с самим датчиком только на данной скорости. После работы в проводном режиме у некоторых пользователей модуль перестает работать в беспроводном режиме - это является следствием рассинхронизации скоростей работы по Modbus микроконтроллера и беспроводного модуля. Для решения этой проблемы нужно установить заводские настройки скорости у микроконтроллера. Подробнее можно посмотреть в ERRWB-MSWZv40010.

Подключение

Подключение питания к датчику WB-MSW v.4 Zigbee

Подключите питание к клеммам V+ и GND устройства, используйте комплектный блок питания, или любой с напряжением 9 В – 28 В постоянного тока.

Интерфейсы устройств не развязаны гальванически от питания, поэтому все клеммы GND устройств должны быть соединены, даже если используются разные блоки питания, подробнее. При питании по длинному кабелю учитывайте падение напряжения на нём.

Зеленый светодиод Status, если не отключен, то мигает всегда.

Перед подключением датчика к контроллеру Wiren Board, настройте контроллер для работы по протоколу Zigbee.

Теперь нужно сделать сопряжение датчика и Zigbee-координатора (контроллера):

  1. Включите в настройках координатора режим сопряжения устройств (Pairing).
  2. Снимите с датчика крышку и коротко нажмите кнопку Pairing на радиомодуле. Зелёный светодиод Status должен замигать.
  3. Подождите, пока датчик не появится в списке устройств, известных координатору.
  4. Отключите режим сопряжения устройств (Pairing) в настройках координатора.

Чтобы удалить датчик из сети Zigbee:

  1. Отключите в координаторе режим сопряжения, если он включён.
  2. Снимите с датчика крышку и коротко нажмите кнопку сопряжения (Pairing) на радиомодуле. Зелёный светодиод Status должен перестать мигать.

Монтаж на установочную коробку (подрозетник)

Модуль WB-MSW-ZIGBEE v.4 крепится на стандартный круглый (EU type) подрозетник 68 мм с помощью двух штатных отверстий. Крепёжные шурупы обычно идут в комплекте с подрозетником. Устройство не занимает внутреннее пространство, кроме зоны подвода кабеля. Рекомендуется заранее подвести необходимые коммуникации (питание, RS-485). Перед включением убедитесь в надёжности крепления и правильности подключения.

Монтаж на стену

Схема интерьера и рекомендации по монтажу

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

  1. Скачайте файл WB-MSW v.4 mounting template.pdf на компьютер.
  2. Откройте в Acrobat Reader и при печати выберите опцию «Реальный масштаб».

Для крепления датчика выбирайте винты/шурупы с головкой диаметром около 7 мм.

Устройство должно эксплуатироваться при рекомендованных условиях окружающей среды.

Рекомендуем располагать датчики на теплых (внутренних) стенах, на высоте 1-1.6 м от уровня пола, с учетом возможных сквозняков и освещенности солнцем.

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

Сразу же после установки датчик CO2 может показывать неверные значения: это может быть связано с неосторожным обращением во время транспортировки и монтажа.

Вы можете подождать 7 дней без отключения питания, пока функция автокалибровки не приведёт показания датчика в норму или подключить датчик через RS-485 и выполнить принудительную калибровку для сенсора CM-1106.

Как открыть корпус датчика

Представление в контроллере

Программное обеспечение

Датчик можно использовать на контроллере Wiren Board и других устройствах со SprutHub или zigbee2mqtt с версии 1.32.2.

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

Каналы устройства

Каналы устройства:

  • temperature — температура, °C;
  • temperature_offset — компенсация самонагрева, значение компенсации вычитается из измеренной температуры (по умолчанию: 0);
  • th_heater — статус нагревателя, предназначен для исключения наличия конденсата;
  • humidity — относительная влажность воздуха, %, RH;
  • co2 — концентрация CO2, ppm;
  • voc — качество воздуха, ppb;
  • illuminance — освещённость, lux;
  • occupancy — флаг наличия движения, рассчитывается по внутреннему алгоритму. Можно изменять время его сброса в параметре occupancy_timeout;
  • occupancy_level — уровень движения;
  • occupancy_sensitivity — порог срабатывания флага наличия движения;
  • occupancy_timeout — время сброса флага наличия движения occupancy;
  • noise_detected — флаг наличия шума, рассчитывается по внутреннему алгоритму. Можно изменять время его сброса в параметре noise_timeout;
  • noise — уровень шума, dBA;
  • noise_detect_level — порог срабатывания флага наличия шума;
  • noise_timeout — время сброса флага наличия шума noise_detected;
  • update — параметры обновления OTA-прошивки: installed_version — установленная версия, latest_version - последняя доступная версия, state - состояние обновления;
  • linkquality — качество связи;
  • last_seen — время получения последних данных;
  • uart_connection — индикация наличия связи радиомодуля с микроконтроллером датчика — смотреть при диагностике проблем, когда нет данных и устройство не управляется, но связь есть;
  • uart_baud_rate — индикация скорости обмена радиомодуля с микроконтроллером датчика;
  • state_l1 — статус красного светодиода;
  • state_l2 — статус зелёного светодиода;
  • state_l3 — статус зуммера;
  • activity_led_indicator — индикация работы статусного светодиода.

Каналы актуальны для zigbee2mqtt 2.1.1 и версии ОТА-прошивки 65. В более ранних версиях некоторые каналы могут отсутствовать.

Управление

Зуммером, красным и зелёным светодиодами, а также статусным светодиодом можно управлять, для этого нужно отправить сформированный по образцу JSON-запрос в MQTT-топик zigbee2mqtt/FRIENDLY_NAME/set:

  • красный светодиод — {"state_l1": "ON"} или {"state_l1": "OFF"}
  • зелёный светодиод — {"state_l2": "ON"} или {"state_l2": "OFF"}
  • зуммер — {"state_l3": "ON"} или {"state_l3": "OFF"}
  • статусный светодиод — {"activity_led_indicator": true} или {"activity_led_indicator": false}

Отправлять JSON-запросы можно с помощью wb-rules, например, включим зелёный светодиод в датчике с именем 0x842e14fffe8b184e:

publish('zigbee2mqtt/0x842e14fffe8b184e/set', JSON.stringify({"state_l2": "ON"}), 2, false);

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

Настройка

Как настраивать

Вы можете настроить устройство веб-интерфейсе zigbee2mqtt, а также через запись JSON-команд в mqtt-топики устройства с помощью MQTT Explorer или wb-rules. Про настройку датчика в SprutHub, читайте в его документации.

При настройке вам понадобится понимание некоторых терминов:

  • Канал — измеренные значения.
  • Параметр — элемент, который позволяет настраивать устройство.
  • Атрибут — внутреннее наименование канала или параметра.
  • Кластер — группа атрибутов.

Настройка интервала опроса

Настройка интервалов опроса позволяет регулировать нагрузку на Zigbee-сеть и экономить ресурсы контроллера на обработке полученных от устройства данных. Чем реже устройство присылает данные, тем меньше требуется ресурсов для их обработки.

Интервалы настраиваются для каждого канала отдельно. Значения по умолчанию подойдут для большинства пользователей, но вы можете изменить их:

  • minimum_report_interval — Минимальный интервал опроса, который будет выдержан перед отправкой изменённых значений датчиком. Может игнорироваться, если не было соблюдено условие, задаваемое в настройке «Отчётное значение».
  • maximum_report_interval — Максимальный интервал опроса, по истечении которого датчик пришлёт данные независимо от того, изменились ли измеренные значения.
  • reportable_change — Отчётное значение. Если значение параметра изменилось на заданную величину или больше, а также прошло время, указанное в параметре «Минимальный интервал опроса», устройство пришлёт отчёт. При настройке нужно учитывать, что для температуры и влажности 100 — это 1 °C и 1 % соответственно. Для других параметров значения равны 1 к 1.

Чтобы настроить интервал опроса, отправьте в MQTT-топик zigbee2mqtt/bridge/request/device/configure_reporting специально сформированный JSON-запрос.

В шаблоне ниже заполните id, cluster и attribute, значениями которые можно взять из таблицы и укажите параметры опроса в полях minimum_report_interval, maximum_report_interval, reportable_change:

{
  "id": "0x0000000000000",
  "endpoint":1,
  "options": {},
  "cluster": "yourCluster",
  "attribute": "yourAttribute",
  "minimum_report_interval": 5,
  "maximum_report_interval": 10,
  "reportable_change": 10
}

Для каналов occupancy_level и noise, секция options должна выглядеть так: "options": {"manufacturerCode":26214},. В остальных случаях оставьте её пустой "options": {},.

Например, настроим с помощью wb-rules период опроса уровня шума (noise) в датчике с адресом 0x842e14fffe8b184e:

message = {
  "id": "0x842e14fffe8b184e",
  "endpoint":1,
  "options": {"manufacturerCode":26214},
  "cluster": "sprutNoise",
  "attribute": "noise",
  "minimum_report_interval": 10,
  "maximum_report_interval": 60,
  "reportable_change": 5
}

publish('zigbee2mqtt/bridge/request/device/configure_reporting', JSON.stringify(message), 2, false);
Интервалы опроса
Канал Описание Кластер Атрибут Значения по умолчанию
Минимальный интервал, с Максимальный интервал, с Отчётное значение
temperature Температура msTemperatureMeasurement measuredValue 10 3600 100
illuminance Освещённость msIlluminanceMeasurement measuredValue 10 3600 5
humidity Влажность msRelativeHumidity measuredValue 10 3600 100
occupancy Флаг наличия движения msOccupancySensing occupancy 10 60 0
occupancy_level Уровень движения msOccupancySensing sprutOccupancyLevel 10 60 20
noise Уровень шума sprutNoise noise 10 60 5
co2 Уровень CO2 msCO2 measuredValue 10 3600 10
voc Уровень VOC sprutVoc voc 10 3600 10

Параметры датчиков

Для настройки параметров через MQTT, отправьте устройству подготовленный JSON-запрос в топик zigbee2mqtt/FRIENDLY_NAME/set, где FRIENDLY_NAME — идентификатор устройства.

Таймауты детекторов движения и шума

Таймауты для сброса флагов о зафиксированных движении и шуме:

  • noise_timeout — Таймаут обнаружения шума. Время в секундах, которое должно пройти в тишине перед сбросом флага noise_detected. Можно указывать от 0 до 2000 , по умолчанию 60 секунд. JSON запросы:
    • чтение — {"noise_timeout": ""}
    • запись — {"noise_timeout": NEW_VALUE}
  • occupancy_timeout — Таймаут обнаружения движения. Время в секундах, которое должно пройти без движения перед сбросом флага occupancy. Можно указывать от 0 до 2000 , по умолчанию 60 секунд. JSON запросы:
    • чтение — {"occupancy_timeout": ""}
    • запись — {"occupancy_timeout": NEW_VALUE}

Например, установим с помощью wb-rules в датчике с именем 0x842e14fffe8b184e параметр noise_timeout в значение 20:

publish('zigbee2mqtt/0x842e14fffe8b184e/set', JSON.stringify({"noise_timeout": 20}), 2, false);

Прочие параметры

Чтобы прочитать параметр, заполните в шаблоне ниже cluster и attributes, значениями которые можно взять из таблицы:

{
  "read": {
    "cluster": "yourCluster",
    "options": {"manufacturerCode":26214},
    "attributes": [
      "yourAttribute"
    ]
  }
}

Чтобы записать новое значение параметра, заполните в шаблоне ниже cluster и payload, значениями из таблицы ниже и укажите новое значение вместо NEW_VALUE:

{
  "write": {
    "cluster": "yourCluster",
    "options": {"manufacturerCode":26214},
    "payload": {
      "yourAttribute": NEW_VALUE
    }
  }
}

Например, установим с помощью wb-rules минимальный уровень шума в устройстве с адресом 0x842e14fffe8b184e:

message = { 
  "write": {
    "cluster": "msOccupancySensing",
    "options": {"manufacturerCode":26214},
    "payload": {
      "sprutOccupancySensitivity": 100
    }
  }
}

publish('zigbee2mqtt/0x842e14fffe8b184e/set', JSON.stringify(message), 2, false);
Параметры
Параметр Описание Кластер Атрибут Значения
Возможное По умолчанию
noise_detect_level Минимальный уровень шума в дБА, при котором будет работать детектор. sprutNoise noiseDetectLevel 0 – 150 50
occupancy_sensitivity Чувствительность датчика движения. Если датчик срабатывает при малейшем движении, уменьшите чувствительность, в противном случае увеличьте ее. msOccupancySensing sprutOccupancySensitivity 0 – 2000 50
temperature_offset Температурная компенсация,вычитается из измеренного значения. Только для записи. msTemperatureMeasurement sprutTemperatureOffset −10 … 10 0

ИК-команды

Для управления ИК приёмопередатчиком, сформируйте JSON-запрос по образцу и отправьте его в mqtt-топик zigbee2mqtt/FRIENDLY_NAME/set.

О принципах управления ИК-устройствами, читайте в разделе Эмуляция ИК-пультов.

Скрипт на wb-rules

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

Пример скрипта на wb-rules для управления wb-msw-zigbee-ir:

  1. Создайте на контроллере новый скрипт.
  2. Скопируйте содержимое скрипта по ссылке в скрипт на контроллере.
  3. Нажмите «Сохранить».

На вкладке Устройства будет создано виртуальное устройство IR Controller, в котором надо указать Friendly Name датчика, номер банка памяти и дальше нажатием на кнопки произвести настройку.

Постоянная память (ROM)

Сигналы, записанные в постоянную память (ROM) сохраняются после отключения питания.

Доступные команды, rom — номера ячеек памяти от 0 до 79:

  • Начать обучение:
    {
        "learn_start": {
            "rom":0
        }
    }
    
  • Завершить обучение:
    {
        "learn_stop": {
            "rom":0
        }
    }
    
  • Воспроизвести сигнал:
    {
        "play_store": {
            "rom":0
        }
    }
    
  • Удалить сигналы из всех ячеек ROM:
    {
        "clear_store": {}
    }
    

Например, воспроизведём ИК-сигнал из ячейки с адресом 0, которая находится в датчике с именем 0x842e14fffe8b184e:

publish('zigbee2mqtt/0x842e14fffe8b184e/set', JSON.stringify({"play_store": {"rom":0}}), 2, false);

Оперативная память (RAM)

Сигналы, записанные в оперативную память (RAM) стираются при отключении питания или при операциях с банками постоянной памяти (ROM).

Доступные команды:

  • Начать обучение:
    {
        "learn_ram_start": {}
    }
    
  • Завершить обучение:
    {
        "learn_ram_stop": {}
    }
    
  • Воспроизвести сигнал:
    {
        "play_ram": {}
    }
    

Например, воспроизведём ИК-сигнал из оперативной памяти в датчике с именем 0x842e14fffe8b184e:

publish('zigbee2mqtt/0x842e14fffe8b184e/set', JSON.stringify({"play_ram": {}}), 2, false);

Безопасный режим

Настройка безопасного режима

Безопасный режим позволяет однократно воспроизвести ИК-команду в случае, если контроль над устройством утрачен, например, перебит кабель RS-485. Рекомендуем учитывать возможность потери связи с контроллером при проектировании систем управления.

Таймер безопасного режима начинает отсчёт после каждого успешно обработанного (принятого) пакета Modbus. По истечению установленного таймаута устройство переходит в безопасный режим. При возобновлении связи оно вернётся к обычной работе. По умолчанию таймаут установлен в значение 10 секунд.

По умолчанию действие в безопасном режиме отключено ("Ничего не делать"). Действие включается через опцию "Воспроизвести ИК-команду" и затем указывается номер команды.

Обновление прошивки

Устройство поддерживает обновление прошивок «по воздуху» (OTA). Здесь мы рассмотрим обновление при использовании датчика с zigbee2mqtt. Если вы используете SprutHub, смотрите инструкцию по обновлению в его документации.

Через zigbee обновляется прошивка и ZigBee и modbus части. По modbus прошивается только modbus часть.

Из веб-интерфейса zigbee2mqtt

Раздел OTA в веб-интерфейсе zigbee2mqtt

Для ускорения загрузки прошивки рекомендуется в конфигурационный файл /mnt/data/root/zigbee2mqtt/data/configuration.yaml добавить/проверить следующую настройку:

ota:
    image_block_response_delay: 50
    default_maximum_data_size: 60

и перезапустить сервис zigbee2mqtt:

systemctl restart zigbee2mqtt

Обновить прошивку можно через веб-интерфейс zigbee2mqtt:

  1. Включите веб-интерфейс zigbee2mqtt и перейдите в него.
  2. Откройте раздел OTA.
  3. Найдите в списке устройств датчик WB-MSW-ZIGBEE v.4 и нажмите кнопку Check for new updates.
  4. Если прошивка обновление будет доступно, название кнопки сменится на Update, нажмите её.
  5. Начнётся процесс обновления прошивки, который длится около 30 минут, не отключайте питание датчика.

Если в процессе прошивки произошёл сбой, например, устройство было обесточено, удалите устройство из Zigbee-сети и подключите его заново.

Можно прочитать данные о прошивке микроконтроллера. Для этого в веб-интерфейсе z2m (c версии 2.8.0) выберите датчик, перейдите в "Консоль разработчика", в поле "Кластер" выберите "sprutDeviceBase", в поле "Атрибут" выберите нужное вам:

  • deviceVersion: версия прошивки микроконтроллера датчика;
  • deviceSignature: сигнатура;
  • deviceBootVersion: версия загрузчика;
  • componentVersion: версия прошивки датчика CO2 NS8;
  • componentSignature: сигнатура датчика CO2 NS8.

Через MQTT

Если вы используете zigbee2mqtt, но по каким-то причинам не хотите обновлять прошивку устройства через веб-интерфейс, вы можете это сделать с помощью отправки JSON-сообщений в MQTT с помощью MQTT Explorer. Название топиков и примеры JSON-команд, смотрите в инструкции OTA updates.

Примеры правил

Для работы в составе «умного дома» лучше использовать определенные правила. Их можно посмотреть в статье Примеры правил

Известные неисправности

Аппаратные ошибки/особенности WB-MSW-ZIGBEE v.4, найденные при эксплуатации устройства.

История изменений ПО

Версия прошивки радиомодуля Изменения
75

Новое в прошивке:

  • исправлена проблема зависания после многократного включения питания, подробнее в ERRWB-MSWv40003;
  • исправлена проблема, из-за которой радиомодуль «зависал» и прекращал обмен данными с микроконтроллером после нескольких неудачных команд (при отсутствии ответа);
  • обновлена прошивка датчика до версии 4.35.3.
72
  • Автоматическое определение скорости обмена и Modbus-адреса датчика.
71
  • Исправлено отсутствие показаний датчиков шума, температуры, влажности и других сенсоров в связи с некорректной инициализацией. Подробнее в ERRWB-MSWZv40008.
70
  • Обновление прошивки датчика CO2 NS8 до версии 1.03D. Была вероятность повреждения датчика при отключении питания во время калибровки. Подробнее в ERRWB-MSWv40001 .
67
  • Исправлено обновление прошивки, если основной чип на старте был в бутлоадере
65

Новое в прошивке:

  • добавлен функционал смены скорости обмена радиомодуля с микроконтроллером датчика;
  • добавлена индикация наличия связи между радиомодулем и микроконтроллером датчика;
  • обновлена прошивка датчика до версии 4.31.11.
61

Новое в прошивке:

  • добавлено управление светодиодом Status Modbus-части датчика.

Ревизии устройства

Список ревизий

Изображения и чертежи устройства

Габаритные размеры WB-MSW-ZIGBEE v.4

Corel Draw 2018 (шрифт — Ubuntu): Файл:WB-Library.cdr.zip

Visio:

  1. Устройства Wiren Board: Файл:WB-Visio-Lib.zip.
  2. Щиты, автоматы, контакторы и прочее от стороннего разработчика.

Corel Draw PDF: Media:WB-MSW-v.4.cdr.pdf

Autocad 2013 DXF: Файл:WB-MSW-v.4.dxf.zip

Autocad PDF: Media:WB-MSW-v.4.pdf

Габаритный чертеж PDF: Media:WB-MSW-v.4_overall_drawing.pdf

3D-модель STEP:

База УГО для AutoCAD Electrical: Файл:Wirenboard-AE-base.zip