RSS блога
Подписка
Сенсорные выключатели из умных реле. Теория и практика. Рубрика "Эксперименты!"
Долгое время меня не покидала мысль об автоматизации освещения. Множество вариантов было отброшено из-за дороговизны и неуниверсальности. В итоге остановился на радиореле. И действительно, устройство все в одном всего за 150 рублей, при желании можно интегрировать в умный дом (об этом в статье), есть вариант удаленного управления с пульта. Решил, значит, сделать я из него сенсорный выключатель по одному гайду из сети… Ну и вот, пишу теперь полотно текста на 5-ой стадии принятия горя. А впрочем,
Существуют разные технологии дистанционных реле — ZigBee, WiFi, RF433.
Я выбрал последние из соображений цены. Радиореле не требуют шлюза, в отличие от ZigBee устройств, сами по себе дешевы, даже дешевле устройств с WiFi. Из минусов разве что отсутствие защиты от взлома и мониторинга состояния (только прием, нет передачи). Реле требует минимум 3 провода для управления — 2 реализуют питание, третий переключается реле.
Устройство состоит из трех основных компонентов — питание, микросхема управления и периферия в виде кнопки, реле, индикаторного диода и приемного радиомодуля на отдельной микросхеме.
Все, кроме микросхемы управления, довольно полезно и может быть использовано отдельно для чего-нибудь еще. Микросхема, хотя и является классическим микроконтроллером, не программируется и запихнуть в нее какой-нибудь защищенный протокол связи не получится. Зато ее можно заменить на какой-нибудь копеечный МК вроде Attiny13. Но что-то мы отвлеклись…
Реле может сопрягаться с различными радиоустройствами. Для этого нужно войти в режим сопряжения, а затем послать на реле сигнал с передатчика, который в дальнейшем должен управлять поведением реле (например, радиовыключатель или пульт). Это позволяет в дальнейшем управлять поведением реле. После входа в режим индикатор непрерывно светит до момента сопряжения.
Есть 6 паттернов поведения, в них можно войти кнопкой (после нажатия активируется режим сопряжения):
Реле может быть подключено через радиоволновый хаб к системам умного дома. Для этого можно использовать как покупной WiFi-хаб, так и спаять свой из дешевых модулей приемника и передатчика с AliExpress и ESP8266 с ESPHome (интегрируется с HomeAssistant). Я в свое время купил пару SYN480R и SYN115.
Есть несколько серьезных недостатков радиосистем, которые в принципе решаемы. Например, отсутствие мониторинга можно частично компенсировать токовыми датчиками или датчиками освещенности, включенными в систему умного дома. Можно даже заморочиться, заменив контроллеры в радиореле и забабахать защищенный протокол передачи. Но один серьезный недостаток решить не получится — в один момент времени устройство может принять лишь один сигнал. Это значит, что одновременное нажатие на 2 кнопки 2-х передатчиков пошлет в эфир белиберду, и параллельно принять 2 команды скорее всего не выйдет. В целом, это не так уж и страшно, учитывая, что сигнал передается крайне быстро, а команды посылаются людьми довольно редко. Но если делать автоматизации для умного дома, данный недостаток стоит учесть и ввести задержку.
Таким образом у нас решается проблема с питанием реле (в коробке 100% есть и фаза, и ноль), и старый выключатель не теряет своих функций. Есть, конечно, и свои минусы. Индикаторный выключатель в этом случае работать не будет, например. Да и логика взаимодействия с ним меняется — теперь для включения-выключения надо щелкнуть туда-сюда (как кнопкой). Как по мне, достаточно спорное, но применимое решение.
Я пошел несколько иным путем. Моей задачей было заменить три выключателя. Поскольку в помещении с ними кирпичные стены отделаны панелями, а провода проведены в прослойке между стеной и отделкой, я решил установить реле в существующие пазы под выключатели.
Это возможно лишь из-за огромного зазора, в случае работы с кирпичом лучше использовать более мелкие реле. Что касается проводки для спаренных выключателей, я воспользовался трехпроводной схемой — так как к двум выключателям было подведено 4 провода, два из них были выведены на питание обоих реле, а остальные два я вывел в коробку как переключение фазы.
Было:
Стало:
Последний выключатель удачно расположился прямо под распределительной коробкой, так что я прокинул к нему провод вниз.
Естественно, самим по себе реле заменять выключатели не очень эстетично, хотя и возможно — на любом реле, как уже говорилось, есть кнопка переключения состояния. На просторах сети мной был найден проект сенсорного выключателя на основе WiFi реле, который я решил переделать под себя. Это проект для 3Д принтера. По модели вышло как-то так.
Эта сенсорная кнопка является (в моем случае являлась) основой всего проекта сенсорного выключателя. Кнопка имеет диапазон питания 2.5-5.5В, автоматически подстраивает свою чувствительность и имеет индикатор состояния. На первый взгляд — идеальное решение. А на второй…
В общем, исходя из статьи, кнопку нужно запитать от реле (5В), а сверху докупить стекло под выключатель. 5В в моем реле не оказалось, только 12 и 3.3, последнее я забрал прямо с пинов приемника.
Стекла у меня тоже не оказалось, так что я отрезал квадрат и заключил его в рамку, чтобы кривая кромка смотрелась получше. На первое время сойдет, думал я.
Индикация была доработана. Был добавлен индикатор работы aka подсветка на основе светодиода. Данная цепь подключается ко входу и управляющему выходу реле и служит индикатором выключения лампы.
Индикатор состояния реле оставил без изменений (просто вывел светодиод от реле).
Здесь желтым — подключение индикатора реле, зеленым — подключение индикатора питания, черный и красный отвечают за питание сенсора и фиолетовым подключается вывод сенсора.
Хотел добавить индикатор активации сенсора, но с ним появились первые проблемы.
Для управления реле нужно подавать низкий уровень на пин кнопки. По умолчанию сенсорная кнопка настроена так, чтобы подавать высокий при нажатии. Это легко исправляется установкой перемычек.
Только логика светодиода так не исправляется. В режиме триггера он светит непрерывно, но гаснет от активации сенсора. Это меня не устраивало, так что я придумал инвертирующую цепь. На кусочке макетки я влепил такую схему. Она и обеспечила нормальную индикацию. То есть на выключателе получилось 3 индикатора — для индикации приема радиосигнала, работы сенсора и состояния лампочки).
Но со временем все стало только хуже. Спустя пару дней выключатели просто сошли с ума и щелкали без конца. Что же случилось?
Не могу утверждать точно (не разработчик я сенсорных кнопок), но я обнаружил любопытную особенность радиореле. При замыкании реле напряжение на линии 3.3 падает на 0.3 Вольта. Казалось бы, не очень много, вот только чувствительность сенсора зависит от напряжения, да плюс рядом с кнопкой находится индикатор лампочки, на котором переменный ток 220 Вольт. Могу предположить, что постоянные прыжки напряжения плюс помехи из сети сводят кнопки с ума…
В общем, в качестве временного решения я просто заменил сенсорные кнопки на обычные. Модель пришлось немного переделать, схема упростилась до двух индикаторов.
А сам стал думать как бы сделать рабочие сенсорные.
После некоторых раздумий мне пришло в голову применить ИК-датчики.
Они тоже зависимы от напряжения, но в них хотя бы есть реостат для регулировки чувствительности. Я немного поправил модель под китайский сенсор, а в самом сенсоре перепаял диоды. В итоге вышло нечто такое.
Также я сделал окошко под ИК-лучи и в целом немного поменял накладку под стекло.
Индикатор активации ИК-датчика упростился до вывода оного с его платы, потому что датчик по умолчанию использует логику триггера низкого уровня, в отличие от сенсорной кнопки.
Пришлось также повозиться с настройкой чувствительности, в основном из-за скачков питающего напряжения: снимаешь стекло, настраиваешь, надеваешь стекло — включается хорошо, выключается плохо; снимаешь стекло, крутишь, надеваешь стекло — включается плохо, выключается никак. И так до победного. В итоге мне кое-как удалось настроить, чтоб реагировало более-менее хорошо и так, и так.
Но и тут меня ждало разочарование… Одним солнечным утром я заметил, что солнце попадает на выключатель, а он начинает судорожно мигать. Кажется, я не предусмотрел, что ИК-датчики лучше вообще не подвергать солнечному свету. Хотя на рассеянный свет реакции никакой. Решил пока оставить как есть — зима, солнца мало, да и помещение без окон. Но решение никуда не годится. Кнопки намного лучше, по крайней мере с этими радиореле.
Касаемо ИК-датчиков, это более предсказуемое, но менее универсальное решение. Да, они не сходят с ума сами, но стоит датчику словить солнечный блик, и вот вам ложное срабатывание. Допустим, для какого-то глухого помещения решение нормальное, но в жилом доме их не так много.
Наконец, удлинение кнопки. На мой взгляд, самое беспроблемное решение. Индикация работы лампы есть, ложных срабатываний нет. Нажимать в целом удобно, не намного хуже кнопки обычного выключателя. Да, без претензии на футуризм, но дело делает.
Пока что как раз с помощью реле с кнопкой и радиовыключателя сделал проходной выключатель без штробления стен.
В дальнейшем думаю написать про управление через хаб с помощью умного дома, а пока с выводами все. Вот такой вот дурацкий проект. Всем счастливых праздников!
Предисловие
Для чего все это? Почему не пользоваться обычными выключателями? Ответ в удобстве и различных автоматизациях. К примеру, возьмем обычный проходные выключатели. Для его реализации необходимо провести провод в стене между выключателями. Это серьезные ремонтные работы с перфоратором и подключение высоковольтных проводов, плюс перспективы последующей доработки сомнительные. Решение? Использование реле с дистанционным управлением. Благодаря ему можно использовать дистанционные кнопки на батарейках и не притрагиваться к перфоратору. Более того, реле можно управляться и сценариями умного дома (имеются в виду локальные решения, вроде Home Assistant и MajorDoMo, хотя есть и решения от Tuya). Например, можно связать выключение света с присутствием людей в комнате, временем суток, освещенностью и т.д. Для подобных задач, конечно, подходят и умные лампы, но как расходник они достаточно дороги. А с учетом того, что я предпочитаю (и другим советую) Open Source решения, не очень целесообразны.Существуют разные технологии дистанционных реле — ZigBee, WiFi, RF433.
Дополнительная информация
Я выбрал последние из соображений цены. Радиореле не требуют шлюза, в отличие от ZigBee устройств, сами по себе дешевы, даже дешевле устройств с WiFi. Из минусов разве что отсутствие защиты от взлома и мониторинга состояния (только прием, нет передачи). Реле требует минимум 3 провода для управления — 2 реализуют питание, третий переключается реле.
Ближе к телу
На руках у меня были радиореле 433МГц Sonoff.Устройство состоит из трех основных компонентов — питание, микросхема управления и периферия в виде кнопки, реле, индикаторного диода и приемного радиомодуля на отдельной микросхеме.
Все, кроме микросхемы управления, довольно полезно и может быть использовано отдельно для чего-нибудь еще. Микросхема, хотя и является классическим микроконтроллером, не программируется и запихнуть в нее какой-нибудь защищенный протокол связи не получится. Зато ее можно заменить на какой-нибудь копеечный МК вроде Attiny13. Но что-то мы отвлеклись…
Реле может сопрягаться с различными радиоустройствами. Для этого нужно войти в режим сопряжения, а затем послать на реле сигнал с передатчика, который в дальнейшем должен управлять поведением реле (например, радиовыключатель или пульт). Это позволяет в дальнейшем управлять поведением реле. После входа в режим индикатор непрерывно светит до момента сопряжения.
Есть 6 паттернов поведения, в них можно войти кнопкой (после нажатия активируется режим сопряжения):
- Одиночное нажатие переключает состояние реле
- Двойное нажатие активирует режим управления одной кнопкой. В этом режиме нажатие на кнопку передатчика управляет реле, как в первом режиме. Можно настроить несколько передатчиков на управление одним реле. Классический режим выключателя.
- Тройное нажатие активирует режим управления двумя кнопками. В этом режиме нажатие на одну кнопку передатчика только включает реле, а на другую только выключает. В режиме сопряжения нужно подключить сразу 2 кнопки.
- Четверное нажатие — импульсный режим. Пока передается сигнал (держится кнопка на передатчике), реле замкнуто.
- Пятый режим активируется 6 нажатиями. Он просто задает поведение при подаче питания — при активации свет будет включаться при подаче питания на реле из электросети автоматически.
- Ну и наконец 6-ой режим — сброс настроек. Активируется 8 последовательными нажатиями
Реле может быть подключено через радиоволновый хаб к системам умного дома. Для этого можно использовать как покупной WiFi-хаб, так и спаять свой из дешевых модулей приемника и передатчика с AliExpress и ESP8266 с ESPHome (интегрируется с HomeAssistant). Я в свое время купил пару SYN480R и SYN115.
Есть несколько серьезных недостатков радиосистем, которые в принципе решаемы. Например, отсутствие мониторинга можно частично компенсировать токовыми датчиками или датчиками освещенности, включенными в систему умного дома. Можно даже заморочиться, заменив контроллеры в радиореле и забабахать защищенный протокол передачи. Но один серьезный недостаток решить не получится — в один момент времени устройство может принять лишь один сигнал. Это значит, что одновременное нажатие на 2 кнопки 2-х передатчиков пошлет в эфир белиберду, и параллельно принять 2 команды скорее всего не выйдет. В целом, это не так уж и страшно, учитывая, что сигнал передается крайне быстро, а команды посылаются людьми довольно редко. Но если делать автоматизации для умного дома, данный недостаток стоит учесть и ввести задержку.
Суета бытия
Что касается замены выключателя на реле, казалось бы, сделать это почти невозможно (если в квартире не проведено заземление), но можно схитрить. Самое банальное — забрать какой-нибудь провод из розетки, если она находится по соседству (а так обычно и бывает). Также можно задействовать провод, если выключатель для двух ламп, а используется одна. Есть и более элегантное решение. На реле есть кнопка, отвечающая за его состояние. Если реле расположить не на месте выключателя, а в распределительной коробке комнаты (частое решение в домах), можно вывести провода выключателя на кнопку реле.Таким образом у нас решается проблема с питанием реле (в коробке 100% есть и фаза, и ноль), и старый выключатель не теряет своих функций. Есть, конечно, и свои минусы. Индикаторный выключатель в этом случае работать не будет, например. Да и логика взаимодействия с ним меняется — теперь для включения-выключения надо щелкнуть туда-сюда (как кнопкой). Как по мне, достаточно спорное, но применимое решение.
Я пошел несколько иным путем. Моей задачей было заменить три выключателя. Поскольку в помещении с ними кирпичные стены отделаны панелями, а провода проведены в прослойке между стеной и отделкой, я решил установить реле в существующие пазы под выключатели.
Спойлер
Это возможно лишь из-за огромного зазора, в случае работы с кирпичом лучше использовать более мелкие реле. Что касается проводки для спаренных выключателей, я воспользовался трехпроводной схемой — так как к двум выключателям было подведено 4 провода, два из них были выведены на питание обоих реле, а остальные два я вывел в коробку как переключение фазы.
Было:
Стало:
Последний выключатель удачно расположился прямо под распределительной коробкой, так что я прокинул к нему провод вниз.
Естественно, самим по себе реле заменять выключатели не очень эстетично, хотя и возможно — на любом реле, как уже говорилось, есть кнопка переключения состояния. На просторах сети мной был найден проект сенсорного выключателя на основе WiFi реле, который я решил переделать под себя. Это проект для 3Д принтера. По модели вышло как-то так.
Пролог
Итак, знакомьтесь! А, впрочем, вы, наверное, уже знакомы — TTP223.Эта сенсорная кнопка является (в моем случае являлась) основой всего проекта сенсорного выключателя. Кнопка имеет диапазон питания 2.5-5.5В, автоматически подстраивает свою чувствительность и имеет индикатор состояния. На первый взгляд — идеальное решение. А на второй…
В общем, исходя из статьи, кнопку нужно запитать от реле (5В), а сверху докупить стекло под выключатель. 5В в моем реле не оказалось, только 12 и 3.3, последнее я забрал прямо с пинов приемника.
Стекла у меня тоже не оказалось, так что я отрезал квадрат и заключил его в рамку, чтобы кривая кромка смотрелась получше. На первое время сойдет, думал я.
Индикация была доработана. Был добавлен индикатор работы aka подсветка на основе светодиода. Данная цепь подключается ко входу и управляющему выходу реле и служит индикатором выключения лампы.
Индикатор состояния реле оставил без изменений (просто вывел светодиод от реле).
Здесь желтым — подключение индикатора реле, зеленым — подключение индикатора питания, черный и красный отвечают за питание сенсора и фиолетовым подключается вывод сенсора.
Хотел добавить индикатор активации сенсора, но с ним появились первые проблемы.
Для управления реле нужно подавать низкий уровень на пин кнопки. По умолчанию сенсорная кнопка настроена так, чтобы подавать высокий при нажатии. Это легко исправляется установкой перемычек.
Только логика светодиода так не исправляется. В режиме триггера он светит непрерывно, но гаснет от активации сенсора. Это меня не устраивало, так что я придумал инвертирующую цепь. На кусочке макетки я влепил такую схему. Она и обеспечила нормальную индикацию. То есть на выключателе получилось 3 индикатора — для индикации приема радиосигнала, работы сенсора и состояния лампочки).
Время мучений
Казалось бы, проект завершен, установи выключатели и пользуйся. Но нет, все не так просто. После установки выключатели начали странно реагировать на руку (во время тестов все было более-менее): то убираешь руку — индикатор сенсора не тухнет, то подносишь руку — индикатор не загорается. Я не придал этому особого значения. Думал, само пройдет, сенсор откалибруется.Но со временем все стало только хуже. Спустя пару дней выключатели просто сошли с ума и щелкали без конца. Что же случилось?
Не могу утверждать точно (не разработчик я сенсорных кнопок), но я обнаружил любопытную особенность радиореле. При замыкании реле напряжение на линии 3.3 падает на 0.3 Вольта. Казалось бы, не очень много, вот только чувствительность сенсора зависит от напряжения, да плюс рядом с кнопкой находится индикатор лампочки, на котором переменный ток 220 Вольт. Могу предположить, что постоянные прыжки напряжения плюс помехи из сети сводят кнопки с ума…
В общем, в качестве временного решения я просто заменил сенсорные кнопки на обычные. Модель пришлось немного переделать, схема упростилась до двух индикаторов.
А сам стал думать как бы сделать рабочие сенсорные.
После некоторых раздумий мне пришло в голову применить ИК-датчики.
Дополнительная информация
Они тоже зависимы от напряжения, но в них хотя бы есть реостат для регулировки чувствительности. Я немного поправил модель под китайский сенсор, а в самом сенсоре перепаял диоды. В итоге вышло нечто такое.
Также я сделал окошко под ИК-лучи и в целом немного поменял накладку под стекло.
Индикатор активации ИК-датчика упростился до вывода оного с его платы, потому что датчик по умолчанию использует логику триггера низкого уровня, в отличие от сенсорной кнопки.
Пришлось также повозиться с настройкой чувствительности, в основном из-за скачков питающего напряжения: снимаешь стекло, настраиваешь, надеваешь стекло — включается хорошо, выключается плохо; снимаешь стекло, крутишь, надеваешь стекло — включается плохо, выключается никак. И так до победного. В итоге мне кое-как удалось настроить, чтоб реагировало более-менее хорошо и так, и так.
Но и тут меня ждало разочарование… Одним солнечным утром я заметил, что солнце попадает на выключатель, а он начинает судорожно мигать. Кажется, я не предусмотрел, что ИК-датчики лучше вообще не подвергать солнечному свету. Хотя на рассеянный свет реакции никакой. Решил пока оставить как есть — зима, солнца мало, да и помещение без окон. Но решение никуда не годится. Кнопки намного лучше, по крайней мере с этими радиореле.
Эпилог
Что в итоге? Эксперименты показали, что сенсоры нормально работать с радиореле не хотят. Видимо, удешевление блока питания оказалось критическим. Между тем, если в схему добавить стабилизатор на 2.7 Вольт для питания сенсора, глюки пропадут и им можно будет пользоваться. Пробовать я это не стал, потому как мне просто надоело усложнять схему. Сначала индикатор, потом это. А дальше что? Если не получится можно попробовать подобрать чувствительность через настроечный конденсатор (есть на плате) и припаять дополнительную антенну. Но стоит ли овчинка выделки? Мне было интересно повозиться с проектом, когда это было простое решение на дешевых готовых модулях. Разводить плату, возиться с smd пайкой — совершенно иной уровень извращений. Даже с индикатором уже вышел перебор. Возможно, правда, все дело в волшебном стекле от Livolo, но я крайне в этом сомневаюсь. В общем и целом, не рекомендую начинать, если кроличья нора показалась вам чересчур глубокой.Касаемо ИК-датчиков, это более предсказуемое, но менее универсальное решение. Да, они не сходят с ума сами, но стоит датчику словить солнечный блик, и вот вам ложное срабатывание. Допустим, для какого-то глухого помещения решение нормальное, но в жилом доме их не так много.
Наконец, удлинение кнопки. На мой взгляд, самое беспроблемное решение. Индикация работы лампы есть, ложных срабатываний нет. Нажимать в целом удобно, не намного хуже кнопки обычного выключателя. Да, без претензии на футуризм, но дело делает.
Пока что как раз с помощью реле с кнопкой и радиовыключателя сделал проходной выключатель без штробления стен.
В дальнейшем думаю написать про управление через хаб с помощью умного дома, а пока с выводами все. Вот такой вот дурацкий проект. Всем счастливых праздников!
Самые обсуждаемые обзоры
+84 |
4667
153
|
+45 |
3321
107
|
+64 |
4843
78
|
Получается, что если обычный выключатель — проблем нет.
Преимущества сенсоров не вижу, разве что на каком-то рыбо-мясо производстве.
Меня наоборот, тач раздражает и я всего его принципиально избегаю, даже заменял один раз панель на кнопки.
А статья классная, «всё перепробовал – ничего не вышло» даже интересней.
Кстати, у ESP32 (как для меня сюрпризом недавно стало) есть встроенный тач сенсор прямо на GPIO пинах без обвязки. В ESPHome он тоже поддержан, буквально две строчки конфига и можно трогать контроллер пальцами за ножки. Или вывести куда-нибудь на металлическую площадку для кнопок или датчика.
В общем, не рекомендую TTP223 к применению.
А также для чего вот это:
У соноффа встроен wifi модуль в этом реле, разве нет?
И почему не использовать стандартный выключатель без фиксации, зачем эти мучения с сенсорами?
ну фиг с ним с установкой реле-приемников. а кнопку-то зачем свою городить? ради индикации или что? у меня в кухне, ванной, паре комнат, и даже в гараже стоят беспроводные выключатели — и всё это работает. и я, имея зд принтер, не стал ничего изобретать, потому что комплект в стиле тройной выключатель+3 приемника обошелся мне что-то типа в 10 или 15 баксов
при остром желании наверно можно объединить сенсорные модули с такими передатчиками, возможно на батарейном питании они будуд вести себя адекватно. ну и у ttp223 есть возможность изменять чувствительность, там конденсатор есть специальный для этого дела, я только не помню уже который, надо смотреть описание на али у продавцов