Электронные часы на светодиодах. Электронные часы своими руками

06.07.2019

Наручные самодельные часы на вакуумном индикаторе, сделанные в стиле стимпанк. Материал взят с сайта www.johngineer.com. Эти наручные часы собраны на основе ИВЛ-2 дисплея. Изначально купил несколько таких индикаторов, чтобы создать стандартные настольные часы, но после размышлений понял, что можно построить стильные наручные часы тоже. Индикатор имеет ряд особенностей, которые делают его более подходящим для этой цели, чем большинство других советских дисплеев. Вот параметры:

  • Номинальный ток накала 60mA 2.4V, но работает и с 35mA 1.2V.
  • Небольшой размер - всего 1.25 x 2.25"
  • Может работать с относительно низким напряжением сетки 12V (до 24)
  • Потребляет только 2,5 мА/сегмент при 12.5V

Все фотки можно сделать по-больше кликнув на них. Самым крупным препятствием на пути к успешному завершению проекта было питание. Поскольку эти часы задумывались как часть костюма, не беда что аккумулятор работает всего 10 часов. Остановился на AA и AAA.

Схема довольно проста. Микроконтроллер Atmel AVR ATMega88, и часы реального времени - DS3231. Но есть и другие микросхемы, намного дешевле, которые будут работать так же хорошо в генераторе.

VFD-дисплей управляется MAX6920 - 12-разрядный регистр сдвига с высоким напряжением (до 70V) выходов. Он прост в использовании, очень надежный и компактный. Также возможно для драйвера дисплея спаять кучу дискретных компонентов, но это было непрактично из-за нехватки места.

Напряжение аккумулятора питает также повышающий преобразователь на 5 В (MCP1640 SOT23-6), который нужен для нормальной работы AVR, DS3231, и MAX6920, а также выступает в качестве входного напряжения для второго повышающего преобразователя (NCP1403 SOT23-5), который производит 13V для напряжения сетки вакуумного индикатора.

В часах есть три датчика: один аналоговый и два цифровых. Аналоговый датчик - это фототранзистор, он используется для выявления уровня освещения (Q2). Цифровые датчики: BMP180 - давления и температуры, и MMA8653 - акселерометр для обнаружения движения. Оба цифровых датчика связаны по шине I2C с DS3231.

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

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

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

Микроконтроллер PIC18F25K22 берёт на себя всю обработку данных и отсчёт времени, а на долю ULN2803A остаётся согласование его выходов со светодиодным индикатором. Небольшая микросхема DS1302 работает как таймер точных секундных сигналов, частота её стабилизирована стандартным кварцевым резонатором 32768 Гц. Это несколько усложняет конструкцию, зато вам не придётся постоянно подстраивать и корректировать время, которое будет неизбежно запаздывать или спешить, если обойтись случайным ненастроенным кварцевым резонатором на несколько МГц. Подобные часы скорее простая игрушка, чем качественный точный хронометр.

При необходимости, датчики температуры могут быть расположены далеко от основного блока - они соединяются с ним трёхпроводным кабелем. В нашем случае один температурный датчик установлен в блок, а другой расположен снаружи, на кабеле длинной около 50 см. Когда пробовали кабель 5 м, то тоже прекрасно функционировало.

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

Сама электроника запускается от 5 В, но для яркого свечения светодиодов необходимо использовать 12 В. Из сети, питание поступает через понижающий трансформатор адаптер на стабилизатор 7805 , который образует напряжение строго 5 В. Обратите внимание на небольшую зелёную цилиндрическую батарейку - она служит источником резервного питания, на случай пропадания сети 220 В. Её не обязательно брать на 5 В - достаточно литий-ионного или Ni-MH аккумулятора на 3,6 вольта.

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

Здесь вы сможете найти все необходимые детали предлагаемой конструкции самодельных цифровых часов, в том числе схему, топологию печатной платы, прошивки PIC и

20 августа 2015 в 12:34

Самодельные электронные часы, элементная база - часть 1, измерение времени

  • DIY или Сделай сам

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

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

Итак, какие доступные в «железе» способы измерения времени мы можем использовать?

Встроенный RC-генератор процессора

Самая простая идея, которая может придти в голову - это просто настроить программный таймер, и им отсчитывать секунды. Так вот, эта идея никуда не годится. Часы-то работать конечно будут, только вот точность встроенного генератора никак не регламентируется, и может «плавать» в пределах 10% от номинала. Вряд ли кому-то нужны часы, уходящие в месяц на 15 минут.

Модуль реального времени DS1307

Более правильный вариант, он же использующийся в большинстве «народных» изделий - это часы реального времени. Микросхема обменивается с микроконтроллером по I2C, требует минимума обвязки (кварц и пара резисторов). Цена вопроса около 100р за микросхему, или около 1$ на ебее за готовую плату с микросхемой, модулем памяти и разъемом для батарейки.

Схема из даташита:

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

Казалось бы, все хорошо, если бы не одна проблема - невысокая точность. Примерная точность часовых кварцев - 20-30ppm. Обозначение ppm - parts per million, показывает число миллионных долей. Казалось бы, 20миллионных - это супер, однако для частоты в 32768Гц получается 20*32768/1000000 = ±0,65536Гц, т.е. уже полгерца. Путем несложных подсчетов видно, что генератор с такой разницей за сутки «натикает» лишних (или недостающих) 56тыс тактов, что соответствует 2 секундам в день. Кварцы бывают разные, некоторые пользователи писали и об ошибке в 5 секунд в день. Как-то не очень точно - за месяц такие часы уйдут как минимум, на минуту. Это уже приличная разница, заметная невооруженным глазом (когда любимый сериал бабушки начинается в 11.00, а часы показывают 11.05, разработчику таких часов перед родственниками будет неудобно).

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

Модуль реального времени DS3231

Мы не первые, кто задался вопросом точности, и компания Dallas пойдя навстречу пожеланиям, выпустила более совершенный модуль - DS3231. Он называется «Extremely Accurate Real Time Clock», имеет встроенный генератор с температурной коррекцией. Точность в 10 раз выше, и составляет 2ppm. Цена вопроса чуть повыше, но корпус микросхемы рассчитан под SMD-монтаж, паять не так удобно, зато можно купить на ебее готовую плату.


(фото с сайта продавца)

Точность в 6 секунд в месяц, это уже неплохой результат. Но мы пойдем дальше - в идеале, часы в 21 веке вообще не нужно подстраивать.

Радиомодуль DCF-77

Метод скорее экзотический, но для полноты картины его нельзя не упомянуть. Немногие знают, но сигналы точного времени передаются по радио еще с 70х годов. Передатчик DCF-77 расположен в Германии недалеко от Франкфурта, и на СДВ-частоте 77.5КГц передаются метки точного времени (да, у них уже 20 лет назад были настенные и настольные часы, которые не надо подстраивать).

Способ хорош тем, что схема имеет малое энергопотребление, так что сейчас производятся даже наручные часы с такой технологией. Готовую плату приема DCF-77 можно купить на ebay, цена вопроса 20$.

Многие часы и метеостанции имеют возможность приема DCF-77, проблема лишь в том, что до России сигнал практически не доходит. Карта покрытия с Википедии:

Как можно видеть, лишь Москва и Питер находятся на границе зоны приема. По отзывам владельцев, лишь иногда сигнал удается принять, что для практического применения конечно, не годится.

GPS-модуль

Если часы будут стоять недалеко от окна, то вполне реальный метод получения точного времени - GPS-модуль. Эти модули можно недорого купить на ebay (цена вопроса 10-15$). Например, Ublox NEO-6M, подключается напрямую к serial-пинам процессора, и выдает строки NMEA на скорости 9600.

Данные приходят примерно в таком формате " $GPRMC,040302.663,A,3939.7,N,10506.6,W,0.27,358.86,200804,*1A", и распарсить их даже для слабой Arduino труда не составляет. Патриоты кстати, могут приобрести более дорогой модуль Ublox NEO-7N, поддерживающий (по отзывам) как GPS так и «Глонасс».

Очевидно, что про разные часовые пояса GPS-модуль ничего не знает, так что их вычисление и смену летнего/зимнего времени, разработчику придется продумать самому. Другой минус использования GPS - относительно высокое энергопотребление (впрочем, некоторые модули можно отдельными командами переводить в «спящий режим»).

Wi-Fi

И наконец, последний (и самый очевидный на сегодняшний момент), способ получения точного времени - это брать его из Интернета. Здесь есть два подхода. Первый, и наиболее простой - использовать в качестве платы часов что-то типа Raspberry PI с Линуксом, тогда делать ничего не надо, все будет работать «из коробки». Если же хочется «экзотики» - то самым интересным вариантом является модуль esp8266.

Это недорогой (цена вопроса около 200р на ebay) WiFi-модуль может обмениваться с сервером по serial-порту процессора, при желании его можно также перепрошить (сторонних прошивок довольно много), и часть логики (например опрос сервера времени) сделать в самом модуле. Сторонними прошивками поддерживается куча всего, от Lua до C++, так что вариантов «размять мозги» вполне достаточно.

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

Данные часы собранны на хорошо известном комплекте микросхем - К176ИЕ18 (двоичный счетчик для часов с генератором сигнала звонка),

К176ИЕ13 (счетчик для часов с будильником) и К176ИД2 (преобразователь двоичного кода в семисегментный)

При включении питания в счетчик часов, минут и в регистр памяти будильника микросхемы U2 автоматически записываются нули. Для установки

времени следует нажать кнопку S4 (Time Set) и придерживая ее нажать кнопку S3 (Hour) - для установки часов или S2 (Min) - для установки

минут. При этом показания соответствующих индикаторов начнут изменяться с частотой 2 Гц от 00 до 59 и далее снова 00. В момент перехода

от 59 к 00 показания счетчика часов увеличатся на единицу. Установка времени будильника происходит так же, только придерживать нужно

кнопку S5 (Alarm Set). После установки времени срабатывания будильника нужно нажать кнопку S1 для включения будильника (контакты

замкнуты). Кнопка S6 (Reset) служит для принудительного сброса индикаторов минут в 00 при настройке. Светодиоды D3 и D4 играют роль

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

индикаторы часов, две разделительные точки (светодиоды D3 и D4) и индикаторы минут.

В часах использовались резисторы R6-R12 и R14-R16 ваттностью 0,25W остальные - 0,125W. Кварцевый резонатор XTAL1 на частоту 32 768Hz -

обычный часовой, Транзисторы КТ315А можно заменить на любые маломощные кремниевые соответствующей структуры, КТ815А - на транзисторы

средней мощности со статическим коэффициентом передачи тока базы не менее 40, диоды - любые кремниевые маломощные. Пищалка BZ1

динамическая, без встроенного генератора, сопротивление обмотки 45 Om. Кнопка S1 естественно с фиксацией.

Индикаторы использованы TOS-5163AG зеленого свечения, можно применить любые другие индикаторы с общим катодом, не уменьшая при этом

сопротивление резисторов R6-R12. На рисунке Вы можете наблюдать распиновку данного индикатора, выводы показаны условно, т.к. представлен

вид сверху.

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

частотомером период колебаний 1 с на выводе 4 микросхемы U1. Настройка генератора по ходу часов потребует значительно большей затраты

времени. Возможно, придется также подстроить яркость свечения светодиодов D3 и D4 подбором сопротивления резистора R5, чтобы все

светилось равномерно ярко. Потребляемый часами ток не превышает 180 мА.

Часы питаются от обычного блока питания, собранного на плюсовом микросхемном стабилизаторе 7809 с выходным напряжением +9V и током 1,5A.


Большие часы на светодиодах

Вступление.

Началось всё так. На даче у меня был старый механический будильник (made in USSR), у которого были проблемы с механикой. Я решил собрать электронные часы. Первая проблема - какой индикатор выбрать. ВЛИ и ГРИ не подходать из-за больших перепадов температур на даче. ЖКИ отпадает по той же причине. Остаётся светодиодный индикатор. Мне надоело разглядывать мелкие цифры на индикаторах, а большие семисегментники редкие и дорогие. Решено было сделать индикатор с высотой цифры 50мм из отдельных зелёных светодиодов.

С индикатором разобрались, но им нужно как-то управлять. При этом часы должны идти даже при длительном отсутсвии питания. Будем делать на МК ATTiny2313 и микросхеме RTC DS1307, которая так же имеет встоенный контроллер питания и позволяет подключить батарейку.

1. Индикатор.

Делать будем, как я уже сказал, из отдельных зелёных светодиодов диаметром 5мм. Вот схема индикатора:

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

2. Основная часть.

Схема, как я уже говорил, на ATTiny2313 и DS1307. Вот она:

Тут уже пояснения требуются. Справа два сдвоенных семисегментника и два светодиода - внутренняя схема маленького индикатора с ОА. Зачем два индикатора? Ночью большой индикатор ярким свечением может мешать спать (часы будут около кровати), по этому индикацию можно переключить на маленький индикатор переключателем SW1. В положении "Ночн." работает маленький индикатор, в положении "Дневн." - большой. Этот маленький индикатор я достал из стиральной машины, распиновка есть на печетке. Батрейка на 3В, CR2032. Транзисторы Q1-Q4 можно заменить на любые другие маломощные PNP транзисторы, например на КТ315. Q6-Q9 - на PNP током КЭ не менее 1А, Q5 - на NPN с током коллектора не менее 0,4А. Блок питания может быть любой с напряжением 9-20В, полярность не важна, можно даже переменку пускать. Ток не менее 1А. Стабилизатор U4 нужно установить на радиатор. Кстати, чем меньше входное напряжение - тем легче живётся стабилизатору. У меня БП такой:

Теперь переходим к сборке.

3. Сборка.

Идём в магазин и покупаем детали.

Делаем платы и начинаем паять. Запаять 88 светодиодов, столько же резисторов и 44 диода - не легко, но оно того стоит.

Теперь соединяем всё проводами. Я использовать шлейфы и разъёмы PLS/PBS. Вам помогут эти картинки:

Теперь прошиваем МК. Вот фьюзы:

И включаем:

Кнопки и разъёмы я использовал такие:

4. Корпус.

Корпус я сделал из фанеры и бруска 20*40, зашкурил и покрыл лаком. Сзади поставил два крепежа для крепления на стену.

Кстати, для заклеивания окошек для индикаторов я использовал плёнку от зелёных бутылок, выглядит красиво и защищает от засветки солнцем.

Теперь несколько фотографий: