Signal für WS2811 über mehrere Meter übertragen

  • Ich konzipiere gerade eine Beleuchtung, die mit 8 WS2811 Chips und nachgeschalteten Power-LEDs (1 W) pro Einheit ausgestattet werden soll.
    Der Leitungsweg vom Controller zur Einheit beträgt ca. 3-5 m. Aus bautechnischen Gründen habe ich nur 3 Adern zur Verfügung, kann also kein Differenzsignal für die Daten erzeugen. Die Leitung ist auch weder geschirmt noch verdrillt. Ich frage mich ob die 800 kHz Signaltakt da sauber rüber kommen und wie ich diese optimieren kann. Bei dem Protokoll der WS2811 (gibt es dafür eigentlich einen Namen?) gibt es ja kein Feedback- oder Übertragungsprotokoll. Um sicher zu sein das die LEDs das tun was sie sollen, müsste ich also das Stellsignal periodisch wiederholen?!

  • Im Prinzip ja, dann kann es aber dazu kommen, dass die LEDs flackern, wenn mal ne Übertragung falsch ist. Ich übertrage solche Signale bis zu 4 Meter über normales Stromkabel, also auch weder geschirmt nich verdrillt. Da kam es öfter zu solchen Problemen, Abhilfe hat ein 74HTC245 Bustreiber am Anfang der Leitung geschaffen, mit 47 Ohm Widerstand danach.

    It's only light - but we like it!


    Da es sich in letzter Zeit häuft: Ich beantworte keine PNs mit Fragen, die sich auch im Forum beantworten lassen!
    Insbesondere solche von Mitgliedern mit 0 Beiträgen, die dann meist auch noch Sachen fragen, die bereits im entsprechenden Thread beantwortet wurden.
    Ich bin keine private Bastler-Hotline, technische Tipps etc. sollen möglichst vielen Lesern im Forum helfen!

  • Verstehe. Im Grunde geht es ja doch darum die Flankensteilheit wiederherzustellen und den "Schmutz" der sich aufgrund von Induktion auf die Leitungen überträgt wieder zu filtern. Mit einem Schmitt-Trigger geht das sicher gut. Ein LIN-Transceiver ist ja im Grunde nichts anderes, ausser das der auch Bidirektional arbeitet, was hier ja nicht nötig ist.
    Wozu dient der Widerstand eigentlich dabei? Und warum ausgerechnet 47 Ohm?

  • Wozu dient der Widerstand eigentlich dabei? Und warum ausgerechnet 47 Ohm?


    Anpassung des Wellenwiderstandes, der meist bei 50 Ohm liegt.
    Durch Anpassung werden Reflexionen an den Enden vermieden. Das ist wie der Endwiderstand am Antennenkabel oder bei SCSI der Terminator am Kabelende

  • Hallo,
    deine Vorstellungen dazu entsprechen eher nicht der realen Physik.


    Verstehe. Im Grunde geht es ja doch darum die Flankensteilheit wiederherzustellen und den "Schmutz" der sich aufgrund von Induktion auf die Leitungen überträgt wieder zu filtern. Mit einem Schmitt-Trigger geht das sicher gut. Ein LIN-Transceiver ist ja im Grunde nichts anderes, ausser das der auch Bidirektional arbeitet, was hier ja nicht nötig ist.
    Wozu dient der Widerstand eigentlich dabei? Und warum ausgerechnet 47 Ohm?


    So ein Widerstand hat 2 Effekte.
    Der eine ist Impedanzanpassung des Wellenwiderstandes vom Kabel auf der Senderseite. Gerade wenn man so scharfe Busttreiber verwendet, welche Signalflanken mit Anstiegszeiten im unteren einstelligen ns-Bereich verursachen, bekommt man Frequenzanteile im Bereich über 100 MHz bis in den GHz-Bereich auf das Kabel mit Wellenlängen um 1m und darunter. Eine Regel besagt aber, dass man bei Kabellängen ab ca. 1/10 der Wellenlänge mit HF-Effekten auf dem Kabel rechnen muß, wie Reflexionen und Abstrahlung.
    Eine mehrere (4) Meter lange ungeschirmte Leitung ohne korrekte Impedanzanpassung auf beiden Seiten ist in dem Fall eine immer auch eine gute Antenne!
    Was Pesi oben so nett als Praxiserfahrungen erklärt, also nebenbei auch eine elende Störquelle (EMV mäßige Dreckschleuder).
    Die Übertragung von schnellen digitalen Signalen über edliche Meter lange Leitungen ohne jegliche Beachtung der HF-Eigenschaften ist neben der allgewärtigen Verwendung von PWM eines der Ursachen für maximale elektromagn. Verseuchung durch LED-Beleuchtungen.


    Allerdings hat der Reihenwiderstand an der Quelle auch den Effekt, dass in Verbindung mit der Kabelkapazität ein RC-Tiefpass gebildet wird, der die Grenzfrequenzen etwas herab setzt, so dass die HF-Effekte auch dadurch etwas reduziert werden. Da aber immer noch mit Oberwellen im Bereich von edlichen 10MHz bis über 100MHz zu rechnen ist, wo 4m ungeschirmte und nicht verdrilltes Leitung allemal noch im Bereich der Stör-Wellenlänge liegen. So bleibt das trotzdem eine Störquelle mit guter Antenne.
    Die 47 Ohm sind nur ein gängiger Wert, der zumindest im Bereich der Kabelimpedanz liegt. Es wird auch mit Werten etwas unter 50Ohm als auch mit höheren Werten über 100 Ohm funktionieren.
    Um aber elektromagn. Störabstrahlung zuverlässig zu vermeiden, sollte man ein etwas anderes Konzept fahren.
    Die Signalanstiegszeiten sollte man soweit vergrößern, dass die Überrtagung gerade noch gut läuft. Dazu kann man z.B. RC-Tiefpass verwenden , aber auch gezielt bandbreitenbegrenzte Treiber einsetzen. Signalleitungen sollten paarig verdrillt sein und am besten auch geschirmt.
    Eine Impanpanpassung sollte man auch auf der Empfängerseite vornehmen.
    Gruß Helles Licht

  • So, heute sind meine bestellten WS2811 Chips gekommen. Hab gleich vier Stück davon auf Adapterplatinen fürs Steckbrett verlötet. Den Abblockkondensator (100 nF) habe ich quer über die Pins 4 (-) und 8 (+) gelötet:


    Laut Datenblatt wird Vcc (+) nicht direkt sondern über einen 100 Ohm Widerstand verbunden um Rückspannungen zu eliminieren. Solch einen Widerstand hab ich bei herkömmlicheb LED Strips noch nie gesehen, auf dem Steckbrett aber platziert. Weiterhin sind im Datenblatt auch noch Wellenwiderstände in der Datenleitung vorgesehen. Je 33 Ohm zwischen DOUT und DIN. Auch diesen finde ich auf meinen vorliegenden Stripes nicht. Die sollen auch gegen "Hot-Plug" Spitzen helfen.


    Als LED habe ich zum Test erstmal eine 5mm RGB LED mit gemeinsamer Anode angeschlossen. Funktionierte auf Anhieb :) Nun kann ich mit meinen Tests beginnen.
    Als erstes werde ich versuchen eine KSQ (von Superluminal) als Leistungsendstufe anzubringen um die Osram Dragon's (Weiß/Amber) mit ca. 140 mA bei 3 V daran zu betreiben.


    Laut Datenblatt kann man den WS2811 auch mit Low Speed (400 kbaud) betreiben (dazu wird der SET-Pin auf Vdd verbunden). Die Libs können meist auch diesen Modus und für meine Handvoll LEDs dürfte das ausreichen. Eine Halbierung der Datenrate wirkt sich sicher positiv auf die EMV-Emissionen wie auch die Übertragungssicherheit aus.


    Anschliessend werde ich versuchen die Datenleitung vom uController über zwei Transceiver auf ein KFZ-übliches Niveau und Störfestigkeit zu bringen. Zuerst dachte ich an einen LIN-Transceiver, aber die gehen leider nur bis 20 kbaud, ich brauche aber mind. 400 kbaud für die WS2811. Ein handelsüblicher CAN-Transceiver kann das ab, wie z.B. der MCP2551. Der verträgt locker 1 mbaud und hat den Vorteil das man die Flankensteilheit justieren kann. Damit kann ich die EMV-Emissionen reduzieren. Eigentlich sollte der problemlos auch mit einer Leitng übertragen (CAN_H oder CAN_L), mal schaun.


    Wenn das alles soweit klappt, würde ich mal versuchen Störungen auf der Leitung zu produzieren um zu sehen was passiert. Hier brauch ich noch Ideen :)