Beiträge von Pesi

    Also das Bild mit den Kondis in jeder zweiten Reihe ist von mir, um zu demonstrieren, dass das eben in jeder 2. Reihe schwierig ist, ohne DuKos Kondis anzubringen... 😉


    das mit jede zweite Reihe drehen habe ich mir auch schon überlegt, genau aus diesen Gründen... geht aber nicht, da die Farben aus unterschiedlichem Winkel bisschen unterschiedlich aussehen, und die Matrix dann streifig aussehen würde...


    Das Layout wird sowieso zweiseitig... aber Kondis auf der Rückseite sind auch eher ungünstig, weil das direkt auf eine Aluplatte soll... OK, in der Mitte ginge es, wo auch die Kabel raus kommen...


    klar, so ein Kondi kostet nur knapp 1 Cent, aber bei 1.140 Stück (+Kosten für die Bestückung) läppert sich das auch zusammen...


    ich glaub, ich mach Linewise, mit Pads für Kondis, lasse die aber nicht bestücken. Wie gesagt, lt. Datenblatt sind die ja nicht nötig. Ggfs. kann ich dann ja ein paar nachbestücken, und mein Kumpel das Raster entsprechend anpassen... 😉

    So, jetzt hab' ich mal wieder ne blöde Frage, weil schon lang nix mehr gebastelt...


    Ich will eine Matrix mit WS2812B bauen, Größe 38 x 30 Pixel (Abstand je 10 mm). Für Demozwecke mal so ne fertige gekauft mit 16x16.


    Da ist mir aufgefallen: Das Teil ist Snakeline verkabelt (also jede zweite Zeile gedreht) und an jeder LED ist - natürlich - ein Abblockkondi mit 100 nF - so wie bei allen diesen Matrixen und Stripes etc.


    Jetzt wundert mich bisschen, warum die alle das so machen. Snakeline evtl., weil sie Angst haben, dass die Datenleitungen zu lang werden, wenn man da die 16 cm wieder vor geht zur nächsten Zeile (bei mir wären es 38 cm)? - Und Kondis, weil man das halt so macht (wobei die sonst ja immer sparen wo es geht...).


    Weil im Datenblatt steht, dass keine Pufferkondis nötig sind. Das wird sogar als extra superduper-Feature dieser Teile heraus gehoben, dass man sich die sparen kann. Warum baut die dann jeder unötiger Weise hin...?


    Ich würde mir die dann jedenfalls gerne sparen. 1. Damit's günstiger wird, und 2. auf die Matrix soll noch ein Raster drauf, das ein Kumpel im Digitaldruck macht, und da wären die Stege genau dort, wo die Kondis sind. Also deutlich mehr Arbeit, da auch noch mal 1.140 Aussparungen vorzusehen... Deswegen wäre Platine NUR mit LEDs besser.


    Außerdem, wenn ich Snakeline verkabele, k.A., wo ich die Kondis vom Layout her unterbringe, ohne auch noch 1.140 DuKos zu haben. Siehe hier:



    Die obere Reihe wäre Datenfluss von links nach rechts, mit Kondis (bringen die an der Stelle überhaupt viel? - Müssten die nicht näher an's Vcc-Beinchen ran?), unten Datenfluss von rechts nach links, da sind die Datenleitungen "im Weg" für noch nen Kondi an jede LED.


    Wie sind die (fachlich fundierten) Meinungen denn so..? - Wäre das als Kompromiss OK, dass halt jede zweite Zeile ohne Cs ist? - Oder kann man sich die ganz sparen?


    lieber Snakeline wegen kurzen Datenleitungen, oder sind alle 38 LEDs mal die 40 cm zur nächsten Zeile vertretbar? - lt. Datenblatt dürfen es sogar 5 m zwischen zwei LEDs sein, OK, das halte ich für eher grenzwertig, aber 40 cm...?


    Am Besten wäre für mich, ohne Kondis (Kosten, Mechanik) und Linewise-Verkabelung (damit ich die Daten nicht im µC umsortieren muss) - Schnapsidee oder vertretbar? :-)

    Hm, was kann da so sehr schwierig sein...


    Da sind nur zwei Drähte angelötet, richtig? - Also an „LE3“ ist gar nix dran...?


    das ist dann halt einfach eine Lichterkette mit 300 parallel geschalteten LEDs, nach dem Billig-China-Prinzip „Strom wird sich schon halbwegs gleichmäßig aufteilen“ 😅


    Da man das Konstrukt natürlich nicht direkt an 5V hängen kann, werden die per PWM zerhackt, wie von L4M4 schon vermutet. Dadurch wird im Mittel „der Strom begrenzt“, also dass das halt nicht abraucht. Die 6 A, die die 300 LEDs bei „Normalbetrieb“ ziehen würden, kann ja sowieso weder ein USB-Port noch ein übliches USB-Netzteil liefern... wäre wohl auch zu hell...


    Die Lösung wäre also nun ein PWM-Dimmer wie z.B. sowas hier: https://www.amazon.de/Motor-Dr…X7/ref=asc_df_B01LX41BX7/


    Am Ausgang die Lichterkette, am Eingang ein USB-Kabel angelötet, schwarz und rot.


    Dimmer auf minimal stellen, einstecken, Dimmer vorsichtig aufdrehen, bis das so hell leuchtet wie davor.


    Einen Versuch wäre es wert, bevor Du das komplett in die Tonne kloppst...

    Prinzipiell würde ich sagen, gar nicht... die wechseln halt einfach von selbst, da kann man ja nix einstellen...


    was ich mir aber vorstellen könnte, dass die Geschwindigkeit doch bisschen von der Versorgungsspannung abhängt.


    mal als Versuch, eine LED direkt an das Netzteil, eine parallel dazu, aber mit nem kleinen Vorwiderstand. Dann schauen, ob das was bringt, also schon nach kurzer Zeit auseinander läuft.


    wenn ja, einfach jeder LED in der Kette einen etwas anderen Widerstand verpassen.

    OK, ich geb's zu, die Erklärung auf der Seite ist tatsächlich bisschen verwirrend... :-D


    Im Codebeispiel, mit diesem Switch_Case, da steht bei "Start" gar nix drin, und der Case "Data" fehlt dann (wobei das das selbe Prinzip wie bei "Adress" ist, nur dass ein anderes Byte befüllt wird...


    Das hier:



    ist auch bisschen verwirrend, das erste Bit kann da gar nicht ausgelesen werden, weil da noch gar kein Timer läuft...


    Besser sieht man das hier, dafür gibt's ja das Startbit:




    Die erste Flanke startet den Empfänger - da passiert erst mal nix, außer dass Du ein Flag setzt "jetzt geht's los". (Das wäre dann der Case "Start", für den im Code-Beispiel nix drin steht).


    Bei der nächsten Flanke wird dann der Timer gestartet, der für 3/4 der Bitzeit läuft. Wichtig: während der Timer läuft, wird der Pin change Interrupt deaktiviert, weil ja während der Laufzeit des Timers wieder eine Flanke auftreten kann, die aber nicht relevant ist für's Timing.


    Wenn der Timer abgelaufen ist, wird nachgeschaut, ist die Leitung high oder low, und das entsprechende Bit im entsprechenden Byte gesetzt. Und der Pin Change Interrupt wieder aktiviert für das nächste Bit.


    auf die Art 2x 8 Bits einlesen und in zwei Bytes schreiben (Bit setzen und Shiften) - kann man ja statt diesem Swith Case (also insb. in asm, da gibt's sowas ja nicht) mit nem Zähler machen, 0 heißt warten, 1 heißt Startbit ist empfangen, 2-9 Adress-Byte beschreiben, 10-17 Daten-Byte beschreiben.


    Auf die zwei Stopp-Bits kann man dann sch***, oder halt Timer noch zwei mal starten und schauen, ob die Leitung wirklich auf idle ist... bzw. einmal läuft der eh' noch "nach", weil er beim letzten Bit ja noch mal gestartet wird... also ein Stop-Bit kann man auf jeden Fall ohne Aufwand auswerten.


    Dann Flag setzen für "Frame empfangen", und die zwei Bytes in der Main Loop auswerten: Bin ich angesprochen (Adresse)? und wenn ja, was soll ich machen (Data)? - und den Zähler natürlich auf 0, für den nächsten Frame... je nach Geschmack noch Rückmeldung ausgeben, oder halt bleiben lassen, wenn nicht nötig...


    Im Prinzip also zwei ISRs, die folgendes machen:


    Pin Change: Je nach Zählerstand diesen nur weiter zählen (beim Startbit), oder zusätzlich Pin Change Interrupt deaktivieren und Timer starten


    Timer Interrupt: nachschauen, ob high oder low, je nach Zählerstand entsprechendes Bit im entsprechenden Byte setzen, Timer deaktivieren, Pin Change Interrupt wieder aktivieren. Wenn alle Bits empfangen sind, entsprechendes Flag setzen.


    P.S.: Wegen "unübersichtlich": In asm ist das A und O viel kommentieren! - Sonst blickt man bei eigenen Sachen nach einer Woche nicht mehr durch. Bei mir steht fast in jeder Zeile ein Kommentar - fast mehr Arbeit als die asm-Befehle, aber das ist die "eigentliche Programmierung", also wo man nachvollziehen kann, was passiert. Und auch hier Subroutinen nutzen. Ich habe inzwischen eine Bibliothek aus oft gebrauchten Sachen, jeweils in Subroutinen verpackt. Die eigentliche Programmierung ist dann oft nur noch diese Subs aufzurufen, das ist dann fast wie Hochsprache programmieren mit selbst gebastelten Befehlen... ;-)

    Hm, die Erklärung der Empfangsroutine und das Codebeispiel auf der verlinkten Seite hilft auch nicht weiter...? Pointer usw. brauchst Du da ja gar nicht.


    Ist zwar für PIC, aber das Prinzip bei ATMega das selbe: Eingehendes Signal löst einen Status change Interrupt aus, in diesem wird ein Timer gestartet. Wenn der abläuft (Timer Interrupt) wird geguckt, ob die Leitung high oder low ist...


    Ich programmiere zwar inder Arbeit mittlerweile recht viel in C, aber bei µC immer noch nicht geschafft... wenn Du alles in asm machen willst, könnte ich mal gucken, die Empfangsroutine zu basteln... aber erst am WE, bin jetzt dann paar Tage auf Montage unterwegs...

    Sorry, da habe ich das "wenn du einen willst" wohl falsch verstanden, also "einen" ;-) - Eine Großserie soll das nicht werden, aber evtl. doch mehr als fünf... muss ich halt mal gucken, wo man das Zeug bekommt. Allernotfalls halt wie gesagt mit "normalem" Nezteil und dann halt bisschen dicker, das Panel.


    Muss schon 5 V sein, die Matrix besteht aus WS2812B-LEDs... 300 W brauche ich aber nicht, da sollen nur paar Zahlen dargestellt werden, auch nicht auf 100% Helligkeit, grob überschlagen würden eben so die ursprünglich gefragten 60 W gut reichen... wenn das Teil mehr könnte, natürlich umso besser!

    Ergänzung: Danke für das Stichwort "Astec" :-) - ich glaube, das ist sogar so ein Teil auf der Platine... Hat zwar weniger Pins als das im PDF, aber ansonsten sieht das recht ähnlich aus, sowohl Maße, als auch mit der Alu-Kühlplatte drauf...


    Was aber doof ist: Input Voltage 300 V - 230 V gleichgerichtet mit Siebelko macht doch ca. 325 V....


    Naja, mal weiter gucken, habe auch nix gefunden, wo man das hier kaufen könnte... Notfalls mach' ich halt doch ein "normales" Meanwell-Netzteil rein, und das Ganze wird bisschen dicker...


    P.S.: Da sieht man mal, wie doof (bzw. in dem Fall ungewollt genau) Google manchmal ist: Unter Deiner Bezeichnung "Astec BM80A-300L-0505F60" nix gefunden, Suche nur nach "Astec" hat dann das PDF zutage gefördert (nur eine Zahl Unterschied) :-D

    Vielen Dank! :-)


    Kanwas: Ja, da hatte ich auch geschaut, auch so Teile von Trotec gefunden, aber alle immer so 1:4 bis 1:12, also bei 5 V raus dann 20-60 V rein... ich kann da auch nicht 48 V hinlegen, da wo die Teile montiert werden sollen, sind schon 230 V vorhanden...


    dottoreD wie groß sind die denn..? - 300 W wäre schon leicht übertrieben... ;-) - Problem ist, da hilft mir eins aus dem Bastelkeller leider nicht so arg, weil ich schon mehrere Geräte bauen will, und eine zuverlässige Quelle brauche, wo ich sowas auch noch in Jahren bekomme, falls mal eins kaputt geht...


    Die Kondis sollten kein Problem sein, die würde ich so wie auf dem Foto liegend einbauen...


    Ich wundere mich nur bisschen, zu einem "vollwertigen" Schaltnetzteil für 230 V Eingang gehört zu so nem flachen DC/DC-Klotz ja nur noch der Gleichrichter und Siebelkos davor.... warum's dann sowas nicht gleich komplett gibt, also ein NT für 230 V in dieser flachen Bauform...?!?