Inhaltsverzeichnis:

Die Fibonacci-Uhr - Gunook
Die Fibonacci-Uhr - Gunook

Video: Die Fibonacci-Uhr - Gunook

Video: Die Fibonacci-Uhr - Gunook
Video: Fibonacci und meine Uhr 2024, November
Anonim
Image
Image
Wie erzähle ich die Zeit?
Wie erzähle ich die Zeit?

UPDATE: Dieses Projekt wurde erfolgreich auf Kickstarter finanziert und steht jetzt unter https://store.basbrun.com zum Verkauf. Vielen Dank an alle, die meine Kampagne unterstützt haben!

Ich präsentiere Ihnen die Fibonacci Clock, eine Uhr für Nerds mit Stil. Die Uhr ist schön und macht Spaß zugleich und verwendet die berühmte Fibonacci-Folge, um die Zeit auf ganz neue Weise anzuzeigen.

Schritt 1: Wie erzähle ich die Zeit?

Die Fibonacci-Folge ist eine Zahlenfolge, die im 13. Jahrhundert vom italienischen Mathematiker Fibonacci erstellt wurde. Dies ist eine Sequenz, die mit 1 und 1 beginnt, wobei jede nachfolgende Zahl die Summe der vorherigen beiden ist. Für die Uhr habe ich die ersten 5 Begriffe verwendet: 1, 1, 2, 3 und 5.

Der Bildschirm der Uhr besteht aus fünf Quadraten, deren Seitenlängen den ersten fünf Fibonacci-Zahlen entsprechen: 1, 1, 2, 3 und 5. Die Stunden werden in Rot und die Minuten in Grün angezeigt. Wenn ein Quadrat verwendet wird, um sowohl die Stunden als auch die Minuten anzuzeigen, wird es blau. Weiße Quadrate werden ignoriert. Um die Zeit auf der Fibonacci-Uhr anzuzeigen, müssen Sie etwas rechnen. Um die Stunde abzulesen, addieren Sie einfach die entsprechenden Werte der roten und blauen Quadrate. Um die Minuten abzulesen, machen Sie dasselbe mit den grünen und blauen Quadraten. Die Minuten werden in 5-Minuten-Schritten (0 bis 12) angezeigt, sodass Sie Ihr Ergebnis mit 5 multiplizieren müssen, um die tatsächliche Zahl zu erhalten.

Oft gibt es mehrere Möglichkeiten, eine einzelne Zeit anzuzeigen. Um die Herausforderung zu erhöhen, werden die Kombinationen nach dem Zufallsprinzip aus all den verschiedenen Arten ausgewählt, auf denen eine Zahl angezeigt werden kann. Es gibt zum Beispiel 16 verschiedene Möglichkeiten, 6:30 Uhr anzuzeigen, und Sie wissen nie, welche die Uhr verwenden wird!

Schritt 2: Schaltung

Schaltkreis
Schaltkreis
Schaltkreis
Schaltkreis

Ich habe die Fibonacci-Uhr mit einem Atmega328P-Mikrocontroller mit Arduino gebaut. Sie könnten eine Arduino-Platine und eine DS1307-Echtzeituhr-Breakout-Platine kaufen und eine benutzerdefinierte Abschirmung für Ihre Schaltung bauen, aber ich zog es vor, meine eigene Platine zu bauen. Dadurch kann ich die Größe klein und den Preis niedrig halten.

Schritt 3: Tasten

Tasten
Tasten

Die drei an den Arduino-Pins # 3, # 4 und # 6 angebrachten Tasten werden zusammen verwendet, um die Zeit zu ändern. Die Taste an Pin Nr. 3 kann allein verwendet werden, um die Farbpalette der LEDs zu ändern. An Pin Nr. 5 ist ein zusätzlicher Knopf angebracht, um zwischen verschiedenen Modi der Uhr zu wechseln. Zwei Modi sind Lampenmodi und der Standardmodus ist die Uhr. Alle Tasten sind mit einem 10K-Pulldown-Widerstand parallel mit den Arduino-Pins verbunden.

Schritt 4: Echtzeituhr

Echtzeituhr
Echtzeituhr

Der Echtzeituhr-Chip DS1307 ist mit zwei 22K-Pull-Up-Widerständen mit den Arduino-Analogpins 4 und 5 verbunden. Der Takt-Pin 5 (SDA) ist mit dem Atmega328P-Pin 27 (Arduino A4) verbunden und der Takt-Pin 6 (SCL) ist mit dem Atmega329P-Pin 29 (Arduino A5) verbunden. Um die Zeit zu halten, während der DS1307-Chip nicht angeschlossen ist, benötigt er eine 3V-Batterie, die an Pint 3 und 4 des Chips angeschlossen ist. Schließlich wird die Echtzeituhr von einem 32-KHz-Quarz angetrieben, der an den Pins 1 und 2 angeschlossen ist. An Pin 8 wird eine Spannung von 5 V angelegt.

Schritt 5: LED-Pixelstreifen

LED-Pixelstreifen
LED-Pixelstreifen

Ich verwende LED-Pixel, die auf den WS2811-Treibern aufgebaut sind. Mit diesen Mikrocontrollern kann ich die Farbe jeder einzelnen LED mit einem einzigen Ausgang auf dem Arduino-Mikrocontroller einstellen. Der Arduino-Pin, der zur Steuerung der LEDs in diesem Projekt verwendet wird, ist Pin # 8 (Atmega328P Pin # 14).

Schritt 6: Mikrocontroller

Mikrocontroller
Mikrocontroller

Alle Details zum Anschließen des Atmega328P zum Erstellen eines Arduino-Klons finden Sie in meinem Beitrag „Build an Arduino Clone“. Ich habe in diesem Projekt eine neue Funktion hinzugefügt, einen FTDI-Port, um Ihren Arduino-Mikrocontroller direkt auf dieser Schaltung zu programmieren. Sie verbinden Pin eins mit dem Reset-Pin des Arduino durch einen 0,1uF-Kondensator, um Ihren Uploader mit der Chip-Boot-Sequenz zu synchronisieren.

Pin 2 (RX) des FTDI-Ports verbindet sich mit Pin 3 des Atmega328P (Arduino 1-TX) und Pin 3 (TX) des FTDI-Anschlusses verbindet sich mit Pin 2 des Atmega328P (Arduino 0 – RX). Schließlich geht FTDI-Pin 4 auf 5V und 5 und 6 auf Masse.

Schritt 7: Das Gehäuse

Image
Image
Das Gehäuse
Das Gehäuse

Das Video zeigt alle Schritte zum Bau des Fibonacci-Uhrengehäuses. Die Idee ist, 5 quadratische Fächer in der Uhr zu schaffen, fünf Zentimeter tief, die der Größe der fünf ersten Terme der Fibonacci-Folge 1, 1, 2, 3 und 5 entsprechen. Die LEDs sind auf alle Quadrate verteilt und in der Rückseite der Uhr auf die Platine.

Das Gehäuse ist aus Birkensperrholz gebaut. Der Rahmen ist 1/4" dick und die Rückwand ist 1/8" dick. Die Separatoren sind 1/16″ dick und können aus jedem lichtundurchlässigen Material hergestellt werden. Die Abmessungen der Uhr betragen 8″x5″x4″. Die Vorderseite der Uhr ist ein Stück 1/8 Zoll dickes halbtransparentes Plexiglas. Die Trennzeichen werden mit einem Sharpie-Stift markiert.

Die Holzoberfläche ist ein Lack auf Wasserbasis, der nach einem guten Schleifen mit 220 Schleifpapier aufgetragen wird.

Schritt 8: Machen Sie es zu einer Lampe

Image
Image

Die Fibonacci-Uhr kann auch in eine Ambiente-Lampe umgewandelt werden! Der veröffentlichte Code unterstützt bereits zwei Lampenmodi. Drücken Sie einfach die Modustaste, um zwischen den drei Modi zu wechseln. Der Code steht Ihnen zum Hacken offen. Sie können Ihre eigenen Modi implementieren!

Schritt 9: Sie sind fertig

Du bist fertig
Du bist fertig

Du bist fertig! Die Fibonacci-Uhr ist ein fantastischer Diskussionsstarter … bringen Sie sie zu Ihrem nächsten NERD-Treffen oder zum weihnachtlichen Familientreffen!

Danke fürs Lesen/Anschauen!

Schritt 10: Der Code

Sie finden den Quellcode auf meinem Github-Konto:

github.com/pchretien/fibo

Empfohlen: