Índice:

Relógio, display LCD, infravermelho para configurar: 6 etapas
Relógio, display LCD, infravermelho para configurar: 6 etapas

Vídeo: Relógio, display LCD, infravermelho para configurar: 6 etapas

Vídeo: Relógio, display LCD, infravermelho para configurar: 6 etapas
Vídeo: Como configurar relógio curvo espelhado modelo Q-2152 2024, Julho
Anonim
Relógio, display LCD, infravermelho para configurar
Relógio, display LCD, infravermelho para configurar
Relógio, display LCD, infravermelho para configurar
Relógio, display LCD, infravermelho para configurar

Construa um relógio de tempo real que mantenha o tempo ativo dentro de alguns minutos por ano. O código e os componentes podem ser facilmente reaproveitados em outros projetos.

Este projeto requer uma quantidade mínima de fiação e nenhuma solda. O cronometrista é um relógio de tempo real DS3231. A hora é exibida em um LCD 1602 de baixo custo. Ambos os módulos usam comunicações I2C. I2C usa apenas 2 fios por módulo ao se conectar a um Arduino. Estou usando um Arduino Nano porque ele se encaixa perfeitamente em uma placa de ensaio. As instruções a seguir funcionarão com um Arduino Uno, pois tem os mesmos números de pinos que o Nano para este projeto. O outro componente é o receptor infravermelho. Ele permite que você use um controle remoto comum, como o controle remoto da TV, para definir a hora exatamente como faria em nossa TV inteligente. O receptor infravermelho requer apenas um fio para conectá-lo ao Arduino.

A primeira etapa é testar o Arduino e conectá-lo à placa de ensaio. As etapas a seguir foram projetadas para funcionar de forma independente. Cada etapa possui instruções de fiação e instruções de teste. Quando eu construo projetos, eu conecto e testo cada componente para confirmar se estão funcionando. Isso ajuda a integrar vários componentes porque sei que cada trabalho e eu podemos nos concentrar nos requisitos de integração.

Este Instructable requer que você tenha o IDE do Arduino instalado. Você também deve ter as habilidades básicas para baixar um programa de esboço do Arduino a partir dos links neste projeto, criar um diretório para o programa (nome do diretório igual ao nome do programa). As próximas etapas são carregar, visualizar e editar o programa no IDE. Em seguida, carregue o programa por meio de um cabo USB para sua placa Arduino.

Suprimentos

  • Nano V3 ATmega328P CH340G Micro placa controladora para Arduino. Como alternativa, você pode usar um Uno.
  • Relógio em tempo real DS3231 e bateria CR2032.
  • 1602 LCD com um módulo I2C
  • Receptor infravermelho e controle remoto. Eu usei um kit de módulo de controle remoto sem fio IR que veio com um receptor infravermelho e um controle remoto infravermelho.
  • Tábua de pão
  • Cabos de aço
  • Adaptador de parede de 5 volts

Comprei as peças no eBay, principalmente de distribuidores de Hong Kong ou China. Os distribuidores norte-americanos às vezes têm peças iguais ou semelhantes por preços razoáveis e entrega mais rápida. As peças chinesas levam de 3 a 6 semanas para serem entregues. Todos os distribuidores que usei são confiáveis.

Custos aproximados: Nano $ 3, DS3231 $ 1, LCD $ 3, kit infravermelho $ 1, placa de ensaio $ 2, pacote de 40 cabos de aço $ 1, $ 1 para um adaptador de parede de 5 volts. Total, cerca de US $ 11. Note, comprei o Nano e o LCD com os pinos da placa de ensaio já soldados no lugar, pois minhas habilidades de soldagem são fracas. Para a bateria do relógio, comprei um pacote de 5 baterias de lítio CR2032 por cerca de US $ 1,25. Também comprei um pacote de 5 DS3231s porque gosto de relógios. Este projeto usa 1 placa de ensaio. Eu comprei um pacote de 3 breadboard por cerca de US $ 7; um negócio melhor do que comprar uma placa individual.

Etapa 1: adicionar o Arduino Nano ao breadboard

Adicione o Arduino Nano ao breadboard
Adicione o Arduino Nano ao breadboard

Conecte o Arduino Nano na placa de ensaio. Ou, se preferir, você pode usar um Arduino Uno para este projeto; ambos usam os mesmos pinos para este projeto. Conecte o Nano (ou Uno) ao computador por meio de um cabo USB.

Conecte a energia e o aterramento do Arduino à barra de energia da placa de ensaio. Conecte o pino do Arduino 5+ à barra positiva da placa de ensaio. Conecte o pino Arduino GRN (terra) à barra negativa (terra) da placa de ensaio. Isso será usado por outros componentes.

Baixe e execute o programa de teste básico do Arduino: arduinoTest.ino. Ao executar o programa, a luz LED integrada acenderá por 1 segundo e, em seguida, desligará por 1 segundo. Além disso, são postadas mensagens que podem ser visualizadas no Arduino IDE Tools / Serial Monitor.

+++ Setup.

+ Inicializado o pino digital do LED integrado para saída. O LED está apagado. ++ Vá para o loop. + Contador de loop = 1 + Contador de loop = 2 + Contador de loop = 3 …

Como exercício, altere o intervalo de tempo na luz piscando, carregue o programa alterado e confirme a alteração.

Na foto acima está uma caixa de kit de jumper de placa de ensaio sem solda de 140 peças que você pode comprar por 3 a 5 dólares. Eles tornam as placas mais organizadas do que usando cabos longos para conexões curtas.

Etapa 2: adicionar o módulo de relógio DS3231 e conectá-lo ao Arduino

Adicione o módulo de relógio DS3231 e conecte-o ao Arduino
Adicione o módulo de relógio DS3231 e conecte-o ao Arduino

Conecte o módulo de relógio na placa de ensaio. Conecte o pino GND do módulo de relógio à barra de aterramento da placa de ensaio. Conecte o pino VCC do módulo de relógio à barra positiva da placa de ensaio. Conecte o pino SDA (dados) do módulo de relógio ao pino A4 do Arduino (pino de dados I2C). Conecte o pino SCL (relógio) do módulo de relógio ao pino A5 do Arduino (pino de relógio I2C).

No Arduino IDE, instale uma biblioteca de relógio DS3231. Selecione Ferramentas / Gerenciar Bibliotecas. Filtre sua pesquisa digitando 'rtclib'. Selecione RTClib da Adafruit (para referência, o link da biblioteca).

Baixe e execute o programa de teste básico: clockTest.ino. Ao executar o programa, são postadas mensagens de hora do relógio, que podem ser visualizadas no Arduino IDE Tools / Serial Monitor.

+++ Setup.

+ Relógio definido. ++ Vá para o loop. ---------------------------------------- + Data e hora atuais: 2020/3 / 22 (domingo) 11: 42: 3 + Data e hora atuais: 2020/3/22 (domingo) 11: 42: 4 + Data e hora atuais: 2020/3/22 (domingo) 11: 42: 5 …

Como exercício, use rtc.adjust () para definir a hora e a data do relógio, carregue o programa alterado e confirme a alteração.

rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Primeiro dia da primavera de 2020.

Etapa 3: adicione o módulo de display LCD 1602 e conecte-o ao Arduino

Adicione o Módulo de Display LCD 1602 e conecte-o ao Arduino
Adicione o Módulo de Display LCD 1602 e conecte-o ao Arduino

Conecte o módulo LCD na placa de ensaio. Conecte o pino GND do módulo de relógio à barra de aterramento da placa de ensaio. Conecte o pino VCC do módulo de relógio à barra positiva da placa de ensaio. Conecte o pino SDA (dados) do módulo de relógio ao pino A4 do Arduino (pino de dados I2C). Conecte o pino SCL (relógio) do módulo de relógio ao pino A5 do Arduino (pino de relógio I2C).

No IDE do Arduino, instale uma biblioteca 1602 LCD. Selecione Ferramentas / Gerenciar Bibliotecas. Filtre sua pesquisa digitando ‘LiquidCrystal’. Selecione LiquidCrystal I2C de Frank de Barbander (para referência, o link da biblioteca).

Baixe e execute o programa de teste básico: lcd1602Test.ino. Ao executar o programa, mensagens de hora do relógio são postadas, as quais podem ser visualizadas no Arduino IDE Tools / Serial Monitor.

+++ Setup.

+ LCD pronto para usar. +++ Vá para o loop. + theCounter = 1 + theCounter = 2 + theCounter = 3…

Como exercício, altere as mensagens do visor LCD, carregue o programa alterado e confirme a alteração.

Etapa 4: adicione o receptor infravermelho e conecte-o ao Arduino

Adicione o receptor infravermelho e conecte-o ao Arduino
Adicione o receptor infravermelho e conecte-o ao Arduino

Conecte os fios do cabo fêmea para macho no receptor infravermelho (extremidades fêmeas). Conecte o pino de aterramento do módulo de relógio à barra de aterramento da placa de ensaio. Conecte o pino de alimentação do módulo de relógio à barra positiva da placa de ensaio. Conecte o pino de saída do receptor infravermelho ao pino Arduino A1.

Conecte o receptor infravermelho, pinos da parte superior esquerda para a direita:

Mais à esquerda (próximo ao X) - Nano pino A1 Centro - 5V à direita - aterramento

A1 + - - Conexões de nano pinos

| | | - Pinos do receptor infravermelho --------- | S | | | | --- | | | | | | --- | | | ---------

No IDE do Arduino, instale uma biblioteca de infravermelho. Selecione Ferramentas / Gerenciar Bibliotecas. Filtre sua pesquisa digitando 'IRremote'. Selecione IRremote por Shirriff (para referência, o link da biblioteca).

Baixe e execute o programa de teste básico: infraredReceiverTest.ino. Ao executar o programa, aponte seu controle remoto para o receptor e pressione vários botões, como o número de 0 a 9. Mensagens seriais são emitidas (impressas) que podem ser visualizadas nas Ferramentas IDE do Arduino / Monitor Serial.

+++ Setup.

+ Inicializou o receptor infravermelho. ++ Vá para o loop. + Tecla OK - Alternar + Tecla> - próximo + Tecla <- anterior + Tecla para cima + Tecla para baixo + Tecla 1: + Tecla 2: + Tecla 3: + Tecla 4: + Tecla 6: + Tecla 7: + Tecla 8: + Tecla 9: + Tecla 0: + Tecla * (Retornar) + Tecla # (Sair)

Como exercício, use um controle remoto de TV para ver os valores impressos. Você pode então modificar o programa para usar os valores na instrução switch da função infraredSwitch (). Por exemplo, pressione a tecla "0" e obtenha o valor para o seu controle remoto, por exemplo, "0xE0E08877". Em seguida, adicione um caso à instrução switch como no seguinte trecho de código.

case 0xFF9867:

case 0xE0E08877: Serial.print ("+ Chave 0:"); Serial.println (""); pausa;

Etapa 5: carregar o programa Clock Project Arduino Sketch e testá-lo

Carregue o programa Clock Project Arduino Sketch e teste-o
Carregue o programa Clock Project Arduino Sketch e teste-o
Carregue o programa Clock Project Arduino Sketch e teste-o
Carregue o programa Clock Project Arduino Sketch e teste-o
Carregue o programa Clock Project Arduino Sketch e teste-o
Carregue o programa Clock Project Arduino Sketch e teste-o

Agora que todos os componentes foram adicionados à placa de ensaio, conectados e testados; é hora de carregar o programa de relógio principal e executá-lo. O programa do relógio obtém a hora do módulo de relógio, exibe a hora no LCD e permite que você defina a hora usando um controle remoto infravermelho.

Baixe e execute o programa do relógio do projeto: clockLcdSet.ino.

Quando o programa for iniciado, ele exibirá a hora do DS3231 na tela LCD do 1602. As mensagens podem ser visualizadas no Arduino IDE Tools / Serial Monitor.

+++ Setup.

+ Conjunto de LCD. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Relógio definido e sincronizado com as variáveis do programa. + Receptor infravermelho habilitado. ++ Vá para o loop. + clockPulseMinute (), theCounterMinutes = 15 + clockPulseMinute (), theCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17…

Aponte o controle remoto para o receptor e pressione o botão de seta para a direita. O ano será exibido para configuração. Pressione o botão de seta para a direita várias vezes para ver se você pode definir o ano, mês, dia, hora, minuto e segundos. Para definir um valor de tempo, vá para o valor. Use as setas para cima e para baixo para definir o valor de exibição. Em seguida, use a tecla "OK" para definir o valor do relógio. Um valor é definido por vez.

Etapa 6: Fonte de alimentação externa

Fonte de energia externa
Fonte de energia externa

Agora que seu relógio está testado e funcionando, você pode desconectá-lo do computador e usar uma fonte de alimentação independente. Para simplificar, eu uso um adaptador de parede de 5 volts, que pode ser comprado por cerca de um dólar, e um cabo USB, outro dólar. O cabo conecta o Arduino ao adaptador de parede de + 5V. Como os pinos de alimentação e aterramento do Arduino estão conectados à placa de ensaio, isso alimentará os outros componentes.

Por causa de sua simplicidade e baixo custo, uso essa mesma combinação para impulsionar outros projetos.

Espero que você tenha obtido sucesso e tenha gostado de construir um relógio LCD controlado por infravermelho.

Recomendado: