Сетевой фильтр Франкенштейна. Небольшой ремонт, обернувшийся большой переделкой

В один прекрасный день (а вернее ночь), у меня сломался сетевой фильтр. Как я это понял? Утро меня встретило отсутствием интернета и зарядки на телефоне. Тумблер на сетевом фильтре был включен, но рядом с ним зловеще тлел багровый индикатор перегрузки сети, а девайс при этом угрожающе потрескивал. Очевидно, ему пришел конец. Но 5 стадий принятия горя я проходить не стал, а просто воскресил несчастного с «небольшими усовершенствованиями». Не обошлось без «умного дома». Подробнее об этом под катом.
Сначала поговорим о сетевых фильтрах в целом, и о моей модели в частности. Для чего они нужны? Очевидно, сетевой фильтр должен фильтровать помехи в сети. Фактически, современный вариант должен состоять из минимум двух блоков — варисторной защиты, подавляющий высоковольтные скачки напряжения и LC-фильтра, снижающего высокочастотные помехи от импульсных цепей современных топологий блоков питания.

Сам термин ничего кроме этого не означает, но язык — гибкая штука. Так что для краткости удлинители со встроенными фильтрами стали просто называть сетевыми фильтрами.

Но, повторяю, язык — гибкая штука. Так что когда маркетологи выкинули все дорогостоящие фильтрующие цепи из удлинителей, они продолжили называть это «сетевой фильтр», и даже прижилось.


В целом практическое назначение сетевого фильтра — защита устройства от перегрузок сети и ограничение распространения помех на чувствительную аналоговую аппаратуру. Если первая задача до сих пор актуальна, то вторая скорее уходит в прошлое (хотя аудиофилы поспорят) с окончательным приходом цифровой эры. Однако иногда отсутствие наводок полезно и для цифровых устройств, так что лишним этот узел точно не будет.
Во время своего расцвета (до прихода маркетологов) в удлинители также начали интегрировать защитные цепи на основе реле (реле напряжения). В момент скачка защита срабатывает и отрубает удлинитель от внешней сети. Сама цепь защиты при этом продолжает работать. Вопрос необходимости такого решения дискуссионный (так как дублирует варистор), но если есть, хуже не будет.
Удлинитель Most HV6, который у меня сломался спустя более 10 лет эксплуатации, как раз имеет перечисленные ранее защитные цепи.

Все они умещаются на одной двуслойной плате.

Цепь защиты с реле аналоговая и работает на основе сравнение напряжения с помощью стабилитронов и биполярных транзисторов. Целиком кроме конденсаторов и реле расположена на нижней стороне платы. Питание осуществляется через диодный мост и сглаживающий конденсатор (развязки от сети нет). Для понижения напряжения используется smd-резистор. От нагрева дорожки около него пожелтели и вспучились. Но это не причина неисправности.

Сверху расположен LC-фильтр и варисторная защита.

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

Последний элемент — автоматический предохранитель. Его «выбивает» от перегрузки, но от нажатия он восстанавливается.

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



Мне попалась вот такая «куласная» кнопка на 30 китайских Ампер. Она так же, как и оригинал, двойная, то есть отсекает фазу и ноль. Оставалось только дождаться приезда и запаять ее на место…

Но пока я ждал, мне пришло в голову, что я давно хотел себе «умный» удлинитель. Насколько он может быть умен? Современный умный удлинитель это устройство, способное удаленно, по расписанию, сценарию или в ручном режиме управлять подачей напряжения на розетки (в дешевых управляет всеми розетками только одновременно). Данная функция полезна для уменьшения износа аккумуляторов на зарядке (например, в смартфонах), может удаленно запускать компьютер, перезагружать роутер, управлять освещением и многое другое. Также существуют модели, оснащенные мониторингом энергопотребления. Думаю, пояснять его полезность излишне. И наконец, самые продвинутые мониторят перегрузки сети и имеют встроенную защиту.

В моем удлинителе оказалось все необходимое для переделки в умный — много свободного места а также качественные компоненты и материалы корпуса. Такие до сих пор продаются по цене 1500 и выше! А ко всему еще и встроенная защита. Оставалось только впихнуть недостающие кишки… Кстати, что по ним?
Для отсечения напряжения используют симисторные цепи или реле. Последние чаще всего. Симисторы хороши тем, что позволяют не только включать-выключать, но и регулировать мощность от 0 до 100%. Кроме того, они бесшумны, а их ресурс значительно выше.

Реле в свою очередь громко щелкают контактами (и в процессе могут «залипнуть»), неспособны регулировать, но крайне доступны и легки в управлении, в отличие от симисторов. Говорю я о легкости в сравнении именно с «голыми» полупроводниками. В составе модулей твердотельного реле они ведут себя не хуже обычных реле, но зато значительно дороже. Дешевизна и компактность обычных определило их место в моем проекте.

Для мониторинга напряжения я использовал аналоговые датчики ACS-712. Это датчики на основе эффекта Холла. Они измеряют токи, возникающие в проводнике перпендикулярно его сечению под воздействием магнитного поля.

Защитная цепь уже есть в фильтре, но я решил интегрировать ее в управляющий контур. Для этого вывод одного из транзисторов я через резисторный делитель отправил на вход микроконтроллера. В момент срабатывания защиты на нем появляется 18 вольт, так что, думаю, вопрос о необходимости делителя отпадает. При этом если его притянуть к земле, защита сбрасывается в рабочее состояние. Также нужно синхронизировать землю цепи с управляющим контуром. При работе с этой цепью важно понимать, что развязки от сети 220 в ней нет, а работа с высоким напряжением ОПАСНА ДЛЯ ЖИЗНИ. Так что не стоит забывать о технике безопасности.

Почему именно этот вывод? Не углубляясь в работу цепи так и не скажешь, а на это, пожалуй, уйдет еще статья. Так что просто исходим из логики «транзистор делает вкл-выкл», а мы делаем «дёрг-дёрг».
Итак, пора поговорить о схеме в целом. В качестве «мозга» устройства я избрал дешевый модуль ESP-12F. Он имеет 3.3В логику и 1В АЦП. Реле были выбраны дешевые китайские 5В модули, а датчик тока изначально планировался на 20А. Исходя из этого в схеме появляются некоторые особенности.

Первая — 5V реле напрямую не работают с 3.3V логикой. Но это были единственные компактные реле с обвязкой, которые влезали в корпус (и стоили 40 рублей/штука). Есть небольшая хитрость, которая способна подружить реле с микроконтроллером. Для этого нужно подключить светодиод последовательно входу реле. При этом на светодиоде падает пресловутые 1.7 вольт, которых не хватало, а реле наконец-то способно триггериться низким логическим уровнем МК. Поскольку он еще и зажигается при этом, то работает как индикатор. Так что я просто выпаял зеленые светодиоды из самого реле и подключил их по схеме:
Что касается датчика тока, он рассчитан на 5 вольт. При этом при нуле ампер он выдает 2.5В (он также определяет направление тока). Это сразу поднимет в потолок показания нашего АЦП (рассчитанного на 1В), так что для корректной работы необходим резисторный делитель 1:4 (2 к 8 для 10 кОм).
Примерно по тем же соображениям рассчитываем делитель для мониторинга защиты (16.7 к 83.3 для 100кОм).
Остается запитать от БП 5В со стабилизатором на 3.3(для МК) и все заработает!

Получив схему, я приступил к реализации проекта. Реле я купил локально, датчик тока у меня имелся, ESP-12F был небольшой пакетик, а БП в принципе валялось много в виде зарядок для телефонов. Также были извлечены силовые провода из старого компьютерного БП, а также по мелочи рассыпуха и низковольтные проводки.
Начнем с самого простого, но трудоемкого — блока управления розетками. У него простейшая схема и понятная логика управления, но придется попаять.
Выбираем колодку и разрезаем ее так, чтобы получить 6 отдельных — по одной на розетку. Делаем отверстия и паяем к ним провода от реле. Колодкам больше негде держаться, крепления слишком редкие. Ничего! Поправим 3д-печатными стойками, которые крепятся к оригинальным трением.

Теперь раскладываем реле и укладываем провода. Укладка немаловажна, поскольку силовые высоковольтные цепи необходимо надежно изолировать от управляющих контуров. Снизу кладем управляющую реле 6-канальную шину (у меня выполнена куском шлейфа IDE). На ней должны лежать провода питания реле 5В, белые потолще. Сверху лежат толстые провода 220 вольт, соединяющие все реле с одной стороны с сетью, а с другой с управляемыми розетками. Провода взял с толстыми жилами, от старого компьютерного БП.

Теперь в крышке наметим отверстия под светодиоды, а их подготовим, выведя длинными проводами и вклеив в отверстия.


Подключив это к микроконтроллеру, уже получаем заготовку для умных розеток!
Далее подключаем датчик тока ACS-712. В целом, ничего сложного нет, подводим питание 5 вольт и резисторный делитель. Я немного залил контакты термоклеем для надежности.

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

Перед пайкой МК в удлинитель лучше прошить ее сгенерированным по умолчанию кодом. Заходим в ESPHome Builer и ищем там зеленую кнопку «New device». Выбираем параметры платы и способ загрузки (bin-файл). Затем прошиваем в любой программе UART-загрузчика или попросту открыв хаб ESPHome. Можно использовать USB-TTL программатор или ардуино. Кнопки сброса и программирования я после прошивки выбросил.

Для питания использовал БП 5В 1А от какого-то старого девайса. Его хватит с запасом.

Укладываем провода и дело остается за программой!

Прошивка, как и обновленное устройство, делится на 3 основные части (кроме конфигурации по умолчанию). Первая — розетки.
Ну и наконец сенсор тока и мощности. Он сделан с использованием лямбды и кастомных компонентов, что намного сложнее всего, что описывалось ранее.
Чтобы закинуть файл компонента в HomeAssistant, надо использовать файловый сервер. Я использовал дополнение Samba-share (гайд по использованию). Закинуть нужно сюда:

После этого компонент должен без ошибок быть виден конфигурации ESPHome. Полный код компонента прилагаю.
Теперь, когда конфигурация завершена, можно добавить автоматизации. Вот эти для зарядки гаджетов только в ночное время. У меня есть набор запасных устройств — повербанки, колонки, наушники и т.д. От постоянного стояния на зарядке аккумуляторы портятся. Поэтому если настроить режим прерывания, то это позволит сэкономить электроэнергию и ресурс батарей. Если бы это был аквариум, думаю, принцип был бы такой же.
Также можно автоматизировать выключение 3д принтера после завершения печати, если он управляется klipper или octoprint.
В homeassistant можно интегрировать любых голосовых ассистентов и управлять с их помощью состоянием розеток голосом. Можно пробросить умный дом в сеть, и включать удаленно, например, сервер, или домашним компьютер. Это позволяет, скажем, выполнять удаленно вычисления или другую работу, при этом не оставляя железо работать весь день.
Для того, чтобы перезагрузить роутер, текущего кода для розеток мало, ведь роутер раздает через сеть команды, а выключив его удаленно, мы сразу потеряем соединение. Поэтому в программу розетки добавим скрипт и кнопку. По нажатию скрипт перезагрузит роутер, и удлинитель сразу подключится к нему снова.
Пока что, думаю, довольно примеров. В целом, я доволен получившимся результатом и бюджетом проекта.
Остальное было в наличии. Учитывая, что самый хиленький умный удлинитель стоит около 1000 (а в нем особо ничего нет), считаю, что вариант переделки более чем оправдан, особенно в случае качественного сетевого фильтра, взятого за основу. Единственное, что я не рассчитал, эту логику индикации реле: когда устанавливал, мне казалось логичным, что загорается либо красный, либо зеленый. Но по итогу оказалось, что красные горят все время. Но это даже как-то празднично выглядит…

Ну а ваши мысли по этому поводу буду рад услышать в комментариях. Поздравляю всех со Старым Новым Годом!
Введение
Сначала поговорим о сетевых фильтрах в целом, и о моей модели в частности. Для чего они нужны? Очевидно, сетевой фильтр должен фильтровать помехи в сети. Фактически, современный вариант должен состоять из минимум двух блоков — варисторной защиты, подавляющий высоковольтные скачки напряжения и LC-фильтра, снижающего высокочастотные помехи от импульсных цепей современных топологий блоков питания.

Сам термин ничего кроме этого не означает, но язык — гибкая штука. Так что для краткости удлинители со встроенными фильтрами стали просто называть сетевыми фильтрами.

Но, повторяю, язык — гибкая штука. Так что когда маркетологи выкинули все дорогостоящие фильтрующие цепи из удлинителей, они продолжили называть это «сетевой фильтр», и даже прижилось.
Яркий образчик


В целом практическое назначение сетевого фильтра — защита устройства от перегрузок сети и ограничение распространения помех на чувствительную аналоговую аппаратуру. Если первая задача до сих пор актуальна, то вторая скорее уходит в прошлое (хотя аудиофилы поспорят) с окончательным приходом цифровой эры. Однако иногда отсутствие наводок полезно и для цифровых устройств, так что лишним этот узел точно не будет.
Во время своего расцвета (до прихода маркетологов) в удлинители также начали интегрировать защитные цепи на основе реле (реле напряжения). В момент скачка защита срабатывает и отрубает удлинитель от внешней сети. Сама цепь защиты при этом продолжает работать. Вопрос необходимости такого решения дискуссионный (так как дублирует варистор), но если есть, хуже не будет.
Удлинитель Most HV6, который у меня сломался спустя более 10 лет эксплуатации, как раз имеет перечисленные ранее защитные цепи.

Все они умещаются на одной двуслойной плате.

Цепь защиты с реле аналоговая и работает на основе сравнение напряжения с помощью стабилитронов и биполярных транзисторов. Целиком кроме конденсаторов и реле расположена на нижней стороне платы. Питание осуществляется через диодный мост и сглаживающий конденсатор (развязки от сети нет). Для понижения напряжения используется smd-резистор. От нагрева дорожки около него пожелтели и вспучились. Но это не причина неисправности.

Сверху расположен LC-фильтр и варисторная защита.

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

Последний элемент — автоматический предохранитель. Его «выбивает» от перегрузки, но от нажатия он восстанавливается.

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



Мне попалась вот такая «куласная» кнопка на 30 китайских Ампер. Она так же, как и оригинал, двойная, то есть отсекает фазу и ноль. Оставалось только дождаться приезда и запаять ее на место…

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

В моем удлинителе оказалось все необходимое для переделки в умный — много свободного места а также качественные компоненты и материалы корпуса. Такие до сих пор продаются по цене 1500 и выше! А ко всему еще и встроенная защита. Оставалось только впихнуть недостающие кишки… Кстати, что по ним?
Начало истории
Для отсечения напряжения используют симисторные цепи или реле. Последние чаще всего. Симисторы хороши тем, что позволяют не только включать-выключать, но и регулировать мощность от 0 до 100%. Кроме того, они бесшумны, а их ресурс значительно выше.

Реле в свою очередь громко щелкают контактами (и в процессе могут «залипнуть»), неспособны регулировать, но крайне доступны и легки в управлении, в отличие от симисторов. Говорю я о легкости в сравнении именно с «голыми» полупроводниками. В составе модулей твердотельного реле они ведут себя не хуже обычных реле, но зато значительно дороже. Дешевизна и компактность обычных определило их место в моем проекте.

Для мониторинга напряжения я использовал аналоговые датчики ACS-712. Это датчики на основе эффекта Холла. Они измеряют токи, возникающие в проводнике перпендикулярно его сечению под воздействием магнитного поля.

Защитная цепь уже есть в фильтре, но я решил интегрировать ее в управляющий контур. Для этого вывод одного из транзисторов я через резисторный делитель отправил на вход микроконтроллера. В момент срабатывания защиты на нем появляется 18 вольт, так что, думаю, вопрос о необходимости делителя отпадает. При этом если его притянуть к земле, защита сбрасывается в рабочее состояние. Также нужно синхронизировать землю цепи с управляющим контуром. При работе с этой цепью важно понимать, что развязки от сети 220 в ней нет, а работа с высоким напряжением ОПАСНА ДЛЯ ЖИЗНИ. Так что не стоит забывать о технике безопасности.

Почему именно этот вывод? Не углубляясь в работу цепи так и не скажешь, а на это, пожалуй, уйдет еще статья. Так что просто исходим из логики «транзистор делает вкл-выкл», а мы делаем «дёрг-дёрг».
Итак, пора поговорить о схеме в целом. В качестве «мозга» устройства я избрал дешевый модуль ESP-12F. Он имеет 3.3В логику и 1В АЦП. Реле были выбраны дешевые китайские 5В модули, а датчик тока изначально планировался на 20А. Исходя из этого в схеме появляются некоторые особенности.

Первая — 5V реле напрямую не работают с 3.3V логикой. Но это были единственные компактные реле с обвязкой, которые влезали в корпус (и стоили 40 рублей/штука). Есть небольшая хитрость, которая способна подружить реле с микроконтроллером. Для этого нужно подключить светодиод последовательно входу реле. При этом на светодиоде падает пресловутые 1.7 вольт, которых не хватало, а реле наконец-то способно триггериться низким логическим уровнем МК. Поскольку он еще и зажигается при этом, то работает как индикатор. Так что я просто выпаял зеленые светодиоды из самого реле и подключил их по схеме:
Что касается датчика тока, он рассчитан на 5 вольт. При этом при нуле ампер он выдает 2.5В (он также определяет направление тока). Это сразу поднимет в потолок показания нашего АЦП (рассчитанного на 1В), так что для корректной работы необходим резисторный делитель 1:4 (2 к 8 для 10 кОм).
Примерно по тем же соображениям рассчитываем делитель для мониторинга защиты (16.7 к 83.3 для 100кОм).
Остается запитать от БП 5В со стабилизатором на 3.3(для МК) и все заработает!

Получив схему, я приступил к реализации проекта. Реле я купил локально, датчик тока у меня имелся, ESP-12F был небольшой пакетик, а БП в принципе валялось много в виде зарядок для телефонов. Также были извлечены силовые провода из старого компьютерного БП, а также по мелочи рассыпуха и низковольтные проводки.
Поехали!
Начнем с самого простого, но трудоемкого — блока управления розетками. У него простейшая схема и понятная логика управления, но придется попаять.
Выбираем колодку и разрезаем ее так, чтобы получить 6 отдельных — по одной на розетку. Делаем отверстия и паяем к ним провода от реле. Колодкам больше негде держаться, крепления слишком редкие. Ничего! Поправим 3д-печатными стойками, которые крепятся к оригинальным трением.

Теперь раскладываем реле и укладываем провода. Укладка немаловажна, поскольку силовые высоковольтные цепи необходимо надежно изолировать от управляющих контуров. Снизу кладем управляющую реле 6-канальную шину (у меня выполнена куском шлейфа IDE). На ней должны лежать провода питания реле 5В, белые потолще. Сверху лежат толстые провода 220 вольт, соединяющие все реле с одной стороны с сетью, а с другой с управляемыми розетками. Провода взял с толстыми жилами, от старого компьютерного БП.

Теперь в крышке наметим отверстия под светодиоды, а их подготовим, выведя длинными проводами и вклеив в отверстия.


Подключив это к микроконтроллеру, уже получаем заготовку для умных розеток!
Далее подключаем датчик тока ACS-712. В целом, ничего сложного нет, подводим питание 5 вольт и резисторный делитель. Я немного залил контакты термоклеем для надежности.

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

Перед пайкой МК в удлинитель лучше прошить ее сгенерированным по умолчанию кодом. Заходим в ESPHome Builer и ищем там зеленую кнопку «New device». Выбираем параметры платы и способ загрузки (bin-файл). Затем прошиваем в любой программе UART-загрузчика или попросту открыв хаб ESPHome. Можно использовать USB-TTL программатор или ардуино. Кнопки сброса и программирования я после прошивки выбросил.
Дополнительная информация

Для питания использовал БП 5В 1А от какого-то старого девайса. Его хватит с запасом.

Укладываем провода и дело остается за программой!

Имплантация личности
Прошивка, как и обновленное устройство, делится на 3 основные части (кроме конфигурации по умолчанию). Первая — розетки.
switch:
- platform: gpio
pin: GPIO01
name: "PowerSocket #0"
id: relay_0
- platform: gpio
pin: GPIO03
name: "PowerSocket #1"
id: relay_1
- platform: gpio
pin: GPIO05
name: "PowerSocket #2"
id: relay_2
- platform: gpio
pin: GPIO04
name: "PowerSocket #3"
id: relay_3
- platform: gpio
pin: GPIO00
name: "PowerSocket #4"
id: relay_4
- platform: gpio
pin: GPIO02
name: "PowerSocket #5"
id: relay_5
Здесь ничего объяснять, думаю, не нужно. Вторая часть относится к защите.output:
- platform: gpio
pin: GPIO15
id: output1
button:
- platform: output
name: "Reset Protection"
output: output1
duration: 200ms
binary_sensor:
- platform: gpio
pin: GPIO13
name: "Overload Sensor"
Кнопка прижимает ресет защиты к земле на 200ms и может перезагружать защиту без щелканья тумблером. Сенсор перегрузки имеет два состояния — ошибка и норма.Ну и наконец сенсор тока и мощности. Он сделан с использованием лямбды и кастомных компонентов, что намного сложнее всего, что описывалось ранее.
sensor:
- platform: custom
lambda: |-
auto acs712_sensor = new ACS712Sensor();
App.register_component(acs712_sensor);
return {acs712_sensor->current_sensor, acs712_sensor->power_sensor};
sensors:
- name: "Amperes"
unit_of_measurement: A
accuracy_decimals: 2
- name: "Watts"
unit_of_measurement: W
accuracy_decimals: 2
Дело в том, что расчет мощности в цепи переменного тока — задача нетривиальная. Для ее реализации нужно считывать несколько раз в секунду значения тока (на разных точках синусоиды) и усреднять их с применением цифровых фильтров. Для этого я подключил стороннюю библиотеку ACS712, а также руками закинул в директорию ESPHome модифицированный файл кастомного компонента. В конфигурации подключил их так:esphome:
name: smart-power-strip
friendly_name: Smart power strip
libraries:
- https://github.com/RobTillaart/ACS712.git
includes:
- components/ACS/acs712_component.h
В ходе теста выяснилось, что библиотека почему-то показывает значения в 10 раз меньше нормальных (паяльная станция показывала 50 ватт вместо 500), причем линейно. В файле компонента я увеличил значения в 10 раз. Также выяснилось, что датчик на 20 ампер вообще не показывает ничего в диапазоне 0-1000 Вт. Пришлось заменить его на 5-амперный. Так максимальная показываемая мощность теперь стала 1100 Вт, но для фильтра для ПК и периферии этого достаточно. Для настройки под себя в файле нужно изменить строку инициализации. Конкретные значения можно узнать из гитхаба библиотеки.acs712_component.h
#include "ACS712.h"
class ACS712Sensor : public PollingComponent {
public:
ACS712 *ACS = new ACS712(A0, 1.0, 1023, 185); //Параметры инициализации для ACS712 5А и ESP12
Sensor *current_sensor = new Sensor();
Sensor *power_sensor = new Sensor();
ACS712Sensor() : PollingComponent(15000) {}
void setup() override {
ACS->autoMidPoint();
ESP_LOGD("acs712", "MidPoint: %d", ACS->getMidPoint());
ACS->setNoisemV(43);
ESP_LOGD("acs712", "Noise mV: %d", ACS->getNoisemV());
}
void update() override {
float average = 0;
//uint32_t start = millis();
int count = 5;
for (int i = 0; i < count; i++) {
average += ACS->mA_AC();
}
float amps = average / count / 1000.0;
// float mA = ACS.mA_AC(50,10);
//uint32_t duration = millis() - start;
//ESP_LOGD("acs712", "Time: %d A: ", duration, amps);
current_sensor->publish_state(amps*10); //увеличил в 10 раз
power_sensor->publish_state(amps * 2200); //увеличил в 10 раз
}
};
Чтобы закинуть файл компонента в HomeAssistant, надо использовать файловый сервер. Я использовал дополнение Samba-share (гайд по использованию). Закинуть нужно сюда:

После этого компонент должен без ошибок быть виден конфигурации ESPHome. Полный код компонента прилагаю.
Дополнительная информация
esphome:
name: smart-power-strip
friendly_name: Smart power strip
libraries:
- https://github.com/RobTillaart/ACS712.git
includes:
- components/ACS/acs712_component.h
esp8266:
board: esp01_1m
# Enable logging
logger:
# Enable Home Assistant API
api:
ota:
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
captive_portal:
switch:
- platform: gpio
pin: GPIO01
name: "PowerSocket #0"
id: relay_0
- platform: gpio
pin: GPIO03
name: "PowerSocket #1"
id: relay_1
- platform: gpio
pin: GPIO05
name: "PowerSocket #2"
id: relay_2
- platform: gpio
pin: GPIO04
name: "PowerSocket #3"
id: relay_3
- platform: gpio
pin: GPIO00
name: "PowerSocket #4"
id: relay_4
- platform: gpio
pin: GPIO02
name: "PowerSocket #5"
id: relay_5
output:
- platform: gpio
pin: GPIO15
id: output1
button:
- platform: output
name: "Reset Protection"
output: output1
duration: 200ms
binary_sensor:
- platform: gpio
pin: GPIO13
name: "Overload Sensor"
sensor:
- platform: custom
lambda: |-
auto acs712_sensor = new ACS712Sensor();
App.register_component(acs712_sensor);
return {acs712_sensor->current_sensor, acs712_sensor->power_sensor};
sensors:
- name: "Amperes"
unit_of_measurement: A
accuracy_decimals: 2
- name: "Watts"
unit_of_measurement: W
accuracy_decimals: 2
Теперь, когда конфигурация завершена, можно добавить автоматизации. Вот эти для зарядки гаджетов только в ночное время. У меня есть набор запасных устройств — повербанки, колонки, наушники и т.д. От постоянного стояния на зарядке аккумуляторы портятся. Поэтому если настроить режим прерывания, то это позволит сэкономить электроэнергию и ресурс батарей. Если бы это был аквариум, думаю, принцип был бы такой же.
Дополнительная информация
automation:
automation:
- alias: 'Turn on PowerSocket #0 at midnight'
trigger:
platform: time
at: '00:00:00'
action:
service: switch.turn_on
target:
entity_id: switch.power_socket_0 # Заменить на правильный entity_id
- alias: 'Turn off PowerSocket #0 at 8 AM'
trigger:
platform: time
at: '08:00:00'
action:
service: switch.turn_off
target:
entity_id: switch.power_socket_0 # Заменить на правильный entity_id
Также можно автоматизировать выключение 3д принтера после завершения печати, если он управляется klipper или octoprint.
Дополнительная информация
automation:
- alias: "Turn off PowerSocket after print finishes"
trigger:
platform: state
entity_id: binary_sensor.klipper_printer_state # или ваша сущность, которая отслеживает состояние
to: 'idle' # или состояние, которое обозначает завершение печати
action:
service: switch.turn_off
target:
entity_id: switch.powersocket_1 # Идентификатор вашей розетки
В homeassistant можно интегрировать любых голосовых ассистентов и управлять с их помощью состоянием розеток голосом. Можно пробросить умный дом в сеть, и включать удаленно, например, сервер, или домашним компьютер. Это позволяет, скажем, выполнять удаленно вычисления или другую работу, при этом не оставляя железо работать весь день.
Для того, чтобы перезагрузить роутер, текущего кода для розеток мало, ведь роутер раздает через сеть команды, а выключив его удаленно, мы сразу потеряем соединение. Поэтому в программу розетки добавим скрипт и кнопку. По нажатию скрипт перезагрузит роутер, и удлинитель сразу подключится к нему снова.
Дополнительная информация
script:
script:
- id: reboot_router
then:
- switch.turn_off: relay_0
- delay: 10s # Подождать 10 секунд (выключение роутера)
- switch.turn_on: relay_0
- delay: 5s # Подождать 5 секунд (включение роутера)
button:
- platform: template
name: "Reboot Router"
icon: mdi:restart
turn_on:
service: script.reboot_router # Это запускает скрипт в ESPHome
Пока что, думаю, довольно примеров. В целом, я доволен получившимся результатом и бюджетом проекта.
- Реле — 40руб. x6
- Esp8266 — 86руб x1
- ACS-712 5A — 80руб. x1
- Кнопка (починка) — 56руб. x1
Остальное было в наличии. Учитывая, что самый хиленький умный удлинитель стоит около 1000 (а в нем особо ничего нет), считаю, что вариант переделки более чем оправдан, особенно в случае качественного сетевого фильтра, взятого за основу. Единственное, что я не рассчитал, эту логику индикации реле: когда устанавливал, мне казалось логичным, что загорается либо красный, либо зеленый. Но по итогу оказалось, что красные горят все время. Но это даже как-то празднично выглядит…

Ну а ваши мысли по этому поводу буду рад услышать в комментариях. Поздравляю всех со Старым Новым Годом!

Самые обсуждаемые обзоры
+150 |
10545
497
|
+38 |
1949
39
|
+17 |
2237
59
|
+61 |
2034
44
|
+20 |
1832
28
|
на один такой намотал провод для компактности, а потом обнаружил «резьбу» от провода на пластике. лет 5 им срок службы.
Esp8266 — 86руб x1
ACS-712 5A — 80руб. x1
Я, Esp03 с 512кБайтами памяти купленной еще в год анонса, применил спустя 5 лет для WLED. Сейчас использую ESP32, хотя уже пора переходить на ESP32-S3/C3
Если кому надо, то есть и готовые варианты.
В ближайшем будущем придется туда еще подключить сервер с хоум ассистентом.
Приходится вставлять удлинитель в удлинитель, что бы розеток добавить.
Правда удаленного управления на этом участке мне особо не надо.
www.bhphotovideo.com/c/products/vertical-power-strips/ci/58129
Самое обидное, что провод почти всегда сопливый.
По этому я иногда практикую отдельно покупку колодки на необходимое количество розеток и отдельную покупку провода с нужным мне сечением.
Ну и вилка конечно.
В итоге получаю нужную мне вещь и дешевле магазинной.
Конечно если нужно на 2-3 розетки и соплепровод, то тогда проще и дешевле готовое китайское за 300 рублей купить.
Перестроечники нам обещали, придёт рынок, порешает все вопросы, на деле оказалось сплошь кособокая монополия производителей.
Поэтому с учётом региональной особенности на постсоветской территории распространены удлинители двух видов: с круглыми неглубокими розетками (под советскую вилку) и глубокие schuko с заземлением. А ваш вариант — из Европы, europlug + schuko с заземлением.
www.zis.ru/
Там еще хватает подобных
Есть простые статьи по доработке сетевых фильтров? Типа вот сюда варистор допаять, а вот суда конденсатор…
можетимеет смысл. В сети может быть небольшое постоянное напряжение, например 220В переменного тока и 0.5В постоянного и вот это постоянное напряжение конденсаторы задержат полностью. Получается что переменному току тут легче пройти, чем постоянной составляющей, для которой есть некоторая преграда. Диоды в нормальной работе как я понимаю полностью закрыты, а открываются при аварийной ситуации когда очень большой ток и конденсаторов не хватает, тогда фильтр просто перестает работать.Я сам тут с другой стороны, могу включить нагрузку через диод, обогреватель например, чтобы мощность понизить. Для аудиофилов мы зло ))
А обычным людям пригодятся фильтры от ВЧ помех, таких много на разные токи
Электронщик я не профильный, но из того что мне видится по схеме:
— диоды будут открываться всегда при превышении на каждом порога открытия, т.е. 0,7В*3=2,1В — т.е. встречно параллельные цепочки эквивалентны перемычке как только напряжение превысит 2 Вольта. Смысл?
— электролиты там суммарно = 20мФ, что на 50Гц даёт 0,16Ом сопротивления. Но! Нарисованы же полярные, а 2 Вольта туда будут прилетать обоих полярностей. Кроме того, обычные электролиты не любят работать как «проходные» силовые — от больших токов они быстро деградируют.
От постоянки в сети разве что могут усиленно греться и гудеть железные тороидальные трансформаторы. Да и то, видимо только те, что собраны без запаса.
Мне кажется схему придумали китайцы.
Полярные конденсаторы возможно сами формируют некоторое напряжение смещение на себе при переменном токе. А может при напряжении менее 2.1В любой полярности они нормально работают. Если усилитель например 20Вт, ток через них 0.1А, через каждый в отдельности около 0.01А, что для силовых конденсаторов по сути ноль. И напряжение тоже почти ноль, 0.16 Ом * 0.1А = 0.016В, думаю ничего электролитам не будет при таком напряжении рабочем. Диоды будут закрыты, конденсаторы отсекут постоянную составляющую, пока она не превысит 2.1В, вроде это обычная сеть, иногда меряю 220В по ошибке мультиметром в режиме DC и показывает типично менее 0.1В скачущие цифры, была бы постоянная составляющая думаю прибор бы показал.
Постоянка будет подмагничивать магнитопровод и появится фон 50Гц по питанию возможно, в дополнение к 100 Гц частота после диодного моста. Может еще что. Там аудиофилы милливольты отлавливают по всем цепям, а тот с блока питания пойдет шум какой-нибудь. Отзывы хорошие и схема думаю из ламповых времен, классическое что-то. Если нам не нужно, не факт что всем не нужно ))
Вот тут статья по теме
И картинка в поисковик подтянулась, китайцы из журнала Радио схему утянули или подобное что-то
Мне нужны «умные» розетки на удлинителе, причём такие, каких не продают. Хочу. Могу. Хобби.
как бы розеток 6, но кнопок 5)
Есть идея (и уже все куплено лет 5 назад) поиграться солнечными панелями. Раньше было нерентабельно и это не добавляло мотивации. Сейчас (слава правительству) цены на электричество стали ощутимее. Но даже сейчас это окупится если все лето использовать выработку панелей. В доме всегда на день есть потребители (стирка, сушилка овощей фруктов, насос бассейна и тд.). Запасать в аккумуляторе пока отбросим (он то есть — но пусть это будет опция).
Итак, ставим панелей на 500-1000Вт, к каждой из них подключаем сетевой инвертор (grid invertor):
и если мы потребляем, например, 500вт то все электричество утилизируется. Но если в какой-то момент наше потребление меньше выработки 200Вт например, то излишек уходит в сеть и электронный счетчик считает его тоже потребленным (читал об этом — может кто четко знает поправьте).
Ставить дорогущие инверторы на вход в дом, которые сами разруливают что куда отдавать, откуда брать и как считать вообще не вариант. То, что я находил (+ еще не уверен что они именно так работают) начинается от 2000$-3000$ и в задачу окупить панели не вписывается.
Идея в следующем: ставим на вход в дом датчик тока (аналогичный описанному в статье) и смотрим куда (в какую сторону) идет ток. Когда видим что начинаем отдавать в общую сеть — включаем нагрузку чтобы дополнительно потреблять или выключаем панели (например каждые 2 панели 300вт садим на отдельный gridinvertor и если они лишние отключаем их).
Набросок:
Как опция — еще несколько реле (розеток) с прописанным потреблением (например малый насос бассейна — 100вт — наползла тучка — вырубим его пока, появится яркое солнце — включим пусть гоняет воду)
Отдельный вопрос по тиристорному регулятору мощности (который режет куски синусоиды). Если я верно понял из большого обсуждения на ForumHouse — то он не будет работать в такой схеме (ну или большинство электронных счетчиков будут неверно все считать и не в мою пользу)
Собственно вопрос — получится ли это реализовать? На что наступлю?
За излишек отданный в сеть вам ещё и заплатят.
Да и если бы было подключение к официалам, то чтобы оплачивали отданное электричество нужно (насколько я узнавал) сертифицированный инвертор, и еще куча всего официального. Там цифры уже идут со многими нулями.
Вполне резонное требование. Мали ли чего кривого в общую сеть непонятное оборудование будет выдавать…
+ основной тен бойлера не годится — он 2кВт, а у меня лишние только 300Вт, например.
proza.ru/2004/08/31-26?ysclid=m60gjfm6oy560571897
У современных бытовых приборов же везде входные фильтры, не позволяющие гадить в сеть.
Светильники и лампы же у меня дома в основном Икея ранних выпусков и популярный в регионе Jazzway, интересно, как у них.
Просто много ранее, на заре таких игрушек, я встречал подобные шутки в виде отказов от установки подобного оборудования.
Холодильник хорошо переносит включения и выключения, он собственно так и работает. Работает от сети или солнечных панелей поочередно.
На в компьютере 311В постоянного напряжения, вообще можно через диод прозрачно переключать. Получается powerbank большой.
Еще есть литий железных аккумуляторов на 1 кВтч, но чтобы их ресурс не тратить пусть будут всегда заряжены на 70-80% и будут как-бы на черный день.
Главная функция системы замена генератора, если свет пропадет вдруг. Но в придачу понемногу и окупаться будет. Прикинул 400Вт самое оптимальное. 1000Вт летом девать некуда, 100Вт маловато, а тут что-то среднее. И излишков нет и достаточно для предотвращения аварий дома. Летом холодильник подпитает, зимой котел энергозависимый, хотя бы пару часов в день и дом уже не замерзнет.
>> 300Вт можно сделать через тиристорный регулятор или пропуском полуволн.
а вот тут, насколько я понимаю, так не получится.
>> Или поднять напряжение до 70В, тогда и будет 300Вт нагрузка на бойлере в 2 кВт.
да, тоже идея — но у меня бойлер самодельный — я легко могу второй тен на 300вт добавить. А вот как сделать плавное изменение напряжение на 2кВт бойлере в зависимости от того сколько в сеть утекает (по сигналам от микроконтроллера) — я не знаю. Да и сложные схемы паять не умею — мне бы что-то почти готовое и требующее больше программирования.
>> Микро инверторы стоят по 50$, не окупятся никогда.
я обдумываю микрогенерацию но 2 или 3 группы (восток, юг, запад) + даст возможность отключать одну из групп для регулировки генерации
Панели дешевеют постоянно, если не будет хватать проще новых поставить, чем сложные схемы подключения делать.
«Актуальные порно видео из категории БЕЛОЙ ДЕВУШКА КУЛАСНАЯ ФИГУРА БАЛШОЙ» )))))
P.s. ну и правильно, конечно, «кулисный» (это я не автору, а просто, может кто не знает).
habr.com/ru/companies/unwds/articles/390601/
З.Ы. итоговое хитросплетение проводов впечатляет. И название получившегося устройства в заголовке прикольное.
Коммутировать 3,3В реле через светодиод — это какая-то ошибка, СД сгорит от 50+мА.
Использование китайского выключателя ставит под сомнение весь проект — они асто горят от 1/10 номинального тока.
Датчик показывает х0,1 — да и ладно, разбираться не будет, поставим поправочный коэффициент х10.
Пусковые токи — не слышал, у нас же утюги в нагрузке.
Самого фильтра по сути нет — как уже написали, нужно ещё много чего добавить, то, что на картинке — ни от сетевых, ни от помех из техники не защищает, только от синфазный (по заземлению). Но это понятно, очень сложно ещё дроссели искать и вставлять) Но хотя бы варистор переставить на выход, чтоб в ток ограничивался дросселем и предохранитель, хотя бы одноразовый, чтоб не только от микросекундных импульсов была защита — это база.
Китайский китайскому рознь. Да, их показатели завышены в рекламе, но зачастую не так гротескно, как вы пытаетесь выставить.
Разбирайтесь, пожалуйста :) А я продолжу пользоваться устройством.
Я мог бы еще много о чем рассказать, но как вы правильно заметили, о многом не рассказал. Вероятно, потому что статья и так разрослась до немыслимых размеров.
А для чего, по-вашему, активная защита? :)
Если это дешёвый нонейм — то там всё одним миром мазано.
Уточню: Часто — это 1 из 20..50ти, для меня это показатель большого процента заводского брака.
Нет, это Вы разбирайтесь, Ваша ведь статья) А я продолжу читать.
То есть Вы знаете про пусковые токи, которые у ПК могут достигать десятков ампер, но всё же оставили защиту на 5А? Вполне правдоподобно.
Это что? В тексте такое не находится.
Я учитывал отзывы. Если сгорит — заменю. Не страшно.
Хорошо, приму во внимание.
Защита не на 5 Ампер, это мониторинг 5 Ампер. Для своего железа считаю приемлемым. Кратковременное превышение на точность не влияет.
Я имею в виду реле. Хотя, конечно, особо на него не рассчитываю.
Вообще-то там не нужно «согласование уровней», у ключевого транзистора база просто подключена к управляющему контакту через резистор 1К.
У меня для переключения достаточно просто замкнуть вход на землю. Конечно, не со всеми светодиодами будет работать, так как они тут только ухудшают ситуацию. С синими и белыми работать не будет.
ДерьмовоеНенадёжное решение, по всем критериям.Ну и на сколько там защита? Не сказано. Делаете «под себя», а пишите для всех — это тоже не очень профессионально. Измеряли?
Как это реле поможет при приходе 380В?
Т.е. на управляющем входе стоит транзисторная оптопара с токозадающим резистором.
И транзистор уже командует релюхой. И ток по управляющему входу меньше, чем ток катушки реле.
Иначе финт с последовательным включением реле и светодиода не прошел бы. Релюхе и так 3.3 вольта мало, а тут у ней отобрали еще 1.8…
Там общее питание +5 же.
Во всяком случае, в моих модулях так.
Сейчас внимательней глянул на вашу картинку. Да, там нет оптопары.
Я вот такие платы держал в руках…