May 21, 2010 0
TiltTickTock
Quick update on the Tilt-Tick-Tock (hourglass) concept outlined in the previous post – here it is!
The device translates the ‘turning over’ action associated with the traditional egg-timer into the revealed words ‘tick and ‘tock’ – archetypal (and now redundant) by-products of clock mechanisms.
Basically, an Arduino micro-controller has been pre-programmed to send alternate bursts of full and zero power to a DC motor from a 9v battery ONLY when the device is turned over (because the action of turning over is detected by a mercury tilt sensor).
See TiltTickTock in action below:
Full power is supplied for 3.4 seconds (a time established by trial and error) and this rotates the single aperture in the yellow acrylic ‘face’ around to the approximate position of the written words – ‘tick’ and ‘tock’.
It should be pointed out that a servo motor would give far better ‘accuracy’ in designating the exact position of the ‘face’ if that were desired. The challenge here was to make something interesting with these quite blunt and clumsy components and actually, the inevitable inaccuracy of the DC motor solution (due to friction, difference of power, loss of power etc.) works well here as an interesting analogue to the the problems faced by the early manufacturers of the mechanical clocks in keeping to time (prior to the design of various escapement, containing and regulating the mechanism.) If you observe carefully you will be able to see that the TiltTickTock runs slightly ‘fast.’
Another aspect of the device which is aesthetically interesting is the way in which the circular aperture of the yellow ‘face’ appears to eclipse the white ‘tick’ and ‘tock’ elements – indirectly invoking movements of the earth, sun and moon (by which we measure the passage of time).
Images of parts/process, various schematics (thanks to Fritzing) and arduino code below:
components/tools identified:
- Arduino microcontroller
- breadboard
- DC Motor
- mercury tilt sensor
- TIP120 transistor
- 10Kohm resistor
- 9 v batteries (for both arduino and motor)
- wires
- various circular lids etc. to test rotation
- clear plastic sweetie box is excellent for containing projects!
…add ‘tick’ and ‘tock’ circles (authentic typed and re-scanned from my typewriter) – ‘face’ simple vector cut out using laser-cutter:
//TiltTickTock by John O’Shea
//Monday 10th May 2010
//MRes. Digital Media DOING Module – Jamie Allen
//Newcastle University Culture Lab// Arduino code allowing tilt sensor to trigger motor via transistor
// micro-project translating ‘egg-timer’ metaphor to ‘escapement’ metaphor
//via electronics and code// constants won’t change. They’re used here to
// set pin numbers:const int tiltPin = 7; // the number of the tilt sensor pin
const int transistorPin = 9; // the number of the transistor pin// variables will change:
int tiltState = 0; // variable for reading the tilt sensor statusvoid setup() {
// initialize the transistor pin as an output:
pinMode(transistorPin, OUTPUT);
// initialize the tilt pin as an input:
pinMode(tiltPin, INPUT);
}void loop(){
// read the state of the tilt sensor value:
tiltState = digitalRead(tiltPin);// check if the tilt sensor is activated.
// if it is, the transistor is open and the clock programme runs:
if (tiltState == HIGH) {
// turn transistor on:
digitalWrite(transistorPin, HIGH);
delay(3400);
digitalWrite(transistorPin, LOW);
delay(1000);
}
else {
// close transistor (clock circuit off):
digitalWrite(transistorPin, LOW);
}
}/*
this code is a hybrid of:
Button
2005 by DojoDave <http://www.0j0.org>
modified 17 Jun 2009
by Tom Igoe
This example code is in the public domain.http://www.arduino.cc/en/Tutorial/Button
&
High Current Loads @ ITP Physical Computinghttp://itp.nyu.edu/physcomp/Tutorials/HighCurrentLoads
with reference to Arduino site:
http://www.arduino.cc/en/Tutorial/TiltSensor
*/











Recent Comments