Как стать автором
Обновить

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

Время на прочтение 2 мин
Количество просмотров 38K
Лампа настроения (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.

Исходная статья тут.
Как обычно напоминаю что это единственный копипаст, связанный с тем что сервер портала не в состоянии переварить большое количество посетителей и имеет некоторые проблемы со стабильностью.
Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
+156
Комментарии 134
Комментарии Комментарии 134

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн