Forklift clock

Four wooden blocks with words tell the time. Every 5 minutes, a forklift changes the blocks to the new time.

Similar projects worth following
There are several classes of clocks:
- Analog
- Digital
- Propeller clock
- Word clock
- Binary clock
This project introduces a a new class of clocks.
I hereby claim to be the inventor of the unique Forklift Clock.

This clock was built in 2012. I digged it up for the clock contest. Unfortunately, it is no longer working (two rubber drive belts are old and broken), but I think it is interesting enough to publish it.

This is the idea:

There is a storage rack, that carries 6 wooden blocks of approx. 7 cm (3 inch) length. On the highest row of the rack, three or four blocks tell the time with 5-minute precision.

Each block has four sides, so there can be four different texts on each block. That is enough for the first three blocks. But the last block, that tells the hour, needs 12 different texts. So, there are three different blocks for the hour. The unused blocks are in storage positions below the upper row, shown with blue arrows:

This is nice. But time is always changing. So the blocks also have to change. In the pictures above, the second block ("OVER") is not on a storage position but it is carried by a LEGO forklift "truck". The truck can move the bricks up and down, and sideways. The positions below the "OVER" block are not storage positions, so the forklift can move the brick down, and then move it sideways to a storage position. It can drop the brick at a storage position, and go to another storage position on another row to get another brick.

Here is a picture of the truck carrying a brick ( lift in highest position):

So, everything is in place to shuffle the bricks. It's like the Towers of Hanoi puzzle, repeating every five minutes.

There are only two motors and a handful of infrared position sensors. The whole thing is controlled by an AVR processor. The C software for the ATMEGA168 has been placed in the file section. The program also has a RS232 output to provide information about the actions of the clock.

One more thing... the blocks have text on all four sides, so they must be turned... more things will be described in the logs.

List of logs:

1. Turning the blocks

2. More about the blocks

3. Motors and electronics

[ edit: the winners of the clock contest were announced HERE. ]

forklift sw .zip

C source for the GCC AVR compiler

x-zip-compressed - 38.76 kB - 12/27/2019 at 21:26


  • Motors and electronics

    roelh12/27/2019 at 18:55 0 comments

    For moving sideways, the LEGO construction is guided by a plastic rail. The rail has holes to mark the positions in the storage rack. At the end, there a few extra holes to signal to the software that the end is reached. Otherwise the truck may fall of its base if it goes too far, especially at start-up when it does not yet know its position.

    Blue arrows show the position of the infrared LED and receiver, for detecting the holes for the horizontal position. You can also see the motor and some gears for the horizontal position. (For this image, the device is positioned off-track).

    This picture shows the lift motor, one of the broken rubber belts, and the other belt (that is broken outside this view).

    How are the motors controlled ? This is from the era before the cheap Chinese boards. And it shows that the perfboard that you have on hand, is always too small for your project...

    But we are lucky that the board has two sides:

    Do you like meccano as heatsink for the 7805 ?

  • More about the blocks

    roelh12/27/2019 at 17:48 0 comments

    There are six different blocks:

    1. Hours, numbers 1 to 4 ( Dutch: een twee drie vier)
    2. Hours, numbers 5 to 8 ( Dutch: vijf zes zeven acht)
    3. Hours, numbers 9 to 12 ( Dutch: negen tien elf twaalf)
    4. Hour or Half-hour (Dutch: uur half)
    5. Before or After (Dutch: voor over)
    6. 5-minutes, 10-minutes, quarter (Dutch: vijf, tien, kwart)

    The red arrows shows some places where there are holes in the bricks. The forklift has two infrared LEDs and two detectors to check presence of the holes (at both sides of the brick). Only the lower hole can be detected, the upper hole is used for the other side of the brick.

    In the close-up you see the forklift with its infrared detection system:

    (The resistors have only a mechanical function, they guide and hold the block to the correct position on the fork.)

    When a block is in the lift, it provides a two-bit code with its holes. Only 3 combinations are used for most blocks. The code were both holes are open is used to detect that no block is present on the fork.

    The two-bit code can be different for the four sides of the block.

    The holes encode the identity of each block (after all sides are examined), and also encode the reference position for each block. With the correct software, the clock will always know which block it handles and which side is shown at the front. Here is the used code:

    char word_code[]= { 0,
    	2, 0, 0, 0,  // brick 1 2 3 4
    	1, 0, 2, 0,  // brick 5 6 7 8
    	0, 1, 0, 0,  // brick 9 10 11 12
    	1, 0, 0, 2,  // kwart tien vijf blank4
    	1, 2, 0, 0,  // over2 voor over voor2
    	3, 0, 0, 0,  // half blank6 uur blank6a
    	3, 3, 3, 3 };// empty position

    The final picture shows the strip that has holes to encode the vertical position of the lift. 

     For each row on the rack, there are two holes:

    • One for moving just above the storage positions, when a brick must be placed,
    • One for moving just below the storage positions, when the brick has been placed and the fork must move back.
    • You can also see the infrared detector. The infrared LED is at the other side of the strip.

  • Turning the blocks

    roelh12/27/2019 at 15:58 0 comments

    The meccano storage rack has a special position that can turn a brick, to show another side of it. This is a fully mechanical  system, it is controlled by movements of the forklift truck.

    The turning mechanism is here (in the blue rectangle): 

    At the backside are the two control levers indicated by blue arrows (next picture). 

    • The upper arrow shows the lever that is pressed down by the lift, directly after the block is placed. This will turn the block. The lift will now move upward again to get the turned brick and move it to its destination.
    • When the forklift turns sideways, it operates the second lever, that will reset the turning mechanism to its original position.

    And now I will show the operation of the mechanism. I place and remove the brick by hand here.

    In the next video, the lift is operated by hand, and it shows how the brick is turned and then moved again to the highest row.

View all 3 project logs

Enjoy this project?



Ken Yap wrote 12/28/2019 at 10:35 point

Hahaha, very clever. One for those who like to see time in motion. 👍

  Are you sure? yes | no

Dan Maloney wrote 12/27/2019 at 16:51 point

I like the melding of Meccano and Lego - that's a nice touch.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates