Главная » Микроконтроллеры
Призовой фонд
на июль 2019 г.
1. 1000 руб
Паяльник
2. Регулируемый паяльник 60 Вт
Паяльник
3. 100 руб.
От пользователей

Светодиодная свеча на Attiny

Эффект горящей свечи на ATTiny

Светодиодная свеча на Attiny. В ней использованы светодиоды высокой яркости и специальная программа для имитации настоящей свечи. Я думаю что такая свеча полезна как реквизит к фильму или для использования её дома. Она выглядит как самая обычная свеча, но не имеет открытого пламени, не греется и не коптит. Она абсолютно пожаробезопасна.

Я думал о создании такой свечи в течении довольно длительного времени. Я полагаю, что самая трудная часть этого проекта это создание реалистичного мерцания, поэтому я решил, что природа сделает это лучше чем я. Я добавил к своей свечке светочувствительный резистор в связке с постоянным резистором. Вместе они действуют как делитель напряжения, напряжение с которого подается на  один из входов АЦП Attiny85 и записывает результаты пробы через дискретные интервалы времени. Частота дискретизации 100мс. 8-разрядные значения уровня освещенности сохраняются в EEPROM, поэтому свеча запоминает программу мерцания. Вы можете сбрасывать программу мерцания и записывать его снова всего нажатием одной кнопки.

Я сделал регистратор освещения (логгер) с относительно небольшой памятью 500 байт на Attiny85. Тем не менее, 500 байт @ с частотой дискретизации 100 мс дают мне ~ 50 секунд времени. Это достаточно, чтобы не видеть повторений в мерцании.

Конструкция свечи на ATTiny

Я не упомянул, что корпус и светодиод я использовал от готовой светодиодной свечи. Не зная характеристик светодиода я решил измерить их.  Я зажег светодиод с резистором присоединённым последовательно. На светодиоде у меня было напряжение 2,01V. Я предполагаю, что максимальный допустимый для него ток - 20 мА макс и рассчитал сопротивление резистора при питании 3мя батарейками АА по 5V каждая. Таким образом,
((3 * 1,5 В) - 2.01Vf) / 0.02mA = R124.5. Я думаю, ближайшее значение по ряду это R220, с ним ток через светодиод составил ~ 11mA.

Плата

Вот фото собранной схемы готовой к установке в корпус:

Плата

Схема свечи

Принципиальная схема

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

После записи мерцания свечей в EEPROM, я могу считать данные. Ниже приведены 500 байт готовой программы мерцания.

:10000000777B7D7B78BA95535E3E3E4352353E7595  
:100010004B657B5263586B5562777287858C5D7A2E  
:10002000535D5062556F6758784E55956B6D7D7373  
:100030007D5B6B686A6A606B7777987A87605B6BC9  
:10004000534A5368453B65679C6067537375638A81  
:100050007F8388806358586B7A787B838A878A8508  
:1000600083888A8A8A8A8A8C8A8A8A8A8A88837F0B  
:100070007D7B7A78777570707270704D416D6860B5  
:1000800035353D3B4145525E41535D60656A5048A0  
:100090004B4E3535313333363B40504E525D605315  
:1000A000564B352D2E2E353838393B383158406077  
:1000B0004D505A5D434053585A554E31312B2E33D3  
:1000C0003136353638393938404A413B506240364E  
:1000D000292D455E5D523E333B433545383531333E  
:1000E00036363936383B4136363039332B29335A98  
:1000F0006356413D5052556065553B302E303B4E66  
:10010000362E2B3B393D4A503D45584E4B4E4A45C5  
:10011000584B555D5B56585E60775E385A52464B79  
:10012000504A4A354E412E363638524B463B3340C4  
:100130004E605A504D434A504B48403D4046525BFA  
:100140006263635B52465B43554526353B5B434DDB  
:100150004056585A5D50464545413B437287908A08  
:100160008F979D9573656B4D464555554156555531  
:10017000565A5A5B5E56625565585A62686D6D6B89  
:10018000686A6F656D316F55485055675A41555EC5  
:100190006065686863606A60676A7F838C8788923D  
:1001A0008D8F888C8C85826A4E35231119433B4193  
:1001B000674A4A3B2E3045414A5848705B6D72622F  
:1001C0007567565A5E554D77532D36415D55404003  
:1001D0004040403E415E82928888909488857B634F  
:1001E000555356555053550334013A7EFF01603E36  
:1001F0003E28018EFFFFFFFFFFFFFFFFFFFFFFFF16  
:00000001FF

Внизу видео, на котором показана работа свечи запрограммированной при помощи светочувствительного. Я дул мягко на пламя реальной свечи во время записи, изображая ветер. Наиболее удачная запись вышла в тёмной комнате.

Вишлист улучшений:
А) Версия Attiny85, позволяющая работать от меньшего напряжения (2 батарей АА). У меня такого контроллера не было, и пришлось использовать 3 батареи АА, которые не влезают в корпус.
Б) Неплохо было-бы добавить свече режим автоматического ухода в спящий режим через несколько часов работы с последующим включением от внешнего прерывания (кнопки).

Свечка

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
AVR МК AVR 8-бит
ATtiny85
1 Поиск в Utsource В блокнот
R1 Резистор
220 Ом
1 Поиск в Utsource В блокнот
R2 Резистор
10 кОм
1 Поиск в Utsource В блокнот
LDR Фоторезистор1 Поиск в Utsource В блокнот
LED1 Светодиод1 Поиск в Utsource В блокнот
SW_1 Кнопка1 Поиск в Utsource В блокнот
Добавить все

Скачать список элементов (PDF)

Оригинал статьи

Прикрепленные файлы:

Теги:

none Опубликована: 2012 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (3) | Я собрал (0) | Подписаться

0
Max #
А кто может подсказать какой нужен фоторезистор?
Ответить
0
Игнат #
Насколько я понял, можно и без него. Если eeprom прошить. Но файл выложен в неправильной кодировке. Ни одна из 4-х установленных сред нормально его не открыла. К тому же используется библиотека eeprom.h, которую не все среды поттягивают и в моей например вообще нет данного МК. Если бы выложили и прогу и eeprom уже сразу в рабочем hex, был бы признателен. Т.к. сам новичек. Попробовал изменить, контроллер прошил. Светодиод просто горит и на кнопку не реагирует.
Ответить
0
Васьок #
Делал подобное на ATtiny13A-AU. Прописал простейший генератор псевдослучайных чисел. Запустил таймер в режиме ШИМ. Сторойжевой таймер в режиме генерации преріваний. Прописал переменную которая считает вверх/вниз. Алгоритм прост. В основном цикле непрерывно вызывается генератор псевдослучайных чисел. В прерывании сторожевого таймера переменная сравнивается с выбранным псевдослучайным числом. Если переменная меньше чем псевдослучайное, то перемнная инсрементируется и выдаётся в ШИМ-регистр. Если больше, то декрементируется. Когда значения переменной и сгенернированного числа совпадут, выбирается следующее число с генератора псевдослучайности. Только частоту прерываний сторожевого таймера и разрядность переменной и ШИМ нужно подобрать под приятное по скорости мерцание.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
МиниПК MK809V - 4 ядра, Android 4.4.2 Конструктор для сборки: предусилитель на лампе 6N3
вверх