Biônicos (Alberto Salgado Harres e Igor Abreu)

De wiki da nuvem
Ir para: navegação, pesquisa

A virtualidade como prática antropofágica

Biônicos é um grupo de desenvolvimento em arte, programação e eletrônica iniciado no Núcleo de Novos Organismos (NANO/UFRJ) em março de 2013. É formado por integrantes de meios interdisciplinares como estudantes de design, artes visuais e educação artística. Ao longo dos meses de trabalho em conjunto têm sido desenvolvidas pesquisas em áreas como estética glitch com databendings, programação criativa, eletrônica básica, arte sonora e composição de imagens digitais.


A̮̜͗̄̄͂̎̊̅ ͖̘̰̣̆ͬc̱̘̙̪̾ͭ̈̅ͯ́́͡o͈̤̜͉̖̻̲̔̓͐̒̆͜ͅn͍̥̬͍̟͔͔ͥͮ͗͒͟t̟̪̼̹͗̇̿̏͡͡r̩͇͗ͩ͒ͪ͆ͤ͋̾͘͝ị͕̬̬͕̠͓͈͂ͧ͂́ͩͅb̷̤̪̱̜̠̏ͫͫǘ͚̜͇̔̋̋̀͛ͦ̏ͨͅî̜̩̀͟ç̢̀ͣͮ͏̫͞ḁ̴̱̃̉͑͆ͦ͐o̩͉̜ͬ͜ ̷̦͈͇̼̣̘̪͆͌̿̐̔͒̕m̜͍̞̯̩̺̓̈́̐͊i̴̛̭ͣl̨͕̭̩͕̣̓̇ͫ͒̒̐̀ͅi̴͉̹̦͇̜̠̤̍o͎͈̭̟̹̼̍ͩͣͭ̚͘͝ņ͍̜̱͖ͨͯ̈́ͬͧͧͪ̾͝á̠̯̠ͪͥ͒̌͐̊ͤ̇͘͝r̷̹̙̖͈̅ͫ̍̊ͭͮ͌ͫ̕͠į̠̯̮͖̑̐̓̄ͣ͌͘a̟̹̱̝̔́͘͡ ̜̪͚͉̰̭͚̾͑d̳̓̎͜͡ȩ̫͎̭ͫͥ́͑ͯͦ̓̀͘ ̵̻͖ͥͬ̈́ṱ͓͓͋̓̑͗ͅo̶͂̄͒̓ͫͤ̓͂҉̻͉͇ḑ̝̗̭̳͈͉ͯ͛̿͂o̷̧͙̹͇̜̫͓̓̈ͨͣͩͮs̡͇̣̬͑̐̉͐̕͜ ̡̛͙̖̺͔̺̗̮͚͆͟ọ̧̩̟̟̫̪̬̐͛̓̑̀̔̋͆s͕̑ͯͦ̀̆͜͞ ̲̻͇̋́̅ͩ͘͠ȩ̤̳̮̩̝̖̗̽͂̊͛ͩ͘r̝͕̗̪͈̣͊̓̀̅͋̀r̛̮̘̞͙̼͎̰̉̏̋ͧͦoͯ̐͆̈́͂ͣͮ̂҉̤̰̤̬͉͖̼s̶̡͙͇͛ͩ͋̓̎̋̋ͦ́ͅ

Composição de imagens com elementos captados no ambiente

Desenvolvemos dois códigos que dialogavam com o espaço da casa, um baseado em captação de som e outro que conjugava a temperatura da Serra e da luminosidade ao longo do dia.


Antropofagia do som


Som ambiente

5.png


Lá menor

Lamenor2.jpg


Código em Processing para os gráficos acima

import ddf.minim.*;

Minim minim;

AudioInput in;

void setup()

{
  size(1000, 600, P3D);
  minim = new Minim(this);
  
  // use the getLineIn method of the Minim object to get an AudioInput
  in = minim.getLineIn();
  
  // uncomment this line to *hear* what is being monitored, in addition to seeing it
  in.enableMonitoring();
}

void draw()

{
  background(0);
  stroke (255);
  
  // draw the waveforms so we can see what we are monitoring
  for(int i = 0; i < in.bufferSize() - 1; i++)
  {
    line( i, 100 + in.left.get(i)*4000, 200+i*2, 100 + in.left.get(i)*100 );
    line( i++, 300 + in.left.get(i)*6000, 500, 300 + in.left.get(i)*400 );
  line( i, 500 + in.left.get(i)*4000, 200+i*2, 500 + in.left.get(i)*100 );
    
  }
}



Representação abstrata da luz e calor


1 1.jpg


2 2a.jpg


3 3.jpg


Código em Processing e Arduíno para as imagens acima

(esse código foi conjugado com 1 sensor ldr e 1 sensor de temperatura)


Processing

/ Desenho

float r; // Altura do raio
float circ; 
float x, y; // variáveis para definição do movimento espiral.
float theta; // Movimento circular
float corTemp, corLdr; 
float accr; // Aceleração do crescimento do raio

void setup() {
 size(1024, 800); // Stage size
 // Print a list of the serial ports, for debugging purposes:
 println(Serial.list());
 
 // Open whatever port is the one you're using.
 String portName = Serial.list()[0];
 myPort = new Serial(this, portName, 9600);
 
 // Valores iniciais
  background(0);
  r = 0;
  theta = 0;
  accr = 1;
 
 noStroke();
 
}
void draw() {
    translate(width/2, height/2); 
}

void serialEvent(Serial myPort) {
 // read a byte from the serial port:
 int inByte = myPort.read();

 // Add the latest byte from the serial port to array:
 serialInArray[serialCount] = inByte;
 serialCount++;
 // If we have 2 bytes:
 if (serialCount > 1 ) {
  valueLdr = serialInArray[1];
  valueTemp = serialInArray[0];
  // print the values (for debugging purposes only):
  println(valueTemp + "\t" + valueLdr + "\t" );
  serialCount = 0;
 }
 
  
     // DESENHO

  
  theta+=0.025; // Progressão do ângulo.
  
  x++; // coordenada x do movimento circular
  y++; // coordenada y do movimento circular
  
  accr += 0.025;
  r += 0.0005 * accr; // Aumento do raio
  
  // Movimento circular
  float x = r * cos(theta); 
  float y = r * sin(theta);  
 
  // Cor
  noFill();
  corTemp = map(valueTemp, 100, 0, 255, 0);
  stroke(corTemp, 0, 255-corTemp, valueLdr);
 
  // Círculos
  ellipseMode(CENTER);
  ellipse(x, y, r/15*valueLdr/100, r/15*valueLdr/100);
  if (r>width) {
    r=0;
  }
 
 }


Arduino

/* Sensor test sketch
  for more information see http://www.ladyada.net/make/logshield/lighttemp.html
  */
 
#define aref_voltage 3.3         // we tie 3.3V to ARef and measure it with a multimeter!
 
 
 
 
//TMP36 Pin Variables
int tempPin = 0;        //the analog pin the TMP36's Vout (sense) pin is connected to
                        //the resolution is 10 mV / degree centigrade with a
                        //500 mV offset to allow for negative temperatures
int tempReading;        // the analog reading from the sensor

int ldrPin = 1;

int ldrRead;

int inByte = 0;   // incoming serial byte


 
void setup(void) {
  // We'll send debugging information via the Serial monitor
  Serial.begin(9600);   
 
  // If you want to set the aref to something other than 5v

  
}
 
 
void loop() {
 
  inByte = Serial.read();
  
  tempReading = analogRead(tempPin);  
  
  ldrRead = analogRead(ldrPin);
 
 int tempOut = map(tempReading, 15, 125, 0, 100);

  Serial.write(ldrRead);
  Serial.write(tempOut); 


  delay(50);
}


Oficina de Glitch Arte

Compartilhamos com outros residêntes uma oficina de introdução a estética Glitch e alguns diferentes métodos para a criação de imagens Glitch.


Ofic1.jpg



ǒ̷͔̼̪͈̮͍̘̙͍̘̇͊ͦ́̌̾́̂́̂̏͊͝f̵̖̻̗̗̥͍̰͙̘͉̟̱͚ͣ̋͛̐̊ͣ͛ͦ̃͗͗̀͘͢͞iͭͦ̈̑̎̐ͪ̌ͫ̇͜͝͏̜̻̱̻͓͓̖̥̪̠͓͇̞̭̼̬̭ͅͅc̷͐͒̍̀̆̈́ͣ͆҉̖̗̮̮̝̙̞i̡̛͈̯͍͔͈͙̺̰̜̎̏͊̿ͧ͗ͨ̄̌̾̌́̔ͯ́̋͛̀͊̕͟n̷̴̨͚̲͔̭̄̍͆̇̑̈ͪ̀̓͒ͬ̏́́ͦ̽͛͆͢a̪̳̤̳̣̙̥͙̥̥̝͖͙͍̩̱͉ͫ͐͗͊̃̽̑̒̅͂ͪ͆͛̊͜͠ ̨̝͎̝͔͑́̊̍̎͊̋ͥ̅͊̎͜c̡͎̫͇̠̥̭̮͕̪̃̓͆̿͌́͢͡ŗ̛̝͖͚̟̜͖̰̭͈̲͕̤͇͎̻̻̦̲̠͋͊̔̔͆͊͒̄͌̋̂̓͒͜͞i͌̒̑̂̃ͬͪͨͣ̇ͨ͏̢̮̺̗̠͉̝̟̫͈̲̥͡à̧͕̙͈̭̌̂ͪ̈́͆ͥͩͭͤ̈́͑͌̎ͦ̀́͘͟ç̶̵̛̻͚̣͎̪͔̳̣͉̝̦̙̤͋ͧ̾̇̈́͝ãͩ̿ͥͧ̐͋̚͏̡͚͈̬̤̟͇̞͈͉̹͍͖͚͈̲̠̯̬͝ͅǫ̵̷̡̟̱͙͚̭̲̭̻̗̹̳ͩͫ̆̃͆͝ͅ



Oficina2.jpg