🚚 Envío GRATIS en compras sobre $30.000 | Retiro en Curauma, Valparaíso | 📞 +56 9 65214463
Módulo joystick analógico KY-023 con pines GND, 5V, VRx, VRy y SW para Arduino.
Sensores SKU: KY-023

Módulo Joystick para Arduino KY-023

Añade control multidireccional preciso a tus proyectos con el Módulo Joystick Analógico KY-023. Dos potenciómetros (ejes X e Y) y pulsador integrado (eje Z). Ideal para robots, drones, menús LCD y mandos de videojuegos.

$2.000
En stock
1
Ver Carrito
Envío a todo Chile con Chilexpress, Starken y Blue
Retiro gratis en Los Abetos 212, Curauma, Valparaíso
Envío GRATIS en compras sobre $30.000

Módulo Joystick Analógico KY-023 para Arduino y ESP32

Añade control multidireccional preciso a tus proyectos de electrónica con el Módulo Joystick Analógico KY-023. Equipado con dos potenciómetros de 10kΩ (ejes X e Y) y un pulsador integrado (eje Z), es el componente ideal para controlar brazos robóticos, navegar por menús en pantallas LCD o crear tus propios mandos de videojuegos.

¿Cómo Funciona el KY-023?

El módulo contiene dos potenciómetros de 10kΩ montados en ángulo de 90° que detectan el movimiento en los ejes X e Y. Al mover la palanca, la resistencia interna varía proporcionalmente, produciendo variaciones de voltaje entre 0V y el voltaje de alimentación. El ADC del microcontrolador convierte estas señales en valores de 0 a 1023 (resolución de 10 bits). En reposo, la posición central entrega aproximadamente 512 en ambos ejes.

Especificaciones Técnicas

  • Modelo: KY-023
  • Voltaje de operación: 3.3V a 5V DC
  • Salidas: 2 analógicas (ejes X, Y) + 1 digital (pulsador Z)
  • Resistencia de potenciómetros: 10 kΩ
  • Dimensiones: 34mm × 26mm × 32mm (aprox.)

Configuración de Pines

  • GND: Tierra (ground)
  • +5V (VCC): Alimentación (3.3V o 5V)
  • VRx: Salida analógica eje X → Pin A0
  • VRy: Salida analógica eje Y → Pin A1
  • SW: Pulsador digital → Pin digital con INPUT_PULLUP

Código de Ejemplo

const int VRX = A0;
const int VRY = A1;
const int SW  = 7;

void setup() {
  Serial.begin(9600);
  pinMode(SW, INPUT_PULLUP);
}

void loop() {
  int x = analogRead(VRX);  // 0-1023
  int y = analogRead(VRY);  // 0-1023
  int btn = digitalRead(SW); // LOW cuando se presiona

  Serial.print("X: "); Serial.print(x);
  Serial.print(" | Y: "); Serial.print(y);
  Serial.print(" | BTN: "); Serial.println(btn == LOW ? "PRESIONADO" : "libre");

  delay(200);
}

Aplicaciones

  • Control de brazos robóticos: Mapeo proporcional del movimiento a servomotores
  • Sistemas Pan/Tilt: Control de cámaras de vigilancia en dos ejes
  • Navegación de menús: Control de pantalla LCD I2C con selección por pulsador
  • Vehículos RC y drones: Transmisión de control via WiFi con ESP32
  • Retro gaming: Controles para juegos tipo Snake, Pong o Tetris en Arduino

Guías y proyectos con el joystick

Preguntas frecuentes

¿Cómo se lee en Arduino?
Los ejes X e Y entregan señal analógica (dos analogRead()) y el botón central es digital. En reposo lee ~512; los extremos son 0 y 1023.

¿Sirve para controlar servos?
Es su uso clásico: mapea el valor del eje al ángulo del servo con map() y tienes control proporcional de un brazo robótico o cámara pan-tilt.

¿Compatible con ESP32?
Sí — usa pines ADC1 (GPIO 32-39) si también usas WiFi.

💡 Combínalo con: un Arduino Uno y servos para tu primer brazo robótico.

Voltaje 3.3-5V
Ejes 2 analógicos (X, Y)
Pulsador
Escríbenos por WhatsApp