121-Управление люстрой по ИК-каналу

Автор: | 26.08.2015

Устройство этой статьи собрано на ATtiny13 и предназначено для управления тремя нагрузками 220 вольт при помощи бытового ИК-пульта. Сделано устройство на базе уже знакомой Вам универсальной платы ИК-драйвера. Устройство является ревизией ранее сделанного устройства управления нагрузками. На первый взгляд, функционал устройства остался прежним, но изменения есть — ниже я о них напишу.

 

Предыстория создания устройства.

У меня в гостиной подвешена люстра на 4 лампы.

Изначально, когда я делал ремонт в комнате, для нее был установлен регулятор яркости (диммер).

Удобно менять яркость в соответствии с обстановкой (ярко для чтения и общего времяпровождения, полумрак для просмотра фильмов, и т.д.). В люстре были установлены 4 лампы накаливания по 100Вт (меньшая мощность не давала комфортной освещенности). В свое время, с целью минимизации потребляемой мощности, во всей квартире были заменены лампы накаливания на экономные люминесцентные. Люстра получила свои 4 экономки по 20Вт вместо ламп накаливания. Как следствие, пришлось отказаться от диммера (с экономными лампами он не работает). Экономия – это хорошо, но стало не очень удобно, если нужно было не яркое освещение (приходилось использовать настольную лампу). Нужно было решать эту проблему. И вот только сейчас дошли руки это сделать!

Поначалу была идея поставить вместо экономных люминесцентных ламп мощные (по 10 или 5 Вт) светодиоды и управлять их яркостью с помощью ШИМ. От этой идеи я быстро отказался по причине большой стоимости самих светодиодов, плюс необходимости установки мощного источника питания, плюс необходимости активного теплоотвода от светодиодов … В общем — одни минусы. После этого решил сделать по-простому – управлять яркостью путем отключения части люминесцентных ламп.

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

 

Конструкция устройства управления

Как писал выше, база устройства – это универсальная плата ИК-драйвера

Благо мне была презентована Анкаром небольшая партия таких платок, завалявшихся в излишках, за что ему большая благодарность! Одну из этих плат я и использовал.

Отдельно изготовлена плата коммутации. В качестве коммутирующих элементов используется пара MOC3043  + BT136, что делает схему бесшумной и экономичной. Возможно применение других типов оптосимисторов и силовых симисторов, но для этого используйте обвязку согласно даташитов на них.

Цепочка — резистор 39Ом + конденсатор 0,01мкФ, используемая как снаббер для каждого симистора, не обязательна и я ее в своей конструкции не использовал (хотя на плате есть место для установки). Если возникнут проблемы с включением/отключением нагрузок – эту цепочку необходимо установить.

Устройство должно запитываться от отдельного источника питания – 5 вольт. Я использовал старую подзарядку от мобильного. Зачастую подзарядные устройства имеют на выходе напряжение немного выше 5 вольт. Для этого случая на плате предусмотрено место для установки пятивольтового стабилизатора 78L05.

Плата коммутации имеет 3 канала (A, B, C). Каждый канал включает свою лампу (в моем случае канал С включает сразу 2 лампы)

!!! Внимание !!!

Устройство работает с опасным для жизни напряжением 220В!
Не допускайте какие-либо манипуляции с платой под напряжением. Все настройки, программирование, изучение кнопок пульта нужно производить без подачи напряжения 220 вольт (использовать только источник питания 5 вольт).

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

Для того чтобы исключить случайные прикосновения к токоведущим частям схемы, устройство необходимо поместить в корпус. Я использовал пластиковый кабельный канал подходящего размера (подходящим размером, в данном случае, оказался 40х16 🙂 ). Плата ИК-драйвера гальванически развязана от опасного напряжения, поэтому ее можно оставить открытой и по надобности отсоединять/присоединять к устройству (например, для добавления нового функционала) . Для этого в корпусе предусматриваем специальное отверстие. Удобство такого решения я уже успел оценить. Пришлось для корректировки прошивки несколько раз перепрошивать МК. Отсоединить платку, прошить МК и вернуть ее на место дело пяти минут!


 

Логика работы

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

Для управления люстрой при помощи ИК-пульта используется 2 кнопки:
1 – Включить/выключить – включает и выключает люстру
2 – Выбор яркости – перебор количества включенных ламп 1, 2, 4

Дополнительно можно задействовать 3 кнопки пульта – отдельное включение/отключение каждой из ламп (канала).

 

Изучение кнопок ИК-пульта

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

Изучение кнопок можно произвести еще до установки устройства в люстру, а можно прямо в люстре (например, если другой пульт нужно изучить)

Для изучения кнопок необходимо:
1 – обесточить устройство
2 – установить джампер «Learn»
3 – включить устройство (при этом индикаторный светодиод должен несколько раз моргнуть и погаснуть)
4 – удалить джампер «Learn»
5 – последовательно нажать на пульту 5 кнопок в очередности функций:
— вкл/выкл все
— перебор нагрузок
— вкл/выкл нагрузки A
— вкл/выкл нагрузки B
— вкл/выкл нагрузки C
6 – после этого устройство автоматически начинает работать в штатном режиме

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

 

Теперь немного о том, чего такого нового в этом устройстве, чего нет в первой версии конструкции. По пунктам:

1 Как Вы знаете, ATtiny13 имеет всего один таймер Timer0 и все процессы приходилось завязывать на него, что создавало проблемы при формировании сигналов с точными периодами или создании модов. Так вот, если подойти к этой проблеме творчески, то в ATtiny13 можно дополнительно заиметь еще 2 источника периодических прерываний! Это Watch Dog Timer – сторожевой таймер (умеет вызывать прерывания с минимальным периодом 16 мС) и ADC – аналого-цифровой преобразователь (умеет вызывать прерывания с минимальным периодом 2,7 мкС). Этого достаточно чтобы в данном устройстве не использовать Timer0 вообще! Теперь свободный таймер можно задействовать в модификациях на произвольные нужды (будь то управление сервоприводом, формирование ШИМ сигнала, формирование длительных периодов времени, например для автоматического отключения и т.д.)

2 Использован новый алгоритм изучения и детектирования сигналов с пульта (такой, как я использовал в ZiChip). Теперь стало почти невозможным совпадение кнопок в различных пультах. Улучшилось качество детектирования.

3 Как и в устройствах ZiChip, алгоритм детектирования ИК-посылки от пульта изначально совмещен с алгоритмом поддержки ИК-сателлитов ZiChip. Это значит, что устройством можно управлять из ZiChip-сети (при наличии в сети хотя бы одного устройства с ИК-излучателем). Номер устройства — 20 (0x14)

121_ir_loads_control.zip (4356 Загрузок)

 

(Visited 35 106 times, 2 visits today)

121-Управление люстрой по ИК-каналу: 99 комментариев

  1. siema

    Евгений, проект заработал — огромное спасибо. На плате силового модуля очень тонкие медные проводники. Для освещения закладывают кабель сечением 1,5мм и это гораздо больше. Стоит ли увеличить ширину проводников?

  2. dimon24

    Спасибо огромное Вам GetChiper за помощь с прошивкой что я и хотел моя задумка поставить в люстру 4 канала буду использовать две ATtiny13 и RGB контроллер на PIC.Первая ATtiny13 управляет 1,2,3 каналами.Вторая ATtiny13 управляет 4 каналом,питанием RGB контроллер и кнопкой управления RGB контроллером.

  3. GetChiper Автор записи

    Исправил и обновил прошивку.

  4. dimon24

    Здравствуйте GetChiper прошивку опробовал все работает как надо,но на «Нагрузке А» и «Нагрузке B» не хочет работать «перебор нагрузок» как в оригинальной версии поправьте пожалуйста так чтоб «перебор нагрузок» был только на «Нагрузке А» и «Нагрузке B»,а «Нагрузка А» не имела приоритет первой нагрузки и отключалась как «Нагрузка B» при переборе нагрузок.

  5. GetChiper Автор записи

    У кого уже собрано подобное устройство или есть плата ИК-драйвера, приглашаю протестировать новое устройство — кодовое включение нагрузок!

    http://www.forum.getchip.net/viewtopic.php?f=8&t=658

  6. siema

    siema :
    может, еще и бестрансформаторный БП предусмотрю… Программирование — через программатор, а работа — через него.

  7. dimon24

    Спасибо GetChiper прошивку обкатаю скорее всего завтра и сообщу Вам результат.

  8. GetChiper Автор записи

    Сделал новый вариант

  9. dimon24

    Уважаемый GetChiper прошивку протестировал немного не так.Нужно так чтобы «Нагрузка А» и «Нагрузка B» — с сохранением состояния в энергонезависимую память, а «Нагрузка С» — без сохранение состояния в энергонезависимую память, без «вкл/выкл все» и без «перебор нагрузок».Мне «нагрузка С» нужна для управления кнопкой RGB контроллера там кнопка без фиксации переключает режимы его работы.Это наверное и будит 2 вариант.

  10. dimon24

    Здравствуйте.Уважаемый GetChiper не могли бы Вы подправить прошивку нужно оставить все как есть кроме нагрузки С ее сделать как кнопку без фиксации и убрать сохранение состояния в энергонезависимую память это 1 вариант.А 2 вариант
    нужно оставить все как есть кроме нагрузки С ее сделать как кнопку без фиксации, убрать сохранение состояния в энергонезависимую память и отключить функции «вкл/выкл все» на нагрузке С,»перебор нагрузок» на нагрузке С.

  11. siema

    @GetChiper
    OK, по триаку 138 запас большой. А вот у MOC3023 я не увидел цепочки определения перехода через ноль — non-zero-crossing triacs :(. Можно ли его ставить в данную схему?

  12. GetChiper Автор записи

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

    Триак 138 подойдет.

  13. siema

    siema :
    Евгений, добрый день! Надеюсь, что можно использовать отпопары MOC3023 по схеме из даташита. Вы предусмотрели места для Цепочки – резистор 39Ом + конденсатор 0,01мкФ. Кондер, наверное, будет большим (на 400-630В) и резистор под 0,5Вт. На фото готового устройства достаточного места не увидел
    Спасибо.

    И триак у меня 138; подойдет?

  14. siema

    Евгений, добрый день! Надеюсь, что можно использовать отпопары MOC3023 по схеме из даташита. Вы предусмотрели места для Цепочки – резистор 39Ом + конденсатор 0,01мкФ. Кондер, наверное, будет большим (на 400-630В) и резистор под 0,5Вт. На фото готового устройства достаточного места не увидел 🙁
    Спасибо.

  15. GetChiper Автор записи

    Симистор (несмотря на определенные недостатки) все таки имеет много плюсов (по сравнению с реле)
    — потребление на порядок (а то и на 2) меньше
    — нет щелчков переключения
    — не имеет конечного ресурса переключений
    — компактность

  16. nsystemst

    А, скажите, какой смысл тогда подключать нагрузки симистором, если функциия только «ВКЛ/ВЫКЛ»? Целесообразнее использовать реле наверное. Буду с нетерпением ждать от Вас подобного устройства но с плавной регулировкой мощности 220В. Спасибо за труд!

  17. GetChiper Автор записи

    В данной конструкции использованы MOC3043, которые имеют собственную схему контроля нуля (и открывают силовые симисторы только в моменты близкие к токовому нулю)и поэтому никак нет возможности регулировать мощность.

    Но если выкинуть эти оптосиммисторы и соорудить детектор нуля, то силовые симисторы запросто могут управляться от МК

    Вот как здесь, например http://www.getchip.net/posts/093-12-ti-kanalnaya-super-girlyanda-na-attiny2313/

  18. nsystemst

    Здравствуйте! Как я понял коммутация нагрузки (220В) происходит только в режиме ВКЛ/ВЫКЛ, а как реализовать возможность плавной регулировки нагрузки, к примеру если вместо ламп подключить водонагревательный тэн, и регулировать его мощьность. С постоянным током понятно — можно использовать ШИМ, а как управлять переменкой с помощью микрокотроллера?

  19. V.lad

    Спасибо, действительно похоже на дребезг, поставил емкость и все стало ОК.

  20. GetChiper Автор записи

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

    Попробуйте поставить шунтирующий конденсатор. Еще могут быть помехи по питанию. Керамический конденсатр по питанию стоит?

  21. V.lad

    Добрый день. Спасибо за полезное и нужное устройство. Есть вопрос, у меня получается что нет функции »ВКЛ/ВЫКЛ ВСЁ», при изучении пульта следующая картина
    – перебор нагрузок(нагрузка А включена постоянно)
    – вкл/выкл нагрузки A
    – вкл/выкл нагрузки B
    – вкл/выкл нагрузки C
    пробовал на четырех разных пультах(Pioneer. LG. Sony TV. Sony Audio), на трех выше описанный алгоритм, а на одном ( Sony Audio) реагирует на все кнопки и включает,переключает как ему вздумается

  22. GetChiper Автор записи

    LEXX_64 :
    Добрый вечер.Повторил данное устройство,полвечера баловался.Пока на макетке.
    Полезная штука в хозяйстве.Спасибо за разработку.А теперь такой вопрос:
    Насколько реально продублировать кнопку на пульте»ВКЛ/ВЫКЛ ВСЁ» дополнительной
    кнопкой,подключённой к выв.1 контроллера.Если это реально-сделайте пожалуйста.
    На мой взгляд это единственное чего не хватает .Во всяком случае для моих нужд.
    Заранее благодарен.

    Готово.
    http://www.forum.getchip.net/viewtopic.php?f=24&t=643
    Кнопка ресет отключена — после прошивки фьюзов МК станет недоступен для программирования обычным программатором.
    Устройство не тестировалось в железе. Если возникнут проблемы — пишите на форуме — будем править.

  23. LEXX_64

    Спасибо.Длина примерно около метра.Я понимаю что в контроллере своя подтяжка,но а вдруг этого не хватит.Поэтому и спросил.Извините.Спасибо.

  24. GetChiper Автор записи

    Подтяжка к питанию осуществляется средствами самого МК. Подтягивать линию нет необходимости. Разве что линия выноса будет слишком длинная тогда, в случае проблем, можно попробовать подтянуть сам TSOP.

  25. LEXX_64

    Добрый вечер.Извините за дилетантский вопрос.Есть ли необходимость ставить подтягивающий резистор
    на порт PB1 если я собираюсь ставить выносной ИК_приёмник?

  26. GetChiper Автор записи

    Конечно можно. Присылайте на почту (указана в закладке «О проекте»)
    Я добавлю в статью.
    Если возможно и фото готовой платы или устройства.

  27. LEXX_64

    Кстати.могу ли я выложить файлы платы для этого устройства.Спрашиваю потому,
    что там внесены некоторые изменения.А именно: вместо TSOP4836 применён TSOP2136.
    корпус контроллер SOIC8 SSU.И убран транзистор и резисторы.Вместо них светодиод и токоограничительный резистор.

  28. GetChiper Автор записи

    Хорошо, сделаю мод. Есть оставлю ссылку.

  29. LEXX_64

    Во-первых.На счёт высоковольтного программатора я в курсе.Месяца два назад собрал «Фьюз бит доктор» для таких случаев.
    Во_вторых обесточивать всю цепь 220В не желательно.Поэтому и попросил.

  30. GetChiper Автор записи

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

    Если задействовать выход 1 МК будет потерян для обычного программатора. Это устроит? Есть высоковольтный программатор (или фьюздоктор) на всякий случай?

  31. LEXX_64

    Добрый вечер.Повторил данное устройство,полвечера баловался.Пока на макетке.
    Полезная штука в хозяйстве.Спасибо за разработку.А теперь такой вопрос:
    Насколько реально продублировать кнопку на пульте»ВКЛ/ВЫКЛ ВСЁ» дополнительной
    кнопкой,подключённой к выв.1 контроллера.Если это реально-сделайте пожалуйста.
    На мой взгляд это единственное чего не хватает .Во всяком случае для моих нужд.
    Заранее благодарен.

  32. GetChiper Автор записи

    Забыл об этом написать в статье.
    По умолчанию стабилизатор не ставиться (если блок питания выдает 5 вольт).
    Если нужно установить стабилизатор дорожка между входом и выходом перерезается.
    Позже допишу в статье.
    Спасибо что обратили внимание.

  33. Александр

    Всем добрый1!!!
    на п.п. опечатка -стабилизатор 78L05 соеденены взод выход

  34. aleks0306

    спс понял. лучше один раз спросить

  35. GetChiper Автор записи

    Это не имеет значения. Последовательно соединенные 39 Ом и 0,01 мкФ можно ставить или сначала конденсатор потом резистор или наоборот — это сути не меняет. Эта цепочка (снаббер) в большинстве случаев не нужна вообще. У меня на плате даже нет общей точки их соединения (соединять их между собой, если что, придется «по воздуху»)

  36. aleks0306

    на схеме резистор 330 скондерам 0.1 выходят на лампу
    в сплинте 330 на 39 резисторы может я туплю

  37. Karlson1970

    По поводу износа. Наоборот данный способ позволяет работать электронному баласту в более щадящем режиме, по крайней мере если лампа включена не на 100% мощности. Во всяком случае мое устройство на эиом принципе работает уже три года. И проблем пока никаких нет. Правда хочу отметить что я делал полностью аналоговую схему управления, а мощность регулируется резистором. Регулировка осуществляется от 60%. Вероятно можно увеличить диапазон регулировки, но мне достаточно было и этого и я не проводил экспериментов. Единственное что еще я добавил это предварительный разогрев лампы. Где после включения некоторое время подаеться полное напряжение на лампу. Иначе было нестабильное включение. Если интересно могу прислать схему моего устройства. Правда заснять как работает не могу, лампа стоит у жены на квартире, а мы с ней уже не живем вместе.@GetChiper

  38. GetChiper Автор записи

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

    @aleks0306
    В каком месте не совпадает? После того как плату вытравил и запаял, рисунок в сплинте я корректировал, убирая те косяки что выловил при пайке.

  39. aleks0306

    схема с сплинтом не совпадают

  40. Karlson1970

    Как всегда очень хорошое устройство получилось. Единственно что я хотел сказать, что информация по поводу управления яркостью энергосберегающих ламп у вас немного устарела. Вполне возможно управлять яркостью ламп. Суть метода заключается в том что при управлении яркостью необходимо сохранять как передний фронт полуволны так и задний а вырезать середину из нее. Также нельзя неиспользовать для этого симисторы. Они портят форму синусоиды. Таким образом для реализации нам потребуется детектор нуля выпрямленное сетевое напряжение с помощью диодного моста. Выходной полевой транзистор достаточной мощности и тинька. Дальше открываем полевик вначале полуволны и вконце ее.В середине полуволны он закрыт. Чем дольше транзистор открыт тем ярче светит лампа. Работает только с лампами дневного света с электронным баластом. Это почти все сберегайки. Ну вот как то так.

  41. fox40

    Спасибо автору за приборчик!!!

  42. Kolini

    Молодчага. Может имеет смысл еще подумать над миниатюризацию и делать устройство, которое может быть спрятано в коробку за выключатель, ИК датчик вывести на клавишу, а в качестве БП использующее параметрический стабилизатор? А если использовать ATtiny2313 то теоретически сделав простенький детектор нуля можно побороться и за диммирование. Это так, мысли вслух.

  43. Juris

    Хорошее устройство, Спасибо за статью!

Добавить комментарий