Simple Word Clock (arduino)

by Rakshith bk in Circuits > Clocks

19632 Views, 276 Favorites, 0 Comments

Simple Word Clock (arduino)

IMAG0920.jpg
output_jMXGNK.gif

This is a simplified version of the original word clock from Doug -- SEE HERE

All the credits go to him and his extremely well built code...!!

I have just modified the code to make it work with more common ICs and for simple run.

All you need is an arduino and a RTC ..I have removed the switches and other hardware..Since DS1307 is pretty stable, it does not require frequent time changes.! It will also keep the time even if there is a power failure, thanks to its internal 3v battery. This battey will last for years....

So even if you are going on a vacation, just turn off the clock and the time will be running accurate when you turn it back on..!!

I have made the Code as simple as possile ! It just reads time from the RTC and updates the shift registers..!!

Collecting the Parts -

IMAG0807.jpg
Arduino Duemilanove.png

ELECTRONICS ---

Main parts ---

  • Arduino or just atmega328p as i have used (standalone)x1
  • RTC (Real Time Clock) DS1307 x1
  • Shift registors 74hc595 x3
  • ULN2803a Darlington Transistor Arrays as LED drivers x3
  • LED strip I have used white...approx 2m
  • 16 pin IC socket x3
  • 18 pin IC socket x3
  • 12v power source may be battery or wall adaptor

Miscellaneous --

  • Proto board / general pcb board
  • Connecting wires
  • Male header pins
  • Jumper wires- female-female
  • basic soldering

FRAME AND STENCIL ---

  • Mount board / thick cardboad
  • Glue, Tape ...
  • Scissors, Paper cutter ...
  • Acrylic Board (translucent white) / Plexi glass
  • Stickering of Words

Making the Connections....

Final.jpg
Main connections.jpg
74hc595.jpg
uln2803a001.jpg
output_zNArX1.gif

Follow to simple circuit diagram shown above...

I have used a standalone arduino which I can program with FTDI cables, but any arduino board can be used !!
For this project even though we control 22 individual LED arrays, we just use 5 I/O pins from the arduino ie.- 3 for shift Registors and 2 for RTC module.

Using Shift registors is a great way to increase the i/o pins.

Important thing about ULN2803a Drivers -

This IC is a darlington pair !!

Hence connect all the cathodes [positive terminals] of the LEDs to the source and the anodes [Negative/ground] to the respective output terminals of the Driver..!

Building the Frame...!

IMAG0742.jpg
IMAG0791.jpg
IMAG0817.jpg
IMAG0814.jpg
559536d415be4dcaaf000122.jpeg
IMAG0815.jpg
IMAG0744.jpg
IMAG0739.jpg
IMAG0792.jpg

Here I have used Mount board for the construction...

It is easy to cut, bend and handle the mount board. But it is also has less strength.

Any material like Wood, Plastic, Metal etc... can be used !

  • Cut a piece of mount board the size of the front Board with words.
  • Make a rough sketch of the words and their alignment on the board.
  • Cut strips of mount board of size may be 1.5 cm.. This is to make compartments, the size of the words. this will prevent the light from one word to diffuse and illuminate the surrounding words.
  • Place the strips horizontally after each line of words and vertically in between the words. ie- make small boxes for each of the word.
  • Finally make a box that will sneakily fit the electronics, the LED board, anti-diffusion boxes and the outermost board with words stickered on to it..

Connecting the LEDs...

IMAG0745.jpg
IMAG0794.jpg
IMAG0797.jpg
IMAG0795.jpg

I'm using the LED strip in this project. It is easy to operate with.... it can be cut for desired length, no need of soldering each and every led to make an array .!! LED Strips also come with a peel-off sticker at the back.

Just cut the required length of the strip depending on the size of the word and stick it on the LED board ( mount board). Remember that most of the led strips have connectors at an interval of 3 leds...So you have to cut at the indicated points only.! Therefore even the smallest word will have 3 leds.

You can even use the standard LEDs, solder them for desired number of leds. Remember to use the resistor for each array that you make. the value of the resistor depends on the specifications of the leds used. You can check here for further info -- LED calc or this one..

Connect all the Positive terminals of the LED strip together. This is the common Vcc for the leds.

You can see that i have connected it using thin copper wire. Then Connect wires for all the individual ground terminals for each word and bring it back to connect it to the driver.

The Codes.....

IMAG0799.jpg
IMAG0802.jpg
IMAG0804.jpg
IMAG0805.jpg

The original code itself is well commented and easily understandable ....!!

The #define section allots the pins on the shift register for individual words.! They will be updated each time when the time changes.

The void WriteLEDs function updates the shift regesters through the data pin.

The void selftest function blinks all the LED words in a sequence so that you know everything is working correctly. ie- for Troubleshooting.

The void displaytime function will check the time with the RTC chip and see which words to be illuminated accordingly.

The rest can be easily made out by the code itself....

GitHub

Finishing It Off.....

IMAG0812.jpg
IMAG0821.jpg
IMAG0822.jpg
IMAG0823.jpg
output_zNArX1.gif

Place all the controller boards, ie-- arduino and circuit which contains shift registers, RTC chip and LED drivers.

Connect the LED arrays of each word to the respective pin of the driver.

Place the LED board inside the Casing and fix it in place...

The main outer Stencil is made by stickering the words onto any acrylic or plastic.

Make a hole at the back for fixing the clock for using a nail.

There you have it.!! A simple Word clock ....

Please do leave your comments and doubts below, though in not a expert i will try to answer it...

THANK YOU.