Sunday, April 22, 2007

Institute: Programme

PROGRAMME - Movement is a defining aspect of Point Douglas; the train bisects the area, water defines its three sides, and the Disraeli bridge creates further disconnection form the rest of downtown. At another level, good and materials are collected, stored, and moved from place to place, while subtle changes are caused by weather and climate. The institute stems from an interest in how movement is continually redefining the site, surrounding areas in Point Douglas, and Winnipeg as a greater whole.

The institute will observe various forms of movement occurring throughout Point Douglas representing them through drawing and architecture. The primary intent is that the institute will act as long term recording device, layering data onto a surface. This data is received and recorded from movements in the surrounding areas and is amplified by light and sound-creating mechanisms. The light is projected through drawing surface and onto the upper portions of the spherical space. This portion contains light sensors which respond as the surface shifts and rotates, causing a variety of tones to be produced. The rhythm of this sound depends upon the movement and the contrast of light and shadow; caused by the markings left of the surface. The changes in the data effects the sound being produced; theoretically a single composition is never heard twice. The institute continues to create sound, project light, and record constantly until their is nothing left to record or it is not needed.

SCANNING THE SKY - Sensors scan the sky waiting for movement, changes in color, weather, + light qualities; small portions are analyzed and are broke down into patterns of light + dark. This data is collected, compared, + used to manipulate the shifting surface; depending on the level of change.
FORCES + VIBRATION - Sensors record the force exerted by passing trains at both end of the Annabella bridge; the data from each side is compared + used to to determine the rotation of the drawing surface. Similar sensors are placed throughout Point Douglas recording changes related to force + vibration; the Red River, the Disraeli bridge, etc.
Plan of Institute
Section AA
Section BB
South Elevation

Drawing Machine (recording movement throughout Point Douglas)


Close up of drawing surface + track system.

The track system.

A collection of images showing the movement of the device. The amount of data being sensed determines where the pen will draw; if the vaule is low it will be near the center (higher values are recorded on the outter portions).

Sunday, April 08, 2007

Prototypes

I constructed two versions of the device; one made out of hardboard w/pendulum mechanism for rotation and another made with acrylic w/motor for rotation. The hardboard version was relatively unsuccessful, in that the material caused too much friction and flexibility. The pendulum motion could not overcome the friction caused by the drawing point. In the acrylic version the friction was greatly reduced + the motor allowed the device to overcome the friction caused by the drawing point. A problem common to both is that the ink drawing point dries too fast. I've tried removing the inner part of the pens; the inner part is wrapped inked soaked fabric. This fabric easily leaves marked on the acrylic (see the acrylic version). The lines are wide and need to be controlled. I'm going to look for a more suitable solution such as a calligraphy pen, etc.

This image is of the hardboard version of the device; the armature was moved by hand to stimulate the drawing process. Pendulum motion and track system was not successful in overcoming friction.
Detail image of hardboard track + gears.
This is the acrylic version; the armature was able to rotate around the surface with the aid of a DC motor. The parts reduce the friction making the track system functional.
Detail of the acrylic track + gears; the ink lines are wide.

Thursday, March 29, 2007

Institute: sound+vibration

Here is a section, in progress, showing a central sphere structure with etching surface within. The color lines trace the shifting movement of the surface; these lines are the limits of the projected light onto the above dome.

Wednesday, March 21, 2007

Site Context

Site: Point Douglas - Adjacent to Watkins building + rail-line. The surrounding radius is the area of focus where vibrations will be recorded + re-introduced into the environment. Primary interests include; Able Wholesale building, railway @ Annabella, + Disraeli freeway.
Institute - located along the westside of the Watkins building, mainly underground + hidden.

Tuesday, March 20, 2007

Site: Watkins building

Southwest corner of Watkins building. The institution is located at and below ground level next to the Watkins building and rail-line. This location facilitates the institute's function: recording (physical changes + vibrations on surrounding environment) + producing other vibrations in the forms of sound and movement. Immediately north are three rail-lines with regularly passing trains; to the southeast is the partially collapsed Able warehouse. This institute will collect information about changes occurring within + above the soil surface; ie: passing forces/movements on the surface, decaying/collapsing architecture, etc. The intent is to use the building to display (record visually) + amplify vibrations occurring in the surrounding area.

West wall of the Watkins building; near rail-line.
East wall of the Watkins building; facing north.
Relationship of Watkins building to Able warehouse.
West wall of Able Wholesale; loose + fallen debris.
North wall of Able Wholesale; partially collapsed facade.
North wall detail of Able Wholesale; debris.
Northwest corner of Able Wholesale; missing walls.

Sunday, March 18, 2007

Revisit: Schillinger's Solution, 1931

"I propose to develop, with the aid of the theremin, projects for various machines for the automatic composition of music. L.S. Theremin considers such machines entirely feasible.... Under such conditions, musical works can be broadcast over the radio at the same time that they are being composed by the machine. The final aim of this work is to construct a synthetic machine capable of works of a higher order and with a greater degree of perfection than is accessible to living composers. The machine will be given only a general physico-mathematical idea, and the execution will proceed automatically." 'The Ether Wave Salon', pg. 134-135, "Theremin: Ether, Music, and Espionage" - Glinsky, 2000. (Image also from Glinsky, 2000)

Schillinger proposes a device capable of composing music, these machines will produce beat, rhythm, tone, pitch, etc. on their own (with the help of an operator, "music engineer"). He saw the work of Theremin as the beginning of the "...second half of the history of music." Schillinger desired a shift from traditional towards a new age of electronic instruments, these ideas, most likely, stemmed from his believe that, "...in an age of technology, art forms should be engineered and executed with the same scientific rigor and formulas as the building of bridges or skyscrapers -- taking advantage of the latest scientific tools." pg. 131, Glinsky, 2000.

Continuing with this, I propose a space which will record vibrations (from soil movements, traffic, erosion, decay, etc.) by translating sensor data into movement. This data will guide/determine the markings/etchings left on a coated transparent surface. As the device continues to record, the coating will be further etched away; this will allow light to be projected through. These 'lines of light' will produce a pattern/rhythm that can be 'played' while the device etches (using similiar technology to the optical theremin). The result is a continually changing + sound creating drawing surface. The sounds could potentially be given back to the surrounding environment; audible or as vibrations.

The etching is adapted from Balint Bolygo technique using carbon coated glass which is etched with pendulum guided point. Here is an example of his work, 'Lissajous Light Drawings':

Wednesday, March 07, 2007

Scriptographer - Growth script

Scriptographer works with Adobe Illustrator and allows the user to develop and use new tools for repetitive creation. Here is an example of the 'Growth' script:

The original line drawn:The resulting form with a growth rate of 0.95:The center portion of the form:
Download Scriptographer: Scriptographer PC + OSX

Balint Bolygo - Polycycle 2

"Polycycle 2 is installed onto large glass surfaces, and will draw or etch a slowly accumulat -ing rhythm of patterns over the duration of the show. The piece explores the nature of mark making onto a transparent/semi-opaque surface. The size of the mechanism is variable and thus can be adapted to suit a specific space or site. The resulting images explore the dialectic relationship between opposites and reversals and embody the fundamental nature of forces that brought it into existence." ~ BalintBolygo.com


Balint Bolygo's Work + Film: Balint Bolygo

Adaptive Machines/Bricks

"Self-replicating, Self-sustaining and Adaptive Machines - CCSL

A potentially new way to build adaptive spaces out of generic robotic forms. Seemingly simple although no doubt devilishly complicated to develop, graceful in their movements and strangely cute considering their sandy brown color. With half a tongue in cheek, I imagine these little robots being the bricks and mortar of the interactive architecture world." ~ Interactive Architecture


Video link: CCSL Adaptive Mac
Website: CCSL - Cornell Computational Synthesis Lab

Tuesday, March 06, 2007

Drawing devices + surface

Here are some more graphite/clay forms created by moulding and then hand-sanding dried forms.
This image shows the graphite forms attached to the 12V DC motors.
These images are of the shifting drawing surface w/attached device, which tilts using a powered car mirror mount.
The last image is of the drawing/markings create by the device on the tilting surface. Unfortunately a lack of support for the device + lack of voltage made it difficult for the motor to overcome the friction of the surface. This left the markings limited.

H-Bridge Board + Arduino

Completed H-Bridge board with major components attached + connection wires for Arduino. This board allows for two motors + four inputs slots (for sensors, switches, etc.) to be create with Arduino. Arduino is now able to control the direction of two motors as well as have four inputs (if necessary) to detect + control. The following are two sets of code; one used to control the drawing surface + the other to control the drawing device.

Controlling the Drawing Surface:

/* Controlling Two DC Motors Using H-Bridge + PhotoCells
* ------------
*
* Uses an H-Bridge (L293E or SN754410) to control the direction of two DC motors.
* Additional DC motor added. Photocells used to control direction of each motor.
* Modification to Physical Computing tutorial:
* http://itp.nyu.edu/physcomp/Labs/DCMotorControl
*
* Modified 28 February 2007
* By Kyle Janzen
* http://kylejanzen.blogspot.com/
*
* based on an original by Physical Computing @ ITP
*/

int photo1Pin = 1; // select analog input pin for photocell1
int photo2Pin = 2; // select analog input pin for photocell2
int val1 = 0; // variable to store the value coming from photocell1
int val2 = 0; // variable to store the value coming from photocell2
int motor1Pin = 3; // H-bridge leg 1
int motor2Pin = 4; // H-bridge leg 2
int motor3Pin = 5; // H-bridge leg 3
int motor4Pin = 6; // H-bridge leg 4
int speed1Pin = 9; // H-bridge enable pin 1-2
int speed2Pin = 10; // H-bridge enable pin 3-4

void setup()
{

// set all the other pins you're using as outputs:
pinMode(motor1Pin, OUTPUT);
pinMode(motor2Pin, OUTPUT);
pinMode(motor3Pin, OUTPUT);
pinMode(motor4Pin, OUTPUT);
pinMode(speed1Pin, OUTPUT);
pinMode(speed2Pin, OUTPUT);

// set speedPin high so that motor can turn on:
digitalWrite(speed1Pin, HIGH);
digitalWrite(speed2Pin, HIGH);

}

void loop()
{
val1 = analogRead(photo1Pin); // set val1 to equal reading of photo1Pin
val2 = analogRead(photo2Pin); // set val2 to equal reading of photo2Pin
if (val1 < 280) {
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, HIGH); // set leg 2 of the H-bridge high
delay(val2*5); // determines time interval that motor is activate
digitalWrite(motor3Pin, HIGH); // set leg 3 of the H-bridge high
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
delay(val2*6); // determines time interval that motor is activate
digitalWrite(motor1Pin, HIGH); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge high
delay(val2*5); // determines time interval that motor is activate
digitalWrite(motor3Pin, LOW); // set leg 3 of the H-bridge low
digitalWrite(motor4Pin, HIGH); // set leg 4 of the H-bridge high
delay(val2*6); // determines time interval that motor is activate
}else if (val1 > 350){
digitalWrite(motor1Pin, HIGH); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
delay(val2*2); // determines time interval that motor is activate
digitalWrite(motor3Pin, HIGH); // set leg 3 of the H-bridge high
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
delay(val2*2); // determines time interval that motor is activate
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, HIGH); // set leg 2 of the H-bridge low
delay(val2*2); // determines time interval that motor is activate
digitalWrite(motor3Pin, LOW); // set leg 3 of the H-bridge low
digitalWrite(motor4Pin, HIGH); // set leg 4 of the H-bridge high
delay(val2*2); // determines time interval that motor is activate
}else{
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
digitalWrite(motor3Pin, LOW); // set leg 3 of the H-bridge low
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
delay(val2*5); // determines time interval that motor is deactivate
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
digitalWrite(motor3Pin, LOW); // set leg 3 of the H-bridge low
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
delay(val2*6); // determines time interval that motor is deactivate
}
}

Controlling the Drawing Device:

/* Controlling the Speed of a DC Motor Using H-Bridge + PhotoCell
* ------------
*
* Uses an H-Bridge (L293E or SN754410) to control the speed of a DC motors.
* Photocells used to control the speed of the motor. Analog PWM (pins 9-11) creates
* pulse for motor speed, which is controlled by photocell input.
* Modification to Physical Computing tutorial:
* http://itp.nyu.edu/physcomp/Labs/DCMotorControl
*
* Modified 3 March 2007
* By Kyle Janzendf
* http://kylejanzen.blogspot.com/
*
* based on an original by Physical Computing @ ITP
*/

int photo1Pin = 1; // select analog input pin for photocell1
int val1 = 0; // variable to store the value coming from photocell1
int motor1Pin = 3; // H-bridge leg 1
int motor2Pin = 4; // H-bridge leg 2
int speed1Pin = 9; // H-bridge enable pin 1-2


void setup()
{

// set all the other pins you're using as outputs:
pinMode(motor1Pin, OUTPUT);
pinMode(motor2Pin, OUTPUT);
pinMode(speed1Pin, OUTPUT);

// set speedPin high so that motor can turn on:
analogWrite(speed1Pin, HIGH);

}

void loop()
{
val1 = analogRead(photo1Pin); // set val1 to equal reading from photocell
if (val1 < 475) { // stops motor is reading is less than #
digitalWrite(motor1Pin, LOW); // set motor1pin low
digitalWrite(motor2Pin, LOW); // set motor2pin low
}else{
digitalWrite(motor1Pin, HIGH); // set motor1pin high
digitalWrite(motor2Pin, LOW); // set motor2pin low
analogWrite(speed1Pin, val1/10 ); // determines speed of motor using analog PWM
}
}

H-Bridge PCBoard

PCBoard Process using LaserJet Toner Method found at: Printed Circuit Boards for the Masses. The first step is to create a schematic of the circuit to be printed; this image is then printed on glossy paper with laser printer. The printed image/toner is then transferred to the clean copper board with a hot iron; after this the copper + paper are placed in a hot water bath to soak. Once paper start to soften (10-30 mins) it is removed leaving behind the laser ink toner (some traces of paper may have to be removed). When the paper is removed the copper board is placed in an acid bath; occasionally agitating the fluid + checking the board. After 30+ mins, all of the undercovered copper dissolves leaving behind the circuit. The last step to is clean the remaing copper traces with acetone to remove any paper + ink. At that remains is drilling the holes. Finish. Another option for touching up the ink toner or drawing the circuit is to use a permanent marker to create/fix traces. (Please refer to the link above for a detailed description).

Here is a few images of the soaking process:

Paper surfaces

By using Rhino + lofting I was able to create 3D paper surfaces w/templates for lasercut support structures. The curved surface created in Rhino was 'unrolled', plotted then cut + scored. The paper was then attached to the laser cut structure. the intent was to develop a complex surface for the drawing devices to move + make markings. The following are images of the templates + realized surface.

Saturday, February 24, 2007

H-Bridge PCBoard + Arduino Code

PCB layout for connecting the H-bridge to Arduino w/four input slots (for photocells, resistors, switches, etc.) The L293E (SN754410) is placed in center with traces for connecting to Arduino, the two motors, 4 photocells, resistors, capacitor, etc. The four inputs allow for a variety of sensors and/or switches to be on one board which can be used as inputs for Arduino.

The following is a revised version of Arduino code, which allows two photocells to control the direction each motor is rotating. The motors will rotate in one direction if exposed to light + another if the light level is reduced. Changes to the threshold amount determines how sensitive the sensors react.

/* Controlling Two DC Motors Using H-Bridge + PhotoCell
* ------------
*
* Uses an H-Bridge (L293E or SN754410) to control the direction of two DC motors.
* Additional DC motor added. Photocells used to control direction of each motor.
* Modification to Physical Computing tutorial:
* http://itp.nyu.edu/physcomp/Labs/DCMotorControl
*
* Modified 23 February 2007
* By Kyle Janzen
* http://kylejanzen.blogspot.com/
*
* based on an original by Physical Computing @ ITP
*/

int photo1Pin = 1; // select analog input pin for photocell1
int photo2Pin = 2; // select analog input pin for photocell2
int val1 = 0; // variable to store the value coming from photocell1
int val2 = 0; // variable to store the value coming from photocell2
int threshold1 = 410; // threshold1: adjust to light conditions
int threshold2 = 250; // threshold2: adjust to light conditions
int motor1Pin = 3; // H-bridge leg 1
int motor2Pin = 4; // H-bridge leg 2
int motor3Pin = 5; // H-bridge leg 3
int motor4Pin = 6; // H-bridge leg 4
int speed1Pin = 9; // H-bridge enable pin 1-2
int speed2Pin = 10; // H-bridge enable pin 3-4

void setup()
{

// set all the other pins you're using as outputs:
pinMode(motor1Pin, OUTPUT);
pinMode(motor2Pin, OUTPUT);
pinMode(motor3Pin, OUTPUT);
pinMode(motor4Pin, OUTPUT);
pinMode(speed1Pin, OUTPUT);
pinMode(speed2Pin, OUTPUT);

// set speedPin high so that motor can turn on:
digitalWrite(speed1Pin, HIGH);
digitalWrite(speed2Pin, HIGH);

}

void loop()
{
val1 = analogRead(photo1Pin); // set val1 to equal reading of photo1Pin
if (val1 >= threshold1) {
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, HIGH); // set leg 2 of the H-bridge high
}else{
digitalWrite(motor1Pin, HIGH); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
}
val2 = analogRead(photo2Pin); // set val2 to equal reading of photo2Pin
if (val2 >= threshold2) {
digitalWrite(motor3Pin, LOW); // set leg 3 of the H-birdge low
digitalWrite(motor4Pin, HIGH); // set leg 4 of the H-bridge high
}else{
digitalWrite(motor3Pin, HIGH); // set leg 3 of the H-bridge high
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
}
}

Thursday, February 22, 2007

Graphite Forms + Devices

Conical shell form attached to a 12V DC motor. The cone's base was sanded to an angle which causes the device to be off-balanced which gives a rougher, more sparatic movement. This lack of balance, in rotation, should give the device uneven wear patterns as well as complex + changing markings on the drawing surface.

Device resting upright on slanted base.
Device on side w/view into the hollow center of cone.
Device on side.
Graphite shell - approx. 1/4 of a sphere w/sanded edges + three points.