Introduction: Galileo's Finger - an Open Source Astronomy Learning Tool
WARNING: THE FOLLOWING PROJECT USES LASERS. PLEASE CHECK YOUR LOCAL AREA RULES ABOUT LASER USAGE.
PLEASE BE CAREFUL AS HIGH POWERED LASERS CAN ALSO DAMAGE YOUR EYES.
I CANNOT BE HELD RESPONSIBLE FOR ANY CONSEQUENCES OF USE.
Given the opportunity to use one of the Intel Galileo boards, we wanted to build something that would honour Galileo's memory and pay tribute to his discoveries. What better way than to do something related to his primary focus - astronomy.
Being an avid astronomer, and loving being able to look up into the night sky and know what star or planet I'm looking at, I thought a cheap, accurate laser pointer would be perfect.
With the right idea in mind, and three weeks in which to do it, my partner and I set off coding and building.
Step 1: BOM
This is what we needed (software side included) to build our model:
• Soldering iron
• Hot glue gun
• Drill and appropriate bits
• Intel Galileo (Any micro will work – you just need serial communications and 4 output pins)
• 2 x Stepper Motors (we used Nema 17s)
• 2 x Stepper motor controllers (we used Easy Driver v4.4)
• Some headers to mount the motor controllers
• Wires for connecting
• Ball bearings (we used parts from an old printer and harddrive - see pictures)
• Elastic bands
• Laser pointer (please be careful with this)
• AA battery pack(or anything that can provide a steady 3V - NOT the arduino)
• Arduino IDE
• Python 3.3
Step 2: Create the Circuit Board
You can use a breadboard, veroboard, or even print a PCB if you have the time and resources. The circuit diagram is below.
- Connect MS1, MS2 and the GROUND (next to step) on both boards to GROUND on the ARDUINO.
- Connect M+ and GND (on the PWR IN) on both boards to the 12V power supply for the motor.
- Connect DIR on easyDriver 1 to Arduino pin 4.
- Connect STEP on easyDriver 1 to Arduino pin 5.
- Connect DIR on easyDriver 2 to Arduino pin 6.
- Connect STEP on easyDriver 2 to Arduino pin 7.
- Connect each motor to its own easyDriver, paying attention to which coil is which.
Step 3: Software
You will need to download and install the following.
TelescopeMotorController (both arduino code and python code) - Github Source
Note: A special thanks to Sven Steinbauer (GitHub) for the python code (pyscope)
A special note here: You will need to make some changes to the python code. Specifically,
- The com port used (this is almost guaranteed)
- The city you are in (or at least your lat/long)
- The degrees on the stepper motor
- The gearing ratio
All of these are commented as to where you might need to change them
Step 4: Construction
This part is fairly simple. You just need to be able to move the laser on 2 axes. The truth is almost anything will work, and because we did not make out model from standard parts (mostly e-Waste and some cheap wood), it's hard to be specific about the build. I have attached the pictures of our model below, so you can get an idea of what to build. In short:
- There are 5 wooden pieces
- 2 wheels for X-axis/azimuth (we used 2 instead of 1 for accuracy.)
- a mount for the X-axis/azimuth bearing (harddrive bearing)
- a mount for the Y-axis/altitude bearing
- a base to mount everything on
Step 5: Completed Product
Enjoy your low cost, open source starfinder!