Устройство представляет собой розетку с настройкой времени включённого и отключённого состояния нагрузки и количества повторов данного цикла. Создавалась она для засветки фоторезиста ультрафиолетовой лампой, а также для дозасветки изделий, напечатанных на фотополимерном принтере. Внутреннее твердотельное реле рассчитано на ток до 2 А, что позволяет широко использовать эту розетку в быту, например, для автоматического включения фитолампы для растений.
Начинка устройства состоит из двух плат: платы управления и платы бестрансформаторного источника питания (БИП).

Управляющая плата построена на микроконтроллере Atmega48PA, который через драйвер HT1621B управляет LCD-дисплеем (дисплей от счётчика Меркурий 230). Запитана плата напряжением 5В от платы БИП. Четыре кнопки служат для настройки времени работы розетки и для пуска алгоритма. Конденсаторы на кнопках установлены для аппаратного подавления дребезга.
Настройка алгоритма работы заключается в вводе времени (от 1 секунды до 99 часов) для двух интервалов, настройки положения реле (вкл-выкл) для каждого из интервалов и количества повторов этих интервалов (до 99).
Нагрузка коммутируется твердотельным реле G3MB-202P (~230В, 2А). Отсчёт времени контроллер производит с помощью часового кварца ZQ1, к которому обычно необходимо устанавливать в обвязку конденсаторы C2,C3, но для данного кварца конденсаторы пришлось удалить, так как с ними частота кварца значительно падала и время отсчитывалось неверно. Разъём XP1 используется для прошивки МК и в дальнейшем выпаивается с платы. На плате так же предусмотрены пятаки для подключения датчика температуры DS18B20 по 1-WIRE интерфейсу, для контроля температуры твердотельного реле (в текущей версии платы он не установлен). Контролировать температуру твердотельного реле важно, так как коммутируемый ток сильно снижается с ростом температуры.
Резисторы 0 Ом на схеме — это перемычки, упрощающие разводку платы.
Прошивка для микроконтроллера написана в CodeVisionAVR и находится в архиве по ссылке конце статьи.


Плата БИП построена по классической схеме и рассчитана на выходное напряжение 5В и максимальный ток 30мА. Предохранитель установлен непосредственно на плате, так как другого внешнего крепления предохранителя под рукой не оказалось. В проекте Altium Designer (ссылка в конце статьи) есть так же плата без встроенного предохранителя.
ВНИМАНИЕ! БИП не обеспечивает гальванической развязки от сети. Все цепи платы управления находятся под опасным для человека напряжением. Все работы с устройством (включая прошивку) выполнять строго при отключённом питании или через изолированный источник.

Напряжение сети подаётся на разъём XP5, а к реле на управляющей плате и к розетке уходит с разъёма XP4. На плате установлен варистор для ограничения возможного перенапряжения в сети. Резистор R20 служит для разрядки конденсатора C14 после снятия с платы напряжения. Резистор R21 служит для ограничения пускового тока платы при подаче напряжения. Схема до резистора R22 работает по сути, как источник тока и рассчитывается по следующей формуле:
f — частота сети (50Гц),
C — ёмкость конденсатора (C14),
Uвх — напряжение сети (230В),
Uвых — выходное напряжение (5В).
Далее этот ток проходит через резисторы R22,R23 (их оптимальное сопротивление около 100 Ом) и делится между стабилитроном TL431 и нагрузкой. При отсутствии подключённой нагрузки весь ток потечёт через TL431 и поэтому данная схема ограничена 100мА, для увеличения выходного тока потребуется более мощный стабилизатор. Конденсатор C14 следует устанавливать типа X2 на 275В, для безопасности в случае выхода этого конденсатора из строя.
Выходное напряжение задаётся резисторами R24,R25, которые рассчитываются на напряжение управляющего контакта TL431 в 2,5В. В данном случае для выходных 5В резисторы имеют одинаковый номинал. R25 выбран 2,7кОм для обеспечения протекания тока около 1мА через управляющий контакт TL431.


Корпус для устройства напечатан на 3D-принтере и получился не очень оптимальным – внутри осталось много свободного места.


В будущем в данную схему потребуется добавить датчик температуры реле и светодиод индикации включённого состояния реле, так как сейчас положение реле отображается чертой на дисплее, что не очень наглядно.
В итоге устройство показывает себя как отличный инструмент, когда необходимо циклически коммутировать напряжение сети с заданными временными интервалами.
Для тех, кто захочет повторить данное устройство, выложил архив со всеми необходимыми исходниками. В архиве есть проект в Altium Designer, проект в CodeVisionAVR и STL-модели корпуса.