Шановні друзі!
26 та 31 грудня магазин працюватиме до 16 години. 1 та 2 січня магазин працювати не буде.
Вітаємо всіх з Різдвом та Новим Роком!
Мобильная версия Форум Arduino Документация Гарантийные условия 0 0
UA RU
График работы магазина:
Пн-Пт: 8.00 - 19.00
Сб: 10.00 - 17.00
Вс: выходной
Каталог
Напиши статью и получи скидку!

Индикаторы на китайских светодиодах

2021-09-02

Все статьи →

Автор Владимир Шишмаков, Кузнецовск, июль 2021

В статье проанализирована возможность проектирования и изготовления в домашних условиях больших цифровых индикаторов любой сложности и размера на базе дешёвых (100 штук за 30  грн) сверхъярких китайских светодиодов. В частности, рассмотрен вопрос построения 6-и разрядного 7-и сегментного индикатора на светодиодах smd5730, разработаны схемы управления, отладки и монтажа часов с данным индикатором.

Технические характеристики светодиода smd5730

  • Размеры (Д х Ш х В): 5,6 х 3 х 0,9 мм
  • Рабочее напряжение: 3,2-3,5 В
  • Номинальный ток: 120 мА
  • Рассеиваемая мощность: 400 мВт
  • Цветовая температура: 6000-8000 K
  • Сила света: 50-55 Лм
  • Угол свечения: 120°
  • Рабочая температура: -40° до 85°C

Цветовая температура некоторых электрических ламп. Лампа накаливания в 10 Вт порождает световой поток в 50 люменов, а потребляемая мощность smd5730 менее 0,5Вт, т.е. более чем в 20 раз экономичнее.

Монтаж светодиодов на печатную плату.

1. Процесс пайки SMD светодиодов состоит в предварительном нанесении легкоплавкого припоя на токоведущие дорожки печатной платы. Можно нанести сразу на все.

2. Для того, чтобы паять диоды SMD, необходимо использовать специальный паяльник малой мощности и ограничивать время контакта SMD светодиода с жалом паяльника не более 3-5 секунд. Распространенной ошибкой является использование паяльников с тонким жалом. Это снижает эффективность теплопередачи и не позволяет качественно нагреть контакты и дорожки печатной платы. Сначала припаивается один конец диода SMD, затем второй.

3. Я пользовался жалом с прямоугольным жалом, что обеспечивает быстрый прогрев площадки платы и расплав припоя, исключая перегрев светодиода. Жидкий припой под действием эффектов смачивания и капиллярного впитывания затекает в зазор между контактом smd-светодиода и дорожкой печатной платы. Температура жала подбирается экспериментально, чтобы выполнить п.2. Я работал с паяльной станцией SP 8520, где температура жала регулируется в диапазоне от 200 С° до 480С° с точностью до 1 град.

Ошибка, приводящая к выходу светодиода из строя - перегрев. Чрезмерно долгое прикосновение паяльника к контакту smd диода и дорожки приводит к расплавлению пластмассового корпус светодиода и его разрушение. Если не контролировать длительность прикосновения жала к детали, избежать чрезмерного нагрева не удастся. Повторить такую технологию в домашних условиях трудно но возможно, поскольку необходимо иметь:

  • Терпение и желание изготовить огромный индикатор.
  • Паяльник с прямоугольным жалом на конце.
  • Возможность установки и фиксации температуры жала.
  • Легкоплавкий припой с внутренним наполнением сосновой канифолью.
  • Я пользовался проволокой диаметром 0,8 мм с указанными характеристиками

Выбор конфигурации индикатора

Рассмотрим 7-и сегментный индикатор с сегментами a,b,c,d,e,f,g представленный 7-ю жёлтыми smd светодиодами. Размер индикатора 6х3 мм. Такая крошка сгодится разве для карманного калькулятора. Следовательно, размер сегмента должен быть увеличен, допустим в 10 раз. Тогда индикатор по высоте будет более 12 см, а если в 20 раз, то индикатор по высоте будет более 24 см.

Для экономии пространства листа, индикатор повёрнут на 90 градусов. Вертикальный сегмент индикатора состоит из 8-и светодиодов, горизонтальный из 4-х. Для подсчёта их количества они условно окрашены в разные цвета.

Следовательно, индикатор по высоте будет более 8х2х6 = 96 мм, учитывая что светодиоды будут не вплотную друг к другу. Наращивая количество светодиодов в сегменте, тем самым изменяем длину и высоту сегмента, можно спроектировать табло для стадиона ДИНАМО в г. Киеве.

Электрические связи внутри сегмента

Изображены простейшие типы связей для 8-и светодиодов. Для зажигания 8-и светодиодов соединения А1-Б1 необходимо приложить напряжение 8smd х 3В=24В(См. Технические характеристики светодиода smd5730), ток 120 мА. Для зажигания 8-и светодиодов соединения А2-Б2 необходимо приложить напряжение 4smd х 3В = 12В, ток 240 мА. Для зажигания 8-и светодиодов соединения А3-Б3 необходимо приложить напряжение 2smd х 3В = 6В, ток 480 мА. Для зажигания 8-и светодиодов соединения А4-Б4 необходимо приложить напряжение 1smd х 3 = 3В, ток 120*8 = 960 мА.


Учитывая что питание управляющего контроллера равно 5В, то для схемы А1-Б1 необходим дополнительный источник стабилизированного питания на 24 В, для А2-Б2 12 В, для А3-Б3 6 В. Для схемы для А4-Б4 подойдёт 5В с определёнными условиями. Поскольку, речь идёт о динамической индикации, приложение напряжения к рассматриваемой ячейке имеет импульсный характер с определённой скважностью. Частота, длительность импульса и скважность подбирается экспериментально исходя из следующего:

  • Наличия одного или нескольких блоков питания
  • Отсутствия мерцания индикатора
  • Не превышения импульсных нагрузок для элементов управляющей части
  • Не превышения импульсных токов для светодиодов
  • Не превышения импульсных нагрузок для блока(блоков) питания

Управление сегментом

После ряда испытаний был выбран сегмент типа А4-Б4 и один стабилизированный блок питания на 5В для всей схемы. Импульсы управления транзисторами в 1 млС Т1,Т2 формируются микроконтроллером . Каждый сегмент управляется по каналу А4 мощным ключом на Т1 и Т2 формирующим положительный импульс длительностью 1 млС. Таких ключей 6, по числу сегментов.

Для активации сегмента на канале Б4, должен быть сформирован нулевой уровень напряжения, на всё время действия положительного импульса на А4, при этом через сегмент протекает ток активируя выброс фотонов в глаза наблюдателя. Ключи формирующие нулевой потенциал выполнены на транзисторах КТ645 Т3?Т11, которые являются общими для всех сегментов.

Превращение кода микроконтроллера(МК) в видимую цифру

Программа формирует 7-и разрядный код и выставляет его на шинах МК. Например, код нуля равен 126, код девятки 123. 126 в бинарном виде представляется в виде строки 1111110. Логические единицы представляют собой положительные уровни +5В, открывая транзисторы Т3?Т11 с открытым коллектором, обеспечивая нулевой потенциал каналов Б4. Нулевой уровень закрывает транзистор и данный сегмент не светится. По прошествии 1млС включается силовой ключ следующего сегмента, предыдущего выключается. Глаз человека, по своей природе, обладает кратковременной памятью длительностью до десятков миллисекунд, он «помнит» подсвеченный сегмент, хотя он уже выключен. По прошествии зажигания/погасания 6-и сегментов идёт повторение, «остатки памяти» стираются от первого/второго… сегмента более яркими картинками текущих подсвечивающих цифр. Так работает динамическая индикация.

Детализация кода нуля 12610=11111102

Видимая цифра «0» индикатора формируется 6-ю сегментами «a», «b», «c», «d», «e», «f» кроме сегмента «g» транзистор которого закрыт нулём на его базе. Нижний индекс десятичного числа представляет его бинарный аналог.

Блок индикатора


7-и сегментный 6-и разрядный индикатор часов точного времени. Старшие разряды десятки часов – 5 разряд, единицы часов – 4 разряд, десятки минут – 3 разряд, 2 разряд – минуты, 1 разряд представляет десятки секунд, нулевой разряд – секунды. Разряды индикатора окрашивались в разные цвета фломастерами и первоначально выглядели очень эффектно, но проработав пару недель, куда то пропали, как будто выгорели. Сегменты индикатора двух типов – вертикальные и горизонтальные собранные по схеме А4,Б4 по 5 светодиодов тёплого солнечного света. Как видно из схемы, катоды сегментов «a1», «b1», «c1», «d1», «e1», «f1» и «g1» являются общими для всех разрядов, зато аноды «А11», «А21», «А31», «А41», «А51», «А61» индивидуальны для каждого разряда. На анодах формируются положительные импульсы в 1 млС сдвинутые по времени, на катодах формируется код символа состоящий из комбинации нулей и единиц.

Печатные платы индикатора

Станок на котором я фрезерую платы, имеет ограничение на размеры платы не более 170х170 см, в действительности 160х160 см. Поэтому весь индикатор пришлось разбить на 3 части по 125х150 см.


Светодиоды smd изображены в красных прямоугольных корпусах по 5 светодиодов в каждом сегменте. Каждая цифра индикатора обвязана линией положительного импульса:

Десятки часов от 0 до 2 – А1   Десятки минут от 0 до 5 – А5 Десятки секунд от 0 до 5 – А3

Единицы часов от 0 до 9 – А2 Единицы мнут от 0 до 9 – А6 Единицы секунд от 0 до 9 – А4

Каждый сегмент любой цифры, состоящий из 5-и светодиодов, имеет связь с подобным сегментом из 5-и остальных. Платы похожи на первый взгляд, но имеют различия:

  • Плата часов принимает код символа от МК снизу и передаёт его по вертикали справа плате минут.
  • Плата минут принимает код символа по вертикали слева от платы часов и передаёт его по вертикали справа плате секунд.
  • Плата секунд принимает код символа по вертикали справа от платы минут и передаёт его вниз по горизонтали для возможного использования в будущем.

Принципиальная схема управления большим индикатором


Контроллер ATMega8 синхронизируется внутренним кварцевым генератором на 16 МГц обеспечивая точность хода ±0,5 сек/сутки.

Вывод текущего времени на индикатор

  • if(kn1)
  • {
  • A1 PORTD=S[ch/10]; t1 cl t1 A2 PORTD=S[ch%10]; t1 cl t1 //вывод часов
  • A5 PORTD=S[min/10]; t1 cl t1 A6 PORTD=S[min%10]; t1 cl t1 //вывод минут
  • A3 PORTD=S[sec/10]; t1 cl t1 A4 PORTD=S[sec%10]; t1 cl t1 //вывод секунд
  • }

Расшифруем первую строку:

  1. Процедура в фигурных скобках выполняется, если кнопка 1 (kn1) не нажата.
  2. А1 – положительный импульс в 1 млС идёт на вход силового ключа К1. Транзистор Т2 (КТ645) открывается, обеспечивая базовым током транзистор p-n-p типа Т1(КТ816Б). Последний открывается и формирует мощный положительный импульс на выходе А11, обеспечивая питанием цифру «десятки часов».
  3. Порт D формирует код «десятки часов» процедурой S[ch/10], где S массив чисел типа char S[10] ={126,48,109,121,51,91,95,112,127,123} содержащий коды от 0 до 9.
  4. Переменная ch формируется процедурой interrupt [TIM1_COMPA] void timer1_compa_isr(void), представляющей из себя прерывание каждую секунду при сравнении таймера timer1 с некоторой постоянной. Секунды накапливаясь формируют минуты и часы точного времени. Для формирования цифры “десятки часов” переменная ch делится на 10 с отбрасыванием остатка от деления. Полученный результат является указателем в массиве S для формирования кода “десятки часов”.
  5. t1 – задержка в 1 млС в течении которой на выходе силового ключа «висит» потенциал в 6 вольт на аноде цифры “десятки часов”, а на катодах «висит» код выводимой цифры.
  6. cl – по прошествии 1 млС идёт процедура выведения порта D в высокий импеданс и обнуление. В результате семь катодных транзисторов Т закрываются, цифра гаснет, но глаз имея инерцию зрения помнит её.
  7. А2 – положительный импульс в 1 млС идёт на вход силового ключа К2. Транзистор Т2 (КТ645) открывается, обеспечивая базовым током транзистор p-n-p типа Т1(КТ816Б). Последний открывается и формирует мощный положительный импульс на выходе А21, обеспечивая питанием цифру «единицы часов».
  8. Для формирования цифры “единиц часов” от переменной ch берётся остаток от деления на 10 оператором ch%10 которая является указателем в массиве S.
  9. Для формирования остальных цифр индикатора процедура зажигания/погасания аналогичны.

Синхронизации времени часов с временем интернета

Для корректировки времени данного устройства с точным временем интернета служит пульт управления являющийся внешним устройством на 2-х кнопках kn1,kn2, переменном резисторе в 10к и мобильного телефона. Подвижный контакт резистора acp соединён с ADC3. АЦП измеряет напряжение на acp и передаёт данные в программу МК. Программа анализирует в состояние kn1,kn2 и выполняет корректировку времени.

  • if(!kn1)
  • {
  • //Вывод на индикатор режима
  • ADCW=read_adc(3);
  • val=ADCW/100;
  • A5 PORTD=S[val/10]; t1 cl t1
  • A6 PORTD=S[val%10]; t1 cl t1
  • }
  • //корректировка параметра согласно выбранного режима
  • switch (val)
  • {
  • //корректировка времени
  • case 0:while (!kn2){t1 if(kn2) min++;sec=0; if(min>59) min=0;} break;
  • case 1:while (!kn2){t1 if(kn2) min--;sec=0;}break;
  • case 2:while (!kn2){t1 if(kn2) ch++;sec=0; if(ch>23) ch=0;} break;
  • case 3:while (!kn2){t1 if(kn2) ch--;sec=0;} break;
  • }

Отслеживание и корректировка точного времени происходит по телефону. Режимов корректировки 4, выбирается поворотом ручки переменного резистора в 10 кОм

  1. Корректировки минут+
  2. Корректировки минут-
  3. Корректировки часов+
  4. Корректировки часов-

В два последних разряда при kn1=0 выводится код АЦП делённый на 100, что позволяет выводить до 10 режимов. При отпускании кнопки kn1=1 код АЦП сохраняется в переменной val что и является номером режима.

При нажатии kn2=0, выполняется процедура корректировки:

  1. val=0, при отпускании kn2=1 добавляется 1 мин, обнуляются сек, анализируется переменная min, если она больше 59, min обнуляется
  2. val=1, при отпускании kn2=1 минуты уменьшаются на 1, обнуляются сек.
  3. val=2, при отпускании kn2=1 добавляется 1 час, обнуляются сек, анализируется переменная ch, если она больше 23, обнуляется ch
  4. val=3, при отпускании kn2=1 отнимается 1 час, обнуляются сек.

При подаче питания/включения устанавливается время по умолчанию 14 часов 0 минут 40 секунд, далее происходит процедура корректировки. Внешний вид часов

Ссылки:

Ваша оценка статьи:

Отлично
Хорошо
Удовлетворительно
Плохо
Очень плохо

Общая оценка:

Оценка "Индикаторы на китайских светодиодах"
4 из 5
сделана на основе 5 оценок 5 клиентских отзывов.

Благодарим Вас за обращение! Ваш отзыв появится после модерации администратором.
Владимир- автор разработки
31.10.2024 12:29:39
Прошло более 3-х лет со времени эксплуатации данного варианта часов. 1. Подтверждаю уход точности примерно -1 минута за неделю, легко корректируется за 2 секунды. Введение в схему DS1307 решает проблему.2.Никакой деградации светодиодов не происходит, возможно за счёт динамики. Часы установлены на кухне и ночью светло как пасмурным днём, что делает возможным заглянуть в холодильник (там сгорела лампочка) и достать необходимый продукт.
Владимир
05.11.2021 10:28:47
Надежды Alex и других не оправдались. Часы работают больше года без замечаний. Никакого выгорания нет и точность приличная Разработчик и автор статьи
Alex
01.11.2021 12:48:36
На фото уже видна сильная деградация некоторых светодиодов. Через несколько месяцев будет совсем плохо. У Вас используется динамическая индикация, и Вам надо обеспечить как СТАБИЛЬНЫЙ ТОК через каждый светодиод, так и СТАБИЛЬНЫЙ ТОК в каждом сегменте при включении нескольких сегментов. При такой схемотехнике Вы этого не получите. Для точности хода надо добавить DS3231. В общем статья о том, как часы делать нельзя :)
Андрій_М
02.10.2021 11:33:30
Выгорят ваши дешевые сверхяркие один за другим, еще и светить будут вразнобой. Потому что изначальный подход "из того, что было". "Для зажигания светодиодов" нужно обеспечить СТАБИЛЬНЫЙ ТОК, а не приложить напряжение. Иначе это изделие ничего общего с надежностью не имеет. И параллельно так соединять нельзя изза ухудшающегося разбаланса. С/диодов столько не нужно если вы не хотите инопланетян слепить. Рассеиватели нужны. Корректировка - что-то отдельно непонятное. Будет плавать по температуре, скорее всего.. Плюс за старания )
Артем
10.09.2021 21:16:47
Ідея цікава. Але точність ходу Вашого годинника скоріш за все буде низькою
оплата картами Visa и MasterCard