Tag: luz

De la linterna mágica al proyector DIY

Desarmando un mp4 chino para probar como se ve la proyección con un proyector de diapos. Mp4 desarmandos=2. Funcionando=1.

Además de pruebas con el proyector de diapos (un Braun rescatado de mi infancia que funciona a la perfección, con la misma lámpara original!), estoy probando con un Gucki de Agfa para ver diapos.



Cámara oscura/Linterna mágica

“Alguien aludía al oro, triste y obstinado sueño de una alquimia venal, y daba la infalible fórmula: con el sol en el cenit, abrir un agujero en la tierra, dejar que la luz del astro lo invada y lo llene, taparlo bruscamente para aprisionar los rayos temblorosos, y esperar algunos siglos; quien abra por fin esta cripta del sol, encontrará la luz cuajada en oro.”
CORTAZAR, J., “La alquimia siempre” en Catálogo Tomasello. Ed. Ministerio de Cultura Madrid 1985, p. 89.


Objeto lumínico

Objetos en funcionamiento con fotos obtenidas en www.dentrodecasa.net


Pruebas de conexión Processing-Arduino

circuito lampara arduino

Realizamos pruebas ejecutando Processing y conectando con Arduino para encender y apagar las lámparas al detectar presencia mediante la webcam.

Primero comprobamos el funcionamiento de relé usando baterías, luego probamos conexión de la computadora con arduino encendiendo dos leds y finalmente conectamos las lámparas a 220v.

Componentes: transistor BD137, rele JQC3F, diodo, resistencia.

.

mesa de trabajo

Mesa de trabajo

arduino

arduino

arduino-luz

arduino lampara 220v

protoboard

protoboard


Construcción del objeto lumínico

planos del objeto

planos del objeto

Montaje

Montaje del objeto y prueba de funcionamiento

Paso a paso de la construcción del objeto lumínico-casa con Poliestireno plegado, basado en plano de “casa para armar”.


Detección de presencia con Processing

processing

Processing ejecutando la detección de presencia, determinando un centro de masa de la imagen umbralizada

El código de Processing para detectar la presencia de un espectador y en consecuencia apagar o enceder las luces de los objetos lumínicos es el siguiente:

// uso "descriptores" para contar los px blancos y determinar presencia
// import codeanticode.gsvideo.*;
import processing.serial.*;
import cc.arduino.*;
import processing.video.*;              // MAC

Arduino arduino; //objeto que representa el arduino para processing

// GSCapture cam;
Capture cam;                            // MAC
PImage imgref;
PImage imgout;

color ca;
float ra,ga,ba;
color cb;
float rb,gb,bb;
color ct;
float rt,gt,bt;

float L;
float umbral;
float ubicacionX;

float area;
float xcm,ycm;

void setup() {

 size(320, 240);

 // cam = new GSCapture(this, 320, 240);
 cam = new Capture(this, 320, 240);      // MAC
 imgref = createImage(cam.width,cam.height,RGB);
 imgout = createImage(cam.width,cam.height,RGB);
 arduino = new Arduino (this,Arduino.list() [0],57600); //constructor, this,5760"COM4",baudios (velocidad de firmata)
 arduino.pinMode (8,Arduino.OUTPUT); //en arduino es pinMode (9,OUTPUT)
 arduino.pinMode (9,Arduino.OUTPUT); //en arduino es pinMode (9,OUTPUT)
}

void draw() {
 //mapeo umbral y posicion en eje X
 umbral = map (mouseY,0,width,0,256);
 ubicacionX = map (xcm,0,width,0,100);
 println (ubicacionX);

 if (cam.available() == true) {
 cam.read();
 transformar();
 image(imgout,0,0,width,height);
 //println (area);
 fill(255,0,0);
 rect (xcm,ycm,5,5);//dibujo rect rojo sobre el centro de masa
 }
 if (ubicacionX < 33 ) {
 arduino.digitalWrite (8,Arduino.HIGH);//pin en que conecte luz 1
 delay (1000);}
 else {
 arduino.digitalWrite (8,Arduino.LOW);
 delay (500);
 }
 if (ubicacionX > 66 ) {
 arduino.digitalWrite (9,Arduino.HIGH);//pin en que conecte luz 2
 delay (1000);}
 else {
 arduino.digitalWrite (9,Arduino.LOW);
 delay (500);
 }
 }

void transformar() {

 area = 0;
 xcm = 0;
 ycm = 0;

 for (int j=0;j<cam.height;j++) {
 for (int i=0;i<cam.width;i++) {

 ca = cam.get(i,j);

 ra = red(ca);
 ga = green(ca);
 ba = blue(ca);

 cb = imgref.get(i,j);

 rb = red(cb);
 gb = green(cb);
 bb = blue(cb);

 rt = abs(ra - rb);
 gt = abs(ga - gb);
 bt = abs(ba - bb);

 L = (rt + gt + bt)/3;

 if (L<umbral) {
 rt = gt = bt = 0;//px negro
 } else {
 rt = gt = bt = 255;//fuerzo px blanco
 area++;//le sumo 1 al area inicial para sumar px blancos
 xcm += i;
 ycm += j;
 }

 ct = color(rt,gt,bt);

 imgout.set(i,j,ct);

 }
 }
 if (area != 0) {//!= "no es igual" xq si divido x 0 daria error!
 xcm = xcm/area;
 ycm = ycm/area;
 } else
 xcm = ycm = 0;
 //normalizo el area
 area = 100*area/(cam.width*cam.height);

 //ubicacionX = map (xcm,0,width,0);//quiero obtener ubicacion en X

}

void keyPressed() {

 if (key == ' ') {
 imgref.copy(cam,0,0,cam.width,cam.height,0,0,imgref.width,imgref.height);
 } 

}

Impresión backlight giratoria

impresion backlight

impresion backlight

lamparita

lamparita que soporta la impresion backlight

La impresión se dobla en forma cilíndrica, se une en la parte superior con un remache sobre el que apoya la punta de un alambre. El calor de la lámpara asciende, escapa entre los cortes de la impresión y lo hace girar.

Una lámpara de 25w genera el calor suficiente para hacerlo girar pero la calidad de la imagen proyectada no es óptima.

Estoy realizando pruebas con distintas lámparas, pensando en la economía (mejor resultado con menores recursos).


El objeto lumínico

Casa semitransparente con carrousel iluminado en su interior

Objeto-casa con la imagen de hogar impresa en backlight en el interior, sobre el carrousel


Primeros bocetos Instalación

boceto casa para armar

Modelo de casa para armar en PVC blanco semitransparente

Con estructura de carrousel en su interior, el propio calor de la lámpara hace girar un carrousel que tiene la imagen impresa, proyectando la imagen adherida hacia el exterior, (sugiriere mas que lo que describe…)

Primer boceto de instalación

Observando las imagenes de dentrodecasa.net pienso en que los usuarios que envian una foto de su hogar proveen un instante, una postal del interior de su casa… deciden que zona, objeto constituye parte de su hogar, entonces, imaginé de que forma, fuera de la pantalla sería posible mostrarlos simultaneamente o en secuencias clasificadas y ordenadas o aleatoriamente…


  •  

    junio 2019
    L M X J V S D
    « ago    
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
  • Copyright © 1996-2010 dentro de casa 2011. All rights reserved.
    Jarrah theme by Templates Next | Powered by WordPress