Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Arduino DCF77 Analyzer Clock MK2

Componentes e suprimentos

Arduino Nano R3
Eu usei ICs Atmega 328, mas um Nano ou UNO poderia ser usado. o Superfilter NANO / UNO precisará de um cristal de quartzo e não de um ressonador a bordo.
× 1

Sobre este projeto


Veja meu site para este relógio Arduino DCF77 Analyzer Clock Sitehttp://www.brettoliver.org.uk/DCF77_Analyzer_Clock_Mk2/Arduino_DCF77_Analyzer_MK2.htm

Este relógio exibe o código de tempo DCF77 em 2 anéis de 60 LEDs em um grande mostrador de 12 "(305 mm) de diâmetro. O anel interno mostra o código de tempo ao vivo para o próximo minuto conforme é recebido e o anel externo mostra a hora atual enquanto como o minuto anterior foi recebido sem erros.

Outros 24 LEDs mostram o status do decodificador e as informações de tempo. A hora e a data decodificadas são mostradas em 2 visores grandes de 8 dígitos e 7 segmentos, enquanto as temporizações de pulso DCF77 e as informações de bits são mostradas em outros 2 visores menores de 8 dígitos e 7 segmentos.

O relógio usa 2 microprocessadores Atmega 328 (Arduino Uno), 1 para controlar o DCF77 Analyzer e 1 para controlar um Super Filtro Udo Klein. O Super Filter permite processamento de sinal DCF77 avançado e também ajuste do cristal de quartzo Arduino. O filtro é selecionável e possui 10 LEDs de status para mostrar o estado da recepção do sinal e a qualidade da saída. O relógio também marca as horas, quartos de hora e segundos em 2 módulos de som JQ6500.

A maioria dos componentes eletrônicos é montada na parte traseira do mostrador para que o relógio possa ser encaixado em muitos estilos de caixa diferentes.

Eu incluí designs para caixas de relógio de estilo retro e moderno. o design retro é encaixado em uma velha caixa de relógio com mostrador, enquanto o design moderno é encaixado em um porta-retratos preto.





Etapa 1:crédito


Este relógio é baseado no relógio do analisador DCF77 de Erik de Ruiter e é uma versão atualizada do relógio do meu analisador Mk1 DCF77.



acima do relógio do analisador DCF77 de Erik de Ruiter abaixo do relógio do meu analisador MK1 DCF77.

Erik forneceu detalhes completos de seu relógio no GitHub

Diferenças entre o relógio de Eric e meu relógio

Embora com base no relógio de Eric, fiz algumas alterações no hardware. Por favor, misture e combine qualquer opção que se adapte às suas necessidades, mas certifique-se de alterar o código para se adequar.

Eu uso dois Arduino UNo personalizados no Veroboard em vez de um Uno e um Mega.

Eu uso visores baratos de 7 segmentos e módulos matriciais da China e mudei o código para corresponder. Consulte a seção sobre erros de exibição, pois eles funcionam muito bem depois que esses mods são executados.

Eu uso módulos 2x JQ6500 em vez da placa de som Adafruit. Como uma das minhas placas é controlada por software, há algumas alterações de software e outra biblioteca para carregar.

Como eu tenho um Arduino Uno em vez de um Arduino Mega, não tenho todos os pinos sobressalentes para acionar os LEDs do decodificador, então uso um terceiro módulo matricial.

Eu modifiquei o SuperFiltro de Udo Klein adicionando LEDs de status extras. O brilho desses LEDs são controlados por PWM pelo decodificador DCF77 Uno por meio de 2 transistores, não pelo Super Filter Uno.

Há também uma função de teste de LED adicionada ao SuperFiltro para corresponder à função de teste do decodificador DCF77.

Eu só uso LEDs de 3 mm e escolhi LEDs de brilho correspondente para tentar manter o brilho uniforme.

Eu adicionei 4 níveis de intensidade separados no software para que os LEDs de toque / status, os grandes visores de 7 segmentos, os pequenos visores de 7 segmentos e os LEDs do SuperFiltro tenham níveis de brilho personalizados dependendo das leituras do único LDR.

Não tenho um display de temperatura ou número da semana no meu relógio e modifiquei o código para se adequar.

Eu adicionei LEDs de monitor extras ao meu SuperFiltro, então no meu relógio há apenas uma opção para saída Sythesized e Non Sythesized. Esta não é uma opção para alternar os modos de acordo com o relógio de Erik.

O som DCF77 do meu relógio foi modificado para acentuar a diferença entre os 0s e 1s. Quando o relógio detecta um 1, ele apenas reproduz um som um pouco mais longo do que 200 ms.





Etapa 2:Vídeo


O vídeo mostra o relógio funcionando com o tique-taque ligado e também o relógio marcando o quarto e a hora completos.

Ele também mostra o layout do dial e informações sobre a leitura dos visores.

Vídeo 2

Vídeo mostrando inicialização, teste de exibição e decodificação de hora / data

Vídeo 3

Vídeo mostrando como o filtro Udo Klein Super funciona neste relógio

Vídeo 4

O vídeo mostra o relógio do porta-retratos funcionando com o tique-taque ligado e também o relógio que marca o quarto e a hora completos.

Ele também mostra o layout do dial e informações sobre a leitura dos visores.

Vídeo 5

Este vídeo curto mostra o relógio do meu analisador DCF77 exibindo e decodificando o sinal DCF77. Todos os sons estão fora do sinal ao vivo DCF77.





Etapa 3:controles


O relógio é controlado por 7 interruptores montados em uma barra de metal. Os interruptores são fixados no interior de uma porta com dobradiças que se dobra para baixo do relógio para acesso.

Na versão com porta-retratos, os interruptores são montados em um recorte na lateral do relógio.

Os interruptores controlam o seguinte

Som de tique ligado / desligado

Volume do tiquetaque

Campainha 24/7 ou cronômetro

Volume do carrilhão

Som DCF77 ligado / desligado

Reiniciar Superfiltro ou Analisador

Fonte DCF77 do Filtro, Desligado ou Analisador

Mudar de funções

Som do tiquetaque

Liga e desliga o som do tique-taque (remove a energia do módulo JQ6500)

Marque Volume sem bloqueio

Aumenta e diminui o volume do tique-taque (o botão de som do tique deve estar ligado)

Controle do carrilhão

Campainhas desligadas

24/7 carrilhões estão em 24/7

Os carrilhões do cronômetro estão ligados apenas em horários definidos do dia, por ex. fora à noite

Volume da campainha sem bloqueio

Aumentar aumenta o volume

Abaixar abaixa o volume

Após cada pressionamento de botão, um toque de teste é reproduzido para que você possa ouvir a nova configuração de volume

DCF77 Sound

On reproduz o som DCF77 sendo recebido como bipes através da sirene piezoelétrica.

0 sendo 100 ms e 1 reproduzido como um bipe de 500 ms para tornar mais fácil diferenciar os 0 e 1s recebidos.

Desligado, o som do bipe DCF77 está Desligado

Redefinir sem bloqueio

O filtro redefine o Super Filtro DCF77 tornando-o sincronizado novamente com o sinal DCF77

O Analyzer redefine o DCF77 Analyzer começando com um teste de exibição, se habilitado, e depois uma nova sincronização do relógio. A hora RTC será exibida a partir da hora armazenada no relógio de tempo real

Fonte DCF77

Desligado desconecta o sinal DCF77 do relógio

Analisador, o sinal DCF77 é alimentado diretamente para o relógio sem qualquer filtragem

Filtrar o sinal DCF77 é obtido do SuperFiltro e se o SuperFiltro estiver sincronizado, este sinal é sintetizado para o sinal correto sem erros






Etapa 4:esquemas


Existem 3 esquemas para este relógio. A placa principal, os módulos matriciais e os módulos de exibição de 7 segmentos.

O segundo é muito grande e pode ser visto em tamanho real aqui, esquema de 4000x4000. Eu coloquei desta forma para facilitar a ligação.






Etapa 5:conexões de pino Atmega


Este relógio usa 2 Atmega 328 CIs em placas vero personalizadas. Um UNO padrão pode ser usado para a parte do Analisador do relógio, mas um UNO com um cristal de quartzo em vez de um ressonador deve ser usado para a parte SuperFiltro do relógio. Veja como adicionar um cristal de quartzo a um Arduino UNO aqui http://www.brettoliver.org.uk/Master_Clock_MK2/Master_Clock_MK2.htm#Mod








Etapa 6:layouts de placa Vero


Muitos dos módulos para este projeto são pré-construídos e só precisam ser plugados, mas a placa principal para os Arduinos, os módulos de som e o 3º LED Matrix precisam ser construídos na placa Vero.

Os LEDs são mostrados montados na placa principal apenas para referência.

Toda a fiação para outras placas da placa principal é feita por meio de conectores de cabeçalho PCB. As conexões da placa principal ao painel de interruptores são feitas diretamente. Isso permite que a placa principal e o painel de controle sejam removidos para manutenção.

Observe que eles são configurados como UNOs do Arduino e, embora o Unos ou Nanoscópio pré-construído possa ser usado, o Super Filter Arduino deve ter um cristal de quartzo e não um ressonador para obter precisão, consulte Conexões de pinos do Atmega acima.

Veja as informações no meu site Master Clock Modificação do cristal de quartzo Arduino



Nota O RTC é montado aqui, mas conectado apenas pelo cabo principal.





Etapa 7:Módulos pré-construídos


Placa e módulos pré-construídos

O Módulo Regulador LM2596 reduz a tensão para 5v. Isso é ajustado pelo resistor predefinido de 10K no módulo e medido após o diodo de proteção contra reversão D4. Ajuste isso antes de adicionar os Arduinos à placa.

O clock usa cerca de 450mA máx. Com LEDs com brilho total e cai para cerca de 80mA com os monitores desligados.

Você deve estar seguro com um 1000mA DC PSU de 7 -12volts (o Módulo Regulador LM2596 controla a tensão)

RTC DS3231 I2CTEste módulo armazena a hora do sinal DCF77 decodificado. O relógio embutido possui compensação de temperatura e reserva de bateria em caso de falha de energia. Observe que o módulo RTC foi modificado para receber baterias não recarregáveis.

Módulo matricial MAX2719Estes módulos acionam os anéis de LED internos e externos (2 módulos) e o terceiro módulo aciona todos os outros LEDs, exceto os LEDs do SuperFiltro. A matriz de LED é removida e um conector PCB soldado no lugar.

RCWL 0516 Doppler Radar Sensor MicroondasPara ligar os visores do relógio apenas quando a sala está ocupada, uso a detecção de movimento. Você pode escolher entre o RCWL 0516 abaixo, que detecta movimento por trás do vidro, ou o módulo PIR abaixo.

Módulo PIR infravermelho O módulo PIR pode ser usado em vez do sensor de radar Doppler acima. A desvantagem deste dispositivo é que não pode ser usado atrás de vidro ou perspex, etc.

Max2719 7 Segment Display 0,56 "Esta é a versão maior de 0,56" usada para a exibição de hora e data. Eu já tinha um lote desses, mas existem módulos semelhantes no Tindie. Certifique-se de que está obtendo visores maiores de 0,56 ". Observe que uma pequena modificação pode ser necessária para evitar erros de exibição nesses módulos. Consulte a etapa de modificação do MAX2719.

Max2719 7 Segment Display 0,39 "Esta é a versão menor de 0,39" usada para os displays de bit, erro e pulso. Eles estão disponíveis em todo o eBay e Amazon, apenas certifique-se de obter os módulos com os pinos de cabeçalho não soldados ou as placas com os pinos soldados na parte de trás do módulo. Observe que uma pequena modificação pode ser necessária para evitar erros de exibição nesses módulos. Consulte a etapa de modificação MAX2719.

Módulos JQ6500 16pUm desses módulos é usado para tocar o som do tique-taque e o outro os sinos de um quarto e uma hora. Com os arquivos de som incluídos no projeto, você conseguirá usar o mosdule de 16p mais barato com 2M de memória. Os módulos acionam um único alto-falante de 3W 8Ω cada. Os sons são carregados de seu PC (não MAC) via USB usando um programa simples.

Receptor DCF77

My DCF77 Receiver Module de http://www.pvelectronics.co.uk

Esses itens parecem não estar mais disponíveis, mas experimente Amazon

Conexões do módulo receptor DCF77 PV Electronics Conexões da esquerda para a direita

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

Fornece saída em formato invertido (a saída é baixa e aumenta uma vez por segundo).

Modo de espera de baixa energia - conecte o PON ao Vdd.

Conecte o PON ao GND para operação normal.

Mantenha o receptor longe de TVs, monitores ou qualquer outro ruído elétrico e certifique-se de que ele aponta para o transmissor DFC77.





Componentes


A lista de componentes é gerada a partir do meu programa de desenho esquemático LiveWire, portanto, pode não mostrar todos os detalhes onde o componente não está na biblioteca do programa, por exemplo, alguns dos interruptores. Verifique o esquema para obter detalhes ou entre em contato comigo.

A cor do LED pode ser escolhida conforme necessário, mas consulte a seção de LEDs para os LEDs reais que usei.





Etapa 8:Ordem da fiação


Com cerca de 400 fios ímpares para conectar, a fiação precisa de muito planejamento para se encaixar nas fiações entre os módulos.

Construa modificações, se necessário, e fixe todas as placas na parte traseira do mostrador para que as passagens do chicote de fiação fiquem visíveis.

As placas matriciais são removidas e conectadas longe do relógio.

Conecte os LEDs do SuperFiltro e encaixe-os no dial.

Conecte os LEDs de status do DCF77 e encaixe-os no dial.

O SuperFiltro e LEDs de status DCF77 são conectados por cabos principais à placa principal. Conecte todos os LEDs no módulo matricial 3 e encaixe-os no dial.

Conecte o módulo matricial 3 à pequena placa breakout vero e, em seguida, conecte os LEDs para este módulo instalado na etapa acima.

Ligue o anel de LED externo e, em seguida, encaixe-o no mostrador.

Conecte o display de matriz de pontos do anel externo deixando as extremidades do fio longas o suficiente para terminar nos LEDs do anel externo.

Reinstale o display de matriz de pontos do anel externo e conecte o chicote de fiação aos LEDs do anel externo.

Conecte o anel interno do LED e, em seguida, encaixe-o no mostrador.

Conecte o display de matriz de pontos do anel interno deixando as extremidades do fio longas o suficiente para terminar nos LEDs do anel interno.

Reinstale o display de matriz de pontos do anel interno e conecte o chicote de fiação aos LEDs do anel interno.

Conecte todos os LEDs no módulo matricial 3 e encaixe-os no dial.

Conecte o módulo matricial 3 à pequena placa breakout vero e, em seguida, conecte os LEDs para este módulo instalado na etapa acima.

Construa cabos principais e conecte-os a todas as placas.

Encaixe a placa Vero principal e, em seguida, conecte ao painel de interruptores. O LDR é montado através da porta de madeira com dobradiças à qual o painel de interruptores é fixado, para que seja conectado ao mesmo tempo.

Instale os alto-falantes e conecte à placa Vero com os módulos de som JQ6500.

Se você fez os furos do tamanho correto no mostrador, todos os LEDs se encaixarão no lugar sem cola. Certifique-se de que as bordas internas dos orifícios do LED sejam revestidas com tinta / verniz na fase de pintura para ajudar no ajuste por fricção.





Etapa 9:Modificação do módulo matricial de pontos Max2719 da fiação


Antes que os fios possam ser conectados aos módulos de matriz MAX 2917, eles precisarão ser modificados.

Remova os LEDs de matriz de pontos, pois eles não são necessários.

Dois conjuntos de 8 conectores de pino de 90 ° serão soldados à borda inferior do conector de matriz de LED existente.

Módulo MAX7219 modificado com conectores de pino de 90 ° soldados no lugar na parte inferior dos antigos conectores de matriz de LED. Os fios são retirados desses pontos para a matriz de LED na placa principal.

Vista lateral mostrando os pinos soldados ao lado dos antigos pinos do conector LED Matrix logo acima da placa de circuito impresso.





Etapa 10:Fiação Construindo um gabarito de fiação


O gabarito manterá os LEDs no lugar com o espaçamento correto, permitindo fácil cabeamento longe do relógio.

Construindo um gabarito de fiação para os LEDs

Imprima o mostrador em uma folha de papel. Imprima ao contrário ou coloque o papel de trás para a frente, pois você trabalhará na parte traseira do relógio. Coloque a folha sobre um pedaço velho de madeira ou melamina. Perfure todos os centros de LED e perfure com uma broca de 3 mm. O orifício deve ser ajustado por fricção nos LEDs para garantir uma fiação fácil. Os LEDs diferem em diâmetro, portanto, faça alguns orifícios de teste primeiro para obter o tamanho correto para seus LEDs.

Gabarito de fiação concluído.

Anéis LED internos e externos concluídos no gabarito. Pode ser útil escrever os números dos LEDs e outras informações no gabarito para garantir que você conecte os LEDs corretos, já que os LEDs são encaixados na parte traseira do mostrador e são girados / girados no sentido anti-horário.

Anel de LEDs removido do gabarito pronto para inserção no mostrador.





Etapa 11:Fiação do LED interno e anel externo


O diagrama esquemático acima mostra a fiação para uma seção de 8 LEDs do anel de LED externo.

Primeiro empurre os oito LEDs nos orifícios do gabarito. Dobre todos os ânodos para que eles se conectem de acordo com o shematic e a solda no lugar. Posteriormente, um fio é conectado aos oito ânodos conectados do módulo de matriz de LED. Coloque um pequeno pedaço de manga isolante sobre os cátodos e dobre essas pernas a cerca de 15 mm do LED. Corte cerca de 5 mm da dobra e solde um pedaço curto de fio longo o suficiente para alcançar o próximo lote de oito LEDs. Veja pic2.

Foto 1 Isso mostra uma seção completa de 8 LEDs conectados no gabarito com fios que conduzem para a próxima seção de 8 LEDs.

Figura 2 Repita o processo acima em lotes de oito LEDs.

Cada lote de oito LEDs terá sua própria conexão anódica separada para o módulo matricial. Oito no total.

Figura 3 LEDs do anel externo completados junto com os 16 fios conectados ao display matricial.

Os LEDs são então inseridos nos orifícios do mostrador e o módulo de matriz é fixado de volta no mostrador. Uma vez no lugar, os 16 fios do módulo matricial são conectados aos LEDs do anel externo. Este processo é repetido para o anel de LED interno.

Os 16 fios do módulo matricial estão prontos para serem conectados em 8 conjuntos de 8 seções de LED. Observe que o 8º conjunto possui apenas 4 LEDs. O esquema de tamanho 4000x4000 pode ser visto aqui.

Os LEDs

Usei LEDs de alta eficiência da série Vishay TLH44 em um pacote difuso colorido de Ø 3 mm

DESCRIÇÃO A série TLH.44 .. foi desenvolvida para aplicações padrão como indicadores gerais e iluminação. Ele é acondicionado em uma embalagem de plástico difuso tingido de 3 mm. O amplo ângulo de visão desses dispositivos fornece um alto contraste liga-desliga.

Vários tipos de seleção com diferentes intensidades luminosas são oferecidos. Todos os LEDs são categorizados em grupos de intensidade luminosa. Isso permite aos usuários montar LEDs com aparência uniforme.

RECURSOS

• Pacote padrão de Ø 3 mm (T-1)

• Pequenas tolerâncias mecânicas

• Adequado para DC e alta corrente de pico

• Amplo ângulo de visão

A figura 1-4 acima mostra as cores do LED com a figura abaixo mostrando o gráfico com os números reais das peças.





12:Fiação do 3º módulo matricial


Fiação do 3º módulo Dot Matrix

Este módulo tem apenas 24 LEDs conectados de 64.

O dia da semana LEDs na 1ª seção de 8 LEDs (apenas 7 conectados)

O segundo de 8 LEDs são CEST, CET Leap Yr, RTC Error, Synced, Error Period e Error Pulse Width (apenas 7 conectados)

O terceiro dos 8 LEDs são Buffer Full, Paridade 3 para 1 passa e falha e Buffer Oveflow (todos os 8 LEDs conectados)

O 4º de 8 LEDs contém apenas 2 LEDs marcador de minuto e status DCF77

Eu poderia ter usado apenas 3 conjuntos de 8 LEDs, mas usar 4 conjuntos tornou a fiação mais simples.

Esses LEDs são ligados no gabarito de fiação e, em seguida, conectados a uma pequena placa Vero onde são conectados aos fios Matrix. Observe que esta placa também atua como um suporte para o RTC.





Etapa 13:Painel do interruptor da fiação


O painel de interruptores balança para baixo sob o relógio fixado na parte de trás da porta de acesso. A fiação é soldada diretamente à placa principal e inclui a fiação para o LDR.

Painel de troca

Fiação do painel de interruptores em andamento

Painel de interruptores com tear de fiação concluído mostrado montado na porta na base do relógio

Fiação concluída com o tear de fiação para os interruptores serpenteando para baixo da placa principal. O painel de interruptores é mostrado dobrado na caixa do relógio.





Etapa 14:sons de campainha e tique-taque no JQ6500


Este relógio usa 2 módulos JQ6500, um para o som do tique-taque e outro para os carrilhões do quarto e das horas. O som do tique-taque é controlado por hardware e os sinos são controlados por software.

Circuito de carrilhão

A chave SW7 é uma chave de travamento de 3 posições. O módulo é controlado pelos pinos de hardware serial 13 e 14 no Arduino. Observe o resistor de 1K no circuito de recepção. Veja o esquema principal. Desligado - a alimentação é removida do JQ9500 e o pino 24/7 / timer é mantido alto para evitar que o pino do Arduino fique flutuando 24/7 - O sinal sonoro soará os quatro quartos e as horas 24/7 Cronometrado - Os quatro quartos e os carrilhões das horas soarão apenas das 05:15 às 23:00 horas. (definido no código) O volume é definido no software por meio do Arduino e do botão Chime para aumentar ou diminuir o volume.

Circuito Tick Tock

Isso é controlado por hardware diretamente para o JQ6500. O interruptor SW6 liga / desliga apenas remove a alimentação do JQ6500. Tick ​​volume SW8 é um interruptor de bloqueio central de 3 vias. Operar a chave para cima ou para baixo ajusta o volume por meio do pino ADKey no JQ6500. O comando para tocar o tique-taque chega a cada 2 segundos do Arduino. O arquivo de som deve ter menos de 2 segundos. O diodo D15 isola o ADKey da saída do Arduino.





Etapa 15:alto-falantes


Cada módulo de som é conectado a um alto-falante 3W 8Ω instalado na lateral da caixa do relógio. Eles estão disponíveis como um par na Amazon.

Esta foto mostra os locais dos alto-falantes na caixa do relógio. Observe o painel de controle do interruptor dobrado na parte inferior do relógio.

2 grades de alto-falante cobrem os alto-falantes e também eram da Amazon

Lado esquerdo do relógio mostrando a localização do alto-falante. Isso é repetido do outro lado.

Relógio em estilo porta-retrato mostrando o alto-falante direito.





Etapa 16:JQ6500 Carregando arquivos de som


Seus sons precisarão ser carregados no módulo JQ6500.

Consulte esses sites para obter informações e as bibliotecas do Arduino para esses módulos.

Biblioteca Arduino JQ6500_SerialGeneral infoJQ6500 tools

Normalmente, o JQ6500 vem pré-carregado com um programa de upload de música que carrega na conexão com o seu PC (não funciona em MACs!). Este é em chinês, há instruções no meu site aqui mostrando como usar a versão chinesa.

Meu JQ6500s veio sem um programa de carregamento, então eu baixei uma versão em inglês de Nikolai Radke

Você pode obter o arquivo zip aqui Idioma Inglês MusicDownload.exe v1.2a
JQ6500_English_MusicDownload_V1_2a.zip
Acabei de executar esse arquivo no Windows (não há necessidade de instalá-lo) e ele roda em inglês, veja os detalhes abaixo.

Insira seu JQ6500 no 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

Código

  • 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

Peças personalizadas e gabinetes

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

Esquemas

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

Processo de manufatura

  1. Relógio de cuco
  2. Relógio de visão pov do Arduino
  3. DIY mais simples relógio IV9 Numitron com Arduino
  4. Relógio de parede simples usando Adafruit 1/4 60 Ring Neopixel
  5. Simple Word Clock (Arduino)
  6. Relógio Arduino com horas de oração islâmica
  7. Arduino Spybot
  8. Relógio mestre
  9. Arduino Temp. Monitor e relógio em tempo real com tela 3.2
  10. Despertador simples com DS1302 RTC