Найти тему
Smart home Russia

Создаем ZigBee 4-х канальное реле [v.1]

Наступило время создать еще одно устройство. Сегодня займемся только теорией и отладкой, а в следующей части перейдем к пайке и сборке.

Translation to English is here. Также наш канал в telegram.

Для отладки будем использовать модуль E18-TBL-01 Test Kit, которые содержат в себе модуль E18 MS1-PCB от того же EBYTE.

Начнем с задачи. Как я писал в своей статье "Покупать или делать самому? Устройства в умном доме.", изготовление устройств оправдано тогда, когда покупное изделие нам не отвечает по требованию, качеству или его вовсе не существует.

У меня в квартире есть пункты управления светом, в которых установлены блоки питания и реле, а также одно- и двухканальные "умные реле", писал об этом ранее тут. В итоге, все работает, но выглядит так себе. Но если внешний вид меня волновал мало, т.к. все потом будет скрыто, то вторая проблема, которую я не ждал, стала меня доставать: с увеличением устройств в сети Wi-Fi и Zigbee, работа умного дома стала менее стабильной. Можно было бы и потерпеть, но я решил начать с оптимизации:
1. Несколько устройств были отключены, т.к. стало ясно, что их необходимость была переоценена.
2. Другие устройства было принято заменить на более функциональные.

Так в голову пришла идея заменить шесть устройств на одно...

Подойдем ближе к реализации. Идея создания 4-х канальных реле не новая и была описана ранее, например на modkam. Если хотите что-то готовое, то можете его же и купить, благо в @zigberu людей хватает (например, я заказал там свой первый ZigBee домофон). У меня потребности поскромнее, а платить деньги при наличии возможностей - не хотелось.

Первое условие к моему устройству - 4 сухих контакта. Это позволит мне избавится от промежуточных реле (писал о них тут).
Второе отличие - мне не нужен
энергометр (он у нас уже есть, был изготовлен ранее). Более того, не вижу смысла знать точное значение потребленной электроэнергии на светильнике в прихожей, тем более что я могу рассчитать его примерно, т.к. используется резистивная нагрузка.

Соберем тестовый образец. Для этого возьмем Smartrf04EB для прошивки чипа, E18-TBL-01 Test Kit и модуль 4-х контактного реле с гальванической развязкой (последнее совсем не обязательно).

Все в сборе
Все в сборе

Следует обратить внимание, что в случае с модулем как у меня, следует убрать перемычку и подключить реле к +5В (коричневый провод), в то время как логика управляется через 3.3В. С другими модулями схема может незначительно отличаться.

Логика сверху и +5В подключена отдельно коричневым проводом.
Логика сверху и +5В подключена отдельно коричневым проводом.

Если с питанием все понятно, то теперь перейдем к подключению логики.

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

Нам нужны 4 выхода, задействуем для них P0.2, P0.3, P0.4, P0.5.
Как бонус, нашему устройству мы придадим немного дополнительного функционала. На виртуальные пины P3.0 и P3.1 повесим замер напряжения питания и температуру чипа.
На плате есть одна кнопка и два диода. В своем будущем устройстве кнопку я не буду делать, поэтому и настраивать ее также не буду, а вот диоды, для отладки, я задействовал (они припаяны к пинам жестко и активируются перемычкой). Первый, который на P1.3 задействован для индикации, а второй, который на P1.2 я превратил в 5-ый выход (в следующей версии я его уберу).
Тип модуля 2530 + 92-ой усилитель, именно такой в модуле ms1-pcb
Тип устройства - роутер. Этот тип нужно выбирать тщательно. Данное устройство будет располагаться очень близко к координатору и нет смысла ему быть роутером

На второй странице выберем имя производителя и идентификатор, это важно.
Интервал отчета я выставил как 5 минут, но возможно я отключу их совсем. Отчеты нам принудительные не нужны, можно их позже активировать в z2m.

Последним этапом собираем прошивку и генерируем внешний конвертер. Результаты я выложил тут. Опишу содержимое:
v.1 - прошивка, которую я описываю выше и которую я сейчас
тестирую. Конвертеры, которые создаются автоматически - у меня не работают. приходится свои писать. В папке old лежат родной и самодельный прошлой версии.
v.1.1 - изменена подтяжка на "внутренняя к +", т.к. это будет не лишним. Вопрос того, к какому уровню подтягивать, решается схемотехникой. Вторым отличием стало отключение 5-го выхода, который был для диода.
Не тестировал. Конвертер приложил, его тоже не тестировал.
v.1.2 - отключены отчеты и тип устройства - конечное.
Не тестировал. Конвертер использовать от версии v.1.1

Процесс прошивки я описывал, например, в статье "Делаем ZigBee роутер из cc2531. Поделка выходного дня" и в статье "Изобретаем умное устройство. ZigBee роутер". В последней, я как раз прошивал похожий модуль. Как закинуть внешний конвертер я уже писал тут.

После добавления конвертера в Z2M устройство определяется корректно.

В следующей публикации я опишу процесс сборки устройства и покажу внешний вид, а пока мой прототип проходит тесты.

А на этом все, делайте ваш умный дом умнее, ярче, красочнее, информативнее, настраивайте автоматизации правильно, чтобы получать максимальное удовольствие. Вы можете всегда поддержать меня лайком, репостом, комментарием или просто подписаться, чтобы не пропускать свежие выпуски. Также можно следить за мной на других площадках: Instagram и telegram (RU, EN, DE), Medium, LiveJournal, YouTube (старый канал), YouTube (новый канал).