Angeregt durch den Thread
Beitrag "Equinox Clock - Clone"
habe ich mir bei Youtube diverse Equinox-Uhren angeschaut... und war
fasziniert.
Ich wollte dann sofort selbst eine bauen und habe mir erstmal einen
AnforderungsKatalog zusammengestellt:
1. Jede der 60 RGB-LEDs sollte in ihrer Farbe einzeln ansteuerbar sein.
2. Die "Zeiger" sollten neben der unterschiedlichen Farbe auch eine
unterschiedliche "Breite" (1-5 LEDs) haben.
3. Die LEDs an den "Rändern" der "Zeiger" sollten ein- und aus-faden, um
ein Bild des kontinuierlichen Fließens zu vermitteln.
4. Der Ring sollte möglichst schmal sein, maximal 2 cm Dicke, höchstens
2 cm Tiefe. Ich wollte also keinen dicken "Klotz-Ring".
5. Außer den RGB-LEDs kein SMD, um das Ganze möglichst einfach und
nachbausicher zu machen
5. Kein Kabelsalat, also möglichst wenig Kabelanschlüsse.
Ich habe mir daraufhin mal diese TLC5940 angeschaut. Das sind
16-Kanal-LED-PWM-Treiber... nette Dinger. Davon bräuchte man dann bei
RGB-Betrieb von 180 Kanälen 12 Stück von diesen LED-Treibern. Abgesehen
davon, dass sie nicht so einfach beschaffbar sind, entsteht bei diesen
Controllern auch ein extremer Verdrahtungsaufwand. Außerdem: Wie sollte
man sie in so einem schmalen (biegsamen) Ring unterbringen?
Da kam ich auf folgende vollkommen verrückte Idee: man nimmt für jede
LED einen eigenen µC, nämlich den 8-poligen ATtiny45 oder -85. Diese
bekommt man bei Mouser schon für 65 Ct. byw. 73 Ct, wenn man 100 Stück
nimmt.
Diese werden einfach alle parallel geschaltet, nämlich so:
DATA -----|DAT DAT|-----|DAT DAT|-----|DAT DAT|-----|DAT DAT|--...
6
+-------+ +-------+ +-------+ +-------+
7
| | | |
8
LED LED LED LED
Ausser den 60 ATtinys braucht man dann noch 3 Vorwiderstände für die
LEDs und natürlich die RGB-LEDs selber. Ich habe dann dafür LED-Streifen
entworfen, auf denen jeweils 15 ATtinys und 15 LEDs sind. Diese sind
30,5 cm lang und nur 1,5 cm breit. Für eine Equinox-Uhr braucht man dann
4 LED-Streifen. Ich habe dann die Platinen mit einer Dicke nur 0,5mm
bestellt. Diese lassen sich (auch bestückt) prima zu einem Viertelkreis
biegen, so dass insgesamt ein runder Kreis mit einem Durchmesser von
knapp 40 cm entsteht, der aber nur ca. 1 cm breit ist. Jeder Streifen
braucht nur 4 Anschlüsse: Vcc, GND, CLK und Data.
Die ATtinys dienen hierbei als "inteligente" RGB-Controller. Dafür habe
ich ein Kommunikationsprotokoll entwickelt, mit dem man die
RGB-Controller entweder einzeln oder mit beliebig wählbarer Blockgröße
ansprechen kann. Jeder der ATTinys hat dafür eine eigene Adresse, welche
von 0 bis 59 aufsteigend sind.
Die ATTinys können innerhalb einer wählbaren Zeitspanne entweder von dem
letzten zum neuen RGB-Wert faden oder pulsen. Beim Faden wird der
gewünschte RGB-Wert genau nach der gewünschten Zeitspanne erreicht. Beim
Pulsen wird in der vorgegebenen Zeit zunächst zum gewünschten Wert
"gefadet" und anschließend genauso wieder zurück zum Ausgangswert. Die
Zeitspanne ist in n'tel Sekunden vorgebbar, also 1, 1/2, 1/4 usw.
Sekunden. Ein Zeitwert von 0 wechselt sofort auf den gewünschten
RGB-Wert. Die 3 PWM-Kanäle laufen mit 488Hz, sind also flimmerfrei.
Das Kommunikationsprotokoll sieht dafür ungefähr folgendermaßen aus:
Die Start-Adresse kann zwischen 0 und 239 vorgegeben werden, die Anzahl
der RGB-Werte ist variabel und kann zwischen 1 und 240 liegen. So kann
man direkt mit einem Befehl mehrere aufeinanderfolgende RGB-Controller
mit verschiedenen RGB-Werten versorgen. In der Praxis der Equinox-Uhr
ist der Adressbereich aber nur 0 bis 59 bzw. die Anzahl der RGB-Werte
maximal 60.
Ebenso wurde für die ATTinys ein Bootloader entwickelt, mit dem man dann
den kompletten Ring in einem Rutsch neu flashen kann - also alle ATtinys
auf einmal. Gesteuert wird der Ring über einen ATmega168.
Die Übertragungsrate liegt bei 100.000 Bit/sec. Damit kann ein
kompletter Equinox-Ring mit 184 Bytes ca. 68 mal pro Sekunde mit
RGB-Daten gefüttert werden. Für die Uhr reicht aber schon 1 Update/sec
;-)
Natürlich ist so ein Ring für eine "simple" Equinox-Uhr total
oversized... und so kamen mein Sohn Robert und ich auf die Idee, ein
paar Demo-Progrämmchen zu schreiben. Wir haben dann mal 4 der Streifen
zusammengelötet und zusammengeschlossen - aber die Platinen noch nicht
gebogen. Ausserdem haben wir erstmal die Platinen im Viereck mit den
LEDs nach innen zeigend auf den Boden gelegt, siehe auch obige Fotos.
Die Demo-Programme laufen auf dem steuernden ATmega168. Dieser ist im
Moment noch auf Lochrasterplatine aufgebaut. Die endgültige Schaltung
für den ATmega168 wird an meine WordClock-Schaltung angelehnt sein: 1
ATmega, 1 RTC und 1 DCF-Empfänger. Diese Schaltung wird dann über 4
möglichst dünne Drähte mit dem Ring verbunden.
Das Ergebnis der einzelnen Demo-Programme kann man sich hier als Video
(Vorsicht: 54 MB) herunterladen:
http://www.uclock.de/equinox.zip
Jetzt zu meiner eigentlichen Frage:
Wie gesagt, die Platinen in eine Kreisform zu biegen ist kein Problem.
Aber wie fixiere ich sie möglichst stabil als Ring, ohne wieder einen
dicken Klotz an die Wand hängen zu müssen?
Ich dachte schon an einen ca. 1,22m langen und 3mm dünnen
Plexiglas-Stab, den ich zu einem Kreis biege und dann die 4 Platinen
innen "anlege" - mit den LEDs nach außen gerichtet - also durch den
Plexiglasstab hindurch schauend.
Aber vielleicht habt ihr bessere Ideen dazu...
Gruß,
Frank
Plexiglas biegen wird etwas böse.
Es wird dochn kleiner Draht reichen, der jeweils 2 gegenüberliegende
Platinenverbindungen aufn passenden Durchmesser hält.
Schönes Projekt und ordentlich Oversized :>
h_ schrieb:> Na ein Glück, dass das ge'zip'ed war!
Tja, ich bin eben ein Sparfuchs ;-)
Nein, im Ernst, es hatte einen anderen Grund: Der Server ist nicht
gerade stark im streamen. Hätten die Leute direkt aufs AVI geklickt,
hätten sie wahrscheinlich nur ein ruckeliges Etwas gesehen. So habe ich
das Viedo in ein Zip gepackt, um das zu verhindern.
Gruß,
Frank
Martin Wende schrieb:> Plexiglas biegen wird etwas böse.
Auch wenn es ein 3mm starker Flachstab ist? Ich habe allerdings bisher
keinen Anbieter gefunden, der Plexi-Flachstäbe anbietet - nur Rund- und
Vierkantstäbe.
> Es wird dochn kleiner Draht reichen, der jeweils 2 gegenüberliegende> Platinenverbindungen aufn passenden Durchmesser hält.
Ja, diese Idee hatte ich auch schon. Oder jeweils die Platinen wie einen
Flitzebogen spannen. Störend wäre aber der im Kreis querlaufende
Draht...
Wenn man sich
http://hackaday.com/2010/09/07/equinox-clock/
näher anschaut, kann man erkennen, dass hier offenbar 60 matte
Acrylglassegmente über den LEDs angebracht sind, welche das Licht schön
im jeweiligen Segment verteilen. Das wäre eigentlich mein Ziel. Aber
auch da habe ich noch keinen Anbieter gefunden, der solche
Acrylglas-Stückchen im Sortiment hat.
> Schönes Projekt und ordentlich Oversized :>
Danke :-)
Der Witz ist, dass man mit dem jetzigen Protokoll auch bis zu 16 von den
Platinen zusammenschalten kann. Das ergibt dann einen Riesenkreis mit
240 RGB-LEDs. Wenn man das Protokoll um 1 Byte erweitert
(16-Bit-Adressen), lässt sich das ganze fast beliebig hochskalieren.
Allerdings bekommt man wohl mit CLK und Data ein Problem und man müsste
mit der Übertragungsgeschwindigkeit etwas heruntergehen - oder das
Signal differentiell übertragen.
Martin Wende schrieb:> Plexiglas biegen wird etwas böse.
Plexiglas ist nicht gleich Plexiglas. Da gibt es Unterschiede in der
Herstellung und natürlich im Preis.
Kommt drauf an, ob es sich um extrudiertes(billiges) oder gegossenes
Plexiglas handelt. Das gegossene lässt sich sowohl spanabhebend
bearbeiten, z.B auch sauber bohren, als auch biegen. Das extrudierte
bricht dagegen sehr schnell.
mfg.
http://www.modulor.de/shop/oxid.php/sid/x/shp/oxbaseshop/cl/alist/cnid/TAB
XT ist extrudiertes und GS gegossenes.
Plexiglas(PMMA) biegen ist kein Problem. Sollte man nur Erwärmen vorm
biegen.
Wenns ohne Erwärmen gehen soll dann einfach Makrolon(Polycarbonat) das
kann man auch kalt biegen ohne das es bricht.
Flachstab gibt es Imho nicht aber du kannst ja nen dünnen Streifen von
ner Scheibe schneiden lassen. Müsste jeder Kunststoffladen machen können
Gruß Matthias
asdf schrieb:> Es gibt doch LED-Stripes, bei denen man jede LED einzeln steuern kann.> Wären die nicht eine alternative?
Hm, da habe ich noch keine gesehen. Normalerweise sind die alle einfach
in Dreiergrupppen parallelgeschaltet. Dass man die LEDs (und dann auch
noch RGB-LEDs) auf diesen Stripes einzeln steuern kann, wäre mir neu.
Gruß,
Frank
Oliver Schmutz schrieb:> Echt klasse. Cooles Video. ;)
Danke :-)
Die Kamera war an einzelnen Stellen deutlich überfordert, besonders bei
den 1/64 sec-Blitzen.
Die einzelnen Demo-Progrämmchen sind meist 10-15 zeilige und sehr
einfache Funktionen. Durch die Eigenintelligenz der ATtinys muss man da
wirklich nicht viel tun. Da wo am Schluß dieser rote Halbkreis mehrfach
durch den (noch eckigen) Ring läuft, lasse ich einfach einen roten Punkt
durch die LED-Stripes wandern. Durch das selstständige Faden der Attinys
ergibt sich der Effekt, dass immer 6-7 LEDs brennen, wo diese zum Rande
her dunkler sind als im Zentrum.
Da lässt sich noch einiges mehr machen.
Gruß,
Frank
Konrad S. schrieb:> Wie wäre es mit einem Plexiglas-Rohr?
Die Idee hatte ich auch schon, aber ich glaube nicht, dass man ein
Plexiglas-Rohr besonders gut biegen kann. Diese PVC-Schläuche möchte ich
jedenfalls nicht nehmen. Die sind mir nicht "schön" genug ;-)
Gruß,
Frank
Schneide doch einen Kreis aus Styrodur aus (oder wie das heißt, das
härtere Styropor).
Die Kanten kann man abschleifen.
Anschließend kann das mit Wandputz-Farbe, die recht rauh/drick ist,
angemalt werden.
oder nehme einen Hula-Hup Reif aus dem Spielwahrenladen, da gibt es evt.
auch "schöne" im Netz, bzw. man kann die auch anders anmalen.
Stone schrieb:> Wenns ohne Erwärmen gehen soll dann einfach Makrolon(Polycarbonat) das> kann man auch kalt biegen ohne das es bricht.
Danke für den Tipp. Ich schaue mal, ob es sowas auch als Flachstab gibt.
Gruß,
Frank
Oliver Stellebaum schrieb:> Im Markt hat doch neulich jemand eine Sammelbestellung für einzeln> adressierbare LEDs initiiert.
Dyco-LEDs. 32 Helligkeitsstufen je Farbe, serielle Ansteuerung, sehr
einfach kaskadierbar, ca 0.75€/Stück.
Frank M. schrieb:> asdf schrieb:>> Es gibt doch LED-Stripes, bei denen man jede LED einzeln steuern kann.>> Wären die nicht eine alternative?>> Hm, da habe ich noch keine gesehen. Normalerweise sind die alle einfach> in Dreiergrupppen parallelgeschaltet.
Bei den billigen ja
> Dass man die LEDs (und dann auch noch RGB-LEDs) auf diesen Stripes> einzeln steuern kann, wäre mir neu.
Bitte sehr, nur ein Beispiel:
http://www.adafruit.com/products/306
Frank M. schrieb:> Die Idee hatte ich auch schon, aber ich glaube nicht, dass man ein> Plexiglas-Rohr besonders gut biegen kann.
Ah, ich dachte, du suchst nur eine transparente Außenwand. Da hätte man
von einem Rohr mit 250mm Durchmesser einen Ring mit 15mm bis 20mm Höhe -
oder was eben benötigt wird - abschneiden können.
asdf schrieb:> http://www.adafruit.com/products/306
Aber "There are 32 RGB LEDs per meter" - da hat die Uhr dann 60cm
Durchmesser. Ist schon ein bisschen viel. Dafür 3*7 Bit Farbauflösung.
Franks Lösung mit "intelligenten" LEDs hat durch die möglichen
eingebauten Effekte ihren ganz besonderen Reiz.
Konrad S. schrieb:> Dyco-LEDs. 32 Helligkeitsstufen je Farbe, serielle Ansteuerung, sehr> einfach kaskadierbar, ca 0.75€/Stück.
Ja, die meinte ich!
Wären also 45 Euro für die LEDs bei 1 LED pro Sekunde. Oder sollte man 2
Stück oder gar 3 "pixel" pro Sekunde verwenden?
Konrad S. schrieb:> Dyco-LEDs. 32 Helligkeitsstufen je Farbe, serielle Ansteuerung, sehr> einfach kaskadierbar, ca 0.75€/Stück.
Ja, diese Sammelbestellung habe ich auch kürzlich mitbekommen. Ich muss
aber dazu sagen, dass ich und Robert an diesem Projekt aber schon seit
Februar gearbeitet haben.
Zudem liegt der Reiz an diesem Projekt ja gerade an der Eigenintelligenz
der ATtinys, d.h. der Steuer-µC muss sich beim Faden bzw. Pulsen nicht
mehr selbst um die nötigen PWM-Werte kümmern. Das machen die ATtinys von
ganz allein... und das noch beliebig skalierbar.
Als letztes: 32 Helligkeitsstufen sind etwas knapp. Mit den ATtinys
mache ich 64 verschiedene Helligkeitsstufen. Das ergibt wesentlich
weichere Übergänge.
Gruß,
Frank
asdf schrieb:> Bitte sehr, nur ein Beispiel:> http://www.adafruit.com/products/306
Kann man vergessen. Diese LEDs bieten keine Helligkeitsstufen per PWM,
d.h. man kann sie nur ein- und ausschalten.
Gruß,
Frank
Frank M. schrieb:> Als letztes: 32 Helligkeitsstufen sind etwas knapp. Mit den ATtinys> mache ich 64 verschiedene Helligkeitsstufen. Das ergibt wesentlich> weichere Übergänge.
Ja, hohe Farbauflösung ist erstaunlich wichtig. Das habe ich gelernt,
als ich Zabex' Sofabeleuchtung für meine LED-Leuchtleiste adaptiert habe
(10m RGB-LED-Strip). Da wird aus z.B. einem ATmega88 eine
3-Kanal-16-Bit-PWM rausgeholt. Davon werden aber nur je 256 Werte
benutzt, also 8-Bit pro Farbe. Eingestellt werden dann aber nicht direkt
die RGB-Farben, sondern über den HSV-Farbraum - seeeeehr praktisch!
http://www.zabex.de/site/sofabeleuchtung.html
hi,
bin grade am gleichen projekt dran. aber erst in planung.
einen plexiglasstreifen zu biegen, ist kein problem, wenn man ihn auf
165-170 grad aufheizt. ich hab meine möbelfronten so gebogen (erhitzt
mit infrarotstrahler von unten und heissluftpistole von oben, temperatur
mit meßpistole überwacht). du könntest den plexglasstreifen in 3 teilen
im backrohr erhitzen und über einen holzkreis biegen. allerdings glaube
ich, daß einzelne plexglasquader wie bei der originalen uhr hübscher
sind. beim obigen link zum plexiglasshop bist du wirklich gut dran, die
sind sehr nett dort. du mußt dann mit stichsäge oder noch besser
bandsäge die streifen oder quader ausschneiden (beim plexiglasshop gibt
es auch geeignete stichsägeblätter), schleifen(bandschleifer), und
sandstrahlen (lassen).
für die elektronik habe ich vor, einen ATMega328P mit
arduino-programmierung mit der nötigsten peripherie und uhr-ic
auszurüsten und damit 12 tlc5940 anzusteuern.
bei den leds frage ich mich, ob es sinn macht, etwas wie dieses zu
bestellen:
http://www.amazon.de/gp/product/B004JRNODA/ref=oh_details_o00_s01_i00
und dann die leds runterzulösen/schneiden, wie auch immer.
gruß stefan
Hi Stefan,
Eisebär schrieb:> einen plexiglasstreifen zu biegen, ist kein problem, wenn man ihn auf> 165-170 grad aufheizt. [...] du mußt dann mit stichsäge oder noch besser> bandsäge die streifen oder quader ausschneiden (beim plexiglasshop gibt> es auch geeignete stichsägeblätter), schleifen(bandschleifer), und> sandstrahlen (lassen).
Hmm, ziemlich viel Aufwand...
> http://www.amazon.de/gp/product/B004JRNODA/ref=oh_details_o00_s01_i00> und dann die leds runterzulösen/schneiden, wie auch immer.
In der Bucht bekommst Du mittlerweile RGB-LEDs im PLCC6-Gehäuse für 10
ca. Cent das Stück, wenn Du 100 Stück abnimmst. Ich glaube nicht, dass
es sich lohnt, irgendwo LEDs herunterzuschneiden oder was auch immer.
Gruß,
Frank
hi,
naja, ziemlich viel aufwand ist schon richtig, aber es soll ja ein
designerstück werden, und da geht's ohne aufwand nunmal nicht. plexiglas
will richtig bearbeitet werden, dann glänzt es auch schön. naja, nach
dem sandstrahlen nicht mehr, aber es sieht schön aus. man kann's auch
mit anderen werkstoffen machen, aber dann nicht die wertigkeit der
equinox-uhr erwarten. außerdem ist es, für mich zumindest, eine schöne
arbeit mit einem wunderbaren ergebnis.
vielen dank für den tip mit der bucht, ich hab' nur bei
elektronik-händlern nachgesehen, und da kosten die dinger weit jenseits
des euro. da denkt man schon mal nach. hab jetzt bei Deinem tip ohne
viel suchen schon 20cent-RGB gesehen, nochmals danke.
gruß stefan
Eisebär schrieb:> naja, ziemlich viel aufwand ist schon richtig, aber es soll ja ein> designerstück werden, und da geht's ohne aufwand nunmal nicht.
Das Problem fängt schon damit an, dass ich gar nicht das richtige
Werkzeug habe. Ich habe zwar keine linken Hände, aber im normalen
Haushalt brauche ich auch nicht mehr als ein paar Schrauben, Nägel,
Hammer, Schraubenzieher und eine Bohrmaschine. Sandstrahler oder Säge
zum Bearbeiten von Plexiglas besitze ich leider nicht, den nötigen Platz
dafür (Arbeitsraum) auch nicht.
> vielen dank für den tip mit der bucht, ich hab' nur bei> elektronik-händlern nachgesehen, und da kosten die dinger weit jenseits> des euro. da denkt man schon mal nach. hab jetzt bei Deinem tip ohne> viel suchen schon 20cent-RGB gesehen, nochmals danke.
Es gibt sogar deutsche Anbieter, die das für fast denselben Preis wie
die Chinesen verkaufen. Dann gehts schneller mit dem Versand. Beachte
nur, dass Du für einen Bausatz LEDs aus derselben Charge nimmst. Frag
auch den Händler nach einem Datenblatt. Viele schreiben als technische
Daten (insb. Vorwärtsspannung!) die Maximum Ratings auf die
Verkaufsseite. Wenn man diese verwenden würde, hätte man nicht viel
Freude daran. Im Zweifel misst man selbst die Spannung bei 20mA, dann
passt auch die Vorwiderstandsberechnung.
Noch eine kleine Stolperfalle: Die RGB-LEDs im PLCC6-Gehäuse haben
mittlerweile verschiedene Pin-Outs. Normalerweise entsprechen die Pins
1,2,3 den Farben Rot, Grün, Blau (RGB). Aber ich habe auch schon die
Reihenfolge GRB erlebt, z.B. bei denjenigen, die ich jetzt in meine
ersten 4 Streifen verbaut habe.
Gruß,
Frank
hi,
danke für die ratschläge, Du hast gut erkannt, daß ich kein elektroniker
bin.
dieses hier werd' ich mal bestellen, sieht gut aus, und der preis ist
ein hammer...
http://www.ebay.at/itm/500-pcs-PLCC-6-SMD-5050-RGB-LED-manual-control-light-/110608585550?pt=LH_DefaultDomain_0&hash=item19c0c9134e
falls es wirklich von 2 chargen stammt, ist das bei der menge egal...
zum anderen teil: ich hab' mir schon ziemlich genaue vorstellungen vom
bau dieser uhr gemacht, und der handwerkliche teil ist sicher der
aufwendigste. selbst wenn Du die klötzchen anders machst, wie willst Du
den ring für die front herstellen? da bleibt Dir sägen, schleifen,
polieren, fräsen (für die stundenstriche) nicht erspart. dagegen sind
der elektronik- und der programmierteil relativ einfach. weil Du diese
werkzeuge nicht hast, vermute ich, daß Du das auch mit werkzeugen nicht
könntest, ohne erfahrung. ich hab' auch erstmal einen quadratmeter plexi
verbraten (teilweise im wahrsten sinn des wortes, ich hab' die
wärmeleitfähigkeit des werkstoffes überschätzt).
frag' doch zuallererst im freundeskreis nach, ob sich das jemand
zutraut. ich bin wirklich gern bereit, dann zu helfen.
liebe grüße, stefan
Eisebär schrieb:> danke für die ratschläge, Du hast gut erkannt, daß ich kein elektroniker> bin.
Und Du hast gut erkannt, dass ich kein Handwerker bin ;-)
> frag' doch zuallererst im freundeskreis nach, ob sich das jemand> zutraut. ich bin wirklich gern bereit, dann zu helfen.
Okay, werde ich machen. Aber vielleicht ergänzen wir beide uns gut... Du
kümmerst Dich um die Mechanik, ich um die Elektronik? Habe hier noch ein
paar Streifen liegen...
Gruß,
Frank