PA 14 00 Servomotor.



PA 14 00 Servomotor potenciómetro. 

#include <Servo.h> // Librería para el servomotor

Servo miServo; // Crear objeto Servo
int pinPot = A0; // Pin del potenciómetro
int pinServo = 9; // Pin del servomotor

void setup() {
    miServo.attach(pinServo); // Conectar el servo al pin 9
}

void loop() {
    int valorPot = analogRead(pinPot); // Leer el potenciómetro (0-1023)
    int angulo = map(valorPot, 0, 1023, 0, 180); // Convertir a 0-180 grados
    miServo.write(angulo); // Mover el servo
    delay(50); // Pequeño retardo para estabilidad
}

PA 14 01 Servomotor joystick.

#include <Servo.h> // Librería para el servomotor

Servo miServo; // Crear objeto Servo
int pinJoystickX = A0; // Pin del eje X del joystick
int pinServo = 9; // Pin del servomotor

void setup() {
    miServo.attach(pinServo); // Conectar el servo al pin 9
}

void loop() {
    int valorJoystick = analogRead(pinJoystickX); // Leer joystick (0-1023)
    int angulo = map(valorJoystick, 0, 1023, 0, 180); // Convertir a 0-180 grados
    miServo.write(angulo); // Mover el servo
    delay(15); // Pequeño retardo para estabilidad
}

PA 14 02 Servomotor joystick guarda posición. 

#include <Servo.h> // Librería para el servomotor

Servo miServo; // Crear objeto Servo
int pinJoystickX = A0; // Pin del eje X del joystick
int pinServo = 9; // Pin del servomotor
int angulo = 90; // Ángulo inicial en el centro

void setup() {
    miServo.attach(pinServo); // Conectar el servo al pin 9
    miServo.write(angulo); // Iniciar en el centro
}

void loop() {
    int valorJoystick = analogRead(pinJoystickX); // Leer joystick (0-1023)

    // Definir umbrales para considerar el joystick "centrado"
    int centro = 512; // Valor medio
    int margen = 50;  // Margen para evitar movimientos no deseados

    if (valorJoystick > centro + margen) { // Mover a la derecha
        angulo = constrain(angulo + 2, 0, 180);
    }
    else if (valorJoystick < centro - margen) { // Mover a la izquierda
        angulo = constrain(angulo - 2, 0, 180);
    }
   
    miServo.write(angulo); // Mover el servo a la nueva posición
    delay(20); // Pequeño retardo para estabilidad
}