Órgano de luces psicodélicas con Arduino



Introducción

Los que tengáis unos cuantos años como yo recordaréis que allá por los 80, en cualquier discoteca o fiesta que se terciara, eran obligatorias las las luces psicodélicas, es decir aquellas luces que variaban al ritmo de la música. Podía ser una única luz o varias, normalmente 3 que variaban con sonidos graves, medios  y agudos de la música.
Se podían conseguir ya hechas (muy caras para aquella época), en kit (los míticos SalesKit) o bien hacértelas tu mismo.
Bien pues yo era un fan de las luces (y de las fiestas) y construí un par de ellas, la primera hace más  de 30 años  (si, si, ...) en una estupenda caja hecha de chapa de madera, pero por desgracia hace algunos meses acabó en la basura ..
La segunda de hace unos 30 años .. todavía sigue vivíta y coleando .....

Organo de luces sicodélicas Elektor 1982

Sacada de la estupenda revista Elektor de Marzo de 1982

Revista Elektor Marzo 1982

Bueno pues después de esta historia del abuelo cebolleta, vamos a ver como emular aquellas míticas luces con nuestro querido Arduino.
La idea es utilizar una fuente de sonido, en mi caso un micrófono, adecuarla al nivel de las entradas del Arduino, aplicarle un proceso de FFT para separar las distintas frecuencias, agrupar estas en tres canales (graves, medios y agudos), y en función de que estos superen un determinado nivel poner a nivel alto tres salidas del Arduino.
Estas salidas inicialmente pueden atacar unos leds, pero para que sea más auténtico luego utilizaremos unas etapa de salida con triacs para poder atacar unas bombillas.

¿Te interesa? sigue leyendo en el siguiente post ...


El vídeo del sistema funcionando para ir haciendo boca......


Si te ha gustado, recuerda compartirlo en tu red social favorita. Gracias

11 comentarios:

  1. buenas, quisiera hacer unas luces audioritmicas, con unas luces muy parecidas a las que tienes en el video, de 220V. pero en vede que este conectado a la computadora, o a un parlante, que este conectado a un microfono, y que se prendan y apaguen con el sonido de la musica... me podrias ayudar? desde ya muchas gracias

    ResponderEliminar
  2. @kevin johann
    Este proyecto es eso exactamente!
    Funciona con un micrófono y no esta conectado a un ordenador.
    Mira el siguiente post, dónde está el esquema del circuito.
    örgano de luces II

    ResponderEliminar
  3. @Arduino Guay

    Hola, he visto que tienes conocimientos de Arduino sobre sonidos. Perdona por solicitarte ayuda, pero tengo que presentar un proyecto en el cual, en función de una señal se reproduzca una pista (sólo una) de cuatro pistas MP3 y de forma aleatoria (que puede ser cualquiera de ellas).
    Necesito tu consejo sobre qué material (hardware) y qué programación y conexiones realizar.
    Soy totalmente virgen en la materia y si pudieras ayudarme sería un gran alivio para mí.
    Muchas gracias con antelación.
    Me puedes escribir a jorgevias@gmail.com.
    Gracias de nuevo. :)
    Mi

    ResponderEliminar
  4. Hola ... Probando tu sketch, no consigo pasar de este error:

    ---------------------
    C:\Program Files (x86)\Arduino\libraries\Fix_fft\fix_fft.cpp:50:7: error: 'prog_int8_t' does not name a type
    const prog_int8_t Sinewave[N_WAVE-N_WAVE/4] PROGMEM = {
    ^
    In file included from C:\Program Files (x86)\Arduino\libraries\Fix_fft\fix_fft.cpp:1:0:
    C:\Program Files (x86)\Arduino\libraries\Fix_fft\fix_fft.cpp: In function 'int fix_fft(char*, char*, int, int)':
    C:\Program Files (x86)\Arduino\libraries\Fix_fft\fix_fft.cpp:199:28: error: 'Sinewave' was not declared in this scope
    wr = pgm_read_word_near(Sinewave + j+N_WAVE/4);
    ^
    C:\Program Files (x86)\Arduino\libraries\Fix_fft\fix_fft.cpp:209:28: error: 'Sinewave' was not declared in this scope
    wi = -pgm_read_word_near(Sinewave + j);
    ^
    Error de compilación
    __________________
    ¿Que estoy haciendo mal?

    Gracias. Diego Hernandez

    ResponderEliminar
  5. @El guardián de la cosa
    En los comentarios del siguiente post (el circuito) se habla de ese problema

    ResponderEliminar
  6. Hola me parece muy interesante tu proyecto y me gustaría realizarlo con mis alumnos pero no encuentro los materiales si pudieras enviármelo a mi correo te lo agradecería, saludos mi correo es: lenin.delaguila@nslm.edu.pe

    ResponderEliminar
  7. Me da este error tanto con tu programa y con el que viene de ejemplo en la libreria." C:\Users\Leonardo\AppData\Local\Temp\build6154672335869666833.tmp\sketch\fix_fft.cpp:209:28: error: 'Sinewave' was not declared in this scope
    wi = -pgm_read_word_near(Sinewave + j);"

    ResponderEliminar
  8. Para los que tengan error de copilación, probablemente sea la versión del IDE de arduino que estan utlizando, hay dos soluciones una es modificar la libreria o utilizar la versión 1.5.3 del IDE de arduino.

    ResponderEliminar
  9. Me ha encantado. El que hice yo, creo que era de TronKit. Pero se me había olvidado. Metí las bombillas en tres botes que sujeté al techo y los tapé con papel Pinocho de distintos colores. Muchas gracias.

    ResponderEliminar
  10. Para versiones superiores a 1.5 del IDE de Arduino cambiar:
    prog_int8_t por int8_t.
    Es decir, borrar el "prog_".
    saludos

    ResponderEliminar
  11. Perdón, ya puestos ¿Que te parece sustituir el micro por la salida de auriculares?.
    Lo voy a intentar así a ver si pita.
    saludos, un buen artículo. Yo también soy de los del SalesKit el TronKit y el KartKit. Elektron buena revista.

    ResponderEliminar

Nota: solo los miembros de este blog pueden publicar comentarios.