Steampunk Compass
Having built a few puzzle box games recently, and having some components left over I thought I would build a functional Steampunk Compass.
Based around a Arduino Duemilanove this is a really quick and simple build. Taking reading from a digital compass the Arduino controls a servo to position a clock hand.
Based around a Arduino Duemilanove this is a really quick and simple build. Taking reading from a digital compass the Arduino controls a servo to position a clock hand.
The Parts.
Here is a complete list of the required parts;
For the Electrics;
Box/Case
Small servo
Arduino Duemilanove
HMC6352 Compass Module http://www.sparkfun.com/products/7915
Mini breadboard
Female-female hookup wire
Male Headers
9V battery and connectors
For the StreamPunk;
4 clock cogs
1 hour hand
4 screws
Glue
For the Electrics;
Box/Case
Small servo
Arduino Duemilanove
HMC6352 Compass Module http://www.sparkfun.com/products/7915
Mini breadboard
Female-female hookup wire
Male Headers
9V battery and connectors
For the StreamPunk;
4 clock cogs
1 hour hand
4 screws
Glue
Connect the Electrics.
Couldnt be simpler.
The digital compass connects;
SCL to Arduino Analog pin 5
SDA to Arduino Analog pin 4
VCC to Arduino 5V
GND to Arduino GND
The servo connects;
Signal to Arduino Digital pin 10
VCC to Arduino 5V
GND to Arduino GND
Everything can then be just placed in a box. The only important thing is that the compass module must be 'fixed' so that it moves with the box.
The digital compass connects;
SCL to Arduino Analog pin 5
SDA to Arduino Analog pin 4
VCC to Arduino 5V
GND to Arduino GND
The servo connects;
Signal to Arduino Digital pin 10
VCC to Arduino 5V
GND to Arduino GND
Everything can then be just placed in a box. The only important thing is that the compass module must be 'fixed' so that it moves with the box.
Connect the Cogs.
This was trial and error. I went to a local clock repair shop and got cogs that geared up from 1 to around 4. This gave me a 90 degree turn on the servo equal to roughly 360 turn on the final cog.
To test the positioning of the cogs before I started putting them into the final box I put nails through them and tried them out on some scrap wood.
To begin with I drilled a hole in the lid of the box big enough to fit the shaft of the servo and screwed the servo to the inside of the case. On the outside I then screwed and glued the main drive cog directly into/onto the shaft of the servo.
All other cog are free to rotate around simple screws.
The final cog has an hour hand from a clock glued to the top of it. This allows the cog and hand to move together freely around the final screw.
To test the positioning of the cogs before I started putting them into the final box I put nails through them and tried them out on some scrap wood.
To begin with I drilled a hole in the lid of the box big enough to fit the shaft of the servo and screwed the servo to the inside of the case. On the outside I then screwed and glued the main drive cog directly into/onto the shaft of the servo.
All other cog are free to rotate around simple screws.
The final cog has an hour hand from a clock glued to the top of it. This allows the cog and hand to move together freely around the final screw.
The Source.
After playing with the gearing between the first and final cog it turned out that moving the servo from 80 to 145 give a full rotation on the compass cog.
The attached code should pretty much speak for itself.
Downloads
The Final Device
I didnt position the cogs close enough to each other so there is a little play between them. the hour hand can move about 10 degrees without the servo cog turning. So the acuracy isnt quite as good as it could have been.
This device can easily be extended and turned into a Steampunk Goecaching unit.
But that aside it looks pretty good on my coffee table at home.
This device can easily be extended and turned into a Steampunk Goecaching unit.
But that aside it looks pretty good on my coffee table at home.