[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/ […]