Instructables

Do I need an Arduino for this project? Planning on making clocks, don't even know where to start...

I've been wanting to get an Arduino or BBB or some type of microcontroller.  I want to make a clock where an led lights up for every hour and one for every minute.  So it will have 72 LEDS, and it needs to be accurate...I mean it's a clock, right...  So what do I need to accomplish this project?  DO I need an arduino, do I need to program a chip with an arduino?  Do I even need a chip?

Also have another clock project.  I want to make a clock that uses two stepper motors one will turn the hour hand the other the second hand.  Needs to be accurate, of course.  So do I use an arduino to accomplish this?  I'm feeling a bit overwhelmed right now.  I really want to make these clocks, but I don't know what the first step is.  I guess that's kind of what i'm looking for...the first step and to be pointed in the right direction.  I don't want to be told do this then this then this....just need all of your collective knowledge to get the ball rolling, or clock ticking. 

Just be patient with me please.  Im very new to "electronics" but it's something I really want to get into.  I'm just having trouble getting going.  Thanks for your help guys, I know yall will come through.


frollard4 years ago
As others point out its a tradeoff between building complex circuits or programming.  Are you better at software or hardware?  If you understand neither I'd recommend going programming route and copying someone elses setup.  (there are many here on ibles alone) 

Hardware:

If you want to go the hardware route (no uController) Bowden's Hobby Circuits has a 72 led clock using all integrated circuits, and is one of the simplest hardware route to converting time into 72 leds.  It draws its time source from 60 or 50Hz wall power, then uses shift registers to kick a lit led around a circle...super duper overkill, but really cool.

Arduino (or microcontroller)

The software route has a few options:  There aren't 72 outputs on the Arduino so it needs some trickery in the leds wiring - either a matrix which can take 18 pins and turn it into 81 leds, or charlieplexing that can do similar, but more. 
I would use a pile of 74HC595 shift registers to turn 3 pins into 72...but thats just me. - then the duino could have plenty of extra pins to use for other fun stuff...like buttons, servos, etc...

Time options:
You can draw the 'time' from the power coming out of the wall - its usually around 50 or 60Hz to some degree of accuracy.
An arduino time circuit can be brutally inaccurate (out of the box) - many minutes out per month if its running at various temperatures.  This can be fixed with a few options - a 'real-time clock' chip can keep very accurate time with battery backup (Chronodot etc) would be one of the cheaper 'very accurate' options. 
Hooking into the signal from a dollar store wall clock quartz circuit would give a reasonably accurate 1 Hz signal to update the hardware or arduino circuit
Powering the whole thing from a computer via usb with a host program on the computer could keep it accurate...all the time. 
Ridiculously expensive and unnecessary route would include adding a cel phone or gps decoder to get the time from over the air - again, extremely accurate but super unnecessary.
Yeah, I forgot to add the point about using the 60Hz signal as your clock reference. At least in the US, that is actually more accurate over the long run than anything you're going to build cheaply, since the power company actually adjusts it over time to make sure it comes out right.  Of course those adjustments mean that in the short term it may run a trifle faster or slower, but on average it's still very good if you don't need more precision than that.
Ork's right, you don't NEED a microcontroller, but I'm inclined to think that for playing with ideas, I'd go for the Arduino route. You won't learn as much about electronics, but you'll get working projects, more reliably and quicker.

Steve
orksecurity4 years ago
No, you don't need a microcontroller. You could use one if you'd really rather program than solder, but I'd consider it overkill.

Accuracy comes from getting a decently tuned clock circuit (as in the thing which generates the basic timing pulses) and/or tuning it well. A crystal-based oscillator is likely to be close enough for practical purposes. Generally it runs faster than you need, and you use a simple divider circuit (essentially a counter) to slow it down to a time period suitable to drive the rest of the system.

The 72-LED version basically just needs two shift registers, plus a bit of logic to recognize that after 59 minutes the next step should be to reset the minutes and increment the hours, and that hours reset after 11 (or 23 if you want AM/PM, or 12/24 if you want to run 1-to-12 rather than 0-to-11). That can be done with standard shift-register chips plus a few logic gates. LEDs with current-limiting resistors can probably be driven directly off the chips, unless you want something huge; for the latter, add driver transistors.

Stepper version: Again, start with a stable clock circuit. Put it through two dividers (three if you want minutes too...). to get the appropriate times between pulses for hours/minutes/seconds. Put the resulting pulses into simple state machines which advance the stepper motors through the sequence of signal changes that push them along between steps. Again, that can all be done with discrete logic.

Of course these days, getting simple discrete logic chips is a bit harder than it used to be, since Ratio Shlock has stopped stocking even a minimal set of hobbyist components. If you've got a real electronics supply place in your area, they could help you with this, and probably have a few books on basic logic circuitry to help you get started. If you don't... Check with local colleges to see if they've got an electronics/computer club which does some circuit hacking and ask them where they're getting parts for this sort of simple project; they could also help you turn these rough descriptions into an actual design. (I'm deliberately not going into detail, since you'll learn a lot more if you work through it yourself than if someone hands you a complete design ... and it's your project, not mine.)