Código Arduino e vídeo para módulo de distância IR Sharp com display LCD1602

Código Arduino e vídeo para módulo de distância IR Sharp com display LCD1602

Neste tutorial, aprenderemos a usar o módulo de distância infravermelho Sharp em conjunto com um display LCD1602 para medir distâncias com precisão. O sensor IR Sharp fornecerá a distância medida, que será exibida no LCD, permitindo feedback em tempo real. Ao final deste projeto, você terá um sistema funcional capaz de medir distâncias de 4 a 30 centímetros (no vídeo em 00:30).

Módulos de saída analógica Sharp:
2 a 15 cm GP2Y0A51SK0F
4 a 30 cm série GP2Y0A41SK0F / GP2Y0AF30
10 a 80 cm GP2Y0A21YK0F
10 a 150 cm GP2Y0A60SZLF
20 a 150 cm GP2Y0A02YK0F
100 a 550 cm GP2Y0A710K0F

Sharpt IR distance sensor

O sensor de distância Sharp IR funciona emitindo luz infravermelha e medindo o tempo que leva para a luz refletir de volta. Isso permite que o sensor calcule a distância com base na quantidade de luz recebida. O display LCD1602 é usado para apresentar essa informação em um formato legível. O conjunto é compacto, tornando-o adequado para várias aplicações, incluindo robótica e sistemas de medição de distância.

Hardware Explicado

Para este projeto, usaremos o sensor de distância Sharp IR e o display LCD1602. O sensor Sharp IR tem três fios: o fio vermelho conecta-se à alimentação de 5V, o fio preto conecta-se ao terra e o fio amarelo é o sinal de saída que se conecta a um pino analógico do Arduino. O display LCD1602 requer vários pinos para comunicação, que também serão conectados ao Arduino.

O display LCD1602 usa a biblioteca LiquidCrystal para gerenciar os dados enviados a ele, permitindo controlar facilmente a saída do display. Essa biblioteca lida com a comunicação entre o Arduino e o LCD, tornando simples imprimir texto e números.

Detalhes da ficha técnica

FabricanteAfiado
Número da peçaGP2Y0A41SK0F
Tensão lógica/E/S5 V
Tensão de alimentação4,5 - 5,5 V
Faixa de distância operacional4 - 30 cm
Tensão de saída (a 30 cm)0,4 V
Tensão de saída (a 4 cm)3 V
Tempo de resposta30 ms
PacoteMódulo compacto
Notas / variantesDiferentes modelos disponíveis para alcances variados

  • Certifique-se de que o sensor está corretamente alimentado com 5 V.
  • Use um ponto de terra comum para todos os componentes.
  • Tenha cuidado com a tensão de saída, que varia com a distância.
  • Considere usar um filtro no sinal de saída para estabilizar as leituras.
  • Mantenha o sensor limpo e livre de obstruções para medições precisas.

Instruções de fiação

Arduino Wiring Diagram of Sharp distance sensor with LCD1602-2
Diagrama de fiação do Arduino do sensor de distância Sharp com LCD1602-2 — Arduino Wiring Diagram of Sharp distance sensor with LCD1602-2

Para ligar o módulo de distância infravermelho (IR) Sharp, conecte o fio vermelho ao pino 5V do Arduino. Em seguida, conecte o fio preto a um dos pinos de terra (GND) do Arduino. O fio amarelo, que fornece a medição de distância, deve ser conectado ao pino analógico.A0no Arduino. Para o display LCD1602, conecte os pinos da seguinte forma:rsao pino 12,enao pino 11,d4para o pino 5,d5para o pino 4,d6ao pino 3, ed7para o pino 2. Certifique-se de que todas as conexões estejam seguras para evitar qualquer problema de fiação solta (no vídeo em 02:15).

Exemplos de Código e Guia Passo a Passo

O código Arduino para este projeto inicializa o LCD e o sensor Sharp IR. Os identificadores-chave incluemIR, que é definido como o pino analógico usado para a saída do Sharp IR, emodel, que especifica o tipo de sensor Sharp que está sendo usado. Na função setup, o LCD é inicializado para exibir conteúdo.

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

#define IR A0 // define Sharp IR signal pin
#define model 430 // the model of the IR module

Este trecho mostra como a biblioteca LiquidCrystal é inicializada e como o pino do sensor IR e o modelo são definidos. O modelo é crucial para garantir que a biblioteca funcione corretamente com o tipo específico de sensor em uso.

Na função loop, a distância é medida continuamente e exibida no LCD. A funçãoSharpIR.distance()obtém a distância em centímetros, que é então formatada em uma string e impressa no LCD.

int dis = SharpIR.distance(); // gets the distance in cm
String distance = String(dis);
distance = "Distance: " + distance + "cm";
lcd.print(distance);

Este trecho de código obtém a leitura de distância do sensor e a formata para exibição. A atualização contínua da exibição fornece feedback em tempo real sobre a distância medida pelo sensor IR Sharp.

Demonstração / O que esperar

Após concluir as ligações e carregar o código, deverá ver o ecrã LCD a mostrar a distância medida pelo sensor IR Sharp. Pode testar a configuração colocando um obstáculo a várias distâncias. As leituras devem ser precisas dentro da faixa especificada de 4 a 30 centímetros. Tenha em atenção que as leituras podem tornar-se menos fiáveis nos extremos dessa faixa (no vídeo em 04:50).

Marcas de tempo do vídeo

  • 00:00Introdução
  • 02:15Instruções de fiação
  • 04:50Demonstração da configuração

Imagens

Diagrama de fiação do Arduino do sensor de distância Sharp com LCD1602-2
Diagrama de fiação do Arduino do sensor de distância Sharp com LCD1602-2
LCD1602-I2C display module with 4 wires
LCD1602-I2C display module with 4 wires
Sharpt IR distance sensor
Sharpt IR distance sensor GP2Y0A21YK0F
71-This is the Arduino code and video for a Sharp Infrared Sensor Module with LCD1602.
Idioma: C++
Copiado!

Recursos e referências

Arquivos📁

Bibliotecas do Arduino (zip)

Arquivo Fritzing