Ich würde gerne ein Lauflicht bauen.
Wenn 10VDC Spannung anliegen. Soll das Lauflicht wie folgt aufleuchten.
LED wird durch L abgekürzt.L steht jeweils für 2 LEDs in reihe die
gleichzeitig aufleuchten, also insgesammt 12 LEDs.
L1
L1,L2
L1,L2,L3
L1,L2,L3,L4
L1,L2,L3,L4,L5
L1,L2,L3,L4,L5,L6
Von L1 bis L6 soll ca. eine Sekunde vergehen.
dann sollen die lichter leuchten bis die Spannungsquelle ausgeschaltet
wird.
Ich wollte es mit einem attiny13 (um die Zeit des Lauflichts anpassen zu
können) und 6x BSS138 lösen, aber das ist doch recht aufwendig, da ich
nur sehr wenig platz zur verfügung hab.
die Platine ist nacher ca. 10x120mm gross und da ist nicht viel platz
für die 3528 (PLCC2/4) LEDs, den attiny und die Mosfets.
Jetzt dachte ich es gibt dafür vielleicht eine alternative.
-Vielleicht mit den WS2812LEDs machen. Das wäre zwar ein Overkill, da
ich nur rote LEDs bräuchte, aber von der Leiterbahnen auf der Platine
sicherlich einfacher. Mein Problem ist einfach, das ich nicht weiss wie
ich das Programmieren muss, da ich bei den tutorials über die ws2812
nicht ganz durchsteige.
Habt ihr noch ne andere alternative?
Mike88 schrieb:> Ich würde gerne ein Lauflicht bauen.
Sowas geht nicht nur mit µCs, sondern auch mit einem normalen
Schieberegister-IC plus Oszillator.
Gruss
Harald
Der Attiny13 hat nur 4, oder mit Reset 5 Ausgänge. Das heisst, Du
müsstest die Leds multiplexen.
Wenn 20mA pro Ausgang reichen, könnte man sie auch direkt anschliessen -
2 in Reihe.
Ich hatte mal so was gebaut: Beitrag "Blinky61 - vielseitiges Blink- und Lauflicht - ATtiny13 mit 6 LEDs [ASM]"
da leuchten immer 3 abwechselnd. Effekt 2 würde dann funktionieren.
(muss nur auf 1-maligen Ablauf geändert werden)
hi,
sorry da schreibt man so einen langen text, aber vergisst die
wichtigsten details. sorry.
Die LEDs sollen mit 100mA betrieben werden, also fällt multiplexen
vermutlich schonmal flach.
Echt der Attiny hat nur 4 bzw 5 Ausgänge?
Ich hatte gedacht es sind 6 Stück.
http://www.sachsendreier.com/msw/projekte/blinksdings/attin13_pinout2.png
Dann werd ich mal wegen dem Schieberegister Schauen.
Alternative ist immernoch das WS2812.
Wie kompliziert ist es dort so etwas zu programmieren für einen laien?
Danke und Gruss
ich würde einen LM3914 mit einem RC-Glied am Eingang nehmen. Der kann
auch mit 10V betrieben werden, dann brauchst du keinen zusätzlichen
Spannungsregler.
wenn ich das Datenblatt des LM3914 richtig verstehe kann jede LED nur
mit 30mA betrieben werden, das würde bei mienen 100mA nicht reichen.
Also das mit dem WS2812 lässt mir keine ruhe ;-)
Gibt es da nicht ein ganz leichten C Code der mir nach und nach die LEDs
anschaltet? Vielleicht ist ja jemand so nett und schreibt mir da mal
einen Teil.
Danke
Mike88 schrieb:> wenn ich das Datenblatt des LM3914 richtig verstehe kann jede LED nur> mit 30mA betrieben werden, das würde bei mienen 100mA nicht reichen.
Du könntest ja zusätzlich Treibertransistoren an die Ausgänge schalten.
Harald Wilhelms schrieb:> Mike88 schrieb:>>> wenn ich das Datenblatt des LM3914 richtig verstehe kann jede LED nur>> mit 30mA betrieben werden, das würde bei mienen 100mA nicht reichen.>> Du könntest ja zusätzlich Treibertransistoren an die Ausgänge schalten.
Dafür habe ich ja leider nicht den Platz, sonst hätte ich es ja mit dem
Attiny gemacht
Dann würde ich die Anforderungen neu formulieren:
Es sollen an 10V DC +- 0,5V 6 LED-Paare (ein Paar ist jeweils in Reihe
geschaltet) betrieben werden. Der Strom durch ein LED-Paar ist 20mA.
Die Helligkeit einer LED soll bei 20mA genauso groß wie bei der WS2812
sein.
Ist das soweit richtig?
Noname schrieb:> Dann würde ich die Anforderungen neu formulieren:> Es sollen an 10V DC +- 0,5V 6 LED-Paare (ein Paar ist jeweils in Reihe> geschaltet) betrieben werden. Der Strom durch ein LED-Paar ist 20mA.> Die Helligkeit einer LED soll bei 20mA genauso groß wie bei der WS2812> sein.> Ist das soweit richtig?
Das ist eine sehr gute Anforderung :-)
Und am liebsten noch mit WS2812LEDs ;-)
Mir würde ja mal ein codebeispiel reichen wo ich sehe wi ich 2 dieser
LED Paare nacheinander rot zum leuchten bringen mit 250ms Versatz.
Dann könnte ich ja versuchen das zu erweitern.
Ich bin immer noch etwas irritiert ob es jetzt wirklich 100mA sein
müssen. Hast du mal eine Leuchtprobe gemacht?
Der andere Punkt ist, warum das mit dem Platz nicht reichen soll.
Bei 10x120 mm², doppelseitig bestückt muss da doch noch massig Platz
über bleiben.
Was muss denn drauf?
Oben: 12 LEDs, Vorwiderstände, Treiber.
Unten: Ein Attiny13 (SOIC-8, 5mm x 6,2mm, passt also längs wie quer),
ein linearer Spannungsregler für den Tiny und ein Spannungsteiler um die
10V messen zu können.
Vielleicht hab ich noch etwas Hühnerfutter vergessen, aber so oder so
ähnlich sollte das doch machbar sein?
Grüße, Joey
Hast du hier schon nachgesehen:
http://www.mikrocontroller.net/articles/WS2812_Ansteuerung
Habe leider keinen Code. Nimm doch einfach mal eine WS2812 und versuche
sie über den Mikrocontroller zum Leuchten zu bringen. Der Rest ist dann
nicht mehr so schwer.
Für 6 rote LEDs WS28er zu nehmen ist einfach overkill und sinnlos.
Für die Ansteuerung von normalen LEDs gibt es mosfets im sot23 die >1A
mitmachen. damit müssen auf 1x12cm: ein tiny (muss sowieso), 6 mosfets,
6 LEDs, 6 Vorwiderstände, ein Spannungsteiler. Das ist doch locker zu
schaffen (würde vmtl. sogar auf lochraster hinhauen)....
Fragensteller schrieb:> Oh ja genau.> Einseitig soll die Platine sein ;-)
ok, dann wirst du an intelligenten LEDs nicht vorbeikommen.
Einseitig sehe sonst kaum eine Chance das zu routen.
Wenn die LEDs gleichmäßig über die Länge verteilt sein müssen, ohne
großeren Rand an einer Seite wird das einseitig selbst mit den WS2812ern
verdammt knifflig.
Das sollte schon gehen, bei 6 LEDs sind immer 2 cm zwischen denen, da is
genug platz für nen tiny. Für die Erkennung der Spannung und die
nachfolgende ansteuerung reichen mit einem Trick auch die Pins aus.
Der Trick ist: Man verwendet für mosfet1 den (immernoch als Reset
konfigurierten) Reset-Pin und legt den mit ~1k auf GND und ~1k
(ausgehend von 5V versorgung) auf den Eingang (wer sichergehen will
nimmt noch eine z-diode). Dann geht bei Ansteuerung LED1 an und der AVR
werkelt los. Im Proggi muss man dann einfach alle x ms die nächste LED
dazuschalten und am ende eine endlosschleife fahren. Wenn die 10V genug
Strom (600 mA nach Adam Riese und Eva Zwerg) liefern können geht das
alles noch einfacher, da man einfach die ganze Schaltung daraus versorgt
und sich den Trick sparen kann.
EDIT: Was mir eher Sorgen bereitet: Wo geht die Abwärme bei den LEDs hin
?
Max D. schrieb:> Das sollte schon gehen, bei 6 LEDs sind immer 2 cm zwischen denen, da is> genug platz für nen tiny.
Gefordert sind aber 6 x 2 = 12 LEDs.
Die ursprünglich geplanten LEDs sind 3528 groß, die WS2812 5050.
Gleichmäßig verteilt bleiben da, je nach LED-Typ, nur zwischen 5 und 7mm
Platz dazwischen.
Man kann versuchen zu tricksen, die WS2812 diagonal und den Tiny auch
diagonal am Rand dazwischen.
Aber das einseitig zu routen traue ich mir nicht zu.
Imho brauchst du einseitig eine breitere Platine oder an einer
Schmalseite ein paar Zentimeter extra für die Logik.
Wenn man diese 3528 nimmt, dann kann man schon einen tiny dazwischen
quetschen. Sollte es zu eng werden kann man auch auf zwei tiny4/5/9/10
ausweichen (die sind in einem sot23) die dann jeweils 3 Kanäle
übernehmen. Bei einem Einzelstück macht es ja nichts wenn man zwei AVRs
programmieren muss. Da die 10V die benötigten 600 mA liefern kann man
einfach nach dem poweron der AVRs x ms warten und dann die LEDs der
reihe nach anschalten.