En esta práctica, utilizarás un serovomotor con las librerías de arduino.
Conecta los componentes según el esquema de conexiones siguiente:
Código:
#include <Servo.h>
Servo myServo;
const int switchPin = 13;
const int greenLED = 10;
const int redLED = 8;
const int buzzerPin = 7;
int switchVal;
boolean locked = false;
void setup() {
myServo.attach(9);
pinMode(greenLED, OUTPUT); // Configura el pin del LED como salida
pinMode(redLED, OUTPUT); // Configura el pin del LED como salida
pinMode(switchPin, INPUT); // Configura el pin del Switch como entrada
pinMode(buzzerPin, OUTPUT); // Configura el pin del buzzer como salida
Serial.begin(9600);
digitalWrite(redLED, HIGH);
myServo.write(0);
Serial.println("The box is locked!");
}
void loop() {
switchVal = digitalRead(switchPin);
if (switchVal == HIGH) {
if (locked) {
locked = false;
digitalWrite(greenLED, LOW);
digitalWrite(redLED, HIGH);
myServo.write(0);
Serial.println("The box is locked!");
} else {
locked = true;
digitalWrite(greenLED, HIGH);
digitalWrite(redLED, LOW);
myServo.write(90);
digitalWrite(buzzerPin, HIGH); // Activa el buzzer cuando se desbloquea la caja
Serial.println("The box is unlocked!");
}
delay(1000); // Espera para evitar rebotes
} else {
digitalWrite(buzzerPin, LOW); // Asegúrate de que el buzzer esté apagado si la caja está cerrada
}
}