jueves, 5 de enero de 2017

FastLed

Modelo WS2812
Hace bastante tiempo que no escribía en este, mi blog, y hoy me he decidido a hacerlo para hablaros de nuevo sobre Arduino y LEDs. Hace unos meses descubrí por circunstancias e intereses personales un tipo de LEDs, llamados "addressables" que me han cambiado la vida. ¿Qué tienen de espacial estos LEDs? Pues que, al contrario que los típicos LEDs RGB con los que puedes controlar el color de todos los leds de una tira, en los "addressables" puedes controlar el color de cada LED por separado. Gracias a que cada LED tiene un minúsculo driver en su interior, mediante una sola señal digital de la placa Arduino, puedes hacer todo tipo de animaciones con tiras de tantos LEDs como quieras, incluso crearte tu propia pantalla LED.

Tiras de LEDs WS2812B
La librería para Arduino que en este momento mejores opciones da al amante del código con la IDE de Arduino es la magnífica librería FastLed, creada por Mark Kriegsman y desarrollada por varios flipados de los LEDs que día a día van aumentando las posibilidades creativas de esta librería. Yo ya he empezado a hacer mis pinitos y, poco a poco, voy aprendiendo a hacer cosas más complejas que, como era de esperar, se van introduciendo en mis obras artísticas. Lo alucinante de esta nueva tecnología es que abre un universo de posibilidades casi infinito para aquellos que amamos el pintar con luz... A continuación os dejo los enlaces a la librería y su magnífico repositorio lleno de curiosidades, la wiki y algunos vídeos de mis últimas obras trabajando con Arduino y FastLed...

WEB de la librería FastLed

WIKI de la librería FastLed




domingo, 6 de diciembre de 2015

Led Strip Driver

Hola a todos/as. Hace tiempo que tengo el blog abandonado debido a mis múltiples ocupaciones que últimamente no me dejan un momento. Hace tiempo pedí por DX.com unas plaquitas PCB que se vendían como drivers para tiras de LED RGB de la marca Catalex . Básicamente lo que hacían era simplificar lo que uno ya podía hacer comprando los componentes (mosfets, resistencias, etc...) creando una PCB que ya tenía todas las salidas y entradas para simplemente conectar a Arduino y a la fuente de alimentación de 12V. Lo interesante de estas plaquitas es que te permiten conectar varias en cascada y controlar un numero indeterminado de tiras LED RGB usando sólo dos pines digitales de la Arduino. Para ello es necesario descargarse la librería que hace funcionar las placas y que es bastante simple, llamada LED Strip Driver. Viene con sólo dos ejemplos con idea de que el usuario se busque la vida para sacarle el máximo partido usando su ingenio. He hecho un primer intento de utilización de los mismos en uno de mis proyectos de luces y el resultado ha quedado bastante bien. Controlo 4 tiras RGB completamente con sólo 4 pines PWM. Ya veremos cómo funciona cuando quiera meterle un sensor de sonido... A continuación el video de la pieza. Espero que os guste.


sábado, 5 de diciembre de 2015

VPT7

Hola a todos/as. Bienvenidos a esta nueva entrada de mi blog dedicado a la utilización de hardware y software libre para proyectos artísticos. Hace poco me entraron ganas de probar la última versión del fantástico software para videomapping VPT7, creado por el inefable y generosísimo HC Gilje y basado en MAX. He seguido los tutoriales que aparecen en su página web y en poco tiempo me he puesto a crear geometrías caleidoscópicas que han hecho las delicias de mis retinas, ávidas de formas simétricas y en movimiento. Para ello he construido un modelo de cartulina diseñado previamente con Google Sketchup, para luego, haciendo uso del plugin Flattery, crear el desarrollo de cada pieza del entramado de caras triangulares del modelo. Me he pegado una pechada de recortar, doblar y pegar. Lo interesante de este software, aparte de ser gratis y de fácil utilización para los no iniciados, es que puede conectarse a arduino y que viene aderezado con varios complementos que lo hacen muy versátil a la hora de crear videos que reaccionen al sonido, que actúen según datos controlados por arduino o vía OSC que proyecten videos o animaciones interactivas creadas con PROCESSING, Quartz Composer y otros programas de creación de visuales. En este último caso es necesario el uso de una pequeña aplicación llamada Syphon, muy útil para compartir imágenes que salgan de PROCESSING y que se proyecten en VPT7. A continuación os dejo el resultado del prototipo que reacciona al sonido de la música gracias al programita Soundtrigger. Espero que os guste...



jueves, 17 de abril de 2014

Motores paso a paso...

Pues sí amigos, ya estamos aquí de nuevo con una entrega más sobre arduino y sus aplicaciones en el ámbito del arte cinético. En esta ocasión hemos estado investigando sobre motores paso a paso (stepper motors en inglés). Se trata de un tipo de motores eléctricos que permiten un control muy preciso de la rotación del eje. Son muy comunes en aparatos tan domésticos como una impresora, la máquina de aire acondicionado, etc. Busqué por internet algún tutorial que me facilitara entender cómo funcionan y cuál sería la mejor librería de arduino para sacarles el máximo partido a su movilidad. Encontré esta página web, de un ingeniero norteamericano llamado Terry King, que me pareció estupenda y que te explica fácilmente cómo utilizar los motores paso a paso más baratos que se puedan encontrar en internet, los 28YBJ-48. Yo me compré nueve en ebay, al increible precio de 2,85 € cada uno con su driver correspondiente.

Stepper + Driver
Puesto que para mover todos los motores al mismo tiempo necesitaba bastante amperaje, fui a SONICOLOR, en Sevilla, y compré una fuente de alimentación a 5V y 10AmP, muy baratita.

Mi idea era crear un cuadro en el que nueve piezas de forma cuadrada se movieran acelerando y decelerando de forma sincronizada. El movimiento de todas ellas crearía diferentes patrones en blanco y negro que jugarían con los ángulos rectos y los de 45º. Gracias a la librería para Arduino AccelStepper, creada por Mike McCauley, es posible mover varios motores paso a paso de forma que se pueda controlar la aceleración y deceleración de una manera más o menos fácil. 

Sensor casero con led + LDR
El problema que se planteaba, una vez resuelta la cuestión de crear un parche para arduino que controlara todos los movimientos de forma sincronizada, fue lograr que pudiéramos apagar toda la instalación justo en el lugar de comienzo de toda la rutina. Como al apagar, arduino no memoriza la posición de inicio, tuve que idear un tipo de sensor de paso casero mediante un led de 3mm y un sensor LDR. Si quieres apagar la instalación, lo único que tienes que hacer es presionar un pulsador y esperar a que los motores se pongan en su posición inicial, lo cual hace que actúe el sensor y de inmediato se para todo gracias a un relé.

Interruptor y pulsador
En el proceso de creación de la pieza, descubrí los pros y contras de los motores 28YBJ-48. Su principal virtud es que son super baratos, que funcionan a 5V y que aparentemente no se calientan como la mayoría de los motores paso a paso y sus drivers. Lo malo es que, debido a que sus mecanismos internos son de plástico, tiene cierta holgura (5º+/-), lo que hace que la precisión absoluta sea imposible.

A continuación os dejo un vídeo explicativo de todo el proyecto y el resultado final. Sin dejar de gustarme, he de confesar que en el futuro, empezaré a trabajar con motores más precisos, tipo Nema 17, con Easydriver 4.4. Éstos sí que permiten precisión al milímetro y coordinación total. Tendré que rascarme los bolsillos o acudir a un punto limpio a reciclar motores de impresoras rotas (Por cierto, si alguien va a tirar su vieja impresora que me llame antes).



PD.: La pieza es un homenaje al artista eslovaco Viktor Hulík. Acudid a su web y lo vais a flipar.

viernes, 31 de enero de 2014

Homenaje a Peter Vogel

Hace poco, a través de la web de Kinetica, descubrí al que es ahora uno de mis artistas contemporáneos favoritos, Peter Vogel. En un modesto intento de emularle he creado un pequeño experimento sonoro-lumínico parecido a los artilugios del artista alemán. He utilizado una placa arduino nano 3.0, luces led de 3 mm, resistencias, dos LDR,  altavoces sacados de una TV encontrada en la basura y alambres. Aquí os dejo un video que muestra cómo funciona.



domingo, 22 de diciembre de 2013

Leds RGB

Pues sí amigos, continuamos navegando y experimentando en el proceloso a la par que ameno océano de arduino y sus posibilidades creativas. Hace un tiempo compré 5 metros de tira de leds RGB con su controlador y su fuente de alimentación. Como deseaba poder controlarlos por mí mismo, creando mis propios programas de cambio de color y ritmos de tiempo, decidí buscar información en la web para poder hacer el montaje con vistas a poder incluirlo en alguno de mis cuadros pintados sobre metacrilatos. En este blog de un tal Jerome Bernard (gracias Jerome), se explica de forma sencillita cómo se han de hacer las conexiones y el tipo de componentes electrónicos indispensables.
La forma de programar las tiras de led es mucho más simple que el código que sale en su página puesto que cada color Rojo (R), Verde (G) y Azul (B) se puede controlar con un pin digital de arduino mediante el fade de 0 a 255, o lo que es lo mismo, de 0 voltios a 5 voltios (máximo de intensidad). Es necesario tener una fuente de alimentación a 12V (hay que fijarse en la cantidad de leds a usar para saber el amperaje idóneo) y poco más. Ahí os dejo algunas fotos del trabajo. Como podéis apreciar, puesto que cada plancha de metacrilato tiene diferentes colores, al ser iluminados por diferentes tonos de luz cambian totalmente los matices, lo cual aumenta las posibilidades cromáticas respecto a proyectos míos anteriores en los que sólo usaba leds de color blanco. Espero que os guste y os sea de utilidad.








lunes, 25 de noviembre de 2013

Arduino + Processing + Kinect

Pues sí amigos, aquí estamos de nuevo para compartir experiencias con tecnología abierta. Hace tiempo me compré una cámara Kinect de segunda mano y tenía ganas de experimentar con ella. Para quien no sepa qué es una Kinect, aquí tenéis un enlace. Sabía que era posible conectarla a Processing y que, a través de Processing era posible también comunicarse con Arduino. Así que me puse a bichear por internet y encontré decenas de páginas con recursos y tutoriales que me permitieron lograr hacer mi primer experimento. Básicamente consiste en una estructura de bombillas, sacada de un trabajo anterior, que se conecta a Arduino mediante una placa de relés. Los relés encienden y apagan las luces mediante las órdenes que lanza Arduino que, a su vez, está siendo controlado por un programa muy simple hecho en Processing. Mediante la librería OpenKinect para Processing, ideada por Daniel Shiffman, he hecho un patch que reconoce el movimiento de lo que se ponga delante de la cámara Kinect a una cierta distancia. Existen 4 zonas de influencia (sólo porque no tenía una placa con más de 4 relés) y cada una hace que se encienda un juego diferente de luces a través de la controladora Arduino. He utilizado para la comunicación serie la librería Firmata de Arduino. Para empezar, no está mal. He de seguir investigando...