Índice:

Despertador LED Matrix (com MP3 Player): 6 etapas (com imagens)
Despertador LED Matrix (com MP3 Player): 6 etapas (com imagens)

Vídeo: Despertador LED Matrix (com MP3 Player): 6 etapas (com imagens)

Vídeo: Despertador LED Matrix (com MP3 Player): 6 etapas (com imagens)
Vídeo: MUITO CUIDADOS POIS ELES IMITAM TUDO 2024, Julho
Anonim
Despertador LED Matrix (com MP3 Player)
Despertador LED Matrix (com MP3 Player)
Despertador LED Matrix (com MP3 Player)
Despertador LED Matrix (com MP3 Player)

Este despertador baseado em Arduino tem tudo o que você esperaria de seu alarme - possibilidade de acordá-lo com cada música que você gosta, botão de soneca e é fácil de controlar por meio de três botões. Existem três blocos principais - matriz de LED, módulo RTC e proteção de MP3 com alto-falante.

Etapa 1: Material e Ferramentas

  • Matriz de LED
  • Arduino Uno
  • MP3 escudo DHF player Mini
  • Módulo RTC DS1307
  • Qualquer orador
  • 3 botões (com resistores pullup / pulldown 10k)
  • Fios
  • Plexi (ou qualquer material do qual você deseja sua caixa)
  • Impressora 3D (para impressão de caixas de matriz)
  • Conector de fonte de alimentação DC
  • Conector USB B fêmea.

Eu acredito que você pode modificar esta lista de materiais com base em suas possibilidades (definitivamente você pode usar diferentes MP3 Shields, diferentes módulos RTC e tudo deve funcionar bem:)

Etapa 2: Matriz de LED

Matriz de LED
Matriz de LED
Matriz de LED
Matriz de LED
Matriz de LED
Matriz de LED

Como inspiração, usei esses instrutíveis para construir uma matriz de LED, só decidi não usar a placa de prototipagem e projetar minha própria placa de circuito impresso. Você pode encontrar meu projeto no fabricante de circuitos aqui. Você também pode usar esquemas e se quiser enviar dados gerber (em vez de gerá-los a partir do nosso próprio projeto de criador de circuitos), avise-me que irei fornecê-los a você:). Algumas dicas - primeiro usei LED muito barato, mas depois de soldar todos os diodos e executar o código do Arduino, descobri que a variação da cor do diodo LED não era aceitável, então precisei encomendar outros e fazer outra matriz de LED. Explicarei o princípio de funcionamento na Parte Arduino. De qualquer forma, para descobrir se você fez um bom trabalho e o display está funcionando, basta substituir as constantes na função DisplayChar no loop principal do Arduino (por exemplo, em vez de DisplayChar (1, letA); use DisplayChar (0, 9); que escreverá o número 9 começando da 1ª coluna), você não precisa comentar mais nada.

Etapa 3: Outro HW

Outro HW
Outro HW
Outro HW
Outro HW
Outro HW
Outro HW

Os outros componentes do HW para construir despertador são: módulo RTC, escudo MP3, botões e arduino UNO.

Para o módulo RTC eu usei o módulo DS1307 e a biblioteca MD_DS1307.h é bem simples tudo funciona bem, mas eu recomendaria provavelmente usar um módulo RTC mais preciso como o 3231 ou outro - se eu o deixasse sem energia por alguns dias ele começou a perder alguns segundos.

Escudo de MP3 DHF player Mini - Este escudo de MP3 é realmente fácil, você pode fazer upload de alguns mp3 para um cartão SD, conectar qualquer alto-falante que encontrar e então pode ser operado de duas maneiras através de comunicação serial ou por pinos de E / S. Para ser honesto, por algum motivo, eu não tive sucesso na comunicação serial (não funcionava junto com a comunicação SPI e I2C usada para outros componentes), mas estava tudo bem em usar os pinos IO (usei ADKEY1 conectado à saída digital do arduino como um gatilho para tocar a música e um pino USB + para parar a música).

Como você pode ver na foto, usei três botões simples na placa de prototipagem conectada às Entradas Digitais do Arduino com resistores pull down de 10kOhm.

A fiação do Arduino pode ser vista claramente no código do Arduino:)

Etapa 4: peças mecânicas

Partes mecânicas
Partes mecânicas
Partes mecânicas
Partes mecânicas
Partes mecânicas
Partes mecânicas
Partes mecânicas
Partes mecânicas

Para criar uma visualização de uma boa exibição regular, você precisa usar alguma grade para definir a forma exata de cada LED. Usei uma grade impressa em 3D simples que funciona muito bem - Ela é feita de duas partes, esquerda e direita, você pode encontrar os dados STL em anexo.

A caixa é fresada em máquina CNC de milk plexi. Fica totalmente a seu critério de qual material você faz, apenas uma recomendação, se você usar um material semelhante ao que eu usei, coloque alguma camada semipermeável na parte que fica diretamente nos LEDs para evitar que os LEDs sejam visíveis como uma fonte pontual de luz. Você pode ver que na parede lateral há um espaço para o conector da fonte de alimentação DC e USB para carregar melhores ideias de código:) Usei cola padrão para plásticos para colar as peças de plexi. Em anexo, há arquivos STL para todas as partes (Obrigado meu amigo Peshi por projetar esta caixa super cool:))

Etapa 5: parte do Arduino

Arduino Part
Arduino Part

Em parte relacionada ao arduino, gostaria apenas de descrever brevemente o algoritmo do loop principal e, em seguida, algumas palavras para controlar os registradores de deslocamento por meio de SPI e configuração de alarme.

No loop principal, você basicamente verifica se algum botão está pressionado, se o RTC envia valores de minutos atualizados recentemente e se é hora de tocar alguma música do pink floyd:) e se não, você liga e desliga periodicamente os LEDs com definir números.

Controlando a matriz de LED - Para melhor compreensão, é bom seguir as instruções para a matriz de LED que mencionei no início, mas apenas brevemente - é importante entender que para mostrar números ou letras nesta matriz, você precisa escolher periodicamente qual LED do conjunto a linha precisará ser ligada e, em seguida, desligue todos os LEDs da linha por algum tempo. Na próxima etapa, você desativará esta linha e preparará a segunda linha e esta novamente e novamente. O que isso significa? - não use atrasos! - caso contrário, ele não mostrará números, mas apenas piscará:)

Eu uso uma maneira bem diferente e diria mais fácil de controlar os registradores de deslocamento (graças ao meu amigo Krystof que escreveu esta função suave). Portanto, o primeiro passo (preparar os dados para o registrador de deslocamento está acontecendo na função DisplayChar, onde você apenas encontra o símbolo desejado do array de constantes e prepara os dados para os registradores. E quando a função UpdateDisplay é chamada os dados são transferidos para saídas (para mais informações veja a tela do IDE do arduino)

Configuração de alarme. Existem três botões, esquerdo, meio e direito. Quando você pressiona duas vezes à direita e no meio, entra no menu de alarme. No menu Alarme, estão disponíveis as seguintes funções - botão esquerdo (definir o alarme para horas) botão do meio (definir o alarme para minutos) Pressão longa do botão direito (confirmando o alarme), pressão longa do botão do meio e direito (apagando o alarme existente).

Quando o alarme é definido (você pode reconhecer isso pelo fato de o alarme ativar a marca LED no canto inferior direito) e o relógio começará a tocar sua música matinal favorita:) existem as seguintes funções disponíveis - botão esquerdo (Soneca por mais 5 minutos), botão do meio (cancelar alarme).

Etapa 6: Concluindo o Alarme

Image
Image
Completando Alarme
Completando Alarme

No final, eu apenas colo tudo de dentro:) e fecho a cola na parte de trás do alarme. No vídeo em anexo, você pode ver o mecanismo de controle deste alarme. Observe o vídeo, no vídeo parece que está piscando, é causado pelo princípio de ligar e desligar LEDs e taxa de quadros de legenda da câmera - na realidade, seus olhos veem isso ligado sem piscar:)

Para o futuro, gostaria de experimentar um material diferente - de preferência algum preto:) e adicionar mais algumas funções, como mostrar a data, talvez a temperatura, etc:)

Espero que você goste de construir seu próprio despertador e aguardo suas ideias:)

Concurso de Relógios
Concurso de Relógios
Concurso de Relógios
Concurso de Relógios

Segundo Prêmio no Concurso de Relógios

Recomendado: