May 25, 2009

theDayAfterDeadline

Bueno, muchas cosas nuevas desde la última actualización:

La entrega del proyecto final de Introducción a las tecnologías de la imagen I fue el jueves pasado; presenté el theLightPlotter en su estado actual de desarrollo, con su prototipo modelo László terminado y funcional, las primeras pruebas de positivado, los vídeos, la documentación y el código. El robot-plotter se controla por teclado, ha faltado el programa de mapeado de datos para hacerlo automático.

Hoy han salido las notas: ¡tengo un 9.5! No han puesto ninguna matrícula de honor, así que el viernes vendré a pelearme por una.

Más cosas; el proyecto en sí:

theLightPlotter: aBitOfTheory

La fotografía consiste en la impresión de la imagen de un objeto (esto es, el conjunto de rayos lumínicos reflejados por su superficie) sobre un soporte fotosensible. El fotograma o rayograma, utilizado por Man Ray, era una forma de aplicar los principios dadaístas de descontextualización del objeto cotidiano a un proceso fotográfico. Consistía en colocar ojetos sobre papel fotosensible para luego expnerlos a la luz, de forma que las sombras y contornos de los objetos quedaban impresos en su superfice.

Para un profesor de la escuela Bauhaus de Weimar, László Moholy-Nagy, el fotograma era la técnica que le permitía explorar los diferentes comportamientos de la luz en el espacio del que, consideraba, era articuladora . László utilizaba objetos como moduladores de luz, filtros con los que elaboraba sus fantásticas sombragrafías (del inglés shadowgraph). Investigaba con vidrios de distinta transparencia, prismas, lentes, aceites e incluso pequeñas linternas como fuentes de luz móviles.

thelightPlotter parte del trabajo de este artista-investigador. En lugar de estar subyugadas a la voluntad creadora de László, sus pequeñas linternas móviles serán medios de masas en miniatura, vagos transmisores de información.

-Extraído de theLightPlotter: dossier (fase "László").
Con todos ustedes, ¡theLightPlotter 1.0 "László"!



theLightPlotter 1.0 "László": probando el prototipo from zkauba on Vimeo.


Este es el dispositivo que monté en el laboratorio fotográfico para hacer las pruebas. La pantalla del portátil está enfundada para evitar que vele el papel, que se colocará en el portanegativos frente al plotter. También hay que tapar un poco el plotter para minimizar la fugas de luz.

theLightPlotter 1.0 "László": pruebas en el laboratorio from zkauba on Vimeo.


Con la luz apagada, las bandas de luz se ven muy claramente:


theLightPlotter 1.0 "László": en acción from zkauba on Vimeo.


Y estos son los resultados de las pruebas (muy rápidas, las hice el día antes de la entrega por la noche):




May 13, 2009

It works.

Por fin funciona. He conseguido controlar ambos servos de forma simultánea, utilizando las teclas a, d, w, s (como en el Half-Life), desde Processing y a través de Arduino, cada motor con su propia velocidad.

Me ha llevado casi todo el día, pero de aquí al final del proyecto sólo hay un paso.

Mañana videos, fotos, código y demás.

May 12, 2009

Scripting

Acabo de escribir las primeras pruebas para los scripts del lightPlotter. No las he probado, pero se supone que permiten controlar la rotación del eje del servo mediante las teclas A y S.

Esta es la parte de Processing, que envía a Arduino una A si se está pulsando la letra A y una S si se está pulsando la S:
import processing.serial.*;

Serial myPort;

/* --- uncomment this part to check Arduino's serial port's number
(bracketed value, usually in COM8) ----
println(Serial.list());
*/



void setup() {
myPort = new Serial(this, Serial.list()[0], 9600); //Serial constructor
}

void draw() {
if (keyPressed) {
if (key == 'A') {
myPort.write(65);
}
if (key == 'S') {
myPort.write(97);
}
}
}



Y esta es la de Arduino, que escucha lo que le dice Processing sobre la tecla pulsada y gira el eje un número de grados igual al valor "gap" hacia un lado u otro según la que sea:
/*theLightPlotter: simple servo control
------------------
Listens to the serial port and waits for a Processing signal that controls the rotation of a servo
('A' key rotates one position clockwise; 'S' key rotates one position counter-clockwise). */

#include

#undef int
#undef abs
#undef double
#undef float
#undef round

Servo lampServo;
int trigger = 0; // 'trigger' takes the value Processing is emitting
int servoPos = 0; // current absolute position of the servo's axis
int gap = 3; // rotation step

void setup() {
lampServo.attach(9); // servo attached on PIN 9
Serial.begin(9699); // sets serial frequency in bauds
}

void loop() {
trigger = Serial.read();

if (trigger == 'A') {
servoPos = servoPos + gap; // axis' position incremented by gap
lampServo.write(servoPos);
delay(500);
}

if (trigger == 'S') {
if (servoPos >= gap) { // works only if current position equals or is higher than 'gap'
servoPos = servoPos - gap; // axis' position decremented by 'gap'
lampServo.write(servoPos);
delay(500);
}
}
}



El código está adaptado a partir de este tutorial y de las documentaciones de Arduino y de Processing.

Fotos (!!!)









not the city
collage de fotografía analógica B&N sobre cartón pluma
formatos variados

PD: Gracias a Alex por el posado ; )

May 11, 2009

¡Servos!

¡Ya he probado los servos! ¡Y funcionan! Son geniales: diminutos, muy potentes y hacen un ruidito muy majo al girar. Además, si añades una fuerza opuesta al giro, empujan aún con más fuerza.

theLightPlotter: ¡los servos funcionan! from zkauba on Vimeo.

PD: Perdonad la falta de sonido, no sé por qué no se grabó. Es una pena, porque no se oye el cuic, cuic del eje al girar.

May 08, 2009

Más WIPs

Por aquí los ejercicios finales de pintura:
Este es el paisaje, con la primera capa y marcando un poco los planos de la perspectiva.
Y este el autorretrato, ya bastante avanzado. Le falta más contraste, definir un poco mejor los planos y el entorno. Aquí, un zoom:
Nada más de momento.

PD: ¡Han llegado los servos desde Hong Kong! son diminutos y muy majos; esta tarde iré a probarlos con el Arduino, y ya subo fotos y los nuevos planos.

PD': Los LEDs están medio descartados. Los de alta potencia son o muy caros, o tardan semanas en llegar (por eBay). Tengo una lámpara LED que no uso y que estoy pensando en hackear, pero lo más probable es que use una bombilla.

May 07, 2009

Informe relámpago

de la situación del proyecto lightPlotter. Los servos están al llegar y tengo unas láminas de plástico translúcido preciosas para la estructura, pero el tema de los LEDs se ha complicado.

He optado por un rediseño completo, integrando el tema de las máscaras, con una fuente de luz diferente (probablemente una bombilla halógena) y constantemente encendida y un único grado de libertad, de forma que los datos interpretados en el fotograma final se reducirán a dos (sin intervención por mi parte; tres interviniendo en el proceso), lo que hace todo mucho más sencillo, incluida la temática de las imágenes.

La maquinita tendrá dos posiciones (horizontal y vertical) y generará un patrón de barras verticales u horizontales de distinta densidad, como un código de barras pero en bonito :P.

Más detalles en cuanto abran la sala de ordenadores y pueda escanear.

May 05, 2009

Por otra parte...

Otro work in progress (de las mil cosas que tengo que entregar estas semanas) esta vez, pictórico:Sin título
Óleo sobre tabla

50 x 70 cm
(la foto de referencia está sacada en la estación de tren de Gijón, Jovellanos)

May 04, 2009

The Deadline Is Nigh!


Bueno, a tres (¿dos?) semanas de la entrega, esto es lo que queda por hacer:
  • Terminar el script de Processing
  • Escribir el script de Arduino
  • Desarrollar un discurso y encontrar una fuente de datos adecuada
  • Montar la versión final del Plotter
Como no soy muy metódico, voy a hacer primero el último punto.

Más cosas, tengo por aquí un esquema de funcionamiento:

Y un boceto del nuevo prototipo de Plotter (se me ocurrió por la calle y no tenía papel a mano):


Funciona con la fuente de luz estática y los motores girando máscaras de cartulina, con lo que necesitan mucha menos potencia, en lugar de girar verticalmente el LED con un motor y horizontalmente ambos aparatos con el otro (ver primera figura de esta entrada).

April 07, 2009

The So Very Great Find

I know I have some explanations to write (i promised so), but now...

Tasty news!

I've been surfing through the Processing documentation, trying to figure out how to actually extract raw data from wherever I'll take it and take it into Processing itself. And I think I've found something!

It's always about keywords. Data flow, visualization, mining, mapping... input, source data... You have very little time to document yourself about a topic, you need to go straight to the point and so you need to find the correct keyword to find where the point is! In this case the keyword was MySQL...

It's not that MySQL is what I was looking for, but that looking for MySQL was the rigtht thing to do! And so I found this very interesting book: "Visualizing Data: Exploring and Explaining Data with the Processing Environment", by some Ben Fry of the University of Bath. So simple it hurts.

It is late. There be more next time.

April 02, 2009

Provisional title: theLightPlotter

[Título provisional: theLightPlotter]

¡Saludos, lectores conocidos y desconocidos!


Esta es la primera entrada que escribo, pero como no tengo mucho tiempo iré al grano. theLightPlotter es un berenjenal en el que me he metido, como propuesta para el proyecto final de la asignatura Introducción a las tecnologías de la imagen, que se imparte aquí en Cuenca en el primer curso.


Lo que planteo es un sistema de creación que combine imágenes de naturaleza puramente digital (no obtenida a partir de métodos analógicos adaptados al medio digital, como puede ser Photoshop) con fotografía plástica, inherentemente analógica.

Para esto he elegido combinar data visualization (visualización de datos) con luminogramas (placas fotográficas "pintadas" con luz). El esquema del mecanismo es un poco complicado (publicaré un gráfico que lo explique, lo prometo :P); como resumen: en el ordenador se traducen datos crudos a una composición gráfica y de ahí a coordenadas para, a través de una placa Arduino (es) controlar la orientación de una linterna LED que "pintará" las placas, componiendo un mural abstracto a partir de los datos originales. Como añadido, las placas las intervendré pintando con el revelador, de forma que sólo queden reveladas las zonas que me interesen.

Mañana más.

: :

Greetings, fellow readers!

Being this my first post I'm sorry to announce I'll go directly to the point, because I haven't got much time right now. There is this really hard project I've got into called theLightPlotter, which is my final work-proposal for the Introduction to Image Technologies class imparted here at Cuenca.

The thing is a creation media to mix artistic, plastic photography with essentially digital imaging -that is data-related more than Photoshop-like imagery. This is accomplished by setting a "robotic" light that maps some data-input flow onto a light-sensitive (photographic emulsion-coated) surface via Processing and Arduino.

There will be more, tomorrow.