Как сделать светодиодные часы своими руками. Часы для улицы на светодиодах

В продаже можно встретить много различных моделей и вариантов электронных цифровых часов, но большинство из них расчитаны на использование внутри помещений, так как цифры маленькие. Однако иногда требуется разместить часы на улице - например на стене дома, или на стадионе, площади, то есть там, где они будут видны на большом расстоянии многими людьми. Для этого и была разработана и успешно собрана данная схема больших светодиодных часов, к которым можно подключить (через внутренние транзисторные ключи) LED индикаторы сколь угодно большого размера. Увеличить принципиальную схему можно кликнув по ней:

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

  1. Часы. В данном режиме идёт стандартный вид отображения времени. Имеется цифровая коррекция точности хода часов.
  2. Термометр. В этом случае устройство производит измерение температуры комнаты либо воздуха на улице, с одного датчика. Диапазон от -55 до +125 градусов.
  3. Предусмотрен контроль источника питания.
  4. Вывод информации на индикатор попеременно - часов и термометра.
  5. Для сохранения настроек и установок при пропадании 220В, применена энергонезависимая память.


Основой устройства является МК ATMega8, который прошивают выставляя фузы согласно таблице:

Работа и управление часами

Включив часы в первый раз, на экране появится рекламная заставка, после чего переключится на отображение времени. Нажимая на кнопку SET_TIME индикатор пойдёт по кругу из основного режима:

  • режим отображения минут и секунд. Если в этом режиме одновременно нажать на кнопку PLUS и MINUS , то произойдет обнуление секунд;
  • установка минут текущего времени;
  • установка часов текущего времени;
  • символ t . Настройка продолжительности отображения часов;
  • символ o . Время отображения символов индикации внешней температуры (out);
  • величина ежесуточной коррекции точности хода часов. Символ c и значение коррекции. Пределы установки от -25 до 25 сек. Выбранная величина будет ежесуточно в 0 часов 0 минут и 30 секунд прибавлена или вычтена из текущего времени. Более подробно читайте в инструкции, что в архиве с файлами прошивки и печатных плат.

Настройка часов

Удерживая кнопки PLUS /MINUS делаем ускоренную установку значений. После изменения каких-либо настроек, через 10 секунд новые значения запишутся в энергонезависимую память и будут считаны оттуда при повторном включении питания. Новые настройки вступают в силу по ходу установки. Микроконтроллер отслеживает наличие основного питания. При его отключении питание прибора осуществляется от внутреннего источника. Схема резервного модуля питания показана ниже:


Для уменьшения тока потребления отключаются индикатор, датчики и кнопки, но сами часы продолжают отсчитывать время. Как только напряжение сети 220В появится - все функции индикации восстанавливаются.


Так как устройство задумывалось как большие светодиодные часы, в них есть два дисплея: большой светодиодный - для улицы, и маленький ЖКИ - для удобства настройки основного дисплея. Большой дисплей расположен на расстоянии несколько метров от блока управления и соединен двумя кабелями по 8 проводов. В управление анодами внешнего индикатора индикаторов, применены транзисторные ключи по приведенной в архиве схеме. Авторы проекта: Александрович & SOIR.

Светодиодные простые часы можно сделать на дешёвом контроллере PIC16F628A. Конечно, в магазинах полно различных электронных часов, но по функциям у них может или нехватать термометра, или будильника, или они не светятся в темноте. Да и вообще, иногда прото хочется что-то спаять сам, а не покупать готовое. Чтобы увеличить рисунок схемы - клац.

В предлагаемых часах есть календарь. В нём два варианта отображения даты - месяц цифрой или слогом, всё это настрайвается после ввода даты переключением дальше кнопкой S1 во время отображения нужного параметра, термометр. есть прошивки под разные датчики. Смотрите устройство внутри корпуса:


Все знают, что кварцевые резонаторы не идеальные по точности, и в течение нескольких недель набегает погрешность. Для борьбы с этим делом, в часах предусмотрена корекция хода, которая устанавливается параметрами SH и SL . Подробнее:

SH=42 и SL=40 - это вперёд на 5 минут в сутки;
SH=46 и SL=40 - это назад на 3 минуты в сутки;
SH=40 и SL=40 - это вперёд на 2 минуты в сутки;
SH=45 и SL=40 - это назад на 1 минуту в сутки;
SH=44 и SL=С0 - это вперёд на 1 минуту в сутки;
SH=45 и SL=00 - это корекция отключена.

Таким образом можно добится идеальной точности. Хотя придётся несколько раз погонять коррекцию, пока выставите идеально. А теперь наглядно показывается работа электронных часов:

температура 29градусов цельсия

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


Простая мигалка на шести светодиодах и двух резисторах, питающаяся от батарейки на 9 вольт.

С динамической индикацией. По работе часов претензий нет: точный ход, удобные настройки. Но один большой минус - в дневное время плохо видно светодиодные индикаторы. Для решени проблемы перешёл на статическую индикацию и более яркие светодиоды. Как всегда в программном обеспечение огромное спасибо Soir. В общем предлагаю вашему вниманию большие уличные часы со статической индикацией, функции настройки остались как и в прежних часах.

В них два дисплея - основной (снаружи на улице) и вспомогательный на индикаторах - в помещении, на корпусе прибора. Высокая яркость достигается применением ультраярких светодиодов , с рабочим током 50мА, и микросхем-драйверов .

Схема электронных часов для улицы на ярких светодиодах

Для прошивки контроллера с файлами и используйте следующие настроки фузов:

Печатные платы часов, блока управления и внешнего модуля, в формате LAY, .


Особенности данной схемы часов:

- Формат отображения времени 24-х часовый.
- Цифровая коррекция точности хода.
- Встроенный контроль основного источника питания.
- Энергонезависимая память микроконтроллера.
- Имеется термометр, измеряющий температуру в диапазоне -55 - 125 градусов.
- Возможен поочередный вывод информации о времени и температуре на индикатор.


Нажатие на кнопку SET_TIME переводит индикатор по кругу из основного режима часов (отображение текущего времени). Во всех режимах удержанием кнопок PLUS/MINUS производится ускоренная установка. Изменения настроек через 10 секунд от последнего изменения значения запишутся в энергонезависимую память (EEPROM) и будут считаны оттуда при повторном включении питания.


Ещё один большой плюс предложенного варианта - изменилась яркость, теперь в солнечную погоду яркость прекрасная. Уменьшилась количество проводов с 14 до 5. Длина провода до основного (уличного) дисплея - 20 метров. Работой электронных часов доволен, получились полнофункциональные часы - и днем, и ночью. С Уважением, Soir–Александрович.

На фото прототип, собранный мной для отладки программы, которая будет управлять всем этим хозяйством. Вторая arduino nano в верхнем правом углу макетки не относится к проекту и торчит там просто так, внимание на нее можно не обращать.

Немного о принципе работы: ардуино берет данные у таймера DS323, перерабатывает их, определяет уровень освещенности с помощью фоторезистора, затем все посылает на MAX7219, а она в свою очередь зажигает нужные сегменты с нужной яркостью. Так же с помощью трех кнопок можно выставить год, месяц, день, и время по желанию. На фото индикаторы отображают время и температуру, которая взята с цифрового термодатчика

Основная сложность в моем случае - это то, что 2.7 дюймовые индикаторы с общим анодом, и их надо было во первых как то подружить с max7219, которая заточена под индикаторы с общим катодом, а во вторых решить проблему с их питанием, так как им нужно 7,2 вольта для свечения, чего одна max7219 обеспечить не может. Попросив помощи на одном форуме я получил таки ответ.

Решение на скриншоте:


К выходам сегментов из max7219 цепляется микросхемка , которая инвертирует сигнал, а к каждому выводу, который должен подключаться к общему катоду дисплея цепляется схемка из трех транзисторов, которые так же инвертируют его сигнал и повышают напряжение. Таким образом мы получаем возможность подключить к max7219 дисплеи с общим анодом и напряжением питания более 5 вольт

Для теста подключил один индикатор, все работает, ничего не дымит

Начинаем собирать.

Схему решил разделить на 2 части из-за огромного количества перемычек в разведенном моими кривыми лапками варианте, где все было на одной плате. Часы будут состоять из блока дисплея и блока питания и управления. Последний было решено собрать первым. Эстетов и бывалых радиолюбителей прошу не падать в обморок из-за жестокого обращения с деталями. Покупать принтер ради ЛУТа нет никакого желания, поэтому делаю по старинке - тренируюсь на бумажке, сверлю отверстия по шаблону, рисую маркером дорожки, затем травлю.

Принцип крепления индикаторов оставил тот же, как и на .

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

Процесс разметки







Затем с помощью шаблона сверлим отверстия в нужных местах и примеряем все компоненты. Все встало безупречно.

Рисуем дорожки и травим.




купание в хлорном железе

Готово!
плата управления:


плата индикации:


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

Вот готовые платы. На плате управления имеется посадочное место для ардуино нано, часов, а так же выходы для подключения к плате дисплея и датчики (фоторезистор для автояркости и цифровой термометр ds18s20) и блок питания на с регулировкой выходного напряжения (для больших семисегментников) и для питания часов и ардуино, на плате индикации находятся посадочные гнезда для дисплеев, панельки для max2719 и uln2003a, решение для питания четырех больших семисегментников и куча перемычек.




плата управления сзади

Плата индикации сзади:

Ужасный монтаж смд:


Запуск

После припаивания всех шлейфов, кнопок и датчиков пришло время все это включить. Первый запуск выявил несколько проблем. Не светился последний большой индикатор, а остальные светились тускло. С первой проблемой расправился пропаиванием ножки смд-транзистора, со второй - регулировкой напряжения, выдаваемого lm317.
ОНО ЖИВОЕ!

Часы со светодиодной подсветкой и пульсирующей минутной стрелкой на микроконтроллере Arduino
Эти уникальные часы со светодиодной подсветкой и пульсирующей минутной стрелкой удалось изготовить благодаря использованию микросхемы ШИМ-контроллера TLC5940. Его главной задачей является расширить количество контактов с ШИМ-модуляцией. Еще одной особенностью данных часов является переделанный аналоговый вольтметр в прибор измеряющий минуты. Для этого на стандартном принтере была распечатана новая шкала и наклеена поверх старой. Как таковая, 5-я минута не отсчитывается, просто в течение пятой минуты счетчик времени показывает стрелку, упершуюся в конец шкалы (зашкаливает). Основное управление реализовано на микроконтроллере Arduino Uno.

Для того чтобы подсветка часов не светилась слишком ярко в темной комнате, была реализована схема автоматической подстройки яркости в зависимости от освещенности (использовался фоторезистор).

Шаг 1: Необходимые компоненты



Вот что потребуется:

  • Модуль аналогового вольтметра на 5V DC;
  • Микроконтроллер Arduino UNO или другой подходящий Arduino;
  • Монтажная плата Arduino (прото плата);
  • Модуль часов реального времени DS1307 (RTC);
  • Модуль с ШИМ-контроллером TLC5940;
  • Лепестковые светодиоды подсветки – 12 шт.;
  • Компоненты для сборки схемы автоматического регулирования яркости (LDR).

Также, для изготовления некоторых других компонентов проекта желательно иметь доступ к 3D-принтеру и станку лазерной резки. Предполагается, что этот доступ у вас есть, поэтому в инструкции на соответствующих этапах будут прилагаться чертежи для изготовления.

Шаг 2: Циферблат




Циферблат состоит из трех деталей (слоев) вырезанных на станке лазерной резки из 3 мм листа МДФ, которые скрепляются между собой с помощью болтов. Пластина без прорезей (внизу справа на картинке) помещается под другой пластиной для позиционирования светодиодов (внизу слева). Затем, отдельные светодиоды помещаются в соответствующие пазы, и сверху одевается лицевая панель (сверху на рисунке). По краю циферблата просверлены четыре отверстия, через которые все три детали скрепляются вместе с помощью болтов.

  • Для проверки работоспособности светодиодов на этом этапе, использовалась плоская батарейка CR2032;
  • Для фиксации светодиодов использовались небольшие полоски липкой ленты, которые приклеивались с задней стороны светодиодов;
  • Все ножки светодиодов были предварительно согнуты соответствующим образом;
  • Отверстия по краям были просверлены заново, через которые и выполнялось скрепление болтами. Оказалось, что это намного удобнее.

Технический чертеж деталей для циферблата доступен по :

Шаг 3: Разработка схемы



На этом этапе была разработана электрическая схема. Для этого использовались различные учебники и руководства. Не будем сильно углубляться в этот процесс, в двух файлах ниже представлена готовая электрическая схема, которая была использована в этом проекте.

Шаг 4: Подключение монтажной платы Arduino





  1. Первым делом надо распаять все игольчатые контакты на монтажных и секционных платах;
  2. Далее, ввиду того, что питание 5V и GND используют очень много плат и периферийных устройств, для надежности, было припаяно по два провода на 5V и GND на монтажной плате;
  3. Далее был установлен ШИМ-контроллер TLC5940 рядом с используемыми контактами;
  4. После выполняется подключение контроллера TLC5940, согласно схеме подключения;
  5. Для того чтобы была возможность использовать батарею, был установлен модуль RTC на краю монтажной платы. Если припаять его посередине платы, то не будет видно обозначение контактов;
  6. Выполнено подключение модуля RTC, согласно схеме подключения;
  7. Собрана схема автоматического контроля яркости (LDR), ознакомиться можно по ссылке
  8. Выполнено подключение проводов для вольтметра, путем подключения проводов к выводу 6 и GND.
  9. В конце были припаяны 13 проводов для светодиодов (На практике оказалось, что это было лучше сделать до того, как приступать к шагу 3).

Шаг 5: Программный код

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

  • Перед прошивкой Arduino, нужно раскомментировать строку, которая устанавливает время:
    rtc.adjust(DateTime(__DATE__, __TIME__))
    После прошивки контроллера с этой строкой (время задано), нужно опять ее закомментировать и прошить контроллер заново. Это позволяет модулю RTC использовать батарею, для запоминания времени, если пропадет основное питание.
  • Каждый раз, когда вы используете "Tlc.set ()", вам нужно использовать "Tlc.update"

Шаг 6: Внешнее кольцо

Внешнее кольцо для часов было напечатано на 3D-принтере Replicator Z18. Оно прикрепляется к часам с помощью винтов на лицевой стороне часов. Ниже прилагается файл с 3D-моделью кольца для печати на 3D-принтере.

Шаг 7: Сборка часов


Микроконтроллер Arduino со всей остальной электроникой был закреплен на задней стороне часов с помощью саморезов и гаек в качестве распорок. Затем подключены все светодиоды, аналоговый вольтметр и LDR к проводам, которые ранее были подпаяны к монтажной плате. Все светодиоды соединены между собой одной ножкой и подключены к контакту VCC на контроллере TLC5940 (по кругу просто припаян кусок проволоки).

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