A LDR (Light Dependent Resistor) é uma resistência fotossensível — a sua resistência decresce com o aumento de luminosidade. Em conjunto com uma resistência fixa, forma um divisor de tensão cujo Vout varia com a luz.
| Condição | Resistência LDR | Vout (LDR em baixo) |
|---|---|---|
| Escuridão total | 1 MΩ – 10 MΩ | ≈ 0V (quase tudo cai na LDR) |
| Luz normal de sala | 10 kΩ – 50 kΩ | ≈ 1–3 V |
| Luz solar directa | 1 kΩ – 5 kΩ | ≈ 4–5 V |
Fio 5V do header → linha 1 (VCC). Fio GND → linha 15 (GND).
Insere a LDR entre a linha VCC (linha 1) e uma linha intermédia (linha 7). A LDR não tem polaridade.
Insere entre linha 7 e linha GND. Esta é a resistência de pull-down.
Fio do nó intermédio (linha 7) ao pino A0 do header da protoshield.
Fio de D13 → resistência 220Ω → LED (ânodo) → GND. O LED acende quando está escuro.
#define LDR_PIN A0
#define LED_PIN 13
int LIMIAR = 500; // Ajusta após observar os valores
void setup() {
pinMode(LED_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
int luz = analogRead(LDR_PIN);
Serial.print("LDR: "); Serial.println(luz);
if (luz < LIMIAR) { // Escuro → liga LED
digitalWrite(LED_PIN, HIGH);
} else {
digitalWrite(LED_PIN, LOW);
}
delay(200);
}Abre o Monitor Série. Observa os valores com luz normal, com a LDR tapada e com luz directa. Regista o máximo e o mínimo.
O LIMIAR deve estar a meio entre os valores de 'escuro' e 'claro' para o teu ambiente. Edita o valor no código e re-carrega.
Tapa a LDR com a mão — o LED deve acender. Descobre-a — o LED deve apagar. Se não, ajusta o limiar.