Henne's DMX LED-Matrix mit UDB298

We proudly present: The release of DMXControl 3.3.3!


On September 29, 2026, we held our release show for DMXControl 3.3.3. During our usual “hour-long” session, we showed you all the new features in this version and what it now has to offer.
Read all about it in the corresponding news article: We proudly present: The release of DMXControl 3.3.3!


  • Hallo,
    Henne zeigt ja einen Schaltplan für eine 8x8 LED-Matrix
    http://www.hoelscher-hi.de/hendrik/light/matrix.htm#Full
    Und er schreibt auf seine Seite "Da die Pins eines AVRs max. 40mA liefern können und ich auf ein Sourcetreiber-IC (z.B.: UDN2981) verzichten wollte,..." - Meine Frage ist nun, wie ich den UDN2981 einbauen muss. Dazu habe ich das Forum durchstöbert und habe folgende Einträge gefunden:
    Henne's DMX LED-Steuerung
    Selbstbau LED-Matrix (32x8 monochrom)
    Desweiteren habe ich im Netz geschaut wie ich den UDN2981 anzuschließen habe (sollte ja auch so ein Transistorarray sein, nur eben für VCC, nicht für GND (wenn ich das dem Datenblatt richtig entnommen habe)).
    Des weiteren habe ich folgenden Schaltplan erstellt (siehe Anhang). An die 12V kommt ein Netzteil mit 'hohem' Ausgangsstrom dran, sodass sämtliche LEDs angeschlossen werden können und ich die maximale Helligkeit habe. Da das Schieberegister 74HC164N mit 2-7V funktioniert, wollte ich einen 7805T vorschalten. Leider habe ich keine Ahnung wie den genau ich das anzuschließen habe. Deshalb habe ich auf anderen Schaltplänen gespickt und mir das dann so überlegt :)
    Frage ist, ob das so richtig ist und dann auch funktionieren wird.

  • Hallo Fmu,

    soweit sieht das schon einmal gut aus :) Ist ja eigentlich ne einfache Aufgabe :)

    Die 5 V sehen so auch gut aus - nur brauchst du das eigentlich garnicht. Du hast ja dem DMX Transceiver eh vorhanden, dort kannst du die 5 V problemlos abgreifen und verwenden. Ist ja sogar als Lötnagel ausgeführt, damit du da direkt was anschließen kannst.
    Einzig der Anschluss an das Schieberegister passt nicht :) Du musst da schon den Spannungsversorgungs-Pin nehmen ;)

    Maximale Helligkeit bekommst du mit der Schaltung allerdings noch nicht. Der ULN2803A kann maximal 500 mA pro Kanal, also 62,5 mA pro LED. Ich habe den in meiner Schaltung noch gedoppelt, damit ich zumindest 2*62,5 mA pro LED rausbekomme.

    Zur Berechnung der Vorwiderstände noch ein kleiner Hinweis: Am ULN und UDN hast du teilweise erhebliche Spannungsabfälle (von 1,1 bis 2,0 V), die musst du bei der Auslegung der Vorwiderstände mit berücksichtigen - sonst rechnest du dir den Widerstand viel zu groß aus.
    Wenn du dann den Widerstand ausgerechnet hast, dann pass beim Bestellen auf, dass du auch einen mit passender Leistung bestellst. Ich arbeite mit 32 Ω Widerständen, aber da ham die 1/4 W nicht mehr ausgereicht.

    Wenn du entsprechende Möglichkeiten hast, würde ich dir an der Stelle empfehlen: Probier den Widerstandswert einfach aus, und miss dabei den Strom, welcher fließt. Ich hab nun selbst im zweiten Anlauf (mit Berücksichtigung der Spannungsabfälle an den Treibern) noch nicht den (mit meiner Schaltung) maximal möglichen Strom an den LEDs zu erreichen - ich liege immernoch darunter.
    Wenn du so weit wie ich gehst, dann empfiehlt es sich übrigens, den UDNs nen Kühlkörper zu verpassen, die wurden dann im Betrieb doch recht warm, und ham dann teilweise zu Übersprechen zwischen den Zeilen (oder komplett hängenden Spalten) geführt. Ich hab die Kühlkörper da, hab sie nur noch nicht montiert - die sollten das Problem aber eigentlich lösen.

    Freundliche Grüße

    Stefan

  • Hallo Stefan,
    danke für die Antwort (insgeheim habe ich schon gefhofft, dass DU antwortest, da du ja selbst so eine große Matrix gebaut hast :))
    Gut, habe das nun modifiziert. Hoffe das passt so :)
    Was kommt denn eigentlich an den CLR Port dran, laut Henne ist da ja Spannung dran oder sehe ich das falsch? Nach dem Datenblatt zu urteilen ist das der Clock -Pin ("Data is entered on each rising edge of the clock.") Kann mit der Information leider nichts anfangen.

    Zu den Vorwiderständen: Genau, ich wollte es auch ausprobieren. Ich möchte eine bunte Matrix bauen, sprich mit blauen, roten, grünen, ...LEDs. Da die Bandlücken ja unterschiedlich groß sind, braucht ja auch jede 'Farbe' eine andere Versorgungsspannung. Deshalb wollte ich die Widerstände seperat an jeder LED anschließen, somit tuen es auch die ganz normalen Widerstände. Aber danke für den Tipp :)

    Viele Grüße

  • CLK ist Clock (bei jeder steigenden Flanke werden die Daten eins nach rechts geschoben), CLR ist Master Reset (Active Low).

    Das bedeutet, wenn du an CLR auf GND ziehst, werden alle Ausgänge Low. CLR dauerhaft an VCC schaltet das Feature ab.

    Dennis

    Edited once, last by fisl (June 25, 2011 at 11:29 PM).

  • Genau, Dennis hats eigentlich schon gesagt: Der Pin gehört auf +5V, ist allerdings nicht als Spannungeingang gedacht - also das Schieberegister so am Schaltplan anschließen, wie du das gerade gemacht hast, und zusätzlich den Pin auf +5V legen.

    Zum ULN doppeln: Das wird so nicht ordentlich funktionieren - du hast leichte Toleranzen in den Bauteilen, dadurch werden sie immer ungleich belastet werden. Du musst die so doppeln, dass du an jeden ULN nur vier LEDs hinhängst - quasi deine Matrix dort noch einmal halbierst. (übrigens: Ich wähle über den ULN die Spalte aus, über den UDN (bzw. den günstigeren Ersatztyp vom Reichelt) die Zeile - musst du dir aber selbst überlegen, wie du das am sinnvollsten aufbaust)

    Den UDN brauchst du nicht doppeln, dort hast du ja pro Kanal und somit pro LED volle 500 mA zur Verfügung.

    Freundliche Grüße

    Stefan

  • Ne ich glaube nicht.
    Jede Zeile ist ja immer noch auf 500mA begrenzt.
    Die ULNs würden nun aber nicht mehr so heiß werden, da die nur zur Hälfte beansprucht werden.

    Ich würde die ULNs durch 8 Mosfets ersetzen z.b. den BUZ11
    Der ist ausgelegt bis 50V und 30A, ich denke des sollte dann reichen :D

  • Aber zusätzlich auch den siebenfachen Preis und mindestens dreifachen Platzbedarf :)

    Die zwei ULN, das Schieberegister und der UDN passen wunderbar unter eine 8x8 Matrix drunter, deswegen habe ich mich für die Lösung entschieden.

    Zum Aufteilen der Zeilen: Du hast doch pro Zeile acht LEDs, richtig? Teile die Kette in der Mitte auf, die ersten vier LEDs bekommen den einen ULN, die anderen vier den zweiten ULN. Jeder ULN ist dadurch trotzdem komplett belegt, da ja weiterhin acht Zeilen angesteuert werden.

    Freundliche Grüße

    Stefan

  • Die ULNs würden nun aber nicht mehr so heiß werden, da die nur zur Hälfte beansprucht werden


    Was ist mit der Belastung des UDN2981A? Der kann ja auch nicht ewig Strom liefern, ohne heiß zu werden.
    Wenn alle LEDs an sind, kann er pro Ausgang auch nur 100mA

    Genesis 1:3 Und Gott sprach: "Es werde Licht!" und es ward Licht (...oder nicht). 4 Und Gott sah, dass das Licht gut war;

  • Wie kommst du auf 100 mA?

    Laut Datenblatt kann der UDN2981A einen I_out von -500 mA bzw. von -120 mA im DIP-Package - der begrenzende Faktor ist hier also der ULN, also 62,5 mA pro LED kann - bzw. wenn du ihn doppelst dann 125 mA pro LED.

    Freundliche Grüße

    Stefan

  • Wie kommst du auf 100 mA?

    Laut Datenblatt kann der UDN2981A einen I_out von -500 mA bzw. von -120 mA im DIP-Package - der begrenzende Faktor ist hier also der ULN, also 62,5 mA pro LED kann - bzw. wenn du ihn doppelst dann 125 mA pro LED.

    Freundliche Grüße

    Stefan

    Ich hatte die 100mA aus der Tabelle /Allowable peak collector current) grob abgelesen.

    Nun habe ich mal die Schaltung teilweise aufgebaut und gemessen:

    Der ULN ist meiner Meinung nach nicht der Schwachpunkt.

    Die Ausgänge des ULN2803 werden der Reihe nach einzeln geschaltet.

    Damit gilt (Each darlington features a peak load current rating of 600mA (500mA continuous)), dass 600mA von ULN2803 pro Gruppe schaltbar wären.

    Das sind pro LED 75mA.

    Wenn alle 8 LED pro Gruppe (also alle 8x8=64) an wären, muss der UDN2981 durchgegehen pro pin 1 LEDs mit Strom versorgen. Also 8 Pins mit dem dem Strom für 1 LED.

    Das der UDN 120mA kann, sollte man 85mA pro LED zur Verüfgung haben. Reicht das nicht für eine helle LED auch bei Duty-Cyle von 1/8 ?

    Liege ich da richtig ???

    Genesis 1:3 Und Gott sprach: "Es werde Licht!" und es ward Licht (...oder nicht). 4 Und Gott sah, dass das Licht gut war;

    Edited once, last by midi-rakete (July 5, 2011 at 10:12 AM).

  • Das der ULN 120mA kann, sollte man 85mA pro LED zur Verüfgung haben. Reicht das nicht für eine helle LED auch bei Duty-Cyle von 1/8 ?

    Grad eben schreibst du noch, dass der ULN 600 mA also 75 mA pro LED kann - wie sollte man dann pro LED 85 mA zur Verfügung haben? Wenn ein Bauteil nicht mehr Strom kann, ist dieses das begrenzende Bauteil, mehr geht nicht.

    Zur Helligkeit: Ich nehme einfach mal an, dass diese zur Leistung proportional ist. Normal hast du 2,1 V * 30 mA = 63 mW. Mit 75 mA und nem Duty-Cycle von 1/8 hast du 2,1 V * 75 mA * 1/8 = 19,69 mW - also weniger als die Hälfte der Leistung, die du sonst bei Standard-Betrieb an der LED hast.

    Bei nem Duty-Cycle von 1/10 würde die LED 160 mA vertragen - du selbst betreibst sie aber nur mit weniger der Hälfte als das, was sie vertragen würde. Ich würde da nicht einfach so die Helligkeit verschenken, sondern zumindest versuchen, etwa in die Richtung des maximalen Peak-Stroms zu kommen. Der ist nicht ganz bei 160 mA, da das m.W. auf nen Duty-Cycle von 1/10 angegeben ist, aber knapp darunter.

    Freundliche Grüße

    Stefan

  • Grad eben schreibst du noch, dass der ULN 600 mA also 75 mA pro LED kann - wie sollte man dann pro LED 85 mA zur Verfügung haben?


    Stimmt. Ich meinte 75mA. Ist zumindest 20% mehr als die anfänglichen 62,5mA.
    Ich wusste nicht, dass das auch zu wenig ist, da ich nichts über die gewünschte LED fand.

    Zu der Paralellschaltung des Pins schlägst du vor:


    Zum ULN doppeln: Das wird so nicht ordentlich funktionieren - du hast leichte Toleranzen in den Bauteilen, dadurch werden sie immer ungleich belastet werden....


    Im Manual vom ULN2803 steht: "Outputs may be paralleled for higher current capability"
    Um Bauteiletoleranzen zu vermeiden, würde ich nicht Treiber 1 mit 1. IC und Treiber 1 mit 2. IC verbinden (Bild Fmu), sondern Treiber 1 IC1 mit Treiber 2 IC1 usw. Also pro IC 4 Doppeltreiber. Ist auch einfacher zu verdrahten.

    Stefan: Was für LEDs hast du denn eingesetzt?

    Genesis 1:3 Und Gott sprach: "Es werde Licht!" und es ward Licht (...oder nicht). 4 Und Gott sah, dass das Licht gut war;

  • Im Manual vom ULN2803 steht: "Outputs may be paralleled for higher current capability"[/quote]Okay, wenn das so im Datenblatt steht, dann wird das funktionieren :) Danke für den Hinweis - meine Matrix ist halt schon fertig ;)

    Stefan: Was für LEDs hast du denn eingesetzt?

    Müssten Para Light L-513GD sein, nix besonderes. Standard LED 5 mm grün diffus, steht aber auch im anderen Thema drin.

    Freundliche Grüße

    Stefan

  • Newly created posts will remain inaccessible for others until approved by a moderator. The last reply was more than 365 days ago, this thread is most likely obsolete. It is recommended to create a new thread instead.