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

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

11. Ejemplos B谩sicos de Leds y Pulsadores

Lectura de Potenci贸metro con Arduino Uno en Tinkercad