Saludo Inicial

0:26

Aquí te dejo el código modificado. He agregado la rama else para que cuando el sensor esté en estado LOW se apaguen las LEDs y los servomotores se muevan a la posición retraída (0°):

Cpp


const int sensorPin = 13; // Pin del sensor de presencia
const int ledPins[] = {3, 4, 5}; // Pines de las luces LED
const int servoPins[] = {9, 10}; // Pines de los servomotores

#include 
Servo servo1;
Servo servo2;

void setup() {
  pinMode(sensorPin, INPUT);
  for (int i = 0; i < 3; i++) {
    pinMode(ledPins[i], OUTPUT);
  }
  servo1.attach(servoPins[0]);
  servo2.attach(servoPins[1]);
}

void loop() {
  int sensorValue = digitalRead(sensorPin);
  if (sensorValue == HIGH) {
    // Encender LEDs y mover servomotores a la posición extendida
    for (int i = 0; i < 3; i++) {
      digitalWrite(ledPins[i], HIGH);
    }
    servo1.write(180);
    servo2.write(180);
    delay(30000); // Mantener por 30 segundos
  } else { // sensorValue es LOW
    // Apagar LEDs y mover servomotores a la posición retraída
    for (int i = 0; i < 3; i++) {
      digitalWrite(ledPins[i], LOW);
    }
    servo1.write(0);
    servo2.write(0);
    delay(30000); // Mantener por 30 segundos o ajustar el delay deseado
  }
}
Puedes copiar este código y probarlo en tu proyecto. ¿Necesitas realizar algún otro ajuste o explicación sobre algún detalle del código?
Reduce delay
Gradual servo motion
Añadir serial monitor
Eliminate delay
Ready to work

Documents

    Documents are markdown text files which describe project goals, capture details, or even simulation outputs.

    Assets

    No assets added.

    Northern Maroon Flux Capacitor

    Northern Maroon Flux Capacitor thumbnail
    Welcome to your new project. Imagine what you can build here.

    Properties

    Properties describe core aspects of the project.

    Pricing & Availability

    Distributor

    Qty 1

    Controls