ARDUINO: la caja egoísta
Nuestras mini ingenieras Mae y Estrella han construido y programado una caja egoísta para que nadie se acerque a sus caramelos…
En este proyecto han aprendido a programar muchos componentes de Arduino ¿qué os parece? son unas super programadoras!!
Mirar cómo nos lo enseñan ellas mismas:
También os compartimos el código de este proyecto por si alguien está interesado en realizarlo.
/*
* La caja egoísta 1.0
*
* RGG 2019
*
* 1 Zumbador
* 1 Sensor de infrarrojos
* 1 Servo
*
* Incialmente la caja esta abierta
* Si se mete la mano la caja se cierra
* y emite un sonido
*/
// incluimos la librería Servo
#include <Servo.h>
//Creamos un objeto Servo
Servo myServo;
//Indicamos el pin donde está conectado el Zumbador
const int pinZum = 9;
//Indicamos el pin donde está conectado el sensor de Infrarrojos
const int pinSI = 3;
//Indicamos el pin donde está conectado el Servo (señal PWM)
const int pinServo = 11;
//Iniciamos el servo en el valor 90 (Centrado)
int valorServo = 90;
void setup() {
//Indicamos los pines de Salida
pinMode(pinZum, OUTPUT);
//Indicamos los pines de Entrada
pinMode(pinSI, INPUT);
//Indicamos al objeto servo a qué pin está conectado
myServo.attach(pinServo);
//Movemos el servo a su posición
myServo.write(valorServo);
//Abrimos una conexión serie con el PC
Serial.begin(9600);
}
void caja_celebrando() {
//Al cerrarse la caja, lo celebra con un sonido 'terrorífico'
tone(pinZum,100,30);
delay(30);
tone(pinZum,180,80);
delay(80);
tone(pinZum,200,200);
delay(200);
}
void loop() {
// put your main code here, to run repeatedly:
if (digitalRead(pinSI) == 1) {
Serial.println("Detector a 1 no hay objeto, caja abierta");
myServo.write(90);
delay(500);
}else {
Serial.println("Detector a cero hay un objeto");
myServo.write(0);
Serial.println ("Cerramos caja");
caja_celebrando();
}
}