Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Часы анализатора Arduino DCF77 MK2

Компоненты и расходные материалы

Arduino Nano R3
Я использовал микросхемы Atmega 328, но можно было использовать Nano или UNO. Суперфильтру NANO / UNO потребуется кварцевый кристалл, а не резонатор на борту.
× 1

Об этом проекте

Смотрите мой сайт для этих часов Arduino DCF77 Analyzer Clock Sitehttp://www.brettoliver.org.uk/DCF77_Analyzer_Clock_Mk2/Arduino_DCF77_Analyzer_MK2.htm

Эти часы отображают временной код DCF77 на 2 кольцах из 60 светодиодов на большом циферблате диаметром 12 дюймов (305 мм). Внутреннее кольцо показывает текущий временной код для следующей минуты по мере его приема, а внешнее кольцо показывает текущее время. поскольку предыдущая минута была получена без ошибок.

Еще 24 светодиода показывают статус декодера и информацию о времени. Декодированные время и дата отображаются на 2 больших 8-значных 7-сегментных дисплеях, а время импульсов DCF77 и битовая информация отображаются на еще 2 меньших 8-значных 7-сегментных дисплеях.

В часах используются 2 микропроцессора Atmega 328 (Arduino Uno), 1 для управления анализатором DCF77 и 1 для управления суперфильтром Удо Кляйна. Суперфильтр обеспечивает расширенную обработку сигналов DCF77, а также настройку кварцевого кристалла Arduino. Фильтр переключаемый и имеет 10 светодиодных индикаторов состояния, показывающих состояние приема сигнала и качество вывода. Часы также отбивают часы, четверть часа и секунды через 2 звуковых модуля JQ6500.

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

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

Шаг 1. Кредит

Эти часы основаны на часах анализатора DCF77 Эрика де Руйтера и являются обновленной версией моих часов анализатора Mk1 DCF77.

над часами анализатора DCF77 Эрика де Руйтера под часами моего анализатора MK1 DCF77.

Эрик предоставил полную информацию о своих часах на GitHub

Различия между часами Эрика и моими часами

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

Я использую две сделанные на заказ Arduino UNo на Veroboard, а не Uno и Mega.

Я использую дешевые 7-сегментные дисплеи и модули с точечной матрицей из Китая и изменил код для соответствия. См. Раздел об ошибках отображения, поскольку они действительно хорошо работают после выполнения этих модов.

Я использую 2 модуля JQ6500 вместо звуковой платы Adafruit. Поскольку одна из моих плат управляется программным обеспечением, необходимо загрузить некоторые программные изменения и другую библиотеку.

Поскольку у меня есть Arduino Uno вместо Arduino Mega, у меня нет всех запасных контактов для управления светодиодами декодера, поэтому вместо этого я использую 3-й матричный модуль.

Я модифицировал Суперфильтр Удо Кляйна, добавив дополнительные светодиоды. Яркость этих светодиодов регулируется ШИМ декодером DCF77 Uno через 2 транзистора, а не Super Filter Uno.

Также к суперфильтру добавлена ​​функция проверки светодиодов, чтобы соответствовать функции проверки декодера DCF77.

Я использую только 3-миллиметровые светодиоды и выбрал светодиоды с одинаковой яркостью, чтобы попытаться сохранить равномерную яркость.

Я добавил 4 отдельных уровня яркости в программном обеспечении, поэтому светодиоды Ring / Status, большие 7-сегментные дисплеи, маленькие 7-сегментные индикаторы и светодиоды Super Filter имеют настраиваемые уровни яркости в зависимости от показаний одного LDR.

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

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

Звук DCF77 на моих часах был изменен, чтобы подчеркнуть разницу между входящими 0 и 1. Когда часы обнаруживают 1, они просто воспроизводят звук немного дольше, чем 200 мс.

Шаг 2. Видео

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

Он также показывает расположение циферблата и информацию при чтении дисплеев.

Видео 2

Видео, показывающее включение питания, тест дисплея и декодирование времени / даты

Видео 3

Видео, показывающее, как на этих часах работает суперфильтр Удо Кляйна

Видео 4

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

Он также показывает расположение циферблата и информацию при чтении дисплеев.

Видео 5

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

Шаг 3. Элементы управления

Часы управляются 7 переключателями, установленными на металлической планке. Выключатели прикреплены к внутренней части распашной двери, которая складывается под часы для доступа.

В версии с фоторамкой переключатели установлены в вырез на боковой стороне часов.

Переключатели управляют следующим

Отметьте звук Вкл. / Выкл.

Тиковый объем

Звонок 24/7 или таймер

Громкость звонка

Звук DCF77 Вкл. / Выкл.

Сбросить суперфильтр или анализатор

DCF77 Источник из фильтра, выключенного или анализатора

Функции переключателя

Отметьте звук

Включает и выключает звук тика (отключает питание модуля JQ6500)

Тиковый объем без блокировки

Увеличивает и понижает громкость тика (переключатель звука тика должен быть включен)

Контроль звонков

Звонки отключены

Круглосуточные звонки - 24 часа в сутки, 7 дней в неделю

Звонки таймера включаются только в определенное время дня, например. выключено ночью

Громкость звонка без блокировки

Вверх увеличивает громкость

Вниз уменьшает громкость

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

Звук DCF77

Вкл. Воспроизводит звук DCF77 в виде гудков через пьезоэлектрический звуковой оповещатель.

0 означает 100 мс, а 1 воспроизводится как звуковой сигнал 500 мс, чтобы было легче различать полученные 0 и 1.

Выкл. Звуковой сигнал DCF77 Выкл.

Сброс без блокировки

Фильтр сбрасывает суперфильтр DCF77, повторно синхронизируя его с сигналом DCF77

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

Источник DCF77

Off отключает сигнал DCF77 от часов

Анализатор DCF77 сигнал поступает прямо на часы без какой-либо фильтрации

Фильтр:сигнал DCF77 берется из суперфильтра, и если суперфильтр синхронизирован, этот сигнал синтезируется в правильный безошибочный сигнал

Шаг 4. Схема

Эти часы имеют 3 схемы. Основная плата, модули точечной матрицы и 7-сегментные модули дисплея.

Второй очень большой, и его можно посмотреть в полном размере здесь, на схеме 4000x4000. Я выложил его таким образом, чтобы упростить подключение.

Шаг 5. Подключение контактов Atmega

В этих часах используются 2 микросхемы Atmega 328 на специальных платах Vero. Стандартный UNO может использоваться для анализирующей части часов, но UNO с кварцевым кристаллом, а не с резонатором, должен использоваться для суперфильтра. Посмотрите, как добавить кварцевый кристалл в Arduino UNO здесь http://www.brettoliver.org.uk/Master_Clock_MK2/Master_Clock_MK2.htm#Mod

Шаг 6. Макеты доски Vero

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

Светодиоды показаны установленными на основной плате только для справки.

Вся проводка от основной платы к другим платам осуществляется через соединительные разъемы печатной платы. Соединения от основной платы к панели переключателей выполняются напрямую. Это позволяет снимать главную плату и панель переключателей для обслуживания.

Обратите внимание, что они настроены как Arduino UNO, и хотя можно использовать предварительно созданные Unos или Nanos, суперфильтр Arduino должен иметь кварцевый кристалл, а не резонатор, для точности см. Подключение контактов Atmega выше.

См. Информацию на моем сайте Master Clock Модификация кварцевого кристалла Arduino

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

Шаг 7. Готовые модули

Готовые платы и модули

Модуль регулятора LM2596 понижает напряжение до 5 В. Он регулируется предварительно установленным резистором 10 кОм на модуле и измеряется после защитного диода D4. Отрегулируйте это перед добавлением Arduinos на плату.

Часы потребляют около 450 мА при максимальной яркости светодиодов и опускаются до 80 мА при выключенных дисплеях.

Вы должны быть в безопасности с блоком питания постоянного тока 1000 мА от 7-12 вольт (модуль регулятора LM2596 контролирует напряжение)

RTC DS3231 I2C Этот модуль хранит время из декодированного сигнала DCF77. Встроенные часы имеют температурную компенсацию и имеют резервную батарею на случай отключения электроэнергии. Обратите внимание, что модуль RTC модифицирован для работы с неперезаряжаемыми батареями.

Модуль MAX2719 с точечной матрицей Эти модули управляют внутренним и внешним светодиодным кольцом (2 модуля), а третий модуль управляет всеми остальными светодиодами, загораживающими светодиоды суперфильтра. Светодиодная матрица удалена и на место припаян заголовок печатной платы.

RCWL 0516 Доплеровский радиолокационный датчик Микроволновая печь Чтобы часы отображались только тогда, когда комната занята, я использую обнаружение движения. У вас есть выбор между RCWL 0516 ниже, который будет обнаруживать движение из-за стекла, или модулем PIR ниже.

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

Max2719 7-сегментный дисплей 0.56 "Это большая версия 0.56", используемая для отображения времени и даты. У меня уже была их партия, но на tindie есть похожие модули. Просто убедитесь, что вы получаете дисплеи большего размера 0,56 дюйма. Обратите внимание, что для предотвращения ошибок отображения в этих модулях может потребоваться небольшая модификация. См. Этап модификации MAX2719.

Max2719 7-сегментный дисплей 0,39 "Это меньшая версия 0,39", используемая для отображения битов, ошибок и импульсов. Они доступны на всех eBay и Amazon, просто убедитесь, что вы получаете модули с не припаянными контактами заголовка или платы с контактами, припаянными к задней части модуля. Обратите внимание, что может потребоваться небольшая модификация, чтобы предотвратить ошибки отображения в этих модулях. См. Этап модификации MAX2719.

Модули JQ6500 16p Один из этих модулей используется для воспроизведения тикающего звука, а другой - четверти и часа. Со звуковыми файлами, включенными в проект, вы сможете обойтись самым дешевым модулем 16p с 2M памяти. Каждый модуль управляет одним динамиком мощностью 3 Вт 8 Ом. Звуки загружаются с вашего ПК (не MAC) через USB с помощью простой программы.

Приемник DCF77

Модуль приемника My DCF77 с http://www.pvelectronics.co.uk

Эти товары больше не доступны, но попробуйте Amazon

Фотоэлектрическая электроника Соединения модуля приемника DCF77 Соединения слева направо

1.VDD 2.TCON 3.PON 4.GND 5.NC

Обеспечивает вывод в инвертированном формате (вывод низкий, повышается один раз в секунду).

Режим ожидания с низким энергопотреблением - подключите PON к Vdd.

Подключите PON к GND для нормальной работы.

Держите приемник подальше от телевизоров, мониторов и других электрических помех и убедитесь, что он направлен на передатчик DFC77.

Компоненты

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

Цвет светодиода может быть выбран по желанию, но см. Раздел «Светодиоды», чтобы узнать, какие светодиоды я использовал.

Шаг 8:Порядок подключения

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

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

Платы точечной матрицы снимаются и подключаются к часам.

Подключите светодиоды суперфильтра и поместите их в циферблат.

Подключите светодиоды состояния DCF77 и вставьте их в циферблат.

Светодиоды состояния суперфильтра и DCF77 подключены соединительными кабелями к основной плате. Подключите все светодиоды к модулю точечной матрицы 3 и вставьте их в циферблат.

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

Подключите внешнее светодиодное кольцо и вставьте его в циферблат.

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

Снова установите точечный матричный дисплей на внешнем кольце и подключите жгут проводов к светодиодам на внешнем кольце.

Подключите внутреннее светодиодное кольцо, а затем вставьте его в циферблат.

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

Установите на место точечный матричный дисплей внутреннего кольца и подсоедините жгут проводов к светодиодам внутреннего кольца.

Подключите все светодиоды к модулю точечной матрицы 3 и вставьте их в циферблат.

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

Соберите соединительные кабели и подключите их ко всем платам.

Установите основную плату Vero, а затем подключите ее к панели переключателей. LDR монтируется через навесную деревянную дверцу, к которой прикреплена панель переключателей, поэтому она подключается одновременно.

Установите динамики и подключите их к плате Vero со звуковыми модулями JQ6500.

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

Шаг 9:Подключение модификации модуля точечной матрицы Max2719

Перед подключением проводов к матричным модулям MAX 2917 их необходимо изменить.

Удалите точечно-матричные светодиоды, поскольку они не требуются.

К нижнему краю существующего разъема светодиодной матрицы будут припаяны два набора из 8 разъемов под 90 °.

Модифицированный модуль MAX7219 с 90 ° контактными разъемами припаян к нижней части старых разъемов LED Matrix. От этих точек выведены провода к LED матрице на основной плате.

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

Шаг 10:Монтаж проводки

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

Сборка монтажного приспособления для светодиодов

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

Готово монтажное приспособление.

Готовые внутренние и внешние светодиодные кольца на приспособлении. Может быть удобно написать номера светодиодов и другую информацию на приспособлении, чтобы убедиться, что вы подключили правильные светодиоды, поскольку светодиоды установлены на задней части диска и открываются / вращаются против часовой стрелки.

Кольцо светодиодов снято с приспособления и готово к установке в циферблат.

Шаг 11:Подключение внутреннего и внешнего кольца светодиода

На схематической диаграмме выше показано подключение секции из 8 светодиодов внешнего светодиодного кольца.

Сначала вставьте восемь светодиодов в отверстия в приспособлении. Согните все аноды, чтобы они соединились вместе в соответствии со схемой, и припаяйте на месте. Позже к восьми подключенным анодам от модуля светодиодной матрицы подключается провод. Наденьте на катоды небольшой кусок изоляционной втулки, затем согните эти ножки примерно на 15 мм от светодиода. Отрежьте около 5 мм от изгиба и припаяйте короткий провод, достаточно длинный, чтобы добраться до следующей партии из восьми светодиодов. См. Рис. 2.

Рис. 1. Здесь показан законченный участок из 8 светодиодов, подключенных к зажимному приспособлению, с проводами, ведущими к следующему участку из 8 светодиодов.

Рис. 2 Повторите описанный выше процесс для групп из восьми светодиодов.

Каждая партия из восьми светодиодов будет иметь собственное отдельное соединение анода с модулем точечной матрицы. Всего восемь.

Рис 3. Светодиоды на внешнем кольце завершены вместе с 16 проводами, подключенными к матричному дисплею.

Затем светодиоды вставляются в отверстия на циферблате, и матричный модуль фиксируется обратно на циферблат. После установки 16 проводов от модуля точечной матрицы подключаются к светодиодам внешнего кольца. Этот процесс повторяется для внутреннего светодиодного кольца.

16 проводов от модуля точечной матрицы готовы к подключению к 8 комплектам по 8 светодиодных секций. Обратите внимание, в 8-м комплекте всего 4 светодиода. Полноразмерную схему 4000x4000 можно увидеть здесь.

Светодиоды

Я использовал высокоэффективные светодиоды Vishay серии TLH44 в тонированном рассеянном корпусе диаметром 3 мм

ОПИСАНИЕ Серия TLH.44 .. была разработана для стандартных приложений, таких как общая индикация и освещение. Он размещен в тонированном диффузном пластиковом корпусе толщиной 3 мм. Широкий угол обзора этих устройств обеспечивает высокую контрастность при включении и выключении.

Предлагается несколько типов выбора с разной силой света. Все светодиоды разделены на группы силы света. Это позволяет пользователям собирать светодиоды с одинаковым внешним видом.

ОСОБЕННОСТИ

• Стандартная упаковка Ø 3 мм (Т-1)

• Небольшие механические допуски

• Подходит для постоянного и высокого пикового тока

• Широкий угол обзора

На рисунках 1-4 выше показаны цвета светодиодов, а на рисунке ниже показана таблица с реальными номерами деталей.

12. Подключение 3-го модуля точечной матрицы

Подключение 3-го модуля Dot Matrix

К этому модулю подключено всего 24 светодиода из 64.

Светодиоды дня недели на 1-й секции из 8 светодиодов (подключено всего 7)

2-й из 8 индикаторов:CEST, CET Leap Yr, Ошибка RTC, Синхронизация, Период ошибки и Ширина импульса ошибки (подключено только 7)

Третий из 8 индикаторов:Buffer Full, Parity 3 to 1 pass and fail и Buffer Oveflow (все 8 индикаторов подключены)

Четвертый из 8 светодиодов содержит только 2 светодиода, указатель минут и статус DCF77

Я мог бы просто использовать 3 комплекта из 8 светодиодов, но использование 4 комплектов упростило электромонтаж.

Эти светодиоды подключаются к монтажному приспособлению, а затем подключаются к небольшой плате Vero, где они подключаются к проводам Matrix. Обратите внимание, что эта плата также служит креплением для RTC.

Шаг 13:Подключение панели переключателей

Панель переключателей опускается под часы, прикрепленные к задней части дверцы доступа. Электропроводка припаяна прямо к основной плате и включает проводку для LDR.

Панель переключателей

Проводка коммутационной панели в процессе

Панель переключателей с готовым жгутом проводов установлена ​​на двери у основания часов

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

Шаг 14:звуки перезвона и тик-такта на JQ6500

В этих часах используются 2 модуля JQ6500:один для тикающего звука, а другой - для четверти и часа. Звук тика управляется аппаратно, а звуковой сигнал - программным.

Цепь звукового сигнала

Переключатель SW7 представляет собой трехпозиционный переключатель с блокировкой. Модуль управляется последовательными аппаратными контактами 13 и 14 на Arduino. Обратите внимание на резистор 1 кОм в цепи приема. См. Основную схему. Выключен - питание отключено от JQ9500, а вывод 24/7 / таймер удерживается в высоком состоянии, чтобы вывод Arduino не оставался плавающим 24/7 - звонок будет звучать четыре четверти и часы 24/7 по времени - четыре четверти а часовые куранты будут звучать только с 05:15 до 23:00. (устанавливается в коде) Громкость устанавливается в программном обеспечении с помощью Arduino и переключателя увеличения или уменьшения громкости звукового сигнала.

Tick Tock Circuit

Это аппаратное управление непосредственно на переключателе JQ6500. SW6 Tick On / Off просто отключает питание JQ6500. Тиковый объем SW8 - это трехпозиционный переключатель с центральной блокировкой. Перемещение переключателя вверх или вниз устанавливает громкость через контакт ADKey на JQ6500. Команда на воспроизведение звука тик-так поступает от Arduino каждые 2 секунды. Звуковой файл должен быть меньше 2 секунд. Диод D15 изолирует ADKey от выхода Arduino.

Шаг 15. Спикеры

Каждый звуковой модуль подключен к динамику 3 Вт 8 Ом, прикрепленному сбоку на корпусе часов. Их можно купить на Amazon в паре.

На этом рисунке показано расположение динамиков в корпусе часов. Обратите внимание на сложенную вверх панель управления переключателем внизу часов.

2 решетки закрывают динамики, они тоже были от Amazon

Левая сторона часов показывает расположение динамика. Это повторяется с другой стороны.

Часы в стиле фоторамки с изображением правого динамика.

Шаг 16. JQ6500 Загрузка звуковых файлов

Ваши звуки необходимо будет загрузить в модуль JQ6500.

Посетите эти сайты для получения информации и библиотек Arduino для этих модулей.

Библиотека Arduino JQ6500_SerialОбщая информация Инструменты JQ6500

Обычно JQ6500 поставляется с предустановленной программой загрузки музыки, которая загружается при подключении к вашему ПК (не будет работать на MAC!). This is in Chinese there are instructions on my site here showing how to use the Chinese version.

My JQ6500s came without a loader program so I downloaded an English version from Nikolai Radke

You can get the zip file from here English Language MusicDownload.exe v1.2a

JQ6500_English_MusicDownload_V1_2a.zip

I just run this file from windows (no need to install it) and it runs in English see details below.

Insert your JQ6500 into PC via USB.

When the file is run this window will open. Click FILES

Click CHOSE FILES and shift select all the files you want to be copied to the module. Note make sure your files are named as below.

1 to 12 are the hour chimes. 13 to 16 are the quater chimes and 17 is the test chime used when setting the chime volume using the Chime Volume Switch.

Click OPEN above then click on the FLASH tab.

Click on FLASH and you should get a message saying FILE PROCESSING It the files will fit on the module the message will change to FLASHING RUN and a green bar will show progress.

When flashing is completed the message will change to READY......You can remove your module and plug it into sound board on the clock.

Repeat this for the Tick Tock sound (1 file this time) on the 2nd module.

Sound files are enclosed. I mixed these sound files up on Audacity pic 4 at 48KHz sample rate the max quality the JG6500 board can handle. The chimes were mixed on multiple channels to get the real harmonics then mixed back down to a single channel for the JQ6500.

bell.zip tick_tock.zip

Step 17:JQ6500 Library Modification

Modify the JQ6500_Serial.cpp file in your Arduino libray folder

Using the standard library every time a chime is played the library waits in case there is a reponse. This wait causes the clock run out of sync and any received data errors until the next minute.

I found this on google and is a reply from the author of the library. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Before sending a command, the library waits for up to 10ms to see if there is any left over data from the device... https://github.com/sleemanj/JQ6500_Serial/blob/ma... after sending the command the library waits for a response for up to 1000ms

https://github.com/sleemanj/JQ6500_Serial/blob/ma... and after that it will wait at least 150ms while reading the response

https://github.com/sleemanj/JQ6500_Serial/blob/ma... since in the case of playFileByIndexNumber you don't need a response at all

https://github.com/sleemanj/JQ6500_Serial/blob/ma... you could perhaps get away with adding if(!responseBuffer &&!bufferLength) return;immediately after the last command byte is written (currently line 263 of JQ6500_Serial.cpp)

https://github.com/sleemanj/JQ6500_Serial/blob/ma... that should reduce the time required to about 10-20ms probably.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

After adding the line after line 263 if(!responseBuffer &&!bufferLength) return; the clock worked fine.

Step 18:Modify the Real Time Clock RTC

Modification of DS3231 AT24C32 I2C Precision Real Time Clock Module

My clock uses a DS3231 AT24C32 I2C Precision Real Time Clock Module.The module comes supplied with a Lithium-Ion rechargeable battery see pic 1. I use a non rechargeable battery so have removed resistor R5 from the module as pic 2.

Step 19:Dial Construction Drawing

The dial requires oround 700 seperate drilling operations and numerous aounts of cutting and filling to complete.

I don't have a CNC machine so it was all done by hand.

The dial was drawn up on a Cad program (TurboCab) pic 4 and printed out onto injet water slide decal paper.

This shows a close up of dial printing with 3mm LEDs to give an idea of scale. The quality from the water slide decal paper is very good far better than my old ink jet can print.

The enclosed zip file contains the dial picture in various file formats including a 4000x4000 png file.

Contact me for other file types!

TurboCad_Drawings.zip

Step 20:Dial Construction Cutting Out &Drilling

The dial is cut from 1.5mm thick alluminium sheet as it has to carry the weight of all the electronics and wiring.

Make a template by printing out the dial from your CAD program onto A3 paper.Make sure it has center marks for the LED holes and also the cutouts for the 7 segment LED displays.

Carefully cutout the 7 segment display openings on the template with a craft knife.Place the template on the alluminium sheet and tape it down to stop it moving. Center punch all the center marks for the LEDs and draw around the openings for the 7 segment displays with a marker pen.

Remove the template to reveal the cutting/drilling marks on the alluminium sheets protective film.

Draw a circle the size of your dial with a compass using the center punch mark from the DCF77 symbel LED as a center point.

Cut out the circle with a hacksaw/jigsaw or bandsaw fitted with a metal cutting blade.

Cut out the 7 segment display openings with a coping/jig or fret saw. Take your time with this as it will save a lot of filing later.

Drill out all the holes for the LEDs. I start with a 1mm bit then a 2mm and then finally a 3mm bit.

This leaves the LEDs a friction fit once the paint and varnish is applied to the dial.

Mark center punch and drill 3 or 4 dial mounting holes.

With the holes drilled the protective film can be removed from the alluminium sheet and the dial rubbed down to remove all rough edges.

This will also give a good key for the paint.

Prime and paint with acrylic paint then a coat of matt varnish. Antique White looks better on old dials or use pure white on modern dials.

Step 21:Dial Construction Applying the Dial Transfer Decal

Water slide decals are printed out on special paper on an inkjet printer. Once dry they are soaked in water then slid into place.

They give a very detailed print and once given a coat of varnish are tough. Don't forget to order transparent tranfers so the dial colour can be seen through the transfer. Follow the instructions with the pack as they do vary.

On my transfers I print out the dial on transfer paper let it dry and then cut it out to just under the size of the dial. I then give it a coat of acrylic varnish. When the varnish is dry the transfer is soaked in water until the transparent transfer comes away from the white backing sheet.

Line up the transfer with the dial and slide it over the dial.

Make sure the center dots line up with the center of the holes in the dial then slide the backing sheet back off the transfer.

Carry out any final adjustments then remove any airbubbles.

Allow to dry then apply some clear acrylic varnish to protect the transfer. Once this dries carfully cut away the transfer around the 7 segment display cutouts with a craft knife. Then cut the transfer off all the LEDs hole. I used a leather punch just smaller than the hole. Give it another coat of varnish to seal all the cut edges Leave it overnight to dry.

Search for "Transparent Water Slide Decal Paper A3"

Step 22:Dial Construction PCB/Vero Board Mounts

The PCBs and Vero Boards are fixed to wooden mounting blocks cut from off cuts of timber.These block are glued to the dial with impact adhesive. Follow the instructions on the impact adhesive but normaly you apply to both surfaces leave until tacky then press together for an instant bond that hardens fully over night.

Lower modules in position on the wooden blocks ready to be secured by M2 screws.The main PCB fits on top of the lower 7 segment modules and is raised up on brackets.

JQ6500 sound module board and LED wiring board in place. RTC is mounted on the LED wiring board but connected on the main board.

Main board mounted on custom made standoff brackets.

Step 23:Dial Surround &Back Box Restoration

Dial Surround Restoration

I sourced my clock case from eBay. It had no dial or brass bezal and the rear box was broken.

The original Oak dial surround was covered in a thick coat of varnish and years of dirt.

I used paint stripper to remove the varnish and then wood bleach to get rid of the very dark areas of wood.

The surround was then varnished with matt acrylic to enhance the grain of the wood.

The back box was very badly damaged and had to be screwed and glued back together. I has to fill many hole and cracks in the wood work and decided to paint it matt black.

Step 24:Correcting MAX7219 7 Segment Module Display Errors

The 7 segment modules seem to work fine work fine on their own. However, once you start daisy chaining them together the displays tend to error.

0.39" Display

The datasheet calls for a 10μF and 0.1μ capacitor across the supply rails as close to the MAX7219 as possible.I notice the 0.1μF capacitor is in place but the 10μF capacitor is missing.

Add this capacitor in the 2 holes above the diode D1 on the rear of the display.

There is also a diode in series with the supply rail. When daisy chaining modules all these diodes are in series so the further down the line of modules the more volts are dropped causing display errors.

Remove this diode on each display and replace it with a wire strap.

0.56" Display

Note the black tape over the 3rd and 6th digit tp make colons.

10μF capacitor added to the rear of the PCB on the +&- pins of the MAX7219 IC

The 1N4148 diode is replaced by a wire link.

Step 25:Increasing the Constrast on the 7 Segment Modules

The 7 segment displays traditionally would have a sheet of red perspex to match the LED colour placed over the top of the display. This was designed to hide the not lit segments and provide contrast to the LED segments that are on.

In my clock I have used Neutral Density Heat Proof Dimming Transparent Acetate Sheet ND 0.9.

This hide the not lit LED segments and provides the contrast needed in bright conditions. It has the advantage that it work on all colour LEDs.

My 0.56" modules are a deeper red than the 0.39" modules so I would need 2 different matching red perspex to sheets to work well on both modules.

The acetae shhet is also very cheap the only disadvantage is that it is too flimsy to cover large areas without support.

The picture above shows the effect of the ND sheet. The lit LED segements have more contrast and the unlit LED segments are hidden. It also hides the black tape masking for the colon display.

Step 26:Modification of the RTC Time 7 Segment Display Module to Show Colon Digit Seperators

The standard display only has decimal points to separate the digits and has no colon that would normally be used in a clock display.

In code I have set digits 3 and 6 to always display a "o" lower case o

Black plastic tape is then cut with a craft knife and placed over the 2 digits leaving a small section showing

When the display is on these visible sections now display colons

Step 27:Dial &Case Fitting

The dial is hidden behind a brass bezal. The brass bezal was missing from my clock but I was able to get one from a horological supplier.

The brass bezal is held down by a brass catch set into the dial surround.

With the brass bezal removed you can see the recess cut in the surround for the brass bezal hidge. My new bezal hinge was a differnet shape to the original hinge so I had to cut it in with a chisle at the front and fill the rear in with a piece of wood stained to match the surround.

The dial has been removed showing the dial mounting holes on the wood surround and the wooden back box behind it.

Shows the surround removed revealing the back box construction. The switch panel can be seen folded up above the trap door in the base of the back box.

Shows the side view of the case with dial and wood dial surround locked in place. The dial surround is locked by the same type of catch used to lock the brass bezal in place. Note the small brass screw below the brass tag on the dial bezal. this ensurse the brass bezal lines up correctly with the dial when the brass bezal is closed.

Step 28:Dial &Case Fitting Modern Style Case and Surround

This case uses a large picture frame with a basic square back box to hold the electronics and to hold the dial away from the wall to give it some depth.

Outer frame and glass removed to reveal the thick photomount card over the dial (a thin ply or wood sheet can also be used with a routed edge)

Photo mount removed to show how the dial is fixed to the back plate with 4 small screws.

The backplate holds the dial and has a large circular cutout for the electronics.

It is hinged at one edge to the dial can swing out.

The speakers are mounted on both sides with holes and grills as per the other case.

The switches are mounted on the side in a cutout with the speaker grill above.

Step 29:DCF77 Filter

DCF77 Filter

When switched on the Udo Klein's Super Filter actively processes the incoming DCF77 signal from the antenna/receiver. After a few minutes of sampling the DCF77 signal the Super Filter will predict the DCF77 signal and use this to determine if the incoming signal contains any errors. The Super Filter will then synthesize a corrected DCF77 signal even if the signal is absent.

Super Filter Mod See the schematic. I have modified the Super Filter Code to add extra monitor LEDs. In order to do this I have removed 4 modes from the filter just leaving sythesized and inverted sythesized.

Note the PWM LED brightness control is via the Arduino controlling the DCF77 decoding not the Super Filter Arduino. I have also added an LED test to the Super Filter to Match the LED Test on the main clock. This activates on reset or power up. On power up the Supe Filter LED test starts and finishes then the main clock LED terst starts.

The filter will lock onto the DCF77 signal even if the signal is really noisy. As days progress the filter uses the incomming DCF77 signal to adjust the Arduino crystal frequncy.

This means the filter will stay in time even if the DCF77 signal is lost for many days. In my clock the DCF77 signal is alway fed to the Super Filter Arduino even if the DCF77 Source switch is set to off. This allows the Super Filter to stay in sync and keep adjusting the quartz crystal from the Arduino.

Filter On lights when the DCF77 Source switch is set to FILTER and means the Super Filter is decoding and synthesizing the DCF77 signal

DCF77 Filtered the DCF77 Synthesized signal comming out from the Super Filter

DCF77 Signal the DCF77 signal comming direct from the DCF77 receiver with no filter applied

Signal Difference the differnece between the incomming DCF77 signal and the Synthesized signal. In normal operation this will flash as the received signal shape is often slightly “wider” than the synthesized signal.

Filter Syncronized best possible quality, clock is 100% synced

Filter Locked clock driven by accurate phase, time is accurate but not all decoder stages have sufficient quality for sync

Sync Lost <200mS clock was once synced, inaccuracy below 200 ms, may re-lock if a valid phase is detected

Sync Lost>200mS clock was once synced but now may deviate more than 200 ms, must not re-lock if valid phase is detected Signal Dirtytime data available but unreliable Signal Bad waiting for good enough signal

More details on some of the above

Filter Syncronized - Timing is completely locked to DCF77 and the data is most up to date.

Filter Locked - If the quality factor of the decoder stages drops but the quality factor of the phase decoder stays high enough the clock will transition into the state locked. In this state it is still phase locked to DCF77 but it may become out of sync by a second but only if a leap second is transmitted.

Sync Lost <200mS - This indicates that the quality factor of the decoder stage and the quality factor of the phase decoder have dropped. In this state the timer relies on the quartz crystal timimgs and the clock will slowly drift out of phase with the DCF77 signal. This is a warning that the clock may be running slightly out of sync.

Sync Lost>200mS - Once the clock has started to drift out of phase for more than a set period of time (depending on the tuned accuracy of the quartz crystal) then this LED will light

Animation showing filter synchronized

Super Filter example

The top row shows the Super Filter turned on. Once synchronized and tuned into the signal the Super Filter will synthesize a good signal even when the signal is completely lost. On a noisy signal the Super Filter will search for known signal bits and keep itself synchronized to the transmitter. The bottom row shows the Super Filter turned off. Whatever signal is received (good or bad) is sent to the decoder.

Super Filter correcting a noisy signal as displayed on the DCF77 Scope included with the DCF77 library.

Normal Signal No super filter - Normal signal from the DCF77 reciever Noisy

Signal No Super Filter - The aerial is moved near a LCD screen to generate noiseover the signal

No Signal- The aerial is disconnected and moved connected via the super filter

Noise On Superfilter On- The noise is filtered out leaving a perfect signal.

Super Filter turned Off and a bad signal the clock errors and will reject this minutes data.Note the DCF77 Filtered LED pulses as normal but as the Filter is turned off the filtered signal is not fed to the clock's decoder.

Super Filter turned On and a bad signal the clock has no errors and the clock is able to decode the data as normal.Note the DCF77 Filtered LED pulses as normal and is fed to the clock's decoder

Step 30:DCF77 Time Code

This picture shows the dial code as it is displayed on my dial and allows you to read the incomming DCF77 signal.

Step 31:Code

There are 2 seperates codes to download one for the Superfilter and one for the Analyzer part of the clock.

DCF_77_ANALYZER_CLOCK_Mk2_43.zip Superfilter07DCF77AnalyzerMK2.zip

Код

  • DCF77 Decoder Code
  • Super Filter Code
DCF77 Decoder CodeArduino
This is the code loaded onto DCF77 analyzer Arduino
No preview (download only).
Super Filter CodeArduino
This is the code loaded onto DCF77 Super Filter Arduino
No preview (download only).
Github
https://github.com/sleemanj/JQ6500_Serialhttps://github.com/sleemanj/JQ6500_Serial

Изготовленные на заказ детали и корпуса

CAD files for the dial and dial template in CAD formats and also picture files turbocad_drawings_TESmpq119g.zipSound files for loading into the JQ6500 module for chimes bell_wYLvJG1pUl.zipSound files for loading into the JQ6500 module for tick tock sound tick_tock_FLj9XHTJoB.zip

Схема

This is the main board schematic This is the schematic to show the MAX7219 dot matrix module wirng to the LEDs This shows the wiring for the MAX7219 7 segment display modules

Производственный процесс

  1. Часы с кукушкой
  2. Часы видения Arduino pov
  3. Самодельные простейшие часы Numitron IV9 с Arduino
  4. Простые настенные часы с использованием Adafruit 1/4 60 Ring Neopixel
  5. Простые часы со словами (Arduino)
  6. Часы Arduino с исламским временем молитв
  7. Arduino Spybot
  8. Основные часы
  9. Arduino Temp. Монитор и часы реального времени с дисплеем 3.2
  10. Простой будильник с DS1302 RTC