La construcción Módulo de joystick KY-023 es un palanca de mando analógica similar a los que se usan en los controladores de juegos. Tiene Dos potenciómetros (ejes X e Y) y un interruptor pulsadorEste módulo se utiliza comúnmente con Arduino, Raspberry Pi y otros microcontroladores Para aplicaciones de control de movimiento, robótica y juegos.
🔹 1. Módulo de joystick KY-023 Pinout
La construcción Módulo KY-023 tiene 5 pins:

| Pin | Etiqueta | Función |
|---|---|---|
| VCC | Energía | Se conecta a 5V (o 3.3V) |
| GND | Polo a Tierra | Tierra común para el circuito |
| VRX | Eje X | Produce un Señal analoga (0-1023 en Arduino) |
| LIBRE | Eje Y | Produce un Señal analoga (0-1023 en Arduino) |
| SW | Interruptor | Resultados BAJO (0 V) cuando se presiona, ALTO (5 V) cuando se suelta |
📌 Nota:
- VRX y VRY es salidas analógicas y debe estar conectado a entrada analogica pina (A0, A1, etc.) en un Arduino.
- SW es un salida digital y se puede conectar a cualquier entrada digital pin.
🔹 2. Cómo funciona el joystick KY-023
✅ Eje X e Y (salida analógica)
- Dentro del joystick se encuentran dos potenciómetros, uno para cada eje.
- Moviendo el joystick izquierda derecha or arriba abajo cambia la resistencia, generando una voltaje analógico.
| Posición | Valor VRX | Valor VRY |
|---|---|---|
| Central | ~ 512 | ~ 512 |
| Izquierdo | 0 | ~ 512 |
| Derecho | 1023 | ~ 512 |
| Up | ~ 512 | 0 |
| Plumón | ~ 512 | 1023 |
✅ Pulsador (Salida Digital)
- Presionando el joystick cierra el interruptor (
SWpin). - Se lee BAJO (0 V) Cuando se presiona y ALTA (5 V) cuando lanzado.
🔹 3. Conectando el KY-023 a Arduino
🛠 Componentes necesarios
- 1x placa Arduino (Uno, Mega, Nano, etc.)
- 1x Módulo de joystick KY-023
- cables de puente
Diagrama de cableado
| KY-023 Pin | Arduino Pin |
|---|---|
| VCC | 5V |
| GND | GND |
| VRX | A0 |
| LIBRE | A1 |
| SW | D2 |
🔹 4. Código Arduino para leer valores del joystick
Este código dice Valores de los ejes X e Y y detecta pulsaciones de botones, mostrando los datos en el Monitor Serial.
#define VRX_PIN A0 // X-axis
#define VRY_PIN A1 // Y-axis
#define SW_PIN 2 // Switch button
void setup() {
Serial.begin(9600); // Start Serial Monitor
pinMode(SW_PIN, INPUT_PULLUP); // Enable internal pull-up resistor
}
void loop() {
int xValue = analogRead(VRX_PIN); // Read X-axis
int yValue = analogRead(VRY_PIN); // Read Y-axis
int buttonState = digitalRead(SW_PIN); // Read button state
Serial.print("X: "); Serial.print(xValue);
Serial.print(" | Y: "); Serial.print(yValue);
Serial.print(" | Button: "); Serial.println(buttonState == LOW ? "Pressed" : "Released");
delay(100); // Small delay to avoid spamming Serial Monitor
}
📌 Explicación:
- Lee VRX y VRY como valores analógicos (0-1023).
- Lee SW como entrada digital (BAJO cuando se presiona).
- Muestra valores en Monitor en serie.
🔹 5. Uso del KY-023 como controlador de juegos simple
Puedes usar el joystick para controlar un servo, un LED o incluso un robot.
Ejemplo: mover un servo con joystick
#include <Servo.h>
Servo myServo;
#define VRX_PIN A0 // X-axis for servo control
void setup() {
myServo.attach(9); // Servo on pin 9
}
void loop() {
int xValue = analogRead(VRX_PIN); // Read joystick X-axis
int servoAngle = map(xValue, 0, 1023, 0, 180); // Convert to servo angle
myServo.write(servoAngle); // Move servo
delay(10);
}
🔹 6. Aplicaciones del joystick KY-023
✅ Robótica – Controlar robots mediante gestos con las manos.
✅ Dispositivos de juego – Joystick DIY para juegos.
✅ Control de movimiento horizontal y vertical de la cámara – Mueva los servos para un Gimbal de cámara.
✅ Vehículos de control remoto - control motores y direccion.
🔹 7. Consejos para solucionar problemas
- Si los valores saltar al azarverificar conexiones sueltas.
- Si El botón no funciona, Trate de usando INPUT_PULLUP in
pinMode(SW_PIN, INPUT_PULLUP);. - If Los valores X o Y están bloqueados, comprobar si el joystick vuelve al centro.
🎯 Cierre
La construcción Módulo de joystick KY-023 es un dispositivo de entrada versátil que funciona con Arduino, Raspberry Pi y otros microcontroladores. Proporciona control de movimiento analógico y botón incorporado, haciéndolo perfecto para Robótica, juegos y proyectos interactivos.