74. Calibrando los valores de una fotorresistencia gracias al ciclo While

 ¡Hola a todos! 馃憢

Continuamos practicando con el ciclo While y, para esta actividad, retomaremos un proyecto que creamos anteriormente: "LED reactivo a la luz".

¿Qu茅 ten铆amos en el proyecto anterior?

En el proyecto original, utilizamos una fotorresistencia para variar la intensidad de un LED seg煤n la luz captada. Sin embargo, hab铆a un problema: el LED no se apagaba completamente ni alcanzaba su m谩xima intensidad. 馃槙

Al simular el circuito, observamos que:

  • Al desplazar el slider hacia la derecha (menos luz), el LED no se apagaba del todo.

  • Al desplazarlo hacia la izquierda (m谩s luz), el LED no brillaba al m谩ximo.

Esto se deb铆a a que los valores le铆dos por la fotorresistencia no cubr铆an todo el rango esperado (0-1023). En su lugar, variaban entre 5 y 1020, aproximadamente.

La soluci贸n: Calibraci贸n con el ciclo While

Para resolver esto, implementamos un sistema de calibraci贸n en tiempo de ejecuci贸n usando un pulsador y el ciclo While. La idea es:

  1. Detectar los valores reales m铆nimos y m谩ximos de la fotorresistencia.

  2. Mapear estos valores al rango 0-255 para controlar correctamente el LED.

Paso a paso en el c贸digo

  1. Agregamos un pulsador al pin 10 y un LED indicador al pin 13.

  2. Declaramos variables globales para almacenar los valores m铆nimos y m谩ximos del sensor:

    cpp
    int sensorMin = 1023;
    int sensorMax = 0;
  3. Creamos la funci贸n calibrar() que:

    • Enciende el LED indicador.

    • Lee el valor de la fotorresistencia.

    • Actualiza sensorMin y sensorMax seg煤n los valores le铆dos.

  4. En el loop principal, usamos un ciclo While para ejecutar la calibraci贸n mientras se presiona el pulsador.

  5. Mapeamos los valores usando sensorMin y sensorMax en lugar de 0 y 1023.

Resultado final

Al presionar el pulsador y mover la fotorresistencia, el sistema calibra autom谩ticamente los valores m铆nimos y m谩ximos. As铆, el LED se apaga y enciende por completo, sin importar las variaciones en los componentes. 馃幆

Conclusi贸n

Gracias al ciclo While y un algoritmo sencillo, logramos que el circuito se adapte a las condiciones reales de la fotorresistencia. ¡Un paso m谩s hacia proyectos m谩s precisos y profesionales!

¿Te animas a probarlo? ¡D茅janos tus comentarios! 馃憞


¡Espero que este post sea 煤til! Si necesitas ajustes adicionales, h谩zmelo saber. 

Comentarios

Entradas m谩s populares de este blog

11. Ejemplos B谩sicos de Leds y Pulsadores

12. Demostracion de como usar Tinkercad para simular Arduino con circuitos

Lectura de Potenci贸metro con Arduino Uno en Tinkercad