Everyone loves Propeller clocks! Now there is one powered by a Propeller Chip! If you don’t know what a “Propeller Clock” or a “POV clock” is, look at the images below. Also, FYI, POV stands for “Persistence of Vision”.
This is the Propeller Clock (or POV clock as it will now be referred to) in action.
This is a side view of the POV clock setup, complete with motor.
This is the POV clock from center view, as it looks like when you are looking at the time.
The POV clock is mounted on a CD, as shown here.
Here is the motor that spins the clock. It is powered by a separate power source and the motor has been taken out of a CD player, so it even has the attachment for spinning the CD on it, which is ideal for this setup.
As you can see in the pictures above, the hardware consists of a Propstick USB (the smallest Propeller module I had on hand), 2 AA batteries, and a row of SMD LEDs soldered on a piece of protoboard. I used wires out of an old 25-pin parallel port cable to lead to the LEDs, as it was very thin and did the job right. I didn’t bother soldering the 40 pin header the Propstick is plugged into on a Protoboard, and I just used wire wrap to get all 20 wires hooked up. The only other components I used was a 100 ohm resistor leading to the anode of all the LEDs, and a terminal block to connect to the power. The whole setup was mounted on an old CD, so that it could be used with a CD motor and could be taken off easily for modification.
In a project like this you would think the biggest electronic concern would be programming, but actually the hardest thing to get working was the power. Considering how weight plays a big part in how fast it will move and therefore how convincing the effect is, it is, you would want a smaller battery. So you may be wondering why I went with the heavy AA cells? Well, any other batteries couldn’t supply enough current and the Propeller would reset. I originally used a small 12V battery that weighed only a few grams, but the Propeller was resetting once every second. I then added the 100 ohm resistor so that the LEDs wouldn’t draw as much current, but it still reset once every 6 seconds. I eventually found that the only power source that would NOT reset the Propeller chip was 2 AA cells, which is what I ended up using. Of course, now I have the weight problem. Fortunately I found that it can handle the imbalance if I mounted the motor in a stable plywood casing, as seen in the picture above.
From a programming standpoint it is really quite simple. It has numbers and a colon (“:”) stored as longs in the data block, and they are directly accessed by the pins. There is no RTC on this clock, which means it has to be set in program and never turned off, but it keeps accurate time. When I get my RTC from Jameco I will use it instead, as it retains the time and is much more accurate. In the meantime, though, this is a good “proof of concept project”. I’ll post the modified code when I get it. Anyway, back to the program. It basically starts the timekeeping cog, then enters a repeat loop where it pulses out the numbers, then waits until it has made a full revolution, and repeats. It is really that simple. Designing the numbers in binary and tweaking the “pulse” and “wait” values was the hardest part of programming this project.
I have uploaded a video here, but due to the low framerate of my camera, it didn’t turn out so well. Skip ahead to where it isn’t blurry.
Thanks for reading! Please comment and subscribe to my RSS!