Uso del Potenciómetro para Control de LED con Arduino

Clase 24 de 38Curso Fundamentos de Desarrollo de Hardware con Arduino

Resumen

Controla un LED con precisión y sin complicaciones: aquí verás cómo un potenciómetro (resistencia variable) se conecta a Arduino para generar voltaje variable y leerlo por una entrada analógica. Con esa lectura, harás que el LED parpadee más rápido o más lento usando analogRead, digitalWrite y delay.

¿Qué es y cómo se conecta un potenciómetro en Arduino?

Un potenciómetro permite obtener una salida de voltaje variable desde el pin central, mientras los extremos van a 5 volts y GND. Ese voltaje se comporta igual que el de muchos sensores analógicos (temperatura, distancia), ideal para practicar entradas analógicas.

  • Extremo 1 a 5V desde la sección power de Arduino, cable rojo.
  • Extremo 2 a GND, cable oscuro (azul en el ejemplo).
  • Pin central a A0, cable amarillo.
  • Tip: asegúrate de buena conexión o podrías dañar el potenciómetro.

Además, conecta el LED al pin 3 y su parte negativa a GND. Así verás el efecto del valor analógico en el parpadeo.

¿Cómo cablear con protoboard sin errores?

  • Coloca el potenciómetro accesible en la protoboard.
  • Verifica continuidad de las líneas de 5V y GND.
  • Evita invertir extremos: positivo en un lado, negativo en el otro.

¿Cómo leer una entrada analógica y variar el parpadeo?

El objetivo es leer A0 y usar ese valor para cambiar el tiempo de delay. Así, el LED parpadea según la posición del potenciómetro.

  • Declara pines y variables: LED en pin 3, potenciómetro en A0, y una variable para el valor leído.
  • Configura el LED como salida en setup con pinMode.
  • Lee el potenciómetro en loop con analogRead y aplica el valor al delay.

Código base (Arduino/C++):

int ledRosa = 3; // LED en pin 3 int potPin = A0; // potenciómetro en A0 int potValue = 0; // valor leído void setup() { pinMode(ledRosa, OUTPUT); // salida digital } void loop() { potValue = analogRead(potPin); // lectura analógica (0–1023) digitalWrite(ledRosa, HIGH); // enciende LED delay(potValue); // tiempo variable digitalWrite(ledRosa, LOW); // apaga LED delay(potValue); // tiempo variable }
  • analogRead devuelve un entero entre 0 y 1023 (dependiendo de la posición del potenciómetro).
  • digitalWrite controla el estado del LED con HIGH y LOW.
  • delay recibe milisegundos: más valor, parpadeo más lento; menos valor, parpadeo más rápido.
  • Tip: al escribir código desde laptop, usar teclado en inglés facilita caracteres y sintaxis.

¿Qué pasos de verificación conviene seguir?

  • Compila y sube el sketch a la placa (el ejemplo reportó 3 % de uso de programa).
  • Ajusta el potenciómetro y observa el cambio de frecuencia del LED.
  • Si el parpadeo se vuelve imperceptible, es porque el delay es muy bajo.

¿Qué habilidades y conceptos prácticos se aplican en este proyecto?

Este ejercicio consolida varias habilidades de electrónica y programación con Arduino.

  • Identificación de un potenciómetro como resistencia variable de 10 kΩ.
  • Uso de entradas analógicas para leer voltaje variable desde A0.
  • Configuración de salidas digitales con pinMode y digitalWrite.
  • Manipulación de tiempos con delay según un valor dinámico.
  • Declaración y uso de variables: int ledRosa, int potPin, int potValue.
  • Estructura de programa con setup y loop.
  • Buenas prácticas de cableado en protoboard y prevención de fallos.

¿Te gustaría extenderlo con un monitoreo en tiempo real del valor leído en A0 usando el monitor serial? Comenta cómo quieres visualizar los datos y seguimos con la implementación.

      Uso del Potenciómetro para Control de LED con Arduino