Announcements

November 24, 2007
Reading for November 27th, are now posted. Enjoy!

October 2, 2007
To upload your thoughtless acts, create a new assignment page like any other lab. You'll see "Thoughtless Acts" listed as one of the assignment options.

May 24, 2008
This site has been archived and is no longer editable. Stay tuned for the next version, coming in the fall!


Assignment 6 - Spiral Drawing Contraption

Project Members: 
Wesley Willett

Assignment 6 - Powered Spiral-drawing Device

I started with the intention of making a powered spiral-drawing machine in the spirit of a Spirograph. Also a good occasion to bust out my Erector Set! Unfortunately, I found myself working with a fairly limited set of gears which didn't interface well with the motor. The final device uses a pully to drive an arm on which one large gear rotates around a smaller one. A piece of compass lead is attached to this larger gear so that it draws an oscillating arc as the large gear rotates around the small one. The motor is attached to the Arduino and activated using a force sensor. This allows the speed - and thus the quality - of the drawing to be varied manually.

Components Used

Breadboard (1)
Arduino Decimila Board (1)
Resistor (1)
Cable lengths (6)
Jumpers (1)
DC Motor (1)
Force Sensor (1)
Erector Set Components
- Girders and blocks (~10)
- Wheels (2)
- Pully (1)
- Worm Gear (1)
- Large Gear (1)
- Small Gear (1)
- Axels (4)
- Nuts and Bolts (many)
- Compass Lead (1)
- Rubber Band (1)

Images & Video

Spiral Drawing ContraptionSpiral Drawing Contraption

 

 

Spiral Drawing in Action

 

 

 

Spirals sketched by the deviceSpirals sketched by the device

 

Arduino Code

Basically just the default motor control code.

int forcePin = 0; // select the input pin for the force sensor
int motorPin = 9; // select the pin for the Motor
int val = 0; // variable to store the value coming from the sensor
void setup() {
Serial.begin(9600);
}
void loop() {
val = analogRead(forcePin); // read the value from the sensor, between 0 - 1024
Serial.println(val);
analogWrite(motorPin, val/4); // analogWrite can be between 0-255
}


Comments

Comments from TAs

Awesome project! Good job getting the gears to interact, even with your limited set of parts. As other students start wanting to work with gear systems, it would be great if you'd offer your expertise and experience in helping them out!

I like the idea of an electronic spirograph. It would be interesting to think about how to apply the affordances of different inputs to make the device more interactive. For example, could a sensor change the color, thickness, shape, etc. of the designs being created by your device?


Powered by Drupal - Design by Artinet