Wednesday, February 21, 2007

Controlling Two DC Motors w/Arduino

Using an H-Bridge (L293E or SN754410) + Arduino it is possible to control the direction of two DC motors. Using the Physical Computing tutorial (DC Motor Control), I've added an additional motor + delay function, which sets timed intervals for each direction. This allows the powered mirror mount to move up/down + side to side. By adjusting the delay intervals + order of code the motor begins to move in a complex way.

Here's is the modified Arduino code:

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

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() {
{
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, HIGH); // set leg 2 of the H-bridge high
digitalWrite(motor3Pin, LOW); // set leg 2 of the H-bridge low
digitalWrite(motor4Pin, HIGH); // set leg 2 of the H-bridge high
delay(5000); // set time 'on'
digitalWrite(motor1Pin, HIGH); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
digitalWrite(motor3Pin, HIGH); // set leg 3 of the H-bridge high
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
delay(5000); // set time 'on'
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, HIGH); // set leg 2 of the H-bridge low
digitalWrite(motor3Pin, HIGH); // set leg 3 of the H-bridge high
digitalWrite(motor4Pin, LOW); // set leg 4 of the H-bridge low
delay(5000); // set time 'on'
digitalWrite(motor1Pin, HIGH); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
digitalWrite(motor3Pin, LOW); // set leg 3 of the H-bridge high
digitalWrite(motor4Pin, HIGH); // set leg 4 of the H-bridge low
delay(5000); // set time 'on'

}
}

Video - the motion of the powered mirror mount.

Graphite Forms: rounded cone shell

I've started to place the soft graphite mixture onto objects to create shell-like forms. The test was successful, in that the dried graphite held the object form + texture and was relatively easy to remove. One problem was that the shell forms were not very strong; the test piece broke during hand-sanding. I am currently testing new forms with increased thicknesses.

Here are some images of the test piece; the inside of the form has a smooth surface.

DC Motor Control Using an H-Bridge

Here is a link to an Arduino tutorial about controlling motors using an H-Bridge chip. The H-Bridge allows the current to be alternated causing the motor to function in forward and reverse.

DC Motor Control

Monday, February 19, 2007

Drawing bot w/housing

The intent of is to allow the drawing bot to sway + erode away as it come in contact with the drawing surface. The device will be suspend + set into motion by an arduino controlled dc motor. The drawing surface will shift back and forth on another arduino controlled set of motors (from a powered car mirror). The movements caused by both the bot + surface will cause the graphite form to wear in an unpredictable manner; with continually wear, the graphite will build up upon the surface potentially activating and/or changing other circuits. Arduino will be used to take in analog data (photocells, switches, etc.) and out digital data determining forward/reverse of the motors + possible speed. The analog inputs/sensors will collect information from the site + record it in a form of drawing.

The changing environments will wear the graphite uniformly causing the device's movement to be constantly altered (effecting drawing consistency, pattern, speed, weight, etc.).

Tuesday, February 06, 2007

Monostable Timer Circuit

This circuit produces a pulse when triggered; the pulse is a given amount depending on the following equation: T = 1.1 x R1 x C1, where T is time. The circuit I am using is a slight variation to this one; the pulse is given to darlington transistor, which closes a switch until the pulse is completed. When this switch is closed another circuit is activated ie: motor, LEDs, etc. I plan to develop a switch mechanism that is activated by the movement of passing trains, traffic, and pedestrians. The switches would become the triggers for the circuit.

Parts list: 555 Timer, ULN2804 Darlington Transistor, 10 uf capacitor, 100k resistor, 27k resistor, 1k resistor, LED, dc motor, 2-9 volt batteries, and various resistors to adjust the time period. PCBoard.

PCBoard schematic:
Link: 555 Timer Circuits

Sunday, February 04, 2007

Simple Drawing Bot

After letting the second mixture of graphite, clay flour, charcoal, and water dry, it was attached to the end of a 12V motor. In the first attempt (first video) a lower-end 9 volt battery was used which didn't provide enough power to overcome the friction of the drawing surface. In the second test (second video) a higher quality 9 volt battery was used which allowed the device to move on its own. The graphite form dried hard enough to not crumble completely away, though some smal piece did break off. The next step is to test different forms/shapes/moulds of graphite and observe the way the act on the surface.

Here is the first video:
Here is the second:
This image is of the outcome of both tests.

Thursday, February 01, 2007

Generative Drawing

Generative Process - Using electricity to power mechanical devices, which move in an algorithmic-type motion. I started to experiment +
create machines capable of drawing; with the intention that a drawing was no longer an end product but a constantly evolving act. This act will continue to be informed by the devices, but also by their environments.

Activators

Wind - relatively unpredictable when consider in long period of time, changes day to day, if not throughout the day. Air movement fluctuates which adds complexity to the system. Creates motion + potentially controlled movement. The amount of air movement increases as height increases. Potential uses: moving contacts together + apart, propelling objects + components to cause movement, changing orientation of device and/or component + sensors.

Sound - relatively unpredictable, certain locations have repetitive sounds; Disraeli Freeway, railway, etc. Used with microphones + circuitry to active device and/or components. 'Cinderella' circuit; using sound to activate motors, LEDs, etc. Limited to range + potential circuitry complications.

Light - predictable, in terms of sunlight, from a day to day basis. Complexity is added when other sources of light are made possible; headlights, changes in shadows, street lights, etc. Photocell may be used as resistors, triggers for relays (with appropriate circuitry), and detection of light. Solar panels and/or photovoltaic cells with or without circuitry (solar engines) to produce electric current + voltage. Used to power and/or activate device + components. Used as resistors in circuitry. Limited to areas receiving light; lack of sunlight may cause device to be non-functional for a given period of time, which adds complexity to the system.

Movement - predictable in ways, sources of movement include; air, trains, automobiles, doors, etc. Vibrations + movements from these or similar objects may cause switches to be opened + closed momentarily, thus activating devices + components.

Various combinations of these attributes could be used with each device, which would ultimately add a multitude of complexity to the system. This would allow for an unpredictable outcome in terms of product and/or behavior. If the system is able to be sustained by solar power then the device could left for long periods of time without attention and/or service.

Moulding Graphite

I've started to experiment with making my own graphite, which is to be used as the drawing medium for the devices. The process involves combining powdered graphite, clay flour, and water into a sludge-like mixture for moulding. Once moulded the mixture is left to dry, then fired at 1800 F (1000 C). The following images show the products used + the preliminary tests.

Products - Graphite lubricant (used by locksmiths) + Clay flour (for sculpting + modelling).
Powdered contents - finely ground graphite.
Powdered contents.
Simple forms created after mixing graphite, clay flour, and water in a small bag. (2:1, graphite to clay ratio)
The forms are left to dry before firing, which I haven't tested yet. Some concerns: strength of the fired graphite, darkness of lineweight (small dried, unfired pieces appear to draw on paper relatively well). To address these concerns more clay may need to be added to the mixture + charcoal powder for darkness.

The industrial manufacturing process is described at: How a pencil is made

Site: plan + section + detail

Plan of railway bridge + surrounding area @ Annabella.
Section showing the relationship of the roadway + sidewalk to the bridge + its opening. Height from: road to underside of bridge - 13'0", sidewalk to underside of bridge - 11'6", underside of bridge to topside of bridge - 6'0".
Detail of the opening between two of the bridge structures (opening of 18" to 36")

Drawing bot

Drawing bot: the motor of the device is weighted causing it to vibrate around the drawing surface on three graphite legs. Complexity is added to the movement when + if the legs start to wear unevenly. The activators for the device could be; changes in light qualities, vibrations + movement of vechicles, trains, + pedestrians, sound and wind.

Monday, January 29, 2007

Annabella Rail Bridge

View from railway tracks facing west towards Watkins building + Disraeli bridge.

Railway track on bridge.

Potential opening for housing drawing device; open above to railway + below to pedestrian walkway and street, multilayers of movement.

Opening + connection point of bridge.

Friday, January 26, 2007

Underpass @ Annabella Ave.

Point Douglas - Underpass @ Annabella - Areas surrounding the Watkins building + underpass.

Watkins Building + Underpass

The site I am focusing on is the area surrounding the Watkins building + the railway + underpass. The intent is to use the air movements, vibrations, sounds, + forces of passing trains to activate drawing bots. There appears to be numerous suitable locations for placing devices + housings. At this point, I need to develop what these drawing bots are going to be, how they are going to operate + be housed by the site, what aspects of the site will influence the process of drawing, can on-site materials by used as drawing media (rust, gravel, stone, ice, water, etc.) I am also exploring means to cast graphite parts + components for the devices; with the idea that the bot will eventually wear itself away. A major concern about achieving this is access to a 1800 F (1000 C) oven for firing the graphite, clay, and water composition.

Wednesday, January 24, 2007

Solar Engine Components

2V - 200 mA Solar Cell

Capacitor

3904 Transistor + 3906 Transistor + 1381 Voltage Trigger

2.2k Resistor

Solar Cells + Solar Engines

Solar engines collect + store electric charge temporary until a capacitor is filled (ranges in time based on capacitor size); once full, the capacitor dumps the charge powering the device for a given amount of time. This process repeats itself with varying time frames, for charging + discharging, in relation to sunlight levels.

Freeform schematic

Circuit Schematic

Template for PCB board

Info + Images: 1381 Solar Engine

Sunday, January 21, 2007

Point Douglas

A variety of potential housing sites for drawing devices...

Railway bridge crossing Annabelle
Connection opening for potential sensors + device
Railway bridge crossing Higgins
Opening to above + drainage pipe
Disraeli Bridge North: opening + ice
Potential post for mounting device + sensors
Remaining hydro poles: potentially mounting location
Potential post for mounting device + sensor
King Motel on Higgins: possible roof location
Transformer structure: potential electrical fields to control devices

Monday, January 15, 2007

Drawing Machines One + Two

Drawing Machine One w/switching + sound device

Drawing Machine Two w/additional motor

Drawing produced by both mahcines

Monday, November 27, 2006

Soundbot

This device is made from a sound-producing keychain + two pieces of piano wire. The piano wire is soldered to the circuit so that when the two pieces connect noise is produced. The intent is to move contacts like these across a graphite drawing, so the graphite completes the circuit.

The topside of the device; the piano wire contacts are kept close to the drawing surface as its is moved.The underside of the device; the speaker.

Here is a video of how it functions + sounds:

Friday, November 24, 2006

Drawing device

Automated drawing device

This device uses a small DC motor to rotate a disc at its center point. A piece of graphite is attached to the plastic so that it is able to make contact with the surface of the paper. When the motor is activated, the graphite and disc spin producing lines on the drawing surface.

The deviceThe drawing surfaceMultiple drawing devices suspended from above onto the vertical drawing surface (or placed on a horizontal surface). The devices are able to move around the surface creating + distrupting circuits.

Friday, November 17, 2006

Drawing + Projection

Here are some projected images of a portion of the painting 'The Confusion of Tongues' - Gustav Dore, 1865.

From the projector...
...to the drafting board.