Fibonacci Clock

Author avatarPierre Boutet | Last edit 9/12/2019 by Clementflipo

Horloge fibo.JPG
This strange clock use the Fibonacci sequence to display time. Each square represents a value of the sequence. We must add the square's values to get the hour and the minutes. Hours are red squares, minutes are green squares and blue squares count for hour and minutes.

Introduction

This tutorial is inspired from the creation of Philippe Chrétien. Here is his website : http://geekoclock.com/

This version is base on an Arduino UNO board.

This project use a addressable RGB LEDs strip. It enable to control color and intensity of each LED individually, using only one control pin on the Arduino.

Materials

  • plywood 5mm thick
  • plexi
  • Arduino UNO board
  • Real Time clock module RTC DS1307
  • addressable RGB LED strip
  • 4 push buttons
  • power supply for arduino
  • supply connector
  • electric wires

Warning : check that your RGB LED strip is addressable. The strip I used has the following reference : WS2812B

Tools

  • scie
  • fer à souder
  • perceuse
  • cutter
  • lime à bois
  • colle à bois

Step 1 - Cut the plywood

Cut 4 plywood board for outside walls, 2 others for bottom and double-bottom, and 4 littles more for inside walls to split squares. Dimensions are the following :

For outside walls :

  • 2 boards 85mm * 221mm
  • 2 boards 85mm * 138mm

for bottom and double-bottom :

  • 2 boards 128mm * 211mm

for inside walls:

  • 1 board 50mm * 128mm
  • 1 board 50mm * 78mm
  • 1 board 50mm * 50mm
  • 1 board 50mm * 26mm


Step 2 - Cut sides to fit together

Cut 4mm slots to fit together the four sides.

Use a wood file for the finishing.


Step 3 - Cut and weld the LED strip

Cut the LED strip into 3 strips of 1 LED and 3 strips of 2 LEDS.

Weld with small wires with good length, to place them into squares, as shown on the picture.

Then glue the strip on the wood board of the double-bottom.

Put a hole to pass wires to the other side of the double-bottom.


Step 4 - Assemble and glue the box

Glue the 4 sides with the double-bottom, positioning it at 5cm from the front.

Wait until the glue dries. (20 min minimum)


Step 5 - Glue the separation walls

Once dry, glue the separations.



Step 6 - Glue a support board for the electronic board

Prepare now the other side of the double-bottom :

To fix the electronic board, and avoid screw exceed from the wood board, we add wood thickness where we want to place the electronic board.



Step 7 - Fix the Arduino board

Put small pre-holes for the srew, then fix the arduino board on the double-bottom.



Step 8 - Weld components

Follow the given scheme to weld wires. I tape wires in order that they stay in place. Only wire on the Arduino board aren't weld.


Step 9 - Load the program

Download Arduino IDE : https://www.arduino.cc/en/Main/Software


Install the NeoPixel Library, available here : https://github.com/adafruit/Adafruit_NeoPixel

After download it, rename the directory to 'Adafruit_NeoPixel' and place it into the directory 'librairie' into the directory of your IDE installation.


The Arduino program of the clock is available on Github : https://github.com/pierreboutet/fibonacciClock

Download it, and open it with the Arduino IDE

Plug the arduino board with the usb wire, et upload the program from the IDE.

Step 10 - Ajouter la vitre de plexiglas

Afin d'avoir l'opacité souhaitée, j'ai mis une feuille de papier calque entre 2 plaques de plexiglass transparent.

Ainsi, c'est suffisamment opaque pour diffuser la lumière de manière homogène, sans voir directement les LEDs.

Idéalement une seule plaque de plexiglass blanc non opaque suffirait, mais je n'en ai pas trouvé.


Step 11 - C'est fini

Vous pouvez brancher votre horloge,et ré-apprendre à lire l'heure ;)

Comment lire l'heure ?

Les carrés ont les valeurs de la suite de fibonacci (du plus petit au plus grand) :

1 1 2 3 5


Les carrés rouges sont pour les heures,

Les carrés vert pour les minutes,

et les carrés bleu comptent pour les heures et les minutes.

On trouve les heures et les minutes en faisant la somme des valeurs des carrés correspondants. Pour les minutes, il faut multiplier la valeur obtenue par 5, car l'horloge ne compte par pas de 5 minutes.


Exemple, sur la photo ci contre :

il faut additionner les valeur des carrés rouge et bleu pour les heures, cela fait donc :

1 + 3 + 5 = 9h

et les valeurs des carrés vert et bleu pour les minutes , que l'on multiplie par 5 : (1 + 1 + 3 ) * 5 = 25min


il est donc ici 9h25



Comments

Yes