Adornamos la casa para Halloween. Efecto llama en Arduino

adorno halloween con arduino

Hoy les traigo este sencillo proyecto, que simula el encendido de velas o de un fuego, podría servir por ejemplo para decorar la casa en Halloween, el material necesario para su realización es mínimo y muy fácil de conseguir:

  • Arduino Nano
  • 3 Leds
  • 3 Resistencias de 220 Ω
  • Protoboards pequeñas
  • Pila 9v
  • Botes vacíos de plástico transparente, yo usé unos de unas galletas.

En mi caso también he usado una cajita que diseñé para meter dentro el Arduino nano con la pila de 9V y su mininterruptor.

En cuanto al sketch, vamos a utilizar la función analogWrite(), para apagar y encender un LED. AnalogWrite utiliza la modulación de ancho de pulso (PWM), encendiendo y apagando un pin digital muy rápidamente con diferente proporción entre encendido y apagado, para crear un efecto de desvanecimiento. También usaremos la función random(), que nos devolverá un número aleatorio. 

Adornamos la casa para Halloween. Efecto llama en Arduino- Proyectos, Arduino
//Efecto fuego, con tres Leds, un rojo y dos amarillos
//www.tecnosalva.com

int ledPin1 = 10; //led amarillo
int ledPin2 = 9; //led rojo
int ledPin3 = 11;  //led amarillo

void setup()
{
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
}

void loop() {
analogWrite(ledPin1, random(125)+135);
analogWrite(ledPin2, random(105)+155);
analogWrite(ledPin3, random(125)+135);
delay(random(100));
}
Galería fotos proyecto

Diseñé esta cajita usando el programa FreeCad, y después la imprimí en la impresora3D. Como puedes observar es ideal para alojar dentro tu Arduino nano, y la pila de 9V. Al final del documento se adjunta el fichero stl.

Adornamos la casa para Halloween. Efecto llama en Arduino- Proyectos, Arduino

Este podría ser otro ejemplo para usar.

//Efecto fuego, con cuatro Leds, dos rojos y dos amarillos
//www.tecnosalva.com
int red1 = 6;    //Led rojo1  pin 6
int yel1 = 9;   //Led amarillo1 en pin 9
int red2 = 10;   //Led rojo2 en pin 10
int yel2 = 11;  //Led amarillo 2 on pin 11

int val1;
int val2;
int val3;
int val4;
int val5;
int val6;
int val7;
int val8;

void setup()  {
  pinMode(red1, OUTPUT);
  pinMode(yel1, OUTPUT);
  pinMode(red2, OUTPUT);
  pinMode(yel2, OUTPUT);
}

void loop()  {                         
  randomSeed(analogRead(0));
  
val1 = random(100, 225);
  analogWrite(red1, val1);
  val2 = random(10, 30);
  delay(val2);
  
  val3 = random(128, 256);
  analogWrite(yel1, val3);
  val4 = random(20, 30);
  delay(val4);
  
  val5 = random(100, 225);
  analogWrite(red2, val5);
  val6 = random(10, 30);
  delay(val6);
  
  val7 = random(128, 256);
  analogWrite(yel2, val7);
  val8 = random(20, 30);
  delay(val8); 
}

Archivos adjuntos

Deja un comentario