Лампа настроения!

DIY или Сделай сам
Лампа настроения (mood lamp) является RGB лампой, которая меняет цвет в случайном порядке. Была зеленая, плавно стала голубой, потом фиолетовой… какого цвета она станет в следующий момент времени не знает никто)

image

Купить такую проблематично, сделаем ее сами!)


Данная лампа проста по устройству и станет отличным сувениром. Использованные компоненты:
Лампа GRONO из магазина IKEA. (299р.)
микроконтроллер ATMEGA8-16PU (66р.)
RGB светодиод KAD1-9090BRGC-01/3 star (273р.)
транзистор BUZ11 (3*27р)
различная мелочевка (три 1W резистора, один 10К подтягивающий резистор, колодка для ISP, микросхема-стабилизатор 7805)

В качестве источника света использован мощный RGB светодиод. Мощность каждой цветовой составляющей 1Вт. Подробности можно посмотреть в даташите. Светодиод был найден и куплен в Промэлектронике (promelec.ru).

Схема лампы:

image

Для упрощения линии питания, стабилизатор и колодка ISP на схеме не показаны. Транзисторы подключены к выходам каналов ШИМ. Таких каналов в микроконтроллере три.

Готовая плата:

image

Алгоритм работы следующий. Генерируется случайным образом цвет (три char переменные). Если все три значения примерно одинаковы, то на выходе у нас будет белый цвет, что неинтересно, поэтому процесс случайного выбора цвета повторяется. Когда получен цвет с вероятностью 0,5 будет погашен один из каналов (что бы чаще появлялись чистые R, G или B цвета.) Затем вычисляется величина прибавки, что бы за 255 шагов прийти к заданному цвету. После этого случайным образом выясняется скорость ухода к новому цвету (от 5 до 10 сек). Ну а затем за счет приращения значения в регистрах ШИМ плавно приходим к сгенерированному цвету. Подержав цвет какое то время цикл повторяется. И так до бесконечности.

Лампа в действии:


Исходный код можно посмотреть тут (Написан в CodeVisionAVR)

У микроконтроллера переключить FUSE биты что бы тактовая частота была 8 МГц от встроенной RC цепочки.

Аналогичный проект зарубежных коллег: www.electronics-lab.com/projects/games/005/index.html

Что бы я исправил:
1) вынес бы стабилизатор за пределы лампы, он греется и требует крупного радиатора
2) использовал бы мелкие транзисторы и микроконтроллер бы запаивал бы сразу в плату. Тогда бы уменьшились габариты платы и она влезла бы в нишу под лампой.

Простор для творчества:
У микроконтроллера осталось много неиспользованных ног, а также не задействован USART. Можно добавить в плату конвертер уровней MAX232 и можно будет подключить лампу к COM порту компьютера. (А если использовать FT232 то к USB). Тогда написав соотвествующее ПО можно сделать так что бы например при поступлении новой почты лампа мигала красным. Или например сделать продвинутую ambilight.

Исходная статья тут.
Как обычно напоминаю что это единственный копипаст, связанный с тем что сервер портала не в состоянии переварить большое количество посетителей и имеет некоторые проблемы со стабильностью.
Теги:DIYсделай самRGBподелки.
Хабы: DIY или Сделай сам
+156
19,4k 289
Комментарии 134

Похожие публикации

Backend developer — Vimbox
от 200 000 ₽SkyengМожно удаленно
Ведущий инженер по тестированию
от 80 000 ₽ВсеИнструменты.руМожно удаленно
Математический гений
до 90 000 ₽HomeWorkМожно удаленно
Android-разработчик (в офис или удаленно)
от 100 000 до 200 000 ₽iSpringМожно удаленно
Полиглот языков программирования
до 90 000 ₽HomeWorkМожно удаленно

Лучшие публикации за сутки