#include <Servo.h>
Servo servoAleatorio;
Servo servoPot;
int pinPot = A0;
int pinServoAleatorio = 9;
int pinServoPot = 10;
unsigned long tiempoAnterior = 0;
unsigned long intervalo = 2000; // Tiempo entre movimientos aleatorios (ms)
void setup() {
servoAleatorio.attach(pinServoAleatorio);
servoPot.attach(pinServoPot);
Serial.begin(9600);
}
void loop() {
// Leer el valor del potenciómetro (0 a 1023) y mapearlo a 0-180 grados
int valorPot = analogRead(pinPot);
int anguloPot = map(valorPot, 0, 1023, 0, 180);
servoPot.write(anguloPot);
// Movimiento aleatorio cada cierto tiempo
unsigned long tiempoActual = millis();
if (tiempoActual - tiempoAnterior >= intervalo) {
tiempoAnterior = tiempoActual;
int anguloAleatorio = random(0, 181); // Ángulo aleatorio entre 0 y 180
servoAleatorio.write(anguloAleatorio);
// (opcional) imprimir ángulo en el monitor serial
Serial.print("Servo aleatorio a: ");
Serial.println(anguloAleatorio);
}
}
No hay comentarios.:
Publicar un comentario