ghostbusters

Proton Gun Electronics

Bueno, voy a empezar la casa por el tejado… O mejor dicho, el blog por el final, porque es lo que justo acabo de terminar. Primero, una pequeña introducción:

Hace ya unos meses, cuando me quedé en el paro, se me ocurrió la idea de hacer algo con Arduino que pudiese servir a la gente, y también darme a conocer entre las empresas… Lo primero en que pensé fue en hacer un dispensador de comida para peces… Pero, ops! Ya está inventado, malditos chinos… Lo siguiente que se me ocurrió es una trampa para pequeños animales, pero cuando estaba en proceso, mi hamster trípode adoptado, Nurb, murió, así que, ya sin nada que cazar, lo único que podía atrapar son entes vaporosos… Fantasmas… Cazafantasmas… Y a ello me puse. Probablemente haya sido un error, debería haberme dedicado a programar en Java-Java EE, o lo que las empresas demanden, pero esto se acercaba más a lo que aprendí en la carrera, y en cierto modo, le veía futuro. Así que lo primero que hice fue la trampa de los cazafantasmas. Sólo con un arduino UNO, reciclando todo lo que pude, conseguí que funcionase y, aunque no cace entes vaporosos, hace reír a la gente. Además, los principios de funcionamiento son los mismos que la trampa de ratones, y aprendí mucho más que en muchas asignaturas de la carrera de electrónica, programación, planificación de proyectos…

Después de terminarla, me puse con la proton pack, a la par que hacía algún curso de programación. Ahora que tengo la electrónica de la proton pack terminada, queda la otra parte: la proton gun, y de eso va este post. Primeramente, voy a describir cómo se comporta la proton gun, porque será lo que trate de imitar:

  • Tiene varios leds fijos (muy fáciles de implementar).
  • Hay tres interruptores y un pulsador:
    • Un interruptor controla el encendido de la proton pack («activate»).
    • Un interruptor controla las luces de la proton gun (interruptor «vent»).
    • Un interruptor «intensify» que, de momento, queda libre, aún no sé para qué usarlo.
    • Un pulsador de disparo que cambia el patrón de una hilera de leds, y hace que se ilumine la punta.
  • Hay una hilera de leds amarillos que genera un patrón cuando está en standby y otro cuando dispara.
  • Al accionar el pulsador de disparo, unos leds ubicados en la punta de la pistola parpadean para dar el efecto de disparo.

He interpretado libremente algunas características de la proton gun, así que es posible que no sea exactamente lo que sale en la película (por ejemplo, el patrón de iluminación de la hilera de leds). En general, se puede decir que la proton gun tiene dos bloques principales, uno que controla la hilera de leds y su patrón de encendido, y otro que controla los leds de la punta, que simulan el disparo de la pistola.

Con respecto a la hilera de leds, para hacer el patrón que aparece en la película lo único que se me ocurre es utilizar un microcontrolador, pero lo vi demasiado laborioso, así que me decanté por un secuenciador de cuatro efectos y ocho canales. La base la saqué de esta genial web:

http://r-luis.xbot.es/project/cq8_4ef.html

Si os fijáis, la idea es supersencilla, a la par que original. La base es un contador binario 4029 que genera cuatro señales a diferentes frecuencias, una por cada bit. esas señales con su frecuencia pasan a un registro de desplazamiento 4015, y eso es lo que genera el patrón de luces, dependiendo de qué entrada pongamos en el pin DATA IN. A partir de esa idea, sólo quedaba personalizarlo, y adaptarlo a mis necesidades. Esa web usa un conmutador manual, yo tenía que hacerlo digital para poder accionarlo al pulsar el botón de disparo. Y gracias a que una emisora de un colega se escaralló, conocí la existencia del 4066, un interruptor digital que me permitía controlar digitalmente el secuenciador. Hay un problema, y es que el 4066 es un SP-ST (Single point-Single Through), es decir, es un interruptor que pone a la salida la entrada, o nada, es decir, salida al aire (que no un cero, ojo!). No interesa eso, nos interesa poner a la salida una entrada u otra. Por tanto, hay que convertir ese SP-ST a SP-DT (Single Point-Double Through). Dicho en cristiano, necesito en vez de un interruptor que abre o cierra una llave, un conmutador que eliges entre dos canales de entrada cual pones a la salida. Para ello se usan dos de los switches del 4066, con las salidas cortocircuitadas y para controlarlos, una señal debe ser la negada de la otra. Lo bueno es que un negador es un circuito sencillo que con un simple transistor de propósito general lo podéis fabricar.

Todos estos circuitos necesitan de un reloj a una frecuencia apropiada. Dado que en la proton pack utilizo un 555 para generar una señal que me sincronice la power cell y el ciclotrón, lo que voy a hacer es emplear esa misma señal para sincronizar también la proton gun. Así que, cableando oportunamente ese secuenciador, y utilizando un 4017 para generar un pseudopatrón aleatorio de luces para el disparo, con todo eso tengo la proton gun terminada.

Faltaba una cosa: el audio. La proton pack, al encender hace un sonido de encendido muy peculiar, otro sonido al activar el switch vent, y al disparar. Si pudiese reproducir sonidos sería muchísimo más real. Y eso lo conseguí con  un módulo WTV020, que se puede encontrar tirado de precio en ebay (menos de seis euros), y que sin duda, os simplificará infinito el trabajo (la ghostrap no llevó ningún módulo, reproduce el audio leyendo de una tarjeta SD y sacando el audio por PWM… El trabajo extra que supuso fue… de órdago). Utilicé la librería hecha por the-rebel-agent, y que podéis encontrar en el foro de Arduino, además de su diagrama de conexión:

http://arduino.cc/forum/index.php?topic=117009.0

He tenido que indagar en el código y adaptarlo, pues a pelo no funcionaba, sobre todo porque es muy importante que los audios carguen rápidamente para dar un efecto real de disparo. Por tanto, Arduino será el encargado de detectar cuando se ha pulsado un botón y de reproducir el audio adecuado (uno al arrancar, otro al disparar, y otro al accionar el switch vent).

Por fin, el resultado del proyecto final lo podéis ver en este vídeo:

Aquí está el esbozo del esquema eléctrico que uso para cablear. A ver si lo paso a formato digital, para que no se vea tan cutre, pero mientras…

Proton Gun Electronics

 

Con eso, ya teneis vuestro acelerador nuclear portátil listo para poner en la carcasa. En breve, a cazar fantasmas!