Cirkelklok

From Frack - Hackerspace Friesland
Jump to navigationJump to search
Project: Cirkelklok
Cirkelklok op tafel.jpg
Status voltooid
Betrokkenen
Gebruiker Elmer.jpg Elmer
Gebruiker Elmer.jpgElmer de Looff (Elmer) Rol: niet-deelnemer Deskundig met: Arduino, ENC28J60, Elektronica, GnuCash, HTML, LPD8806, Linux, MediaWiki, Mercurial, Netwerken, OpenVPN, Programmeren, Python, SSH, Software, Solderen Beginnend met: Dm-crypt, Javascript Werkt aan: Geen projecten :(
,
Gebruiker Zeerover.jpg Zeerover
Gebruiker Zeerover.jpgNathalie (Zeerover) Rol: niet-deelnemer Deskundig met: HTML Beginnend met: Programmeren, Python Werkt aan: Geen projecten :(
Kennisgebied(en) Arduino, LPD8806, Elektronica
Projectcode CircleClock
Afgeleide projecten HypnoDisc
ProjectoverzichtProject toevoegen

Een ronde wandklok van hout en plexiglas met daarin een drietal concentrische cirkels om de tijd aan te geven. Kleuring en vulling van de cirkels geven hierbij de tijd aan. Aangestuurd door een Arduino en een DS1307 Realtime clock.

Uiterlijk

De klok heeft een buitendiameter van 716mm en zal gemaakt worden van donkergrijs geverfd hout. De dikte van de klok is ongeveer 4cm. In het oppervlak van de klok lopen twee diepe sleuven, elk 40mm breed en bedekt met een stuk gezandstraald polycarbonaat (om de verlichting diffuus te maken).

De sleuvel zijn zo diep in de klok gelegd als mogelijk, met genoeg materiaal aan de achterkant van de klok om het geheel bij elkaar te houden. In elk van de sleuven ligt aan de buitenrand een ledstrip. De sleuvel zullen waarschijnlijk moeten worden voorzien van kleine kartonnen schotten om strooiing van het licht tegen te gaan. De sleuvel zelf zullen ook donkergrijs geverfd worden, om de niet-verlichte delen donker te houden.

Impressie van de cirkelklok om de verhoudingen weer te geven.

De buitenste ring zal de uren aangeven, met 8 leds per verstreken uur. Een totaal van 96 leds uitgevoerd in ledstrip met 52 leds per meter maakt deze buitenste ring 1615mm lang aan de buitenrand (waar de strip wordt bevestigd). Dit geeft een diameter van 514mm.

De tweede ring zal de minuten aangeven, met 1 led per minuut. 60 leds op de eerdergenoemde strip levert een lengte van 1154mm, ofwel een diameter van 367mm.

De binnenste ring geeft de seconden aan. De secondenring zal slechts 15mm breed worden, uitgevoerd met heldere witte leds. De leds komen ongeveer 9mm uit elkaar te staan, over een lengte van 540mm door het hart van de ring.

De verlichte sleuven scheiden de klok in de volgende ringen:

  1. Donkergrijze buitenring van 70mm (726mm diameter)
  2. Verlichte urenring van 40mm
  3. Donkergrijze ring van 70mm
  4. Verlichte minutenring van 40mm
  5. Donkergrijze ring van 55mm
  6. Verlichte secondenring van 15mm
  7. Binnenvlak met een diameter van 146mm

Gedrag en animaties

Zoals aangegeven zal de buitenste ring de uren aangeven, de tweede de minuten en de binnenste ring seconden.

Minuten

Deze worden getoond op de kleine ring. Naarmate de minuten oplopen vult de ring zich met licht, met de volgende eigenschappen:

  1. Elke minuut wordt er een led opgelicht
  2. De kleur van de gehele ring verandert naarmate de tijd vordert.
  3. Het voorste led in de ring pulseert eens per seconde

Uren

Deze worden getoond op de grote ring. Naarmate de tijd verstrijkt vult de ring zich met licht, met de volgende eigenschappen:

  1. Het bereik van de ring is 12 uur (twee omlopen per etmaal)
  2. Kleur en vulling worden elke minuut geüpdatet
  3. De intensiteit van het voorste led wordt elke minuut opgehoogd tot het volledig brant en het volgende led ingeschakeld wordt
  4. Elk uur is er een animatie, een snel omlopende regenboog voor elk uur (1-12 'slagen')

Ringkleuring

De kleur van de ringen wordt bepaald door de aangegeven tijd. Om het verschil tussen uren en minuten weg te nemen worden de kleuren hier aangegeven in graden voorbij middernacht:

  1. Bij 0 graden is de ring rood (#ff0000)
  2. Bij 30 graden is de ring oranje (#ff8000)
  3. Bij 60 graden is de ring geel (#ffff00)
  4. Bij 90 graden is de ring geelgroen (#80ff00)
  5. Bij 120 graden is de ring groen (#00ff00)
  6. Bij 150 graden is de ring lichtgroen (#00ff80)
  7. Bij 180 graden is de ring cyaan (#00ffff)
  8. Bij 210 graden is de ring lichtblauw (#0080ff)
  9. Bij 240 graden is de ring donkerblauw (#0000ff)
  10. Bij 270 graden is de ring lila (#8000ff)
  11. Bij 300 graden is de ring paars (#ff00ff)
  12. Bij 330 graden is de ring roze (#ff0080)

De verstreken tijd zal in de ring sterk verlicht zijn, hieraan is de tijd duidelijk af te lezen. De rest van de ring zal dim verlicht zijn in de kleur van het moment.

Resultaten

Na binnenkomst van de ledstrips en het nodige testen van de hardware, is een goede stap vooruit gezet in het programmeren van de klok. Hieronder een filmpje met een test van de uren en minutenwijzer. De tijdscompressie is aanzienlijk: in de tweeënhalf minuten speeltijd wordt de totale 12-uur klok geanimeerd. In de werkelijkheid gaat alles dus zo'n 288x trager: