En las fechas en las que nos encontramos, tal y como ya hicimos el año pasado, vamos a contar cómo realizar un montaje al alcance de cualquiera, para demostrar en nuestras clases, o nuestros hogares, que somos los más creativos en decoraciones navideñas.
Son muchos los montajes que podemos hacer con muy poco: con leds, botones, potenciómetros, servos, buzzers o sensores de ultrasonidos, son muchas las ideas que pueden surgir.
Por ejemplo, el año pasado vimos que con unos cuantos leds podemos convertir cualquier motivo navideño en algo animado y divertido. Podéis revisarlo de nuevo en el siguiente enlace: https://goo.gl/VJv2Kw
Para los más avanzados y atrevidos, también podéis encontrar proyectos más complejos en la página oficial de Arduino: https://goo.gl/6gwYtC
Este año, siguiendo con nuestra línea de realizar proyectos sencillos al alcance de cualquiera, vamos a realizar un montaje de un Papa Noel muy gracioso que va a saludar a todo el mundo que pasa frente a él a medida que va girando sobre sí mismo.
Por una parte, tenemos que descargarnos e imprimir en cartulina a poder ser el siguiente diseño que hemos encontrado en www.instructables.com, otra página de referencia para descubrir proyectos a realizar. Concretamente es el siguiente: https://goo.gl/MEzU1j
No tiene ningún misterio. Os aconsejamos montarlo todo y pegarlo con cola porque sino fácilmente estos montajes se deshacen al manipularse. Nosotros hemos hecho nuestra propia adaptación en la parte inferior donde vamos a acomodar un servo, que va a ser el componente que programamos para el movimiento del Papá Noel. A continuación podéis ver una serie de imágenes con Andrea recortando y montando el Papa Noel arduinero.
Una vez realizado el montaje, llega la hora del código. En esta ocasión es bien sencillo porque sólo tenemos 3 leds y un servo. Sería el siguiente:
/*
Colegio Juan de Lanuza
Navidades Arduinas 2017
Papa Noel móvil con luces
Andrea Lizar
1 ESO
¡Feliz Navidad!
ç
*/
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// twelve servo objects can be created on most boards
int pos = 0; // variable to store the servo position
void setup() {
myservo.attach(11); // attaches the servo on pin 9 to the servo object
pinMode(7, OUTPUT); // Config LED pins: Pin 7 -> Red LED
pinMode(6, OUTPUT); // Pin 6 -> Green LED
pinMode(5, OUTPUT); // Pin 5 -> Yellow LED
}
void loop() {
digitalWrite(7,HIGH); //turn-on Red LEDs
digitalWrite(6,LOW);
digitalWrite(5,LOW);
for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
// in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
digitalWrite(7,LOW);
digitalWrite(6,HIGH); //turn-on Green LEDs
digitalWrite(5,LOW);
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
digitalWrite(7,LOW);
digitalWrite(6,LOW);
digitalWrite(5,HIGH); //turn-on Yellow LEDs
delay(1500);
}
A continuación en el siguiente vídeo Andrea Lizar nos va a contar su propia experiencia realizando el montaje y explicando el código, que es más sencillo que nunca.
Os animamos a compartir vuestras creaciones en Twitter con el hashtag #navidadesarduinas
¡Feliz Navidad para todos amigos robóticos!