martes, 16 de agosto de 2016

Proceso de Zero (2): La electrónica del casco



¡continuamos con el tutorial de Zero! en el primer tutorial  (te recomiendo echarle un ojo si no lo has visto) se explicó el proceso de la base + visor del casco, con lo que ya tendríamos el casco completamente terminado para el cosplay... ¿Pero que sería del cosplay, si en cada cosplay que hacemos no vamos mas allá? Así que cuando se decidió hacer el grupal de Borderlands 2, intenté probar a meterle un sistema de leds con dibujos integrado al casco, que fuera fácil de manipular y, si se podía, modular.


La idea era hacer lo más parecido a esto:


Así que para comenzar, tocó empezar a documentarse sobre el tema. Advierto que aunque soy ingeniero informático, no tengo conocimientos de electrónica ni arduino, y lo poco que aprendí... ni me acuerdo. Así que todo esto fue un proceso desde zero (badabummm tshhhh).

Así que documentando y buscando por internet fuí por estos pasos:

- Placa Arduino: busqué por mi ciudad y solo hay una tienda que los distribuya, peeeero si tienes tiempo de sobra para recibir los pedidos, las opciones de AliExpress son MUY rentables. Yo me pillé un kit completo de componentes, pero puedes optar por comprar placas sueltas. Finalmente usé un arduino Leonardo, aunque si quieres algo mas pequeño con un Arduino UNO también irás bien. Si no tienes conocimientos de Arduino, no te preocupes, todos valdrán, solamente variará la potencia, pero para nuestro caso el mas pequeño valdrá.



- Cableado: Igualmente, si no tienes problemas en esperar a recibirlos, por AliExpress hay opciones de compra, el cableado de este tipo es de 10cm normalmente, y vas a necesitar MUCHO, así que mas de una vez tuve que volver a la tienda a por mas, mi recomendación es comprar cables hembra-hembra y macho-macho, para poder utilizar bien las entradas/salidas de los componentes.

- Leds: Aquí fue donde mas perdido estaba... inicialmente intenté ir a por lo mas fácil, en la web Adafruit habías una matrices de leds ya preparadas, y aunque son en colores RGB, su precio desbordaba el proyecto. Así que tuve que tirar una vez mas de AliExpress y compré estos leds rojos, para el casco solo hicieron falta 6, aunque compré de más por si acaso ( a 1€ y algo comparado con los de Adafruit a 44€..). Pero realmente con 4 hubiera ido bien para hacer las figuras del casco. Esta última opción requiere ponerse con más código, pero por la diferencia de precio, vale la pena.


- Botones: Aquí compré varios componentes, para probar opciones. La primera fue un módulo de infrarrojos, pero tuve bastantes problemas siguiendo los tutoriales (por falta de tiempo), aunque no tiene pinta de ser excesivamente complicado y da la posibilidad de tener un mando suelto para poder usar el casco, ahorrando cables, el plazo del cosplay no me dejó experimentar con este componente. Así que terminé usando una botonera (hay de 4 y 16 botones), que aunque inicialmente iba a ser de 4, el nº de imágenes que iba a representar se me quedaba corto, así que fuí por la opción de 16.

-Batería: Otro tema que me preocupaba era el consumo de la placa+leds. Los leds se alimentan a través de Arduino, y éste por una salida USB (o dependiendo del modelo a veces una salida de alimentación opcional). Por suerte, con un powerBank comprado por 5€ en el Leroy Merlín me dió para un día entero (encendiendo y apagando los leds, no sabría decir el consumo de los leds siempre encendidos, pero recomiendo hacer una prueba antes).


Comienza la aventura: montando el frontal de Leds


La idea era montar 6 matrices de leds,  de manera que quedara de la siguiente manera:

A B
C D
E F
Así si cada matriz de Leds, es de 8 x 8 leds, tendría una mega matriz de 24 filas x 16 columnas.
Como se puede apreciar en la imagen siguiente, cada matriz, viene con un chip (llamado Max7219)



Este chip, aunque necesario, estorba a la hora de unir los leds entre ellos, ya que dejaría hueco entre ellos, y no daría la impresión de hacer una matriz grande. Lo bueno, es que todo viene simplemente encajado a presión, con lo que nos basta tirar del panel leds, para desengancharlo del chip, que quedaría tal que así:



¿Cómo unimos los leds de nuevo al chip entonces? Pues utilizando cableado, de manera que tendremos de nuevo cada matriz a su chip mediante 16 cables (ya dije que ibamos a necesitar MUCHO cable).

Una vez que cada matriz Led, esté separado y cableado a sus respectivos chips, tendríamos algo así:

¡Perfecto! ya tenemos una matriz enorme, ahora habrá que hacerla fija. Aquí se planteó un problema: quería realizar una tabla de madera con agujeros para que cada "pata" de led pasara. Los agujeros debían ser lo suficientemente justos como para que el cable/pata quedara fijo por la presión. Pero no pude lograrlo, así que simplemente uní el cableado, los leds con un poco de silicona.

(Imagen de como quedaba con un poco de poliestireno extruido)

Bien, ya tenemos los leds unidos, pero ¿Como demonios los conecto entre ellos y al arduino?
Bien, lo primero que vamos a hacer es conectar el  Max7219 que llamamos A a Arduino (recuerda la tabla de como los llegamos a conectar mas arriba). Es muy sencillo, cada Max7219 es de la siguiente manera:

(imagen extraída de http://frightanic.com )

Si miramos el chip de frente veremos 5 patas:
- VCC: Voltaje de alimentación, deberá ir conectado al arduino, a la salida de 5V
- GND: Toma de tierra, deberá ir conectado a la salida de GND de Arduino.
- DIN: entrada de datos. Esta pata recibirá la información de Arduino
- CS:  "Chip Select", entrada para "identificar" cada chip.
- CLK: entrada de reloj. Da la señal de reloj a los leds, para mantener sincronizados

Las entradas VCC y GND van por defecto a 5v y GND del arduino, las otras 3 van conectadas a los pines que nosotros queramos, en mi caso fueron conectados a los pines 12 (DIN), 11 (CLK) y 10 (LOAD o CS).

Una vez está el Max7219 A conectado, conectar el resto es pan comido: podemos observar que en la parte superior del chip hay unos pines de salida, éstos están en el mismo orden que los de entrada, así que bastaría conectar, el primero de la izquierda con un cable, al primero de la izquierda del siguiente Max7219, y así con el resto. Debería quedar algo como la siguiente imagen:



(imagen extraía de HobbyComponents.com )


Mientras tengamos claro que estamos conectando los leds igual que en la tabla que pusimos arriba: A->B->C->D->F y pongamos pegatinas identificando los grupos de cables, para no hacernos un lío, todo irá como la seda. De todas maneras podemos hacer una prueba del sistema completo antes de tenerlo todo colocado:

(No llegué a guardar el código para mostrar texto, pero al conectarlo todo deberían encenderse TODAS las matrices)




(ve asegurando que todo cabe en el casco con tu cabeza... yo por poco no lo logro)

Llegados a este punto, sólo nos falta agregar botones y código a nuestro casco. El sistema de botones es bastante simple. basta conectar los pines de los botones en orden a los pines de Arduino desde el 2 al 9 (de esta manera, entre los botones y los leds, en mi caso se quedaron todos los pines de mi arduino ocupados)

La botonera iba escondida dentro del guante, de tal manera que el cableado desde la botonera al Arduíno, recorría toda la manga de la chaqueta, y luego el cuerpo hasta la cintura (donde tenía el arduino y los chips de los leds a modo de cinturon), y a su vez, los cables desde los chips a la matriz led, subía por todo el interior de la chaqueta hasta el casco.

Quedaría tal que así:

A programar (o no..)


Pues con todo el sistema conectado, basta con meter el código. Para ahorrar el trabajo he subido el código que tengo yo para mi casco en ESTE GIST

Para poder meter el código en nuestra placa arduino, basta con descargar el IDE de Arduino e instalarlo. Crear un fichero nuevo y copiar el código que he dejado arriba.
Para que el código se suba correctamente, hay que tener configurado el modelo de placa que tenemos ( en mi caso un Arduino Leonardo), y el puerto (normalmente será COM1, no da mucho donde elegir).

Y no habrá mas que darle al icono de Subir (la flecha superior izquierda), con la placa conectada al PC mediante USB.


Ya deberíamos tener funcionando nuestro casco (sí, lo sé, siento el video vertical...):



y listo, ya tenemos nuestro casco con caras, corazones, y lo que es mas importante, ¡el cero!




NOTAS IMPORTANTES SOBRE EL CÓDIGO:

Como ya indiqué, el plazo del cosplay y el ser la primera vez que usé Arduino y sus componentes hicieron que fuea un poco a tiro hecho, así que el código no es un grán código, y de hecho si eres programador, verás que hay muchas maneras de hacerlo mejor.
Ahora unas notaciones para que el código funcione en tu caso:
El código se divide en varios bloques
- definición de los pines de los LEDS
- dibujos del casco
- definición de los pines de los botones
- código para dibujar

Vayamos por partes

Definición de los pines de los LEDS viene dada por la siguiente linea:

LedControl lc = LedControl(12, 11, 10, maxLeds); //

Si has cambiado los pines que indiqué de los LEDS-ARDUINO, deberás sustituir los nº 12, 11 y 10 por los que has usado, recuerda que debe ser los pines de DIN, CLK y CS

Los dibujos están formado por cada matriz independiente, si te fijas cada fila de matriz viene dada por una B y 8 dígitos ( ceros o unos), donde cada 0 indica led apagado y 1 led encendido, de tal manera que hacer una carita feliz con una sola matriz sería:


B00000000
B00000000
B01100110
B01100110
B00000000
B01000010
B01111110
B00000000



En mi caso tuve un pequeño inconveniente con la posición de los leds, y mi matriz quedó de la siguiente manera:
EF
CD
AB
en vez de:
AB
CD
EF

así que en código verás los dibujos un poco descolocados, cada icono está formado por las matrices ordenadas, bastaría con recolocarlas.

Definición de los botones:
char keys[ROWS][COLS] = {
  {'A', 'B', 'C', 'D'},
  {'E', 'F', 'G', 'H'},
  {'I', 'J', 'K', 'L'},
  {'M', 'N', 'O', 'P'},
};

// Connect keypad ROW0, ROW1, ROW2 and ROW3 to these Arduino pins.
byte rowPins[ROWS] = { 2, 3, 4, 5 };
// Connect keypad COL0, COL1 and COL2 to these Arduino pins.
byte colPins[COLS] = { 6, 7, 8, 9 };

El código de arriba define las filas/columnas de los pines, que están conectados del 2 al 9 al arduino, así que si igual que con los pines de los LEDS, los conectaste en otro orden, aquí deberías cambiarlos.

Código de dibujo:
cada botón tiene un dibujo asignado de la siguente manera:
- se define la variable con sus matrices de 0 y 1,
- se hace un case del botón (que va de A a P) y su dibujo a ese botón

Así que si queremos crear un dibujo nuevo, solamente tendremos que crear una variable nueva:

int caritaNueva[6][8] = {
B00000000,
B00000000,
....

y en el código de dibujo añadir:

     case 'F': 
        drawMatrix(caritaNueva);
        break; 

donde F será el botón, y caritaNueva el dibujo que hicimos previamente

jueves, 4 de agosto de 2016

Proceso de Zero

¡Hola! ¡Raptor al habla!  Hoy traemos al blog (y facebook) el proceso del cosplay de Zero, que pude llevar en la pasada TLP SummerCon 2016. He de decir con orgullo que (creo) es el cosplay mas completo y trabajado que he llevado hasta hoy, aunque no tiene tanta cantidad de detalles como otros personajes (Gaige parece una auténtica ferretería andante), sí que llevaba piezas que me permitieron llevarme un poco mas allá a la hora de hacer el cosplay, siendo la mayor parte de trabajo el casco.



Comenzaremos por el casco, que va a estar dividido en 2 posts: electrónica (leds) y el casco en sí. Así que allá vamos:


El casco


La realización del casco se dividió en 2 procesos: visor y resto.

Para la base del casco, se extrajo de un archivo de Pepakura el esquema, aqui está disponible para poder descargar. En caso de que nunca hayas utilizado el Pepakura no te preocupes, es muy sencillo, basta con descargar el programa y abrir el fichero PDO, imprimir y ¡listo! Hay un hilo bastante interesante en The RPF Forum respecto al tema

Base del casco

Una vez impreso en papel el esquema, bastará con irlo recortando y pegándolo en una plancha de foam, para a su vez, irlo recortando (este es el método que uso yo, se puede calcar por ejemplo).
Cuando tengamos las piezas separadas bastará con irlas uniendo con un poco de cola de contacto (recomiendo utilizar los tutoriales de Evil Ted de armaduras, hombreras para esto, su método de pegado es una maravilla)

Inicio del pegado de las piezas bases:



A cada poco se debe ir probando la pieza para ver que todo encaja (y nuestra cabeza cabe..)


Visor

Una vez construida la base del casco, comienza lo interesante. Como se puede apreciar, la parte del visor viene en el fichero de pepakura, pero no la hize en foam. Para el visor encontré muchas opciones que utilizaba la gente, pero la mayoría eran piezas opacas o con pequeñas ranuras para ver, yo quería un visor totalmente funcional, así que tuvimos que crear un molde del visor, para con una plancha de PVC transparente y una mesa de termoformado (explicaremos en otro tutorial como construir una, pero en internet hay miles de tutoriales) crear una réplica del visor transparente:

Para crear el molde, envolvemos el visor de papel en cinta americana, y a partir de ahí vamos envolviendo para ir creando una pequeña forma del casco. Para esto lo mas fácil es colocar el visor de papel, y forrar el casco por dentro con papel film, o simplemente papel, e irlo forrando luego de cinta americana, luego, tras sacar este relleno de papel, se cubre de cinta americana, debería quedarse algo tal que así:


Como va a tener que ser una pieza rígida, vamos a tener que darle consistencia, para esto, mi opción fue utilizar espuma de poliuretano expandido, tapando todos los posibles escapes y dejandolo secar toda una noche.




Cuando ya tenemos la pieza sólida, deberemos darle un buen acabado, para que a la hora de termoformar, salga un visor lo mas liso posible (puede parecer que no, pero cualquier mínimo detalle se queda marcado, incluso si se mete entre el molde y el PVC un pelo..). El alisado y forma final se hizo aplicando pasta de celulosa (papel maché en polvo), que crea una masilla fácil de aplicar y de lijar luego. Aquí es donde empieza el trabajo de chinos



Aplica y aplica masilla..






Tras aplicar la masilla, comienza el lijado




¡Y a la mesa de termoformado!

Cuando se tiene ya todo el molde del visor, solamente queda cruzar los dedos a la hora de termoformar el visor:




Una vez tenemos el visor, y nos aseguramos que va encajando (recorta por aqui y recorta por allá)


Pasamos a oscurecerlo. Inicialmente quería utilizar el sistema de Cosplay4UsAll AQUI tienes el proceso, pero el tinte es muy especial y solo lo pude comprar online, que llegó a tardar tanto, y viendo lo que le había pasado a Nebulaluben que se le derretía el visor a la hora de aplicarle calor en el tintado, decidí igual que ella ir por pintura para cristales y un aerógrafo





A la hora de pintar utilizando pintura de cristal, se queda un tono negro pero se puede ver a través, de todas maneras recomiendo pintar un poco "menos" la zona de los ojos. No se notará, ya que al estar todo el casco a oscuras (salvo por los leds), apenas se apreciará.

En las siguientes imagenes se puede ver 2 pruebas que hicimos, una con la pintura desde fuera, y otro pintado desde dentro. La pintura era bastante mate, y el plástico era brillante, así que tenía que ver los acabados.



Una vez pintado el visor, lo pasamos a pegar a la base hecha en foam, uniendo ambas piezas con cola de contacto, asegurándonos que los bordes se unen bien.




Tras tener el casco totalmente pegado, toca darle un alisado final, para dejarlo uniforme y que no se vean las piezas de foam pegadas. Pasaremos a aplicarle la misma pasta de celulosa que aplicamos al molde


y ¡listo! Para el siguiente tutorial aplicaremos la electrónica al casco 


sábado, 28 de mayo de 2016

Proceso "Hylian shield" para "Link between worlds"

Buenas. Hace casi un año ya preparamos un cosplay grupal de Zelda: a Link between worlds. Entre los props que tuvimos que preparar (hombreras de Hilda y Zelda, bastón de Hilda, complementos de Ravio..) estaban la espada y el escudo de Link, del que vamos a colocar el proceso. Con explicar el proceso no quiero decir que es un tutorial sobre cómo hacer el escudo, por que aunque quedé muy orgulloso del resultado, seguramente existan tutoriales mas detallados con mejores resultados. Aún así allá vamos:



La Master Sword:


La espada fue prácticamente impresa en 3D, así que  este prop tuvo relativamente poco trabajo, el modelo (extraído de thingiverse.com) fue partido en 4 pedazos, de tal manera que pudieran pegarse entre ellos para formar la guarda, y en el centro confluyeran las 4 piezas. Esto se hizo de dicha manera para poder cruzar una varilla de fibra de vidrio (comprada en Decathlon, en la parte de cometas), que atravesara la empuñadura, guarda y hoja de la espada. Dando rigidez a la espada al estar formada por una sola varilla.


 El detalle de la guarda (las "rupias")


La guarda completa:



El siguiente paso fue imprimir la empuñadura, que fue dividida en 2 piezas, para poder hacer el recorrido de la varilla entre las dos piezas con una dremel:




Una vez impresas todas las piezas y con la dremel hecho el hueco para la varilla, se utiliza el método clásico  de varilla+ foam (esterilla de Decathlon) para crear armas de softcombat (se puede encontrar fácilmente tutoriales en youtube). Como se puede ver en la foto, de la hoja sale la varilla, que atravesará la guarda y la empuñadura




una ve pegada todas las piezas, solo queda aplicar pintura. De esta parte (y de la funda) no tengo imágenes del proceso desgraciadamente. Pero no hay mucho que explicar: la espada fue pintada con un spray metalizado y un azul (con toques metalizados también). 
La funda fue creada en polipiel azul, con detalles pegados y pintados encima con goma eva




Hylian Shield

El escudo fue un proceso manual completamente. He de decir que, aunque he visto gente que ha hecho el escudo sólo en Polietileno (la esterilla de Decathlon) con buenos resultados, yo quería un escudo que fuera resistente y grande. Así que los materiales elegidos son bastante mas resistentes, pero se obtiene un escudo mas pesado.

Primero, tras sacar en papel un plano de la forma del escudo, se cortó en una chapa de madera fina:




Una vez recortada la chapa, se le hace 4 aperturas, tras por la cual se le pasarán 2 cintas para hacer las agarraderas del brazo, y anudadas por la otra parte (mejor pegadas con cola de contacto), siendo las tiras de polipiel marrón. En la imagen se puede apreciar una prueba hecha con tela normal



Tras esto, extraemos a escala el patrón en papel de las decoraciones del escudo, para poder sacarlas mas adelante


Para darle volumen al escudo, se cortó una plancha de poliestireno, y se fue cortando los bordes, dándole la forma que se puede apreciar en la foto

Con la plancha de poliestireno en la forma deseada, con una esterilla del Decathlon (Polietileno), se realiza la forma exterior (y de paso las formas y detalles interiores del escudo, que sacamos del patrón de arriba).


 Se pasa a dar una capa muy fina de yeso al escudo, y a lijar (muuuuucho, y con mucha paciencia)



Una vez tengamos el escudo seco, pasamos a pegar las decoraciones interiores que nombramos antes



Ya sólo queda pegarlas y proceder a pintar! la pintura fue la misma utilizada en la espada, con un poco de dorado para la trifuerza y rojo para la forma central.




y a lucirlo con el cosplay!!:



(gif extraído del video de la Comic-Can 2015 de TomiTotoro