nichtich Geschrieben April 27, 2012 at 09:09 Geschrieben April 27, 2012 at 09:09 Hallo, mich treibt schon länger die Idee einer programmierbaren Lampe um, die über verschiedene Sensoren (Helligkeit, Bewegung, Uhrzeit...) und Bewegungsmuster gesteuert werden kann. Ähnliches gibt es schon massenweise fertig oder zum selber basteln mit kleinen, bunten LEDs zur Partybeleuchtung - was allerdings meist potthässlich aussieht. Ich möchte schöne Hochenergie-LEDs (warmweiß) betreiben, die die Glühbirnen oder Energiesparlampen ersetzen und darüber hinaus noch gesteuert werden können. Beispielsweise: Mehrere Strahler im Raum, die heller oder dunkler werden, je nachdem wo sich jemand aufhällt oder je nachdem in welcher Richtung die Sonne stehtEine Matrix aus X mal Y Leuchtfeldern (für den Anfang reicht 2x2 wenn es etwas größere Felder sind). Die Helligkeit könnte z.B. langsam (!) hin und her wandern. Da ich mich bisher nicht so mit Elektronik auskenne, poste ich hier mal meine bisherigen Überlegungen mit Bitte um Kommentare und Korrekturen. 1. Lassen sich mit Tinkerforge LEDs zur Raumbeleuchtung betreiben? 1.1. Wieviel Strom kann Tinkerforge direkt liefern? Die TinkerForge-Bauteile basieren auf einer Stromversorgung per USB, deshalb sind sie auf 5V ausgelegt (die USB-Spezifikation schreibt eine Spannung zwischen 4,65V und 5,25V vor, die am Ende eines USB-Kabels sogar auf 4,4V abfallen kann). Als Stromstäre sind allerdings bei USB nur 500mA zugesichert bzw. 900mA bei USB 3.0. USB-Netzteile können zusätzlich über die Datenleitung einen Lademodus zwischen 500mA und 1500mA aktivieren, ob das mit Tinkerforge zusammen funktioniert weiß ich nicht. Grundsätzlich ist mit dem Master Brick also nur eine maximale Leistung von bis zu 2,5W (5V x 0,5A) bzw. 4,5W (5V x 0,9A) möglich. Der Step-Down Power Supply (http://www.tinkerforge.com/doc/Hardware/Power_Supplies/Step-Down.html) kann zusätzlich mit einer 6V-27V Stromquelle (Batterie, 12V-Netz, anderes Netzteil für Anschluss an Stromnetz) einen Stapel von Bricks bei konstant 5V mit maximal 3A versorgen, also maximal 15W. P.S: Wenn es in Zukunft ein Ethernet-Brick gibt, ließe sich die Lampe theoretisch auch mit Power over Ethernet betreiben, im Wikipedia-Artikel zu PoE steht, das sind maximal 12,95W bei 48V. Ich vermute aber dass das Ethernet-Brick nur die USB-Maximalleistung abgreifen wird, außerdem hängen ja vielleicht noch andere Geräte am Ethernet, die auch Strom wollen. 1.2 Wieviel Licht ist damit möglich? Über Die Lichtausbeute von Hochenergie-LEDs ist in den letzten Jahren stetig gestiegen, in der Praxis bekommt man schon LEDs mit einer Effizienz von über 100lm/W, allerdings sind das eher Idealwerte, die nur bei einer bestimmten Spannung und Stromstärke erzielt werden. In der Regel nimmt die Effizienz mit steigender Leuchtstärke ab. Die Auswahl der konkreten LED-Bauteile wird durch die maximale Spannung von 5V eingeschränkt. Hier eine Übersicht der maximal zu erwartenden Leuchtstärken: 40lm/W60lm/W80lm/W100lm/W2,5W100lm150lm 200lm 250lm4,5W180lm270lm 360lm 450lm15W 600lm900lm1200lm1500lm Bedenkt man, dass eine traditionelle 60W Glühbirne 720lm hell ist (100W Glühbirne: etwa 1450lm), dann ist schonmal klar, dass eine normale USB-Versorgung zu wenig Strom liefert. Mit dem "Step-Down Power Supply" wäre aber eine Raumbeleuchtung möglich, wobei die Kennzahlen der verwendeten LEDs genau beachtet werden sollten, um unangenehme Überraschungen zu vermeiden. 2. Wie lassen sich LEDs dimmen? Grundsätzlich lassen sich LEDs auch über die Spannung dimmen, das hieße pro LED (bzw. Feld von zusammen geschalteten LEDs) ein Analog Out Bricklet (https://shop.tinkerforge.com/bricklets/analog-out-bricklet.html). Die Effizienz der LED ist allerding bei niedrigeren Spannungen besser und falsche Spannungen können die LED zerstören. Es wird deshalb empfohlen, für das Dimmen Pulsweitenmodulation (PWM) anzuwenden. Dabei wird die LED mehrmals in der Millisekunde kurz aus- bzw. angeschaltet, um die scheinbare Helligkeit zu verringern. 2.1 Wie lässt sich PWM mit Tinkerforge umsetzen? Dies lässt sich möglicherweise mit den IO-Bricklets bewerkstelligen, die konstant 3,3V liefern. Ich habe aber noch keine genauen Angaben über die Taktfrequenz des Tinkerforge-Bus gefunden. Die Anzahl der Nachrichten, die per USB zwischen Computer und Bricklet übertragen werden können, hängt anscheinend von der USB-Geschwindigkeit am. Angeblich ist bislang zumindest 1kHz möglich, das sollte für einfache Anwendungen reichen. Es ist aber etwas unpraktisch, die Schaltsignale für PWM über USB zu schicken, besser wäre ein PWM-Bricklet, dem man nur die gewünschte Helligkeit (bzw. einen RGB-Wert für Farb-LEDs) übergibt. Die für PWM benötigten Chips gibt es sehr billig, kennt sich da jemand aus, der so ein Bricklet entwerfen könnte? Im Grunde wäre das ganze wie ein IO-Bricklet, nur das an den Ausgängen keine konstante Spannung sondern PWM-Signale anliegen, es sollte also nicht viel teurer als ein IO-Bricklet werden. 3. Bausatz für eine programmierbare Lampe Es werden in jedem Fall benötigt: 1 Master Brick1 Step-Down Power Supply1 Netzteil um Step-Down an Power Supply anzuschließenPassende Hochenergie-LEDs plus Vorwiederstände, Kühlkörper und Gedöns (da muss ich mich erst einlesen, vielleicht kann das jemand anderes erklären)Ein Raspberry Pi, um das ganze zu steuern (oder ein Arduino o.Ä. wenn Tinkerforge in Zukunft auch ohne PC läuft) Bei Bedarf weitere Sensoren, wenn die Lampe auf die Äußere Umgebung reagieren sollMöglichst das bisher nicht existierende PWM Brickelt, um die Programmierung zu vereinfachen Ich denke Raspberry Pi ist die beste Lösung zur Steuerung, damit lässt sich die Lampe auch leicht ans Ethernet anschließen und z.B. über das Web steuern. Hat schon jemand Erfahrung mit der Kombination Tinkerforge & Raspberry Pi? Zitieren
AuronX Geschrieben April 27, 2012 at 09:41 Geschrieben April 27, 2012 at 09:41 Falls du Angst hast nicht genügend Strom zu bekommen gibt es ja auch noch eine Alternative: ein Stack pro Lichtquelle Du könntest eine Step-Down-Supply + Master pro Lichtquelle betreiben, dann hätte jede Quelle die volle Stromversorgung und müsste sie sich nicht mit den anderen teilen. Du brauchst dann aber auch noch eine Master-Extension (Kabellos oder mit Kabel) um die einzelnen Stacks zu verbinden. Ist aber zugegeben auch etwas teuer... [edit: ich stelle gerade fest, dass du möglicherweise sogar schon so gerechnet hast...] externer Dimmer? Ich frage mich ob es möglich ist einen externen PWM-Dimmer mit Potenziometer zu nutzen. Die Idee wäre, dass man die Poti-Ansteuerung durch eine TF-Ansteuerung (Analog-Out???) ersetzt und TF dadurch nur die Regelung übernimmt, die Versorgungsspannung der LED aber nicht durch die TF-Teile bereitgestellt wird. Wenn das ginge wäre auch gleich das PWM-Problem erschlagen, allerdings fehlt mir hier das elektrotechnische Wissen... Wegen dem PWM frage ich mich außerdem gerade, ob man dafür nicht auch das DC-Brick verwenden kann. Das können dir die TF-Leute bestimmt besser sagen, aber ich hätte gedacht, dass das DC-Brick nix anderes tut als ein Gleichstromgerät per PWM zu kontrollieren. LG Jan Zitieren
ThomasKl Geschrieben April 27, 2012 at 10:50 Geschrieben April 27, 2012 at 10:50 Wie wäre es denn mit dem Servo Brick, da hat man 7 separate Ausgänge deren PWM man einzeln steuern kann. Zudem kann eine Spannung zwischen 2 und 9 Volt gewählt werden. LED Leisten und Kühlkörper gibt es z.B. hier http://www.leds.de/LED-Leisten-Module/ Zitieren
borg Geschrieben April 27, 2012 at 11:58 Geschrieben April 27, 2012 at 11:58 @ThomasKI Der Stift an der Stiftleiste über den das PWM läuft liefert nicht genug Strom um eine LED zu steuern (Leistung bringt nur der Spannungs-Stift). Zitieren
ThomasKl Geschrieben April 27, 2012 at 12:56 Geschrieben April 27, 2012 at 12:56 Könnte man da einen Transistor zwischen setzen, also Signal und Leistungspin an den Transistor löten und an den Emitter dann die LED hängen? Zitieren
nichtich Geschrieben April 28, 2012 at 20:14 Autor Geschrieben April 28, 2012 at 20:14 Ein Stack pro Lichtquelle wäre tatsächlich zu teuer, die maximal 15W des "Step-Down Power Supply" sollten für eine kleine Lampe reichen, sind aber vielleicht doch etwas wenig. Ggf. ist es stattdessen möglich, die Bricks, den Raspberry Pi und die LEDs über ein Netzteil zu versorgen, damit kommen auch LEDs für höhere Spannungen in Frage. Ohne PWM-Bricklet frage ich mich aber, ob dann Tinkerforge überhaupt noch die richtige Systemwahl ist oder nicht doch einfacher gleich alles direkt mit Arduino oder dem Raspberry Pi umgesetzt werden kann. Ich dachte nur, mit Tinkerforge ist es etwas einfacher, aber da ist zum einen die Begrenzung auf 5V/3A und bislang kein PWM-Bricklet. @ThomasKl: Ideal wäre ein PWM-Bricklet, dass das Signal auch auf eine externe Stromquelle auflegen kann, d.h. Tinkerforge als Dimmer für handelsübliche LED-Lampen. Ich denke ein PWM-Bricklet, dass mindestens drei unabhängige Signale (für RGB) liefert und zwar wahlweise die eigene Stromversorgung (5V) oder eine extern angelegte Leitung, sollte noch mehr Interessenten finden. Damit ließe sich eine Handelsübliche LED-Lampe über ihr eigenes Netzteil versorgen und mit Tinkerforge über PWM Dimmen und bei RGB-Lampen die Farbe ändern. Wenn die API des PWM-Bricklet noch Funktionen mitliefert, die das Blinken und Faden noch einfacher machen, um so besser. Zitieren
ThomasKl Geschrieben April 29, 2012 at 01:40 Geschrieben April 29, 2012 at 01:40 Ich bin mir nicht sicher ob eine PWM Erzeugung für ein Bricklet nicht etwas zuviel verlangt ist. Zumal das Servobrick ja schon 7 separate PWM Signale erzeugt. Man bräuchte nur eine kleine Erweiterung, die die Signale mit einer externen Spannung bzw der Leistungsleitung des Bricks verknüpft. Vielleicht gibt es so was ja schon. Die Steuerung der Dioden geschieht ja dann per Software, da lässt sich bestimmt ein Satz Funktionen/Klassen schreiben, die einem alle Wünsche erfüllen. Zitieren
batti Geschrieben April 29, 2012 at 06:25 Geschrieben April 29, 2012 at 06:25 Irgendeine Art von LED Bricklet oder PWM Brick werden wir sicher mal machen. Wer aber schnell eine Lösung braucht, für den ist der Vorschlag von Thomas etwas. Einfach das Servo Brick nehmen und mit dem "Logik PWM Ausgang" über einen Transistor die Leistung schalten. Zitieren
nichtich Geschrieben April 30, 2012 at 06:12 Autor Geschrieben April 30, 2012 at 06:12 Ok, dann würde ich entweder erstmal das Servo Brick nehmen oder doch lieber das ganze mit Arduino und PWM-Chips selber zusammenlöten. Wird zur Verwendung des Servo Brick (50€) zusätzlich noch ein Master Brick (30€) benötigt, es sind ja auf beiden ein ARM-Prozessor und eine USB-Schnittstelle? Falls die Lampe nicht dauernd am Ethernet hängt, wird ja auch noch ein Raspberry Pi benötigt, da summiert sich ggf. allein die Steuerung mit allem drum und dran auf 150€ Unter http://electronics.stackexchange.com/questions/30737/transistors-and-pwm ist übrigens die Frage beantwortet, wie man Servo Brick und LED mit einem Transistor zusammenschaltet. Zitieren
ThomasKl Geschrieben April 30, 2012 at 06:37 Geschrieben April 30, 2012 at 06:37 Vielen Dank für den Link. Die Bricks funktionieren alle auch einzeln am PC, der Master ist nur nötig wenn sich mehrere Bricks eine USB Verbindung teilen sollen. Wenn du willst/kannst ist es auch möglich das Brick mit eigener Firmware auszustatten, dann brauchst du keinen PC, dieser low level Zugang ist im Moment aber noch nicht offiziell unterstützt. Zitieren
Nephelim Geschrieben May 3, 2012 at 14:33 Geschrieben May 3, 2012 at 14:33 Wäre es eigentlich möglich über einen DC-Brick einen 24V LED-Streifen ala diesem hier per PWM zu dimmen? 24V/3A Netzteil am DC-Brick-Eingang, den LED-Streifen am Ausgang? Zitieren
ThomasKl Geschrieben May 4, 2012 at 10:00 Geschrieben May 4, 2012 at 10:00 Von den Spezifikationen sehe ich nichts was dagegen spricht. Man müsste vermutlich nur die PWM Frequenz anpassen. Zitieren
batti Geschrieben May 4, 2012 at 10:36 Geschrieben May 4, 2012 at 10:36 Wir haben das auch noch nicht gemacht, können es auch nicht testen. Ich sehe aber auch keinen Grund warum das nicht gehen sollte. Aber dann nicht Rückwärts fahren... Grüße Zitieren
zarquon Geschrieben July 8, 2012 at 12:44 Geschrieben July 8, 2012 at 12:44 Wenn Du mit dem Servobrick größere Lasten sprich Ströme ansteuern möchtest, würde ich Dir einen IC mit Darlington Array empfehlen. Z.B. einen ULN2803. Dort sind gleich 8 elektronische Schalter integriert die bis zu 500mA gegen Masse treiben können und auf der Eingangsseite die CMOS/TTL Logikpegel akzeptieren. Genaueres unter: http://www.mikrocontroller.net/articles/LED-Matrix Zitieren
christbaum Geschrieben March 25, 2013 at 22:54 Geschrieben March 25, 2013 at 22:54 Hi, also ich habe ein ähnliches Vorhaben. Dazu verwende ich ein IO-16 Bricklet welches ich an und ausschalte (PWM!). Das muss man halt programmieren, was aber machbar ist. Falls gewünscht poste ich das Programm hier! An das IO-16 Bricklet kommen dann Transistoren (BC337, die verkraften bis zu 1A und 45V jeweils, das reicht für mich). Diese Schaltung ist einfach zu realisieren und relativ preiswet. Ich möchte 14 LED Streifen einzeln steuern können, das wären dann 2 Servo-Bricks und das Teuer, ein IO-16 Bricklet ist wesentlich günstiger. Zum Programm: Habe es in Python geschrieben. Wenn ich es direkt über den Interpreter laufen lasse sieht man die LED flackern. Wenn ich es allerdings erst kompiliere läuft es deutlich schneller und das flackern ist weg! Zum kompilieren einfach im Terminal in den Ordner wechseln in dem das Programm liegt und dann folgendes: pyton >> import py_compile >> py_compile.compile('meinmodul.py') Zitieren
Hawk Geschrieben May 4, 2013 at 18:02 Geschrieben May 4, 2013 at 18:02 Hallo zusammen, die Idee, LEDs zu dimmen scheint immer wieder hochzukommen. In meinem Bauthread/Wiki findet ihr ein Beschreibung meines Aufbaus mit Servo Brick und LowSideSwitches. Wenn irgendwann mal die Ethernet Extension raus kommt, gibts auch mal den Code in aktueller TF-Version ;-) Dazu verwende ich ein IO-16 Bricklet welches ich an und ausschalte (PWM!). Anstatt das über den PC zu steuern, würde ich dir empfehlen, die Firmware des zugehörigen Bricks zu modifizieren und dir dort einen Software-Counter zu bauen. Das geht dann deutlich schneller, aber du müsstest dir noch einen Weg überlegen, wie du die Ansteuerungs-% an den Brick übermittelst. Erfordert etwas mehr Programmieraufwand, sollte aber auch ein besseres Ergebnis liefern. Gruß Hawk Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.