← Todas las entradas Entrada de blog

Cómo leer un potenciómetro con Arduino (valor bruto y porcentaje)

Viktoria Builds

Conecta un potenciómetro a un Arduino y lee sus valores por el monitor serie, con una versión adicional que muestra el porcentaje.

Ver en YouTube

Leer un potenciómetro con Arduino es una de las primeras cosas que vale la pena aprender. Son tres cables, unas pocas líneas de código, y obtienes una entrada variable que puedes usar para casi cualquier cosa: control de velocidad, brillo, desplazamiento, lo que sea.

Componentes

  • Arduino (cualquier modelo)
  • Potenciómetro de 10 kΩ
  • Cables dupont

Cómo funciona un potenciómetro

Un potenciómetro es una resistencia variable con tres pines. Los dos pines exteriores se conectan a alimentación y masa. El pin central — el cursor — se desliza a lo largo de una pista resistiva, de modo que al girar el mando se obtiene un voltaje entre 0 y 5 voltios. Ese voltaje es lo que lee el Arduino.

Conexiones

Conectar el pin exterior izquierdo a 5V, el pin exterior derecho a GND, y el pin central del cursor a A0 en el Arduino. Cualquier pin de entrada analógica sirve — A0 es solo una opción habitual. Eso es todo el circuito.

Leer valores brutos

La función analogRead() devuelve un valor entre 0 y 1023, correspondiente a 0–5V. Subir el sketch de abajo, abrir el monitor serie a 9600 baudios y girar el mando — el número cambia en tiempo real.

void setup() {
  Serial.begin(9600);
}

void loop() {
  int value = analogRead(A0);
  Serial.println(value);
  delay(100);
}

Convertir a porcentaje

Los números brutos entre 0 y 1023 no siempre son los más legibles. La función map() permite convertirlos a cualquier rango. Aquí una versión que muestra de 0 a 100%, mucho más fácil de leer de un vistazo:

void setup() {
  Serial.begin(9600);
}

void loop() {
  int value = analogRead(A0);
  int percent = map(value, 0, 1023, 0, 100);
  Serial.print(percent);
  Serial.println("%");
  delay(100);
}

Para qué puedes usarlo

Con una entrada analógica variable puedes controlar casi cualquier cosa: brillo de un LED con PWM, velocidad de un motor con un puente H, posición de un servo, o incluso navegar por un menú. Es un componente simple que aparece en todas partes.

El código completo está en mi web. Si construyes algo con esto, compártelo en el Discord — me gustaría ver qué hace la gente.

¿Te ha gustado este tutorial?

Apoya el canal en Patreon y obtén acceso anticipado a proyectos, build logs y mucho más.

Apoyar en Patreon →