[vc_row][vc_column][vc_column_text]
| Árbol de LEDs y Melodía | |
|---|---|
| un Árbol de LEDs y Melodía Melodía | |
| http://www.arde.cc/foro/viewtopic.php?f=6&t=4436 | |
| Palabras Claves | LEDs, Arduino, Piezo electrico | 
| Versión – Fecha | 1.0 – 24/12/2015 | 
| Licencia |  Creative Commons 3 (por defecto) | 
| Autores / Colaboradores |  weeberp | 
| Plataforma/Compilador | Arduino | 
| Nivel Software | Fácil, Amateur | 
| Notas Software | |
| Nivel Hardware | Fácil | 
| Notas Hardware | Libre | 
Árbol de LEDS y Melodía
Para el Árbol de LEDS y Melodía con un piezo eléctrico simplemente he utilizo el esquema de “resistencia necesaria para que un LED le pase la intensidad adecuada” y lo puse con forma de Arbol. Bueno para los Leds verdes… como no tenia resistencia de sobras los puse directamente conectado a la alimentacion de la planta que da 5 voltios o 3.3V (no directamente del Arduino). Pero claro lo encendía poco tiempo porque olía a quemado… mucha intensidad por los leds… Las resistencias en serie que tenia era de 670 ohmnios… pero vamos valores menores hubieran valido… hay calculadoras y según la especificación de cada Led.
Sobre el Buzzer o Piezo Eléctrico, lleva una resistencia en serie de unos 100 ohmnios para que no sonara muy fuerte y no se saturara el sonido.
Video
Archivos del proyecto
Vamos es una mezcla de los dos códigos que viene en los enlaces:
int leds[] = {2,3,4,5,6}; // 5 total
int speakerPin = 0;
int length = 26;
char notes[] = "eeeeeeegcde fffffeeeeddedg";
int beats[] = { 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2};
int tempo = 150;
void setup(){
   pinMode(speakerPin, OUTPUT);
   for(int i = 0;i<5;i++){
       pinMode(leds[i],OUTPUT);
   }
}
void loop(){
  for (int i = 0; i < length; i++) {
    if (notes[i] == ' ') {
      delay(beats[i] * tempo); // rest
    } else {
      playNote(notes[i], beats[i] * tempo);
    }
    // pause between notes
    delay(tempo / 2);
    randomSequence(); 
  }
}
// utterly random , a a kind of twinkling effect is acheived?
void randomSequence(){
  int randomLed = random(0,5);
  digitalWrite(leds[randomLed],HIGH);
      delay(50);
  randomLed = random(0,5);
  digitalWrite(leds[randomLed],LOW);
}
void playTone(int tone, int duration) {
  for (long i = 0; i < duration * 1000L; i += tone * 2) {
    digitalWrite(speakerPin, HIGH);
    delayMicroseconds(tone);
    digitalWrite(speakerPin, LOW);
    delayMicroseconds(tone);
  }
}
void playNote(char note, int duration) {
  char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
  int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };
  // play the tone corresponding to the note name
  for (int i = 0; i < 8; i++) {
    if (names[i] == note) {
      playTone(tones[i], duration);
    }
  }
}
Coste Proyecto
| Item | 
Euros € | 
| Arduino uno | 9.00 | 
| LEDs varios | 1.00 | 
| Piezo Eléctrico | 0.50 | 
| Cables y Resistencia | 1.00 | 
| Total: | 11.50€ | 
Conclusión
Muy guay, fácil y rápido, para el próximo año en grande…
Si queréis mejores explicaciones, se va empezar Arduino desde Cero y 37 Sensores y más, Síguenos…
Bibliografías
- http://www.makeuseof.com/tag/arduino-project-flashy-christmas-lights-ornaments/
 - http://pastebin.com/Lqe8ucxU código del link anterior del Árbol.
 - https://gist.github.com/elubow/7844436 Melodía de Jingle Bell Villancico.
 
Agradecimientos
A ARDE y la navidad.
[/vc_column_text][products columns=”4″ orderby=”title” order=”” ids=”9348, 9541, 9386″][/vc_column][/vc_row]

Una respuesta a «Proyecto: Árbol de LEDs y Melodía – Felíz Navidad y Año Nuevo 2016»
[…] Proyecto: https://www.arde.cc/proyectos/arbol-de-leds-y-melodia-feliz-navidad-y-ano-nuevo-2016/ […]