Mi Arduino

Menu
  • Inicio
  • Categorías
    • Características de los Arduinos
    • General
    • Programación para Arduinos
    • Tutoriales de uso de los Arduinos
  • Legales y Contacto
    • Política de Privacidad y Condiciones de Uso
    • Contacto
    • Política de Cookies
    • Acerca de Nosotros
Home
Tutoriales
Leds, PWM, Arduino: Potenciómetro, Código y Control
Tutoriales

Leds, PWM, Arduino: Potenciómetro, Código y Control

Desiree K. Aguero 18 de junio de 2025

El mundo de la electrónica y la programación es vasto y emocionante, lleno de posibilidades creativas. Uno de los proyectos más básicos pero reveladores para principiantes es controlar un LED utilizando un poténciometro. Este sencillo experimento ilustra conceptos fundamentales como la conversión analógica a digital, la variación de la intensidad lumínica y la interacción entre componentes electrónicos a través de codigo arduino potenciometro. La belleza de este proyecto reside en su simplicidad: con unos pocos componentes y un poco de programación, puedes transformar un LED estático en una fuente de luz dinámica controlada por la rotación de un potenciometro para led. Esta pequeña pieza de hardware, a menudo subestimada, es una puerta de entrada a la comprensión de la electrónica interactiva y la programación en tiempo real.

Este artículo tiene como objetivo desglosar exhaustivamente este proyecto, desde los fundamentos teóricos hasta la implementación práctica y la resolución de posibles problemas. Nos sumergiremos en el funcionamiento interno de un poténciometro, exploraremos cómo se convierte su señal analógica en un valor digital que el Arduino puede entender, y aprenderemos a utilizar ese valor para controlar la intensidad de un led con potenciometro arduino. A lo largo del artículo, proporcionaremos ejemplos de codigo arduino potenciometro detallados y explicaciones paso a seguir para que incluso aquellos con poca experiencia puedan replicar el proyecto y expandir sus conocimientos. También abordaremos temas como la calibración, la optimización y las alternativas para personalizar tu experiencia, permitiéndote convertir este proyecto básico en una plataforma para explorar ideas más complejas de secuencia de leds con potenciometro arduino.

índice de Contenidos

Toggle
  • ¿Qué es un Potenciómetro y Cómo Funciona?
  • Conexión del Potenciómetro al Arduino
  • El Código Arduino: Lectura y Uso del Valor del Potenciómetro
  • Controlando el LED con PWM y el Valor del Potenciómetro
  • Depuración y Solución de Problemas

¿Qué es un Potenciómetro y Cómo Funciona?

Un potenciómetro, también conocido como potenciómetro variable, es una resistencia variable de tres terminales. Su función principal es proporcionar una resistencia que puede ajustarse manualmente. Imagina un divisor de corriente: un potenciómetro esencialmente es uno. Tiene dos puntos fijos, que son las terminales exteriores, y un punto móvil, que es el cursor o limpiador. Al rotar el cursor, cambias la resistencia entre este cursor y uno de los dos puntos fiores, lo que a su vez varía el voltaje de salida.

La resistencia total del potenciómetro se conoce como la resistencia nominal (R). El voltaje de entrada se aplica entre dos terminales, mientras que la salida se toma entre la tercera terminal y una de las dos primeras. El voltaje de salida varía linealmente con la posición del cursor. Por ejemplo, si tienes un potenciómetrico de 10kΩ y aplicas un voltaje de 5V entre sus extremos, el voltaje de salida variará de 0V a 5V a medida que el cursor se desplaza de un extremo al otro.

En el contexto del potenciometro arduino, este voltaje variable se lee como una señal analógica. El Arduino tiene pines analógicos que pueden leer voltajes entre 0V y 5V (o 3.3V, dependiendo de la placa). Cuanto más voltaje lea el Arduino desde el potenciómetro, mayor será el valor analógico que recibirá. Este valor analógico luego se puede usar para controlar algo, como la intensidad de un LED. Es importante recordar que la resistencia del potenciometro arduino es variable, y su valor afecta directamente el rango de voltajes que se pueden leer.

Para entender mejor el funcionamiento, considera un potenciómetro de 10kΩ conectado a una fuente de 5V. Si el cursor está en la posición inicial, la resistencia entre la terminal de salida y uno de los puntos fijos es de 0kΩ, por lo que el voltaje de salida será ce

Un potenciómetro, también conocido como potenciómetro variable, es una resistencia variable de tres terminales. Su función principal es proporcionar una resistencia que puede ajustarse manualmente. Imagina un divisor de corriente: un potenciómetro esencialmente es uno. Tiene dos puntos fijos, que son las terminales exteriores, y un punto móvil, que es el cursor o limpiador. Al rotar el cursor, cambias la resistencia entre este cursor y uno de los dos puntos fiores, lo que a su vez varía el voltaje de salida.

Te recomendamos también Interrupcion Arduino: attachInterrupt, Timer y pines INTInterrupcion Arduino: attachInterrupt, Timer y pines INT

La resistencia total del potenciómetro se conoce como la resistencia nominal (R). El voltaje de entrada se aplica entre dos terminales, mientras que la salida se toma entre la tercera terminal y una de las dos primeras. El voltaje de salida varía linealmente con la posición del cursor. Por ejemplo, si tienes un potenciómetrico de 10kΩ y aplicas un voltaje de 5V entre sus extremos, el voltaje de salida variará de 0V a 5V a medida que el cursor se desplaza de un extremo al otro.

En el contexto del potenciometro arduino, este voltaje variable se lee como una señal analógica. El Arduino tiene pines analógicos que pueden leer voltajes entre 0V y 5V (o 3.3V, dependiendo de la placa). Cuanto más voltaje lea el Arduino desde el potenciómetro, mayor será el valor analógico que recibirá. Este valor analógico luego se puede usar para controlar algo, como la intensidad de un LED. Es importante recordar que la resistencia del potenciometro arduino es variable, y su valor afecta directamente el rango de voltajes que se pueden leer.

Para entender mejor el funcionamiento, considera un potenciómetro de 10kΩ conectado a una fuente de 5V. Si el cursor está en la posición inicial, la resistencia entre la terminal de salida y uno de los puntos fijos es de 0kΩ, por lo que el voltaje de salida será cercano a 0V. A medida que giras el potenciómetro, la resistencia aumenta linealmente hasta que alcanza la resistencia total de 10kΩ, momento en el que el voltaje de salida es de 5V. Esta relación directa entre el giro del potenciómetro y el voltaje de salida es lo que hace que sea tan útil para controlar una amplia gama de dispositivos electrónicos.

Conexión del Potenciómetro al Arduino

La conexión física del potenciómetro al Arduino es crucial para el correcto funcionamiento del proyecto. El potenciómetro tiene tres pines: dos pines para la resistencia total y un tercer pin que actúa como un cursor o limpiador. Este último es el que proporciona la señal variable que se leerá como voltaje analógico.

Para conectar el potenciómetro, el primer pin se conecta a 5V (o 3.3V, dependiendo de la placa Arduino que uses). El segundo pin se conecta a la tierra (GND). El tercer pin, el pin del cursor, se conecta a un pin analógico de Arduino. Los pines analógicos en Arduino se identifican con la letra «A» seguida de un número (A0, A1, A2, etc.). Por ejemplo, para el proyecto de secuencia de leds con potenciometro arduino, podrías conectar el pin del cursor a A0.

Es fundamental asegurarse de que las conexiones sean correctas. Una conexión incorrecta puede resultar en lecturas erráticas o, incluso, dañar el potenciómetro o la placa Arduino. Verifica cuidadosamente la polaridad de cada conexión antes de aplicar energía. Recuerda que el potenciometro arduino debe estar conectado correctamente para obtener lecturas precisas.

Una vez que el potenciómetro está conectado, puedes usar la función analogRead() en el Arduino IDE para leer el valor analógico del pin conectado. La función analogRead() devuelve un valor entre 0 y 1023, que corresponde a un voltaje entre 0V y 5V (o 3.3V). Este valor se puede usar para controlar la intensidad de un LED. La precisión de la lectura depende de la calidad del potenciómetro y de la resolución de los pines analógicos del Arduino.

Te recomendamos también Interrupcion Arduino: attachInterrupt, Timer y pines INTInterrupcion Arduino: attachInterrupt, Timer y pines INT
Te recomendamos también Arduino desde cero con Arduino IDE manual: MultitareasArduino desde cero con Arduino IDE manual: Multitareas

El Código Arduino: Lectura y Uso del Valor del Potenciómetro

Ahora que el potenciómetro está conectado y el hardware está listo, es hora de escribir el codigo arduino potenciometro que leerá el valor del potenciómtero y lo utilizará para controlar la intensidad del LED. El código será relativamente sencillo, pero comprender cada parte es esencial.

«`arduino
const int ledPin = 9; // Pin digital conectado al LED
const int potPin = A0; // Pin analógico conectado al potenciómetro

void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600); // Inicia la comunicación serial para depuración
}

void loop() {
int val = analogRead(potPine); // Lee el valor analógico del potenciómetro
Serial.print(«Valor del potenciómetro: «);
Serial.println(val);

// Mapea el valor del potenciómetro (0-1023) a un rango de PWM (0-255)
int ledBrightness = map(val, 0, 1023, 0, 255);

// Establece la intensidad del LED usando PWM
analogWrite(ledPin, ledBrightness);

delay(10); // Pequeña demora para estabilizar la lectura
}
«`

Te recomendamos también Interrupcion Arduino: attachInterrupt, Timer y pines INTInterrupcion Arduino: attachInterrupt, Timer y pines INT
Te recomendamos también Arduino desde cero con Arduino IDE manual: MultitareasArduino desde cero con Arduino IDE manual: Multitareas
Te recomendamos también Advanced Arduino: Reprogramando el Bootloader de UNOAdvanced Arduino: Reprogramando el Bootloader de UNO

En este código, ledPin se define como el pin digital que controlará el LED. potPin define el pin analógico al que está conectado el potenciómetro. La función setup() configura el pin del LED como salida e inicia la comunicación serial para mostrar el valor leído del potenciómetro. La función loop() lee continuamente el valor analógico del potenciómetro usando analogRead(). La función map() se utiliza para convertir el valor leído del potencímetro (que está entre 0 y 1023) a un rango de 0 a 255, que es el rango de valores que puede aceptar la función analogWrite(). Finalmente, analogWrite() establece la intensidad del LED según el valor mapeado.

La función analogWrite() se utiliza para generar una señal PWM (Pulse Width Modulation) en el pin del LED. La señal PWM varía la anchura de los pulsos de señal, lo que permite controlar la intensidad de la luz emitida por el LED. Al variar el valor PWM, se varía la cantidad de tiempo que el LED está encendido, lo que afecta directamente la apariencia de la intensidad de la luz.

La función Serial.print() y Serial.println() se utilizan para enviar los valores del potenciómetro al monitor serial. Esto te permite verificar que el código está funcionando correctamente y depurar cualquier problema que pueda surgir.

Controlando el LED con PWM y el Valor del Potenciómetro

Para controlar la intensidad del LED, es necesario utilizar la señal PWM. La función analogWrite() es la encargada de generar esta señal. Esta función toma dos argumentos: el pin donde se debe generar la señal PWM y el valor PWM, que debe estar entre 0 y 255. Un valor de 0 apaga el LED, mientras que un valor de 255 lo enciende con la máxima intensidad.

El valor leído del potenciómetro, que está entre 0 y 1023, no puede ser directamente utilizado como valor PWM, ya que está fuera del rango permitido por la función analogWrite(). Por lo tanto, es necesario escalar el valor leído del potenciómetro al rango de la señal PWM utilizando la función map(). La función map() toma cuatro argumentos: el valor de entrada, el rango de entrada, el rango de salida y el valor a mapear.

En el código anterior, la función map() es utilizada para mapear el valor leído del potenciómetro (0-1023) al rango de PWM (0-255). El resultado de esta función se almacena en la variable ledBrightness, que luego es pasada a la función analogWrite() para controlar la intensidad del LED. Esta técnica de PWM permite controlar la intensidad de un LED de forma precisa y gradual, lo que la hace ideal para aplicaciones donde se requiere un control sofisticado de la iluminación.

Depuración y Solución de Problemas

A veces, el código puede no funcionar como se espera. La depuración y la solución de problemas son habilidades esenciales para cualquier programador. En el caso del proyecto de potenciometro arduino, hay algunas cosas a tener en cuenta si algo sale mal.

Te recomendamos también Interrupcion Arduino: attachInterrupt, Timer y pines INTInterrupcion Arduino: attachInterrupt, Timer y pines INT
Te recomendamos también Arduino desde cero con Arduino IDE manual: MultitareasArduino desde cero con Arduino IDE manual: Multitareas
Te recomendamos también Advanced Arduino: Reprogramando el Bootloader de UNOAdvanced Arduino: Reprogramando el Bootloader de UNO
Te recomendamos también Control Arduino: Sistema Temperatura para ArduinoControl Arduino: Sistema Temperatura para Arduino
  • Verifica las conexiones: Asegúrate de que el potenciómetro esté conectado correctamente al Arduino. Una conexión incorrecta puede resultar en lecturas erráticas o en que el código no funcione.
  • Revisa el código: Asegúrate de que el código esté escrito correctamente, sin errores de sintaxis o lógicos.
  • Utiliza la comunicación serial: La comunicación serial es una herramienta poderosa para la depuración. Utiliza Serial.print() y Serial.println() para mostrar los valores de las variables y verificar que el código esté funcionando correctamente.
  • Comprueba el rango de valores: Verifica que el rango de valores que se están utilizando sea correcto. Si el valor leído del potenciómetro está fuera del rango permitido, el código puede no funcionar correctamente.
  • Prueba con un potenciómetro diferente: Si aún tienes problemas, prueba con un potenciómetro diferente para descartar la posibilidad de que el potenciómetro esté defectuoso.

Si sigues estos pasos, podrás identificar y corregir la mayoría de los problemas que puedan surgir al trabajar con el potenciómetro y el Arduino. La persistencia y la atención al detalle son clave para el éxito en la resolución de problemas de programación. Recuerda siempre verificar cada paso del proceso para asegurar que todo funcione como se espera.

El proyecto de control de un LED con un potenciómetro es una excelente manera de aprender sobre la interacción entre hardware y software en Arduino. Al comprender cada paso del proceso, desde la conexión física hasta el código Arduino, podrás desarrollar proyectos más complejos y creativos en el futuro.

Share
Tweet
Email
Prev Article

Related Articles

Arduino desde cero con Arduino IDE manual: Multitareas
El mundo de la informática ha experimentado una profunda evolución …

Arduino desde cero con Arduino IDE manual: Multitareas

Advanced Arduino: Reprogramando el Bootloader de UNO
El mundo del Arduino, a menudo asociado con proyectos sencillos …

Advanced Arduino: Reprogramando el Bootloader de UNO

About The Author

Desiree K. Aguero

¡Hola! Soy Desiree Aguero, estudiante de Ingeniería y apasionada del mundo de la tecnología. En este blog, comparto mi amor por Arduino y la electrónica, explorando proyectos innovadores y soluciones creativas. Mi objetivo es hacer que la tecnología sea accesible para todos, proporcionando tutoriales detallados y recursos útiles. Únete a mí en este emocionante viaje de aprendizaje y descubrimiento. ¡Juntos, haremos grandes cosas con Arduino!

Leave a Reply

Lo siento, debes estar conectado para publicar un comentario.

Mi Arduino

Todo Referente a los Arduinos
Copyright © 2026 Mi Arduino
Todos Los Derechos Reservados
Gestionar consentimiento
Para ofrecer las mejores experiencias, utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. El consentimiento de estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que se utiliza exclusivamente con fines estadísticos anónimos. Sin un requerimiento, el cumplimiento voluntario por parte de tu proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarte.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares.
  • Administrar opciones
  • Gestionar los servicios
  • Gestionar {vendor_count} proveedores
  • Leer más sobre estos propósitos
Ver preferencias
  • {title}
  • {title}
  • {title}