Curso Fundamentos de Desarrollo de Hardware con Arduino

Uso del Potenciómetro para Control de LED con Arduino

Curso Fundamentos de Desarrollo de Hardware con Arduino

Contenido del curso

Introducción al hardware libre

Manos a la obra

Uso del Potenciómetro para Control de LED 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.