Реклама ⓘ
Главная » Световые эффекты
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

Стробоскопическая открытка с POV-эффектом на ATmega8

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

Такая открытка отлично подойдет в роли подарка кому-нибудь либо её можно носить с собой как брелок. Подобные схемы отлично подходят для тех, кто только начал изучать микроконтроллеры и осваивать smd-монтаж.



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

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

В нашем случае сменяется порядок свечения светодиодов. Но обо всё по порядку.

1.Хардварная часть.

1.1 Схема

ВНИМАНИЕ!!!
Номера выводов микроконтроллера подписаны для ATmega8 в корпусе TQFP32. Если будете делать для DIP или на бредборде, то вам нужно ориентироваться на названия портов.

"Мозгом" устройства стал восьмибитный микроконтроллер ATmega8 от AVR с 8КБайтами памяти на борту.
Микроконтроллер способен работать от низкого напряжения, отличается малым потреблением энергии.
Так как выводы МК имею высокое входное сопротивление, они могут работать как антенны и принимать наводки от внешних источников.
Самым критичным с этом плане является вывод RESET. Колебания на этом выводе могут приводить с нестабильности выполнения программы микроконтроллером.Для предотвращения этого вывод RESET имеет подтяжку через резистор 10 килоом к плюсу питания.
Индикация осуществляется 8 (по одному на бит) светодиодами 0805 (Можно ставить любые, главное чтобы это не приводило к превышению максимального для микроконтроллера тока). Светодиоды висят без резисторов, т.к. вмешивается внутреннее сопротивление батарейки + светодиоды работают в импульсном режиме.
Запуск микроконтроллера происходит при замыкании вывода RESET на минус питания. Программа выполняется в течение 30 секунд (настраивается программно) и после этого микроконтроллер засыпает.
Питание от батарейки CR2023.

Про изготовление платы и пайку smd-компонентов смотрите в видео в конце статьи.

2. Софтварная часть

Немного расскажу о реализации изображения на примере простого рисунка.

Поле можно представить как сетку 8(количество светодиодов)х7(оптимальное количество столбцов на 1 символ с учётом пробела)
В прошивке назначено время работы одного столбца в 1мс. 
#define LINETIME 1   //Время работы линии в миллисекундах
#define WORKTIME 30   //Время работы в секундах
То есть светодиоды мигают таким образом:
1мс - 678
2мс - 567
3мс - 456
4мс - 345
5мс - 234
6мс - 123
7мс - 12
Можно сделать свой рисунок, изменив исходники кода.
Памяти МК в идеале должно хватить на 
65536 (бит в 8КБайтах)/7строк*8столбцов(бит)=1170 символов (но придется очень широко размахивать руками)

Правильность своей прошивки можно проверить в протеусе с помощью виртуального осциллографа.

Если на это мигание смотреть неподвижно, то мигание в 150Гц будет еле заметно. Но если изображение "развернуть", то за счет инерционности зрения изображение станет видимым.

3. Прошивка МК

1. Подпаиваем проводки к плате (в .lay-файле указаны места где удобнее всего подпаяться)

2. Подключаем их к программатору (у меня USBASP. Если у вас тоже,то рисунок с распайкой ISP10 вам в помощь).

3. Подключаем программатор + микроконтроллер в компьютеру

4. Включаем на своём компьютере программу для прошивки

.

4.1 Выбираем тип микроконтроллера (в данном случае - ATmega8).

4.2 Находим на компьютере .hex-файл. Если чип ранее использовался, то его необходимо очистить.

4.3 Устанавливаем фьюз-биты. Фьюз-быты стандартные.

ВНИМАНИЕ!!! Здесь фьюз-биты прямые т.е. если галочки нет, то бит установлен.

5.Нажимаем кнопку ПРОГРАММИРОВАНИЕ.

И либо получаем ошибку (битый МК, плохой контакт МК и программатора, отпал джампер питания (USBASP) замыкание сигнала с программатора, непропай выводов МК и прочее)
либо всё прошивается и устройство сразу начинает мигать.
После этого отсоединяем МК от программатора, ставим батарейку (устройство при этом "проснётся"), ждем 30 секунд (устройство "заснёт"), нажимаем кнопку и машем . Если ваш рисунок виден полностью, без пропусков сегментов, то можете себе похлопать. Если же пропуски есть, то стоит проверить плату на наличие  "соплей"  - перемычек между дорожками - и устранить их.
Если плата исправна, но проблема не устранена, то нужно проверить сначала проблемные светодиоды (возможно вы просто перепутали полярность), а потом только МК. Если проблем "железа" не выявлено, то попробуйте перепрошить МК.

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

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 МК AVR 8-бит
ATmega8A-AU
1 Поиск в магазине ОтронВ блокнот
HL1-HL8 СветодиодARL2-0805UBC8 0805Поиск в магазине ОтронВ блокнот
R1 Резистор
10 кОм
1 0805Поиск в магазине ОтронВ блокнот
Bat.1 БатарейкаCR20321 Поиск в магазине ОтронВ блокнот
Батарейный отсекBH10601 Поиск в магазине ОтронВ блокнот
SA1 Тактовая кнопкаSWT-101 Поиск в магазине ОтронВ блокнот
C1, C2 Конденсатор100 нФ2 0805Поиск в магазине ОтронВ блокнот
Добавить все

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

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

Теги:

Опубликована: 0 1
Я собрал 0 0
x

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

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

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

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

+1
Публикатор #
На форуме автоматически создана тема для обсуждения статьи.
Ответить
0
BARS_ #
Первое. В схеме нужен акселерометр.
Второе. В схеме не нужна ATmega8.
Третье. Видео о работе устройство предполагает наличия на этом видео работы устройства, а не процесс сборки и 10 секунд работы.
Четвертое. Неплохо было бы предусмотреть легкую смену картинки через тот же USART.
Ответить
0

[Автор]
SaneX #
Отвечаю.
1.Акселерометр - это безусловно полезная штука для подобного проекта, но основной упор сделан на простоту сборки. Кто захочет - пусть повесит акселерометр.
2.Согласен, атмега тут лишняя т.к. много портов не задействовано.
3.Персистенция через видео передается не очень хорошо. Конечно можно сделать фотографии с большой выдержкой, но я такой аппаратурой не обладаю.
4.См. п.1 . Кто захочет - сделает.
Ответить
0
sergej_shaggy #
Новое - хорошо забытое старое. В частности для таких эффектов еще в начале 00-х годов начал писать прогу, которая описана в статье http://cxem.net/sound/light/light101.php. Правда тогда это все реализовывалось на 155ЛА3, 155ИЕ5, 537РФ2.
А вот синхронизировать развертку с частотой колебаний руки - сложновато. Хотя бы геркон с магнитом на пружинке поставить надо.
Ответить
0

[Автор]
SaneX #
Проще колебания руки под развёртку подстроить
Ответить
0
xopek #
В кабеле ISP10 USBASP Землю лучше брать пропустив два пина от питания. Есть версии программаторов с RX/TX на этих местах и это порой вызывает чудесатые глюки
Ответить
0
MACOH #
А марка светодиодов принципиальна? Я могу воткнуть туда просто китайский ноу нейм?
Ответить
-1
lvlr #
А есть у кого схемка часов с механической развёрткой?
Такая же полоска светодиодов крепится к вентилятору и получаются часы.
Ответить
+1
Ярослав #
Собрал открытку. Запустил. Красивая игрушка. Отличная тернировочная безделушка.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Набор для сборки - LED лампа
Набор для сборки - LED лампа
Мультиметр DT9205A Автомобильный GPS-трекер с GSM/GPRS и дистанционным управлением
вверх