Многофункциональный LED стробоскоп

12/07/2013 - 11:20 Павел Бобков

Введение

   Предлагаю любителям световых эффектов многофункциональный светодиодный стробоскоп на микроконтроллере фирмы Atmel - Attiny 13. Устройство может найти применение в автомобиле, мотоцикле или, на худой конец, велосипеде. Стробоскоп имеет достаточно простую схему, которую можно собрать за один вечер. 

Схема стробоскопа

 


   Транзисторы VT2, VT4, VT6 - биполярные n-p-n транзисторы общего назначения, например, BC547, BC847. Транзисторы VT1, VT3, VT5 - полевые транзисторы p-типа. Подбираются, исходя из вашей нагрузки.
   К контактным площадкам JP3, JP4 подключаются светодиодные лампы или светодиоды плюсовым выводом. Номиналы резисторов R3, R8 выбираются исходя из требуемого тока по формуле R = (12 - Uled)/Iled. Где Iled - требуемый ток в амперах, Uled - прямое падение напряжения на светодиоде в вольтах при заданном токе. Значение Uled и допустимые токи Iled приводятся в даташитах на светодиоды. Если используются светодиодные лампы с питанием 12 В, резисторы R3, R8 не нужны.  
   Сирена или бузер со встроенным генератором подключаются плюсовым выводом к площадке JP5.
   Минусовой вывод светодиодов и бузера - к JP2.
   Микроконтроллер Attiny13 тактируется от внутреннего тактового генератора на частоте 9.6 МГц. При программировании нужно будет отключить внутренний делитель тактовой частоты. Остальные фъюз биты менять не нужно. 

Описание работы

   Устройство работает в двух основных режима: "габарит" и "стробоскоп".

Режим "габарит"

   В этом режиме светодиоды выполняют функцию габаритов (то есть непрерывно светят). При нажатии кнопки S2 включается первый эффект стробоскопа на время удержания кнопки.
   Длительное нажатие на S1 переключает устройство из режима "габарит" в режим "стробоскоп" и запускается последний выбранный световой эффект.

Режим "стробоскоп"

   В режиме "стробоскоп" светодиоды вспыхивают по одной из семи заданных программ-эффектов. Переключение между эффектами осуществляется кратковременным нажатием на кнопку S1 и сопровождается короткими звуковыми сигналами, количество которых соответствует номеру эффекта.
   Длительное нажатие на S1 переключает устройство из режима "стробоскоп" в режим "габарит", при этом раздается продолжительный звуковой сигнал.
   Выбранные режимы, эффекты устройства сохраняются в EEPROM и загружаются при подачи питания. Поэтому при прошивке микроконтроллера нужно будет также прошить и EEPROM память, иначе при первом включении устройство может вести себя "неадекватно".

Программа

  Проект сделан в Atmel Studio 6.1. Исходники приведены в конце статьи.  При наличии знаний по Си, эффекты стробоскопа можно изменить по своему желанию. Все они описаны в файле led.c в виде последовательностей байтов. Например так выглядит первый эффект стробоскопа. 

const uint8_t led_pr1[] PROGMEM =
{
   LED1_ON |LED2_OFF, 5,
   LED1_OFF|LED2_OFF , 5,
   LED1_OFF |LED2_ON, 5,
   LED1_OFF|LED2_OFF , 5,
   REPEAT
};

   Четные байты массива (0, 2, 4...) определяют состояние светодиодов, нечетные (1, 3, 5...) - временную задержку в десятках миллисекунд. Последовательность всегда должна заканчиваться константой REPEAT.

Видео работы стробоскопа

{youtube}6YY85OgZh_8{/youtube}

Исходник проекта и прошивка

 Strobo-Proj-AS61.rar
 Strobo-firmware.rar


Автор устройства - Юрий Гузиенко. Прошивку написал я. 

Комментарии   

# Дед Гиляй 13.07.2013 05:10
Устройство может быть весьма полезно, однако авторам необходимо было бы указать, что они в действительност и используют не светодиоды, как они пишут, а светодиодные лампы, судя по всему, автомобильного назначения. При подключении в эту схему того, что действительно называется светодиодами, они неминуемо будут уничтожены из-за протекания через них недопустимо большого тока по причине подключения между "землей" и +12 В через низкоомный канал транзистора. Для этого случая правильно было бы указать на схеме также токоограничиваю щий резистор и привести соотношение для расчета его величины в зависимости от напряжения питания, типа светодиода - его цвета и, соответственно, падения напряжения на нем, планируемого тока диода, а также количества соединяемых последовательно диодов.
Ответить | Ответить с цитатой | Цитировать
# Юра 13.07.2013 07:20
Светодиодный, имеется ввиду, светодиодный тип излучателя. И нигде здесь не написано что изпользуются обычные светодиоды. И тот кто хоть чуть-чуть разбирается в электронике никогда б не подключил к выходам полевых транзисторов обычные светодиоды.
Ответить | Ответить с цитатой | Цитировать
# 123LancerX 28.08.2013 12:42
Юра. Можно как то связаться с вами? Мне нужна помощь подключения реле поворота на авто.
Ответить | Ответить с цитатой | Цитировать
# Pashgan 13.07.2013 07:26
Поправил текст и схему. Думаю теперь все более очевидно.
Ответить | Ответить с цитатой | Цитировать
# Andriska 25.08.2013 19:19
Список деталей бы отдельно, и печатку в LAY А так все класс. +10
Ответить | Ответить с цитатой | Цитировать
# tipp_sanyok 06.01.2014 21:44
Походу схема не та.
У вас стоит на j3 цеплять сирену а подписано Led.

Также не пойму почему минус светодиода цепляется на j5 а не просто на минус.
Ответить | Ответить с цитатой | Цитировать
# Pashgan 07.01.2014 05:29
Схема правильная. В описании ошибка. Поправил.
Ответить | Ответить с цитатой | Цитировать
# tipp_sanyok 07.01.2014 06:54
А у вас случайно печатки нет.

И можете обьяснить про подключение минуса?
Ответить | Ответить с цитатой | Цитировать
# Pashgan 08.01.2014 13:56
У меня нет печатки. Я отлаживал программу на макете.

А что непонятно с подключением минуса?
Ответить | Ответить с цитатой | Цитировать
# tipp_sanyok 08.01.2014 19:43
В старом описании что минус лед цеплять на j5.
А теперь ясно.
Ответить | Ответить с цитатой | Цитировать
# kaban55 07.01.2014 15:56
Привет, собрал Вашу схему все работает, только вот в режиме габаритов при моргании нет звукового сигнала, это так и заложено в прошивке?, в режиме стробоскоп при переборе эффектов звуковой сигнал есть.Спасибо.
Ответить | Ответить с цитатой | Цитировать
# Алексей Яничкин 23.03.2016 18:50
Доброго времени суток. Судя по вышеизложенному , вы смонтировали себе такую схемку. Просьба, если сможете смонтировать мне такую же?
Ответить | Ответить с цитатой | Цитировать
# Юра 08.01.2014 06:11
Да, это так заложено в прошивке. На видео просто к кнопке S2 подключена и сирена.
Ответить | Ответить с цитатой | Цитировать
# kaban55 08.01.2014 08:47
Спасибо! еще вопросик, можно вашу схему разместить на другом ресурсе с ссылкой на эту статью?
Ответить | Ответить с цитатой | Цитировать
# kaban55 09.01.2014 19:12
Привет, еще раз вопросик, заметил такую вещь, при первом включении,адекв атно работают только режим габариты, при чем моргание в этом режиме работает правильно,при переходе в режим стробов, эффекты работают ,НО очень медленно, при чем при переборе эффектов они перебираются, но опять же сами эффекты очень медленные включение светодиода раз в 2-3 секунды, а то и еще большею при длительном включении схемы( минут 3-5) и переборе эффектов они по одному начинают работать нормально, сначала один быстро как и надо , а остальные медленно , потом два , потом 3, и т. д. , в конце концов все эффекты приходят в норму и уже в дальнейшем работают как надо, даже при вкл/откл питания, (то-есть это первое время после прошивки и включения только такой косяк), подскажите в чем дело, это так и должно быть, я так предполагаю что это как-то с памятью связано
Ответить | Ответить с цитатой | Цитировать
# MACOH 10.06.2015 07:32
Доброго дня, очень понравился строб, а можно попросить Вас скинуть печатку? (а тов разводке я пока не селен)amart374@gmail.com
Ответить | Ответить с цитатой | Цитировать
# kaban55 10.06.2015 07:44
Приветствую http://turbobit.net/ujmwi6x0rqup.html Тут все, печатка в DipTrace
Ответить | Ответить с цитатой | Цитировать
# Алексей Яничкин 23.03.2016 18:53
Юрий, нашел данную тему в ютубе и вышел по ссылке сюда. Огромная просьба, сможешь мне смонтировать такую же в количестве двух штук??
Ответить | Ответить с цитатой | Цитировать
# Юра 23.03.2016 20:22
можно, пиши мне на почту yura-gn@yandex.ru
Ответить | Ответить с цитатой | Цитировать
# Юра 09.01.2014 19:37
>при прошивке микроконтроллер а нужно будет также прошить и EEPROM память, иначе при первом включении устройство может вести себя "неадекватно"
Ответить | Ответить с цитатой | Цитировать
# kaban55 09.01.2014 20:10
Так в том то и дело что прошиваю память, для прошивки памяти тот-же HEX файл надо?
Ответить | Ответить с цитатой | Цитировать
# kaban55 09.01.2014 20:23
все вопрос снят сам ступил
Ответить | Ответить с цитатой | Цитировать
# tipp_sanyok 09.01.2014 20:25
ну давай колись в чом косяк.
кстати на драйве то-же с тобой общались.
Ответить | Ответить с цитатой | Цитировать
# kaban55 09.01.2014 20:28
да на драйве тоже со мной, для прошивки EEprom надо файл с расширением .eep , а я два раза HEX загонял
Ответить | Ответить с цитатой | Цитировать
# tipp_sanyok 09.01.2014 20:31
Ха -ха понятно.
Ответить | Ответить с цитатой | Цитировать
# Дима 16.01.2014 15:21
Здравствуйте, что такое SV1 , не понимаю куда должен идти RES, это кнопка такая ?
Ответить | Ответить с цитатой | Цитировать
# Юра 16.01.2014 16:04
SV1 это разьем для программировани я микроконтроллер а. RES никуда не должен идти.
Ответить | Ответить с цитатой | Цитировать
# Дима 16.01.2014 16:14
тогда вопрос в чем может быть ошибка если светодиоды не реагируют на нажатие кнопок?
Ответить | Ответить с цитатой | Цитировать
# Юра 16.01.2014 16:40
Правильно собранное и запрограммирова нное устройство начинает работать сразу. Ошибка или в не правильном подключении или в не правильно запрограммирова нных фьюзах.
Ответить | Ответить с цитатой | Цитировать
# Andris 16.01.2014 19:51
Как сделать такую же на 24 volta
Ответить | Ответить с цитатой | Цитировать
# Юра 16.01.2014 19:58
Так и делать, только чтобы стабилизатор и полевики были с запасом по входному напряжению.
Ответить | Ответить с цитатой | Цитировать
# Юра 16.01.2014 20:30
Забыл что на вход полевика нельзя подавать больше 20V, так что наверное придется ставить еще и драйвер для управления полевиками.
А если нагрузка будет небольшая то проще будет поставить обычные транзисторы.
И резистор R13 нужно поставить на 1,5К
Ответить | Ответить с цитатой | Цитировать
# Alyes 22.01.2014 03:50
если >20v, ставьте стабилитрон, между затвором полевика и корпусом... драйвер, как дороговато...
Ответить | Ответить с цитатой | Цитировать
# Юра 22.01.2014 07:08
Если поставить стабилитрон то защита будет только в одну сторону, а в даташите написано ± 20V, то есть если общее питание будет 24V то на Gate будет идти уже + или -24V. Это я так понимаю, может быть это и не правильно- я не специалист.
Ответить | Ответить с цитатой | Цитировать
# Alyes 22.01.2014 07:21
в этой схеме нужна именно по плюсу, т.к. минус общ. здесь нет питания от средней точки, т.е. плюс, общ и минус. Значит на затворе (Gate), только будет или +24 (если стабилитрон, допустим КС512, то +12в), или 0.
Ответить | Ответить с цитатой | Цитировать
# Юра 22.01.2014 07:27
Я понял, спасибо за объяснение. Тогда можно и без стабилитрона обойтись - уменьшив напряжение резистивным делителем.
Ответить | Ответить с цитатой | Цитировать
# Hooligan 24.03.2014 20:44
Здравствуйте. Такой вопрос. Собрал схему прошил всё работало. Оставил одну кнопку S2 (остановился на нужном варианте эффекта и включил постоянно габариты). Установил на а\м день всё работало. Заглушил оставил на ночь. с утра пришёл всё нормально габариты включаются но на S2 не реагирует. В чём беда не пойму. До этого на столе работало всё на ура.
Ответить | Ответить с цитатой | Цитировать
# Юра 24.03.2014 21:11
Мог произойти сбой программы, например из за наводок от ксенона. Сам сейчас с этой проблемой борюсь.
Ответить | Ответить с цитатой | Цитировать
# Hooligan 25.03.2014 18:37
Всё решилось так: достал блок и перемкнул S1 (с удержанием) потом также перевёл в режим габаритов. и S2 заработала. Не хочется конечно каждый раз лазить. но думаю если не часто то можно :) Спасибо за схему и прошивку!
Ответить | Ответить с цитатой | Цитировать
# Pashgan 26.03.2014 17:26
Проблема аппаратная или программа где-то залипает?
Ответить | Ответить с цитатой | Цитировать
# Hooligan 26.03.2014 17:54
Да вроде программное. Сбой правда был один раз. Если повторится отпишусь.
Ответить | Ответить с цитатой | Цитировать
# Humoyun 19.09.2014 06:40
Можете указать примеры полевых транзисторах
Ответить | Ответить с цитатой | Цитировать
# Юра 19.09.2014 06:52
IRFR5305PBF, IRF5305PBF
Ответить | Ответить с цитатой | Цитировать
# Humoyun 19.09.2014 16:03
Большое спасибо!!!
Ответить | Ответить с цитатой | Цитировать
# Andriska 17.10.2014 09:52
А печатку в ley не трудно кому прислать на andriska@list.ru зарание спасибо.
Ответить | Ответить с цитатой | Цитировать
# Andriska 04.11.2014 18:33
http://s019.radikal.ru/i628/1411/ba/0af104ff2728.jpg

Не трудно кому проверить печатку ?
Ответить | Ответить с цитатой | Цитировать
# pelya999 05.11.2014 12:26
А резистор R5 для чего собственно нужен
Ответить | Ответить с цитатой | Цитировать
# Andriska 10.11.2014 23:01
78l05 вроде на оборот и 547 тоже. А вот IRF5305PBF не знаю, помогите.
Ответить | Ответить с цитатой | Цитировать
# Andriska 12.11.2014 18:31
Есть пару ошибок, помог устранить Юра Гузиенко. За что ему огромное спасибо.
Ответить | Ответить с цитатой | Цитировать
# Hooligan 20.12.2014 11:38
Цитирую Andriska:
Есть пару ошибок, помог устранить Юра Гузиенко. За что ему огромное спасибо.

А что за ошибки? У меня по прежнему проявляются неисправности. то самопроизвольно начинает моргать, то наоборот не запускается при нажатии на S2.
Ответить | Ответить с цитатой | Цитировать
# Andriska 21.12.2014 19:53
http://forum.bungle.lv/viewtopic.php?f=6&t=32
Ответить | Ответить с цитатой | Цитировать
# Alex9245 04.01.2015 07:59
Прошу прощения не могли бы вы выложить скрин фьюзов или написать значения в HEX. В протезе все работает а вот на макетке бред какойто
Ответить | Ответить с цитатой | Цитировать
# Andriska 04.01.2015 10:57
ckdiv8 убрать галку Pony prog
Ответить | Ответить с цитатой | Цитировать
# Cooler 05.01.2015 20:56
Друзья, а кто какой программатор использует.
K150 прописать tiny13 не вышло.
Ответить | Ответить с цитатой | Цитировать
# Andriska 06.01.2015 14:01
http://cxem.net/mc/images/mc96-17.jpg
Ответить | Ответить с цитатой | Цитировать
# Cooler 06.01.2015 19:23
Цитирую Andriska:
http://cxem.net/mc/images/mc96-17.jpg

А без LPT варианты есть? :roll:
Ответить | Ответить с цитатой | Цитировать
# Hooligan 04.08.2015 13:08
Друзья. Что то моя схема на авто продолжает глючить (как это происходит писал выше). Помогите перелопатить прошивку, я в этом не силён.
Хочу чтобы остался один эффект 1й. Звуковое подтверждение не нужно. Функционал S2 остался тот же, а S2 переводит при длительном удержании в режим стробоскопов и габарита. И при сбросе питания всегда возвращался в режим габаритов. Буду очень благодарен за прошивку diagnostics@inbox.ru
Ответить | Ответить с цитатой | Цитировать
# Hooligan 04.08.2015 13:10
*а S1 переводит при длительном удержании в режим стробоскопов и габарита.
Ответить | Ответить с цитатой | Цитировать
# akrub 25.10.2015 14:12
подскажите, можно ли избавиться от биполярников при использовании IRLML6402 ?

нагрузка в каждом канале 6*1вт светодиодов
если не трудно скажите какие резисторы ставить в между контроллером и затвором и между завтором и +12в
Ответить | Ответить с цитатой | Цитировать
# Юра 25.10.2015 14:27
При использовании р-канальных полевиков без биполярников нельзя, n-канальные можно.
Ответить | Ответить с цитатой | Цитировать
# akrub 26.10.2015 02:20
можете объяснить из-за чего , нужна инверсия в прошивке?
Ответить | Ответить с цитатой | Цитировать
# Юра 26.10.2015 09:23
инверсия само собой, нормально так работать не будет, ставь транзисторы и не парся.
Ответить | Ответить с цитатой | Цитировать
# pelya999 28.10.2015 18:09
Автор прошивки, можете немного переделать прошивку, чтобы кнопка S1 работала по плюсу, а не по минусу?
Ответить | Ответить с цитатой | Цитировать
# SANYAx1 28.10.2015 18:32
Шестую ногу на вход без внутренего резистора.
Ответить | Ответить с цитатой | Цитировать
# pelya999 28.10.2015 19:33
я так полагаю это вы мне ответили, но я неособо понял, какую строчку в исходнике надо подправить
Ответить | Ответить с цитатой | Цитировать
# SANYAx1 29.10.2015 02:12
Там где инициализация портов. Вам нужно загрузить атмел студию 6.1. Открыть проект.Нужен файл стробоскоп.с. Инициализация порта РВ1, выставить in, 0. Далее скомпилировать проект.
Ответить | Ответить с цитатой | Цитировать
# pelya999 29.10.2015 06:21
менять надо в этой строчке?
Код:PORTB = (0<<LED1)|(0<<LED2)|(0<<BUZ_PIN)|(1<<BUT_NUM)|(0<<CONTR_PIN);
Ответить | Ответить с цитатой | Цитировать
# pelya999 29.10.2015 06:40
меняю в этой строчке с (1
Ответить | Ответить с цитатой | Цитировать
# pelya999 29.10.2015 06:43
меняю в этой строчке с Код:(1<<BUT_NUM) на Код:(0<<BUT_NUM) , компилирую, моделирую в протеусе, но пр нажатии на кнопку S1, устройство реагирует неадекватно. Ножку PB1 вешаю на землю через резистор
Ответить | Ответить с цитатой | Цитировать
# SANYAx1 29.10.2015 09:54
Не нужно эту ногу на землю. Просто вход на РВ1 через резистор 10к и кнопку которую запитай от +12В.
Ответить | Ответить с цитатой | Цитировать
# pelya999 29.10.2015 09:59
Я правильно поменял значение в коде? потому что все равно не работает, даже после того как я убрал резистор. Вы сами проверяли?
Ответить | Ответить с цитатой | Цитировать
# Юра 29.10.2015 10:23
Открой вкладку Stroboskop.с найди эту строку Код: PORTB = (0<<LED1)|(0<<LED2)|(0<<BUZ_PIN)|(1<<BUT_NUM)|(0<<CONTR_PIN); и поменяй значение BUT_NUM на 0.
Далее, открой вкладку button.c найди эту строку Код: if (!(BUT_PINX & (1<<BUT_NUM))){ и убери в ней дужку, знак восклицания и в конце еще одну дужку.
Скомпилирую проект.
К ножке подключи тоже самое что и на второй кнопке.
Ответить | Ответить с цитатой | Цитировать
# pelya999 29.10.2015 10:41
Большое спасибо, вот теперь заработало
Ответить | Ответить с цитатой | Цитировать
# Zvermashine 29.10.2015 13:16
Цитирую pelya999:
Большое спасибо, вот теперь заработало

А мог бы ты откомпиленной прошивкой прошивкой поделиться - управлять +12 гораздо удобнее а скачать компилятор инет не позволяет
Ответить | Ответить с цитатой | Цитировать
# pelya999 29.10.2015 13:20
да всегда пожалуйста https://drive.google.com/file/d/0B1l8qYptQTWWNThKRlVtRjRlWFU/view?usp=sharing
Ответить | Ответить с цитатой | Цитировать
# Zvermashine 30.10.2015 13:09
Спасибо. Я очень часто путаюсь :) Размышлял над программой и схемой и вот какие мысли появились:
выбрал ключи помощнее
убрал пищалку
решил что управлять на землю кнопками удобнее
думаю было бы хорошо управлять вообще одной кнопкой - длинное нажатие переключение строб/габарит, короткое однократно строб/переключе ние режима моргания.

Если хочешь могу поделиться печаткой под все SMD
Ответить | Ответить с цитатой | Цитировать
# SANYAx1 30.10.2015 13:57
А почему на землю удобнее? Печаткой поделитесь.
Ответить | Ответить с цитатой | Цитировать
# Zvermashine 31.10.2015 03:57
Потому как в авто/мото применение и нужно протянуть только 2 провода (если мой товарищ переделает то 1) и замыкать на землю, а землю всюду найти можно.
Плюс между транзисторами irf9310 (они мощнее), биполярники bc847, LM-ка L7805CD2T корп D2pac.
https://yadi.sk/d/gJhU3hEYk8qQ9
Если сильны в программировани и может переделаете под одну кнопку? :)
*решил оставить биполярники - лень искать подходящие n-ключи
Ответить | Ответить с цитатой | Цитировать
# SANYAx1 31.10.2015 04:29
Так по умолчанию и так кнопка на землю. В программировани и не силен как автор, но попробовать можно.
Ответить | Ответить с цитатой | Цитировать
# Zvermashine 31.10.2015 04:54
Разве S2 не подтягивается на +12. Или я опять что то напутал?
Ответить | Ответить с цитатой | Цитировать
# SANYAx1 31.10.2015 15:47
Цитирую Zvermashine:
Разве S2 не подтягивается на +12. Или я опять что то напутал?

Подтягивается. Но можно в насторках МК выставить так же как на S1, меньше компонентов будет задействовано. Я на S2 не смотрел)))
Ответить | Ответить с цитатой | Цитировать
# Zvermashine 01.11.2015 03:25
Можно конечно, только вот я не совсем понял что, а во вторых мне и объяснять не стоит - у меня нет компилятора и инет не очень.
Все думаю как упростить программу и понял что все эти эффекты в программах излишнее усложнение - можно объединить их в одну программу моргания. И просто менять режим строб/габарит одной кнопкой
Ответить | Ответить с цитатой | Цитировать
# Zvermashine 29.10.2015 06:07
А я вот вообще не пойму зачем было усложнять? Можно без биполярников обойтись перейдя на N-канал, убрать одну лишнюю кнопку и на оставшуюся назначить длинное и короткое нажатие.
Ответить | Ответить с цитатой | Цитировать
# akrub 09.11.2015 02:49
а возможно ли переделать программу чтобы
1. при подаче питания с нажатой S2 сразу шел стробоскоп без двойного моргания, но если не нажата то все как обычно
2. чтобы контроллер на пищалку сразу выдавал частоту ~2кгц
Ответить | Ответить с цитатой | Цитировать
# Nikolay 03.06.2016 03:01
Здравствуйте. Такой вопрос. А есть ли схема стробоскопа и дхо с четырьмя выходами и что бы они моргали хаотично
Ответить | Ответить с цитатой | Цитировать
# Alex13 23.08.2016 06:57
Добрый день! Надеюсь тема не заглохла и автор не забросил сей замечательный проект!
Возможно ли модернизировать прошивку, добавив в неё задержку на включение ДХО?
После двух морганий задержка 3-5 секунд и ДХО включаются! Желательно, чтоб они разгорались плавно!
Ответить | Ответить с цитатой | Цитировать

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

Защитный код
Обновить