Mehrere LEDs in Reihe mit Arduino ansteuern

  • Hallo,


    nachdem ich hier viel mitgelesen habe und die ersten LEDs zusammengelötet hatte, stehe ich jetzt vor meinem ersten Problem.


    Bisher habe ich meine RGB LEDs mit dem Fader von Benkley gesteuert, was auch super geklappt hat.


    Jetzt habe ich mir in den Kopf gesetzt, eine etwas individuellere Schaltung aufzubauen und bin bei meinen Überlegungen auf den Arduino gestoßen. http://arduino.cc/en/Main/ArduinoBoardDuemilanove
    Die Programmierung habe ich mir auch schon ein bisschen angeeignet und es funktioniert eigentlich auch ganz gut. Allerdings mache ich die Versuche immer nur mit einer LED. Und jetzt komme ich auch zum eigentlichen Problem:


    Ich verstehe einfach nicht, wie ich mehrere LEDs in Reihe schalten kann und durch den Arduino ansteuer!


    Der Arduino läuft mit einem Atmega 328 und verträgt daher eine Eingangsspannung von 6-20 V. Idealerweise wird er aber mit 7-12 V betrieben. Die Betriebsspannung liegt bei 5 V.


    Jetzt zu den Fragen:


    1. Eigentlich hatte ich vor, 5 LEDs in Reihe zu schalten und sie mit einem 18 V Netzteil zu betreiben. Das geht beim Arduino dann wohl nicht, da er ja idealerweise nur 12 V verträgt, oder?


    2. Wenn 1. nicht möglich ist, würde ich gerne die 12 V Eingangsspannung nutzen und 3 LEDs in Reihe schalten. Da könnte ich mir noch vorstellen, dass das irgendwie über den VIN Pin geht. Allerdings verträgt der Microcontroller ja nur 5 V, so dass ich dann den Anschluss nicht verstehe.


    Wahrscheinlich sind das ganz grundlegende Sachen, aber ich habe versucht darüber was im Internet zu finden und gebe wahrscheinlich die falschen Suchbegriffe ein, auf jeden Fall finde ich nichts.


    Könnt Ihr mir bitte weiterhelfen.


    Valerie

  • Also der Mega läuft mit 5V, die 6-20V werden durch einen Linearregler auf 5V runter gebracht. Wenn du jetzt LEDs in Reihe anschließen willst, brauchst du also erstmal eine Stelle an der du eine genügend hohe Eingangsspannung abgreifen kannst. Damit der Atmel was damit anfangen kann, musst du die LEDs dann über einen Transistor oder TTL Level kompatiblen FET steuern. Anschließen kann man das wie folgt.


    Vin - Led1 - Led2 - Led3 - usw - Widerstand - Transe/FET - GND


    Das einfachste ist nen FET zu nehmen, der mit 5V schon voll aufgesteuert ist. Dessen Gate kann man dann direkt mit einem Pin des Atmels verbinden. An den Drain kommt die LED Reihenschaltung. Dadrin sollte noch ein Widerstand sein, der den Strom einstellt. Die Source vom FET verbindet man mit Ground und das war es.

  • Hallo Valerie,


    hast Dir meine neue Controller-Entwicklung schon mal angeschaut, Klick ? Mit der könntest noch wesentlich mehr anstellen und Deine Programmierkenntnisse noch weiter ausbauen....


    Was die Funktionen angeht:


    HARDWARE:
    - 4 Stück Leistungsmosfets, 55V und 30A max.
    - Schaltregler für die Spannungsversorgung für den Controller
    - DMX - Schnittstelle
    - RS232 Schnittstelle
    - 36KHz IR-Empfänger
    - kompletter Analogport herausgeführt
    - ISP Schnittstelle
    - Kontroll LEDs
    - 2x16 LCD Display
    - 9 Taster für die Menusteuerung
    - Federkraftklemmen für die Spannungsversorgung, LEDs und DMX
    - Befestigungsbohrungen
    - großer Kühlkörper!


    SOFTWARE (bereits fertig programmiert):
    - Farbfader mit 6 einstellbaren/speicherbaren Farben und Verweil- und Verlaufdauereinstellung für jede einzelne Farbe
    - Zufalls-Farbfader mit einstellbarer Verweil- und Verlaufdauer
    - DMX Empfänger mit einstellbarem Empfangs-Kanal für jeden PWM-Kanal


    SOFTWARE (was noch geplant ist):
    - Blob-Effekt
    - Zufalls-Blob-Effekt
    - Auqarium Steuerung
    - DMX-Sendefunktion, für Master-Slave Verwendbarkeit
    - Farbspektrum, alle Farben per Taster link oder rechts durchfaden, wie bei der Philips Lampe


    Gruß, Benny.

  • Erst mal vielen Dank für die schnellen Antworten:


    @ Deadeye5589
    Ich bin mir zwar noch nicht ganz sicher, aber ich glaube ich habe das Grundprinzip verstanden;-)) Vielen Dank schon mal. Ich werde heute abend mir das noch mal genauer betrachten und mich mal mit den genauen Eigenschaften von Transistoren von FETs vertraut machen. Sieht ja jetzt nicht so schwer aus.


    @ Benkley
    Ich verfolge schon die ganze Zeit Deinen Thread mit großem Interesse. Allerdings muss ich zugeben, dass ich nicht wirklich ein großer Programmierer bin. Deswegen kommt mir der Arduino sehr gelegen. Dein Controller ist zwar besser ausgestattet, wenn ich allerdings noch einen Helligkeitssensor oder Bewegungssensor anschließen möchte, brauche ich wiederrum Programmierkenntnisse, die mir einfach fehlen und beim Arduino funktioniert das ganz einfach...deswegen wollte ich erst mal versuchen, mein Problem zu lösen. Und mit der Erklärung von Deadeye5589 könnte ich mir vorstellen, dass ich es sogar hinbekomme. Als Alternative war bei mir aber schon die ganze Zeit Dein Controller im Hinterkopf;))) Ich möchte mich nur nicht so leicht geschlagen geben.

  • Meine Vorposter haben Recht, Transistor oder MosFET müssen her.
    Das sind quasi Schalter/Verstärker.
    Es gibt im Prinzip bei beiden jeweils zwei mögliche Sorten: NPN und PNP.
    P = Positiv / N = Negativ - entsprechend der Ansteuerung (mal ganz doof):
    links und rechts kommt der zu schaltende Stromkreis dran, in der Mitte der "Auslöser".
    bei NPN also:
    [DRAIN/MASSE] - [GATE/POSITIVER_AUSLÖSER] - [SOURCE/MASSE_DES_STROMKREISES]
    und bei PNP:
    [DRAIN/PLUSPOL_STROMKREIS] - [GATE/MASSE_ALS_AUSLÖSER] - [SOURCE/VERSORGUNGSSPANNUNG]


    Ich benutze z.B. IRF640 im TO220 Gehäuse.


    Der Arduino basiert ja irgendwie auf Processing/Java, programmieren muss man also schon.
    Allerdings ist es schon einfacher komplette GUIs und interaktive Steuerungen zum bauen.
    Man kann die Software aber auch einfach für eigene Module nutzen, die Sourcen/Bootloader sind ja frei verfügbar.
    Der Verwendete AVR kostet 2€, der Rest ist Hühnerfutter.

  • Zum Mosfet:




    So, ich habe mich jetzt mal ein bisschen kundig gemacht und nach vielen
    Irrungen und Wirrungen in meinem Kopf glaube ich das Prinzip verstanden
    zu haben!




    Ich habe mal den Schaltplan, wie ich ihn mir aufgrund Eurer Angaben
    überlegt habe, angefügt. (Es soll ein NPN Mosfet sein, auch wenn das
    Schaltsymbol ein PNP ist. Habe aber keinen anderen gefunden). Habe ich es richtig verstanden?







    Da ich erstmal nur 3*3 Superflux pro Mosfet schalten will und daher nur
    ein Strom von ca. 60 mA anfällt, reicht mir wohl ein kleiner Mosfet
    doch aus.




    In diesem Thread bin ich auf den IRLZ34 gestoßen, der ziemlich günstig ist. Der müsste doch reichen?




    Zur Programmierung:




    Als ich mir überlegt habe, mal selbst etwas zu programmieren, habe ich
    mir mal im Forum mal ein paar threads angeschaut, bei denen Programme
    vorgestellt wurden, und habe überhaupt nichts verstanden und keine
    Logik gesehen. Bei dem Arduino sah es gleich ganz anders aus. Und
    nachdem ich mir das Programmierhandbuch durchgelesen habe und mal ein
    paar kleine Dinge ausprobiert habe, habe ich ziemlich schnell kleine
    Erfolge feiern können. Das motiviert ungemein;-))




    Zum eigenen Schaltungsaufbau:




    Ich habe mir auch schon überlegt, was eigenes aufzubauen, da ich
    eigentlich mehr PWM Kanäle benötige, als auf dem Arduino vorhanden
    sind. Solange ich aber noch an so kleinen Problemen scheiter, wie an
    diesem, trau ich mir das nicht so wirklich zu...Deswegen werde ich mich
    jetzt wahrscheinlich erst mal langsam daran tasten, dieses hier zu verstehen oder aber einen Arduino Mega anschaffen...

  • Der Plan sieht schonmal gut aus - das Prinzip ist verstanden ;)
    Nur dass Vin von LEDs und Arduino getrennt sind - sonst macht das FET keinen Sinn!


    SOURCE/GATE sind glaub ich getauscht, bin mir aber grad nicht ganz sicher :)


    Für viele PWMs gibts Spezialbausteine.


  • Nur dass Vin von LEDs und Arduino getrennt sind - sonst macht das FET keinen Sinn!

    Dann habe ich es doch noch nicht verstanden. In der Beschreibung steht:


    VIN. Die Eingangsspannung zum Arduino Board wenn die externe Stromversorgung benutzt wird (als Alternative zu den 5 Volt von der USB Verbindung oder einem Netzteil). Sie können an diesen Pin die Spannungsquelle anschließen, oder, wenn Sie ein Netzteil benutzen von diesem Pin die gelieferte Eingangsspannung abgreifen.


    Deswegen dachte ich, ich könnte dort die 12 V Eingangsspannung abgreifen, bevor sie vom Spannungsregler auf 12 V gedrosselt wird???


    Für viele PWMs gibts Spezialbausteine.

    Das verstehe ich nicht. Meinst Du für den Arduino oder überhaupt für alle Microcontroller und wo bekomme ich die? Bisher habe ich nur den Arduino Mega bzw. den TLC 5940 gefunden.

  • Ich verstehe es einfach nicht und brauche noch mal Eure Hilfe:


    Nachdem ich mich in letzter Zeit ein bisschen mehr um die Programmierung des Arduino gekümmert habe (das kann man nämlich auch ganz wunderbar im Urlaub), wollte ich heute mal die Geschichte mit den Mosfets ausprobieren.


    Ich habe daher einen MOSFET rausgekramt, der von Benkleys Mini RGB Fader kommt, den ich noch nicht zusammengebaut habe. Es handelt sich um den IRLIZ 44 N. Ich habe mir auch das Datenblatt angeschaut und festgestellt, wo G, D und S ist.


    Den habe ich wie in meiner Zeichnung beschrieben angeschlossen. Ich habe vorher auch alles durchgemessen, d.h. aus Vin kommen knapp 12 V und aus dem Pin 6 kommen 5 V, wenn ich einen Button betätige. Ich habe dafür ein kleines Programm geschrieben, das auch funktioniert. Das zeigt mir mein Messgerät.


    Das erste, was ich schon mal nicht verstehe, ist dass die LEDs leuchten, auch ohne dass irgendetwas an G anliegt.


    Das nächste ist, dass sich überhaupt nichts ändert, wenn ich den Button drücke und die 5 V kommen.


    Irgendwie stehe ich auf dem Schlauch. Könnt Ihr mir helfen?

  • Ich habe mich letzte Nacht mal etwas für den Arduino eingelesen, weil ich ihn sehr intressant finde und schon tauchen hier mehrere Threads auf :D
    Nun, wie gesagt, die Nacht reichte für Grundkenntnisse "wie lasse ich eine LED blinken" und um die Programmiersprache etwas zu verstehen. Sieht machbar aus.
    Da ich sehr gerne mit RGB Effekten arbeiten möchte, hätte ich noch die Frage ob dieser Rainboduino nur so ein Aufsteck-Shield oder ein eigenständiger Baustein ist.
    Werde mir denke ich bald mal so ein Teil bestellen, Trockenübungen mit Tutorials bringen irgendwie nicht so viel 8)
    soulid, hast du ein paar Links zu deiner Meinung nach guten Tutorials? Es gibt ja wirklich unüberschaubar viele. Bin totaler Anfänger. LEDs anschließen bekomme ich noch hin. Meine Computerkenntnisse reichen nur bis HTML (jaja ich weiß, das ist keine Programmiersprache" aber bis jetzt sah beim Arduino alles recht logisch aus.

  • Hallo heißkleber,


    ich verstehe das Du "heiss" bist das Ding umzusetzen. Ich empfehle als Newbie allerding einige Basisdinge auszuprobieren bevor es in die RGB Applikation geht. (z.B. hier oder hier)


    Der Rainbowduino ist ein Arduino mit LED Treibern. Also brauch man nix ausser dem Rainbowduino nix anderes wenn man ihn programmieren kann (FTDI Schnittstelle oder anderen Arduino). Steht aber auch im Handbuch


    Hier sample source files mit vielen anderen Informationen. Wie man einen Seeduino (im Grunde Arduino) mit dem Rainboduino verbindet steht hier.

  • Danke für die Links :)
    Ja heiß drauf bin ich natürlich, aber ich weiß auch, dass ich mich erst durchkämpfen muss. Ein 16² Matrix RGB Tisch wird nicht das erste Projekt^^
    Aber ich möchte schon in die Richtung RGB. Nicht, dass es am Ende eines Tutorials heißt "Super! Jetzt kannst du deine eigene Waschmaschine programmieren" ;)
    Naja, da habe ich noch einige Nächte was zu lesen. Am besten bestell ich mir mal so ein Basisteil. Es gibt ja auch irgendwie mehrere, ältere und neuere Versionen. Der hier scheint einer der neueren zu sein, in einem Tut wurde auch mit dem gearbeitet, ist der ok?
    Mit den Begriffen bin ich noch nicht ganz vertraut. So ähnlich fühlte ich mich als ich hier im Forum das erste mal KSQ las :D