Proyecto I&P 2023 - Paper Light Box / Grupo 1

De Casiopea


TítuloProyecto I&P 2023 - Paper Light Box / Grupo 1
Tipo de ProyectoProyecto de Curso
Palabras Claveproyectoarduino
Período2023-2013
AsignaturaInteracción y Performatividad
Del CursoInteracción y Performatividad 2023
CarrerasDiseño
Alumno(s)Kaithlyn Murga, Catalina Zaro Vivanco
ProfesorFranco Gnecco

TALLER I&P 2023 - PROYECTO FINAL

La innovación y la creatividad pueden encontrarse hasta en lo más mínimo como el uso del papel y este, puede generar un sin fin de resultado los que terminan en una intervención artística, puede generar volumen por medio de la rugosidad o los pliegues consiguiendo que algo "plano" consiga una nueva magnitud. ¿Cómo podemos hacer lo tridimensional por medio de planos, manteniendo esta planitud?.

PAPER LIGHT BOX
Kaithlyn Murga y Catalina Zaro


Se tiene como objetivo la fusión del arte y la funcionalidad, teniendo un proceso de diseño el cual busca mezclarse con el trabajo de electrónica utilizando Arduino, este proyecto consiste en la construcción de una caja la cual por medio de capas presentara una imagen tipo cuadro, estas capas presentaran partes de la imagen total, con el fin de dar el efecto de tridimensionalidad con estas capas superpuestas a su vez con luces led y un circuito por medio de Arduino, se busca dar una luz a la caja consiguiendo de este modo una lampara que proyecta una imagen tridimensional, se realiza en estas capas un dibujo por medio de AutoCAD y posteriormente se cortan en la "cortadora laser" luego colocadas en esta caja de forma lineal (sobrepuestas) y se combinan para formar una imagen tridimensional sorprendente que se transforma por completo cuando se enciende la lámpara.

Nuestro proyecto busca fomentar la creatividad y la expresión artística, teniendo la posibilidad de personalizar sus propias imágenes tridimensionales y explorar las posibilidades infinitas de este concepto.

Materiales para el proyecto

  • Arduino UNO
  • IR remote module
  • Luces LED RGB
  • Transistor
  • Resistor
  • Protoboard
  • Cables
  • Cartón dúplex
  • Cartón kraft
  • Pegamento UHU

PROTOTIPADO Y PRUEBAS

Estudio y pruebas de LED RGB

PROCESO DE CONSTRUCCIÓN

Trabajo con AutoCAD

Se llevo a cabo la construcción de la caja para la lampara por medio de AutoCAD, trabajando con polilíneas y diseñando sus caras laterales, cara frontal, superior e inferior a la vez se realizaron los paneles de la imagen tridimensional, separándose en tres capas las cuales se cortarían posteriormente en cartón dúplex (capas de imagen) y cartón kraft grueso (caja).

Plantillas (caja y laminas)

  • Laminas las cuales se trabajan por medio de AutoCAD, estas posteriormente se llevaron a la cortadora laser para poder realizar el corte tanto de la caja como de las imágenes.
Plantilla de la caja de 20x15
Plantillas de la imagen tridimensional

Trabajo en MadLab y proceso de construcción

ARMADOCAJA-I&P-KFMR-CAZV 1.jpg
ARMADOCAJA-I&P-KFMR-CAZV 2.jpg
ARMADOCAJA-I&P-KFMR-CAZV 3.jpg
ARMADOCAJA-I&P-KFMR-CAZV 4.jpg

Código de lámpara

//Library
#include "IRremote.h"
//Constant
const int receiverPin = 9;
#define ledRPin 10
#define ledGPin 5
#define ledBPin 6
//Variable
int power=50;
bool ledState=0;
IRrecv irrecv(receiverPin);         
decode_results results;           
void setup(){
  Serial.begin(9600);
  Serial.println(F("IR Receiver Decoder"));
  irrecv.enableIRIn(); // Start the receiver
  pinMode(ledRPin,OUTPUT);
  pinMode(ledGPin,OUTPUT);
  pinMode(ledBPin,OUTPUT);
  lightRGB(255,0,0);
}
void loop()     /----( LOOP: RUNS CONSTANTLY )----/
{
  if (irrecv.decode(&results)){ // IR signal received?
      convertIR();
      irrecv.resume(); // receive the next value
  }   
}
void convertIR() // convert IR code
{
 Serial.print(results.value);
 Serial.print(F(" -> "));
  switch(results.value)
  {
  case 0xFFA25D: Serial.print(F("1")); // ROJO
      lightRGB(255,0,0);     
      break;
  case 0xFF629D: Serial.print(F("2")); // VERDE
      lightRGB(0,255,0);
      break;
  case 0xFFE21D: Serial.print(F("3")); // AZUL     
      lightRGB(0,0,255);
      break;
  case 0xFF22DD: Serial.print(F("4")); // MAGENTA
      lightRGB(255,0,255);
      break;
  case 0xFF02FD: Serial.print(F("5")); // AMARILLO  
      lightRGB(255,255,0);
      break;
  case 0xFFC23D: Serial.print(F("6")); // CYAN     
      lightRGB(0,255,255);
      break;
  case 0xFFE01F: Serial.print(F("7")); // ROSA    
      lightRGB(255,0,128);
      break;
  case  0xFFA857: Serial.print(F("8")); // BLANCO     
      lightRGB(255,255,255);
      break;
  case 0xFF906F: Serial.print(F("9"));  // NARANJO  
      lightRGB(255,200,0);
      break;
  case 0xFF6897: Serial.print(F("*"));  // MORADO   
      lightRGB(151,14,235);
      break;
  case 0xFF9867: Serial.print(F("0"));  // APAGADO    
      lightRGB(0,0,0);
      break;
  case 0xFFB04F: Serial.print(F("#"));  // VERDE    
      lightRGB(18,245,114);
      break;
  case 0xFF18E7: Serial.print(F("UP"));      
          power=power+10;
          power=min(power,100);
      break;
  case 0xFF10EF: Serial.print(F("LEFT")); // MORADO AZULADO     
      lightRGB(79,68,239);
      break;
  case 0xFF5AA5: Serial.print(F("RIGHT")); // ROSA FUERTE     
      lightRGB(239,68,97);
      break;
  case 0xFF4AB5: Serial.print(F("DOWN"));      
          power=power-10;
          power=max(power,0); 
      break;
  case 0xFF38C7: Serial.print(F("OK"));   // LAVANDA   
      lightRGB(202,164,215);
      break;
            
  default:
      Serial.print(F(" unknown "));
      // lightRGB(0,0,0);
  }
  Serial.println();
  delay(500);
}
void lightRGB(int r, int g, int b){
  if(0){
      r=255-r;
      g=255-g;
      b=255-b;
  }
  analogWrite(ledRPin, r*power/100);
  analogWrite(ledGPin, g*power/100);
  analogWrite(ledBPin, b*power/100);
}

Código funcionamiento de luces

int rojo = 10;
int verde = 9;
int azul = 8;

void setup() {
  // put your setup code here, to run once:
  pinMode(rojo, OUTPUT);
  pinMode(verde, OUTPUT);
  pinMode(azul, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  analogWrite(rojo, 255);
  analogWrite(verde, 0);
  analogWrite(azul, 0);
  delay(250);
  
  analogWrite(rojo, 0);
  analogWrite(verde, 255);
  analogWrite(azul, 0);
  delay(250);

  analogWrite(rojo, 0);
  analogWrite(verde, 0);
  analogWrite(azul, 255);
  delay(250);

  analogWrite(rojo, 255);
  analogWrite(verde, 255);
  analogWrite(azul, 255);
  delay(250);
}

Código de botones, colores y sensor

   1: 0xFFA25D
   2: 0xFF629D
   3: 0xFFE21D
   4: 0xFF22DD
   5: 0xFF02FD
   6: 0xFFC23D
   7: 0xFFE01F
   8: 0xFFA857
   9: 0xFF906F
   *: 0xFF6897
   0: 0xFF9867
   #: 0xFFB04F
   UP: 0xFF18E7
   LEFT: 0xFF10EF
   RIGHT: 0xFF5AA5
   DOWN: 0xFF4AB5
   OK: 0xFF38C7

  • En el siguiente video se lleva a cabo una muestra con el trabajo de reconocimiento del sensor, junto a la ejecución de ambos códigos anteriormente presentados, de este modo se puede notar una leve diferencia a lo largo del video pasando por las siguientes partes:
1. EJECUCIÓN DE CODIGO DE COLORES SIN ESTAR LIGADO AL CONTROL Y EL SENSOR 
2. PROCESO DE RECONOCIMIENTO DEL SENSOR POR EL CONTROL
3. CONFIGURACION DE CODIGOS DE COLOR Y BOTONES, LOS CUALES REACCIONAN A CADA ORDEN DEL CONTROL

RESULTADO FINAL

Lámpara y capas tridimensionales

lampara armada con sus capas
ángulo total de la lámpara
primera vista a las separaciones
segunda vista a las separaciones
primer acercamiento
segundo acercamiento
tercer acercamiento

Colores de la lámpara

color rojo
color verde
color azul
color morado
color amarillo
color cyan
color magenta
color blanco
color rosado



Paleta de colores de la lámpara