You are on page 1of 11

CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Another Brick in the Wall


Mapping Dynamic Video Input to brick rotations

Maggie Nelson
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Another Brick in the Wall

+ =
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Another Brick in the Wall

Breaking down the barrier

http://soundbiteblog.com/category/consumer-credit/
Currently, though bricks remain a fundamental
building component worldwide, a brick wall is viewed
as a very static object. The notion of brickwork, es-
pecially in the United States, often goes hand in hand
with historical or classically-style construction, but is
rarely seen as a progressive or modern materal. In
fact, the brick wall is more often associated with a bar-
rier or hurdle to be surpassed.
This prevailing point of view does not have to be
the norm. I propose that, with reference to a couple of
important architectural precents, and with the help of
Arduino, the perception of a brick wall can be radically
changed. By redesigning the brick unit and enabling it Static, standard Brick Wall
with technology, the notion of the brick wall as a barrier
can be disproved and deconstructed.

Breaking down the barrier http://soundbiteblog.com/category/consumer-credit/


CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Another Brick in the Wall

Precedent: Office dA

In the context of expanding the potential of basic


architectural building blocks, there are several precedents
for the unusual implementation of brickwork. The firm Office
dA began to explore this field in their use of terra cotta blocks,
bricks, and tiles in their design for the Casa la Roca. In this
instance, the standard spacing between bricks was modified
to develop patterns and a techtonic of folding within the
structural wall; square terra cotta blocks were implemented
in varied degrees of rotation in order to establish a gradient
of transparency in a structural block wall. While this project
was never constructed, the reinterpretation of standard
building blocks remains a model project.
Casa La Roca

All images: http://www.officeda.com

Casa La Roca: Brick Wall Casa la Roca: Block detail


CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Another Brick in the Wall

Precedent: Gramazio + Kohler

More recently, the Swiss architects Gramazio


and Kohler have established themselves as leaders in
the innovative use of brickwork in structural walls and
facade design. Their work is facilitate by a robot which
constructs specifc brick patterns based on the codes
produced by the architects; this is a necessary part of the
process as their wall designs would be virtually impossible
to construct otherwise. Working in research at the ETH
Zurich as well as in an architectural practice, this pair has
notable constructed a winery in Switzerland where brick
spacing and rotations convey an image of grapevines
three-dimensionally.
Gantenbein Winery

Gantenbein Winery: Interior Gantenbein Winery: Brick detail All images: http://www.gramaziokohler.com/
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Another Brick in the Wall


2x
While precedents in research towards expanding
the implementation of the brick unit have a dynamic
x
feel, they are of course static systems. In this project,
I propose to animate a standard brick wall to create a
2x
truly dynamic, interactive system. By capturing video
input from the space adjacent to the wall2x2xand mapping
brightness values to brick rotations, it is possible to x
create a three dimensionalxinterpretation
x of the image.
Furthermore, as bricks rotate, they will allow for various
levels of light to penetrate the wall and into the space,
2x
adding another dimension to the translation of video.
To further develop this concept of brick
rotations in three-dimensions x and the corresponding
transparency they allow, two factors were altered
from standard brick dimensions. First, the brick was
imagined as a hollow, tubular block, to allow more light 2x
to penetrate this building element. Secondly, form of
the brick unit was also adjusted to allow for a close
x
spacing without the risk of the bricks hitting each other. 60º
This involved a parallelogram shape rather than a
2x
typical rectangular one, thus giving the ability to rotate
2x2x
freely up to 90º (see diagram at right).
x
60º
In order to use video
x x input to control brick
60º
60º
rotations, there was an extensive set of codes to
be constructed (see opposite page). The data flow
2x
involved first using Processing to capture video input,
then conditioning the data to average and divide the
image relative to the numberx of brick units. Then, this
60º
data was sent to Arduino, where a brightness value
for each portion of the image is converted to integers
and mapped to brick rotations. The diagram on the
opposite page explains the data flow of the system.
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Arduino Circuit diagram


CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Processing Code:

int number=4;
int maxAngle=90;
import JMyron.*;
JMyron m;
import processing.serial.*;
Serial myPort;
int n=int(640/number);
void setup(){
size(640,480);
frameRate(10);
m = new JMyron();
m.start(width,height);
m.findGlobs(0);
myPort = new Serial(this, Serial.list()[1], 9600);
rectMode(CORNER);
noStroke();
}
void draw(){
String st=””;
m.update();
int[] img = m.image();
for(int x=0;x<number;x+=1){
float grayness=brightness(img[240*width-x*n]);
int graymapped=int(map(grayness,0,255,0,maxAngle));
fill(grayness);
rect(x*n,0,n,480);
st=st+nf(graymapped,3)+”0”;
}
println(st);
st=”<”+st+”>”;
myPort.write(st);
}

void mousePressed(){
m.settings();
}
public void stop(){
m.stop();
super.stop();
}
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Arduino Code:

#include <Servo.h> String getString(){


Servo MyServo[4]; String inString;
char temp[4]; while(Serial.available() > 0)
String text; {
int n=4; char aChar = Serial.read();
String inString; if(aChar == ‘<’)
char inData[17]; {
int index; started = true;
boolean started = false; index = 0;
boolean ended = false; inData[index] = ‘\0’;
void setup(){ }
Serial.begin(9600); else if(aChar == ‘>’)
pinMode(2,OUTPUT); {
pinMode(3,OUTPUT); ended = true;
pinMode(4,OUTPUT); }
pinMode(5,OUTPUT); else if(started)
MyServo[0].attach(2); {
MyServo[1].attach(3); inData[index] = aChar;
MyServo[2].attach(4); inString.concat(aChar);
MyServo[3].attach(5); index++;
} inData[index] = ‘\0’;
void loop(){ }
inString=getString(); }
for(int i=0;i<4;i++){ if(started && ended)
text=inString.substring(i*4,((i*4)+4)); {
text.toCharArray(temp,4); started = false;
int x = atoi(temp); ended = false;
MyServo[i].write(x); index = 0;
delay(200); inData[index] = ‘\0’;
} }
} return inString;
}
CONCEPT CONTEXT PRECEDENTS LOGIC PRODUCT

Final Prototype, with video input mapping to brick rotation

You might also like