🌞 P05 - Lectura de LDR y visualización en Monitor Serie

ℹ️ Empieza aquí:

Hasta ahora has controlado LEDs y pulsadores. En esta práctica aprenderás a leer un sensor de luz (LDR) mediante entradas analógicas de Arduino, y a mostrar sus valores en el Monitor Serie para interpretar la intensidad lumínica.
Esto introduce el concepto de sensores analógicos, conversión de rangos y visualización de datos para depuración y análisis.


🚀 Objetivos

 Leer valores analógicos de un LDR.
 Convertir valores analógicos a un rango comprensible (0–100%).
 Visualizar datos en el Monitor Serie en tiempo real.
 Aplicar conceptos de entrada analógica y mapeo de rangos.
 Preparar la base para controlar LEDs o actuadores según la luz ambiente.


🧩 Contenidos trabajados

 Lectura de entradas analógicas (analogRead).
 Uso de map() para escalado de valores.
 Monitor Serie (Serial.begin, Serial.println).
 Temporización no bloqueante con millis().
 Interpretación de datos de sensores.


💻 Materiales y recursos

 Arduino UNO.
 Protoboard.
 1 LDR.
 1 resistencia de 10 kΩ.
 Cables Dupont.
 Ordenador con Arduino IDE.


🔧 Montaje práctico

1. Coloca el LDR en la protoboard.
2. Conecta un extremo del LDR a 5V, el otro extremo al pin analógico A0 y a través de una resistencia de 10 kΩ a GND (configuración de divisor de tensión).
3. Verifica que la conexión es firme y que el pin A0 recibe el voltaje variable según la luz incidente.


🧭 Desarrollo de la práctica

Paso 1: Crear el proyecto

1. Abrir Arduino IDE.
2. Archivo → Nuevo.
3. Guardar como: P05_LDR_MonitorSerie_ApellidoNombre


Paso 2: Configurar el Monitor Serie

void setup() {  
  Serial.begin(9600); // inicializa comunicación serie  
}  

Paso 3: Leer el valor del LDR y mapearlo

void loop() {  
  int valorLDR = analogRead(A0); // lectura analógica (0–1023)  
  int porcentajeLuz = map(valorLDR, 0, 1023, 0, 100); // mapeo a 0–100%  

  Serial.print("Valor crudo: ");  
  Serial.print(valorLDR);  
  Serial.print(" | Porcentaje: ");  
  Serial.print(porcentajeLuz);  
  Serial.println("%");  

  delay(200); // actualizar cada 200 ms  
}  

✅ Comprobación de funcionamiento

  • Abrir el Monitor Serie en Arduino IDE.
  • Observar cómo los valores cambian al variar la luz sobre el LDR.
  • Los valores deben oscilar entre 0 (oscuridad) y 1023 (luz intensa), y el porcentaje entre 0% y 100%.

📦 Entrega

 Archivo .ino comentado y funcional.
 Captura de pantalla del Monitor Serie mostrando los valores cambiantes.
 Breve explicación del mapeo de valores y uso del LDR como sensor de luz.


📊 Rúbrica de evaluación

Criterio Excelente (9–10) Adecuado (6–8) Insuficiente (≤5)
Montaje del LDR Correcto y estable Funciona parcialmente Incorrecto
Lectura analógica Valores correctos y consistentes Lecturas inestables No funciona
Mappeo de valores Porcentaje correcto y coherente Parcialmente correcto No implementado
Monitor Serie Datos claros y actualizados Parcialmente legible No utilizado
Código y comprensión Modular, comentado y entendible Funciona pero confuso No comprende

🎯 Para pensar (opcional)

¿Cómo podrías usar los valores de luz para controlar automáticamente la intensidad de un LED o activar un actuador según la iluminación ambiental?

Updated: