Sensor LDR ligado ao Arduino em protoboard com resistor e LED para detectar luz

Como usar sensor LDR com Arduino para detectar luz

Para usar sensor LDR com Arduino, monte um divisor de tensão com o LDR e um resistor, ligue o ponto central em uma entrada analógica e leia o valor com analogRead. Assim o Arduino consegue detectar claridade, sombra e variações de luz no ambiente.

O LDR é um dos sensores mais didáticos para quem está começando, porque mostra de forma clara como uma grandeza física vira um valor elétrico. Ele é perfeito para projetos de luz automática, medidor de luminosidade, alarme por sombra, estufa maker e automação simples.

O que é um sensor LDR?

O Sensor LDR 5mm é um fotoresistor: um componente cuja resistência muda conforme a quantidade de luz recebida. Em geral, com mais luz a resistência diminui; com menos luz, a resistência aumenta.

  • Função principal: detectar variação de luminosidade.
  • Tipo de leitura: normalmente analógica, usando divisor de tensão.
  • Projetos comuns: luz automática, alarme por sombra, medidor de luz e automação.
  • Peças de apoio: resistor, protoboard, jumpers e uma placa Arduino.

Como ligar o LDR no Arduino

O LDR não é ligado sozinho na entrada analógica. O ideal é montar um divisor de tensão usando o LDR e um resistor, geralmente de 10 kΩ. Para a bancada, você pode usar o Arduino Uno R3 SMD, uma protoboard e jumpers macho-macho.

Ligação Conectar em Função
Uma perna do LDR 5V Alimentação do divisor
Outra perna do LDR A0 e resistor Ponto de leitura analógica
Outra ponta do resistor GND Fecha o divisor de tensão
LED de teste Pino 9 com resistor Indica claro/escuro no projeto

Essa montagem faz a tensão no pino A0 variar conforme a luz. O valor lido pelo Arduino normalmente fica entre 0 e 1023, dependendo da iluminação e da forma como o divisor foi montado.

Código Arduino para ler sensor LDR

O código abaixo lê o LDR no pino A0 e mostra o valor no Monitor Serial. Comece por ele antes de criar automações, porque isso ajuda a descobrir os valores reais de claro e escuro no seu ambiente.

const int pinoLDR = A0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  int valorLuz = analogRead(pinoLDR);

  Serial.print("Valor do LDR: ");
  Serial.println(valorLuz);

  delay(300);
}

Projeto de luz automática com LDR

Depois de observar os valores no Monitor Serial, escolha um limite. No exemplo abaixo, o LED acende quando a leitura indica pouca luz. Esse limite deve ser ajustado conforme sua montagem.

const int pinoLDR = A0;
const int pinoLED = 9;
const int limiteEscuro = 500;

void setup() {
  pinMode(pinoLED, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int valorLuz = analogRead(pinoLDR);

  if (valorLuz < limiteEscuro) {
    digitalWrite(pinoLED, HIGH);
    Serial.println("Escuro: LED ligado");
  } else {
    digitalWrite(pinoLED, LOW);
    Serial.println("Claro: LED desligado");
  }

  delay(300);
}

Se no seu circuito o comportamento ficar invertido, não significa necessariamente erro. Dependendo da posição do LDR e do resistor no divisor de tensão, o valor pode aumentar ou diminuir com a luz. O caminho certo é medir primeiro e ajustar o limite depois.

Por que o LDR precisa de resistor?

O resistor cria, junto com o LDR, uma divisão de tensão. Sem ele, a entrada analógica não recebe uma variação elétrica estável para interpretar. Por isso o LDR é uma ótima aula prática sobre resistência, tensão e leitura analógica.

Condição O que acontece Como usar no projeto
Ambiente claro A resistência do LDR muda com mais luz Manter LED desligado ou abrir uma ação por claridade
Ambiente escuro A resistência muda no sentido oposto Acender LED, ligar alerta ou registrar evento
Sombra passando A leitura varia rapidamente Criar alarme por interrupção de luz

Como calibrar o sensor LDR

Calibrar é descobrir quais valores representam claro e escuro na sua bancada. Abra o Monitor Serial, anote a leitura com luz forte, depois cubra o LDR ou apague a luz e anote de novo. O limite deve ficar entre esses dois valores.

  • Teste no local real: a luz da sala, janela ou luminária muda o resultado.
  • Evite limite no extremo: escolha um valor intermediário para reduzir oscilação.
  • Use média se necessário: várias leituras podem suavizar ruído.
  • Proteja contra sombra acidental: pense na posição física do sensor.

Projetos com LDR e Arduino

O LDR é simples, mas abre espaço para muitos projetos úteis. Ele combina muito bem com LED, buzzer, relé, display, servo motor e placas conectadas como o ESP32.

  • Luz automática: acende quando escurece.
  • Alarme por sombra: detecta quando algo bloqueia a luz.
  • Estufa maker: monitora variação de luminosidade para plantas.
  • Medidor didático: mostra valores de luz no Monitor Serial ou display.
  • IoT com ESP32: envia luminosidade para dashboard ou automação.

LDR, sensor PIR ou sensor ultrassônico?

É comum confundir sensores porque todos reagem ao ambiente, mas cada um responde a uma pergunta diferente. O LDR mede luz, o PIR HC-SR501 detecta movimento e o HC-SR04 mede distância.

Sensor Use quando a pergunta for Exemplo
LDR Está claro ou escuro? Luz automática
PIR Alguém passou? Alarme de presença
HC-SR04 Qual a distância do objeto? Robô desviando de obstáculo

Erros comuns com LDR no Arduino

  • Ligar o LDR direto no A0 sem divisor: a leitura fica sem referência adequada.
  • Não calibrar o limite: o valor 500 pode funcionar em uma sala e falhar em outra.
  • Esperar precisão de luxímetro: LDR é ótimo para aprendizado e detecção simples, não para medição profissional de lux.
  • Ignorar a posição física: sombra da própria montagem pode alterar a leitura.
  • Usar relé sem cuidado: cargas maiores precisam de módulo adequado e segurança elétrica.

Peças recomendadas para começar

Para montar o primeiro teste, você precisa de LDR, resistor, Arduino, protoboard e jumpers. Se quiser aprender vários sensores de uma vez, o Kit 7 Sensores para Arduino e ESP32 ajuda a comparar luminosidade, presença, distância, temperatura e gás em projetos práticos.

Para automação conectada, combine LDR com ESP32. Para bancada iniciante, Arduino Uno, protoboard e jumpers já são suficientes para entender leitura analógica e criar a primeira luz automática.

Perguntas Frequentes (FAQ)

Como ligar um sensor LDR no Arduino?
Ligue o LDR em um divisor de tensão com um resistor. Uma perna vai ao 5V, o ponto central vai ao A0 e o resistor fecha para o GND.
Qual resistor usar com LDR no Arduino?
Um resistor de 10 kΩ é uma escolha comum para começar. O valor pode mudar conforme o LDR, a iluminação e a sensibilidade desejada.
O LDR detecta presença?
O LDR detecta variação de luz. Ele pode perceber sombra ou bloqueio de feixe, mas para presença/movimento o sensor PIR costuma ser mais adequado.
Posso usar LDR com ESP32?
Sim. O ESP32 possui entradas analógicas, mas trabalha com 3,3V. Monte o divisor de tensão respeitando os limites da placa.

Quer montar uma luz automática com Arduino?

Ver Sensor LDR 5mm na Comecx Labs

Voltar para o blog