KSQ per Arduino ansteuern

Hey Leute,

da mein anderer Thread langsam etwas anders gewichtet ist und ich hier lediglich eine schnelle Antwort brauche, stell ich sie auf diesem Wege:

Ich habe eine KSQ (speccs im Link), mit einem 0/1-10V Potentiometer/10V PWM(3 in 1) dimmable driver (Jedoch habe ich kein Potentiometer mitgeliefert bekommen). Wenn ich meine LED Panels (2x16 PowerLEDs) anschließe, die Steueradern einfach offen lasse (Widerstand = Unendlich = 100% Lichtleistung, kein Dimmprozess) funktionieren die auch schon super!

Jetzt würde ich gerne schonmal den Arduino zwischen schalten. Da ich noch nicht ganz schlau geworden bin, wie ich mein 5V Ausgangssignal verstärke (falls ich an den KSQ überhaupt ein PWM signal benötige?) würde ich es aber schonmal geerne mit 5 Volt testen, funktioniert das? (Dachte mir, bei 0-5 Volt dürfte ja eigentlich bis 50% der Helligkeit gedimmt werden können??)

Wenn ja, wie muss ich das anschließen? Den die Minus Ader der KSQ an den Arduino GND und den Steuerpin an die Plus Ader der KSQ?

Hmmh, die billige Hardware vom Chinesen ist wieder einmal sehr schlecht dokumentiert.

Den Arduino direkt anzuschliessen würde ich Dir nicht empfehlen, da dürften 10V Spannung vorhanden sein, sonst würde das mit dem Widerstand (Poti) nicht funktionieren. Also DIM+ per Pull-up nach 10V und über einen NPN-Transistor an DIM-. Die Basis des Transistors per Widerstand an den Arduino-Ausgang (PWM-Pin nehmen) und dann ansteuern. Habe zwar keine Erfahrung mit dieser Art der Ansteuerung, aber nach der dürftigen Beschreibung könnte das funktionieren.

Hab heute mal etwas rum gemessen. Ich war die ganze Zeit auf dem Falschen Dampfer! Wie du auch schon gesagt hast, ist eine Spannung von 10Volt (eher knapp 12 Volt? O.o) in der Steuerleitung vorhanden.

Bedeutet das jetzt, dass ich die

pylon: Also DIM+ per Pull-up nach 10V

Da gehts bei mir schon los.. Was ist denn ein "Pull-up" und inwiefern "Nach" 10 Volt?

pylon: und über einen NPN-Transistor an DIM-

Was für einen NPN-Transistor sollte ich da denn nehmen? Ich habe hier einen TIP120 dabei gehabt, ist das ein Transistor? und wenn ja, kann ich den verwenden? :)

pylon: Die Basis des Transistors per Widerstand an den Arduino-Ausgang (PWM-Pin nehmen) und dann ansteuern.

Wie groß muss der Widerstand an der Basis des Transistors denn sein?

und nochmal allgemein: Muss DIM+ später an den PWM Ausgangspin meines Arduinos, und DIM- (incl den etwaigen Transistoren, Widerständen) an den GND des Arduinos?

Vielen Dank schonmal für Eure Hilfe! :) Ihr seid die Besten!

Da gehts bei mir schon los.. Was ist denn ein "Pull-up" und inwiefern "Nach" 10 Volt?

Der Pull-up-Widerstand ist ein Widerstand zwischen Eingang und +12V. Dieser zeiht (pull) den Eingang auf 12V hinauf (up) also Pullup-Widerstand. Das Gegenteil ist ein Pull Down Widerstand der zwischen Eingang und Masse geschaltet ist.

Der TIP120 ist etwas überdimensioniert aber funktioniert. Würde einen BC337-40 verwenden wenn cih die Auswahl hätte. aber fasta lle NPN Transistoren gehen gut dafür.

DerBasiswiderstand sollte zwischen 470 und 1kOhm sein . Bein TP120 kann er auch (muß aber nicht) viel größer sein da dieser eine hohe Stromverstärkung hat.

Muss DIM+ später an den PWM Ausgangspin meines Arduinos, und DIM- (incl den etwaigen Transistoren, Widerständen) an den GND des Arduinos?

DIM+ auf Collektor des Transistors. DIM- auf GND und Emitter des Transistors PWM Ausgang Arduino über Baiswiderstand an Basis Transistor.

Du kannst aber auch einen Optokoppler nehmen und dei LED über einen 330 Ohm Widerstand ansteuern und den Ausgangstransitor an DIM anschließen ( Emitter auf DIM- und Kollektor auf DIM+) So hast Du eine galvanische Trennung der beiden Stromkreise.

Grüße Uwe

uwefed:

Da gehts bei mir schon los.. Was ist denn ein "Pull-up" und inwiefern "Nach" 10 Volt?

Der Pull-up-Widerstand ist ein Widerstand zwischen Eingang und +12V. Dieser zeiht (pull) den Eingang auf 12V hinauf (up) also Pullup-Widerstand. Das Gegenteil ist ein Pull Down Widerstand der zwischen Eingang und Masse geschaltet ist.

Ah, okay, und wie aktiviere ich meinen Pull Up Widerstand? Wird dadurch meine Spannung meiner PWM Pins von 5V auf die nötigen 10V angehoben? :)

Habe sonst den restlichen Aufbau nach deinen Vorgaben gemacht :)

PS: benötige ich eine externe Stromquelle? Meinst du das mit den 12V? Habe hier eine Schaltung gefunden, in der offensichtlich mit einer externen 12Volt Spannung gearbeitet wird? oder muss ich meinen Ardunio extern an 12Volt anschließen über die Buchse?

Hat nicht der DIM Anschluß eine Spannung von 12V oder habe ich Dich falsch verstanden? Uwe

Hat nicht der DIM Anschluß eine Spannung von 12V oder habe ich Dich falsch verstanden?

So habe ich das auch verstanden. Ein Pullup nach 12V ist da eingebaut.

Also fehlt nur ein Kleinsignal NPN Tranni und ein Basisvorwiderstand.

Das aktivieren des internen Pullups des Aduinos macht aus meiner Sicht keinen Sinn. Ein Externer schon eher, dann geht das Licht an, wenn der Arduino noch im Bootloader zuckelt.

Also laut Speccs soll der DIM von 0-10Volt gehen, gemessen habe ich vorhin knapp 12 Volt, falls ihr das meint :)

Also ists bis auf den Aufbau den Uwe beschrieben hatte nichts weiter? :) Dann kann ich das ja morgen so mal Testen? :)

Hatte nur angst, dass da etwas durchbrennt, weil ja 12 Volt vom DIM kommen, und der Arduino doch nur 5 V Ausgang hat, bzw verträgt?

Hatte nur angst, dass da etwas durchbrennt, weil ja 12 Volt vom DIM kommen, und der Arduino doch nur 5 V Ausgang hat, bzw verträgt?

Zwischen dem DIM Eingang des Moduls und dem Ausgand des Arduinos soll doch ein Transistor gebastelt werden. Schon vergessen? ;)

oder ein Optokoppler

Ahhh, so langsam macht's klick :D

Hatte gar nicht bedacht, dass die 12 Volt Spannung ja gar nicht direkt am PWM des Arduinos anliegt, sondern am Transistor und der PWM über Basiswiderstand erst an die Basis des Transistors kommt :blush:

Dann sollte das ja morgen mal so klappen... Hoffe, dass ich dann auch meine gewünschten 0-10 Volt damit fahren kann :sweat_smile:

Jungs, ihr seid die Besten! Es funktioniert, und es ist auch nichts abgeraucht! XD

Jetzt habe ich hier einige Dinge getestet:

digitalWrite(LED, LOW); -> LEDs offensichtlich auf 100% ~> 11,65Volt messe ich am Steuerkreislauf der Netzteile digitalWrite(LED, HIGH); -> LEDs aus ~> 0,58Volt messe ich am Steuerkreislauf der Netzteile

Jetzt habe ich es über analogWrite versucht, da ich da ja die vollen 0-255 Steps zur Verfügung habe, und habe etwas rumprobiert, folgende Erkentnisse habe ich gewonnen:

Step: % Der Helligkeit: Gemessen am Steuerkreis des Netzteils: 0 100 11,63 Volt 226 1% ca. 1,58 Volt 227 1% aber das Licht "faded" 1,53 Volt, kurze zeit später beginnt es zu faden -> runter auf 0,8Volt 255 komplett Aus 0,58 Volt

Sind das jetzt gute Ergebnisse? Ich frage desswegen, weil ich ja theoretisch die Schritte von 226-255 "Verschenke", da dazu theoretisch die Spannung nicht ausreicht um sie anzutrieben, sprich so eine Art "Anfangsspannungsspitze" zum "starten" der LEDs. die Steps von 0-226 gehen wunderbar per Delay einzeln anzufahren.

Gibts da eine Möglichkeit, oder ist das physikalisch leider so?

und eine Zweite Frage: Kann es sein, dass der Helligkeitsverlauf von LEDs nicht Linear ist? Habe so das gefühl, dass bsp. in meinem fall 113 nicht halb so Hell (eher heller als "Halb-Hell") wie bei meinen 100% aka 226?

Gemessen am Steuerkreis des Netzteils:

Mit einem Voltmeter? Das ist völlig Sinnfrei!

Das ist kein AnalogAusgang, sondern ein PWM Ausgang.

Tipp: Wer viel misst, misst viel Mist.

Kann es sein, dass der Helligkeitsverlauf von LEDs nicht Linear ist?

Durchaus! Auch deine Augen + Nervensystem arbeiten nicht linear.

combie:

Gemessen am Steuerkreis des Netzteils:

Mit einem Voltmeter? Das ist völlig Sinnfrei!

Das ist kein AnalogAusgang, sondern ein PWM Ausgang.

Genaugenommen bin ich mir gar nicht sicher obs ein PWM ausgang ist, da ich diesen ja auch theoretisch über ein Poti steuern kann ^^' jedenfalls hab ich diese Unterschiede gemessen :D

Gibts denn eine Möglichkeit, eine Art Linearität der Helligkeitsverläufe zu bekommen und die Steps 227-255 "nutzbar" zu machen?

Gibts denn eine Möglichkeit, eine Art Linearität der Helligkeitsverläufe zu bekommen und die Steps 227-255 “nutzbar” zu machen?

Das sind 2 Probleme.
Das “und” ist etwas … :wink: :wink:

Linearität

Umrechnen!
Entweder Funktion, oder Tabelle.

Steps 227-255 “nutzbar”

Schwieriger… Da das Modul scheinbar Minimal Pulse, oder Pausen braucht um zu reagieren.
Das geht wohl nur über “mehr Bit” als die 8 des Arduinos.
z.B: mit sowas evtl: http://www.adafruit.com/product/815
evtl. könnte es schon etwas helfen, die Frequenz der PWM zu ändern.
Was kann das Modul ab, was liefert dein Arduino?

Genaugenommen bin ich mir gar nicht sicher obs ein PWM ausgang ist, da ich diesen ja auch theoretisch über ein Poti steuern kann

Das Modul mag beides können, aber der AVR liefert PWM !!!

^^’ jedenfalls hab ich diese Unterschiede gemessen

Das ist kein “messen”!
Du meinst bestimmt eher sowas: “Das hat mein Instrument angezeigt.”
8) 8) 8)

combie:

Linearität

Umrechnen! Entweder Funktion, oder Tabelle.

Okay, und wie krieg ich erstmal den Helligkeitsverlauf meiner LEDs ausgelesen, damit ich diesen Linear anpassen kann? XD

combie:

Steps 227-255 "nutzbar"

Schwieriger...... Da das Modul scheinbar Minimal Pulse, oder Pausen braucht um zu reagieren. Das geht wohl nur über "mehr Bit" als die 8 des Arduinos. z.B: mit sowas evtl: http://www.adafruit.com/product/815 evtl. könnte es schon etwas helfen, die Frequenz der PWM zu ändern. Was kann das Modul ab, was liefert dein Arduino?

Minimal Pulse = für Laien ausgedrückt, eine art MindestSpannung damit die LEDs überhaupt angehen? Mehr Bit, also bsp über einen Due/Mega oder einen Tre?

Da reichen meine Kenntnisse leider auch nicht direkt zu :( Also, wie ich die Frequenz des PWMs änder... Also den Arduino Uno habe ich, und meine Netzteile haben eine Dimmable Function: 0/1-10V Potentiometer/10V PWM(3 in 5)

combie:

^^' jedenfalls hab ich diese Unterschiede gemessen

Das ist kein "messen"! Du meinst bestimmt eher sowas: "Das hat mein Instrument angezeigt." 8) 8) 8)

Touché :D

[/quote]

Kannst ja mal ein Poti statt des Transistors+Arduino anschliessen. Dann kann combie nicht so heftig über das "Messgerät dranhalten" meckern.

Aber für den Bereich 0 ... 10 % Helligkeit kann deine PWM - Ansteuerung der KSQ nicht so optimal sein. Nicht umsonst heisst es: 0, 1-10V . Der Bereich unter 1 V ist also undefiniert. ( Mal angenommen, dein Volt-Messwert ist relevant.)

Nichtlinearitäten gibts viele, da ist der Zusammenhang zwischen Strom und gemessener Helligkeit noch "am linearsten". Der Zusammenhang zwischen Strom und empfundener Helligkeit ist schon schwieriger.

Und der Zusammenhang zwischen PWM Tastverhältnis , Spannung am DIM-Eingang (was auch immer dein Multimeter anzeigt) , und Strom-Ausgang der KSQ ist nochmal eine andere Geschichte.

Wenns dir auf feine Abstimmung bei fast-dunkler Beleuchtung ankommt, wirst du merken, dass selbst bei direkter Ansteuerung einer kleinen LED per Arduino die Stufen zwischen PWM = 0 - 1 - 2 - 3 viel deutlicher sind als z.B. die Unterschiede bei 50% oder gar über 90%.

Hab mal damit experimentiert, statt PWM die LED fest für 10 ms AUS und nur für 200 -> 4 µs an zu schalten ( Das sind 2% -> 0,04% ) Die theoretisch feinste Stufung sind 62,5 ns Schritte : da sieht man garantiert keine Sprünge ;)

michael_x: Kannst ja mal ein Poti statt des Transistors+Arduino anschliessen. Dann kann combie nicht so heftig über das "Messgerät dranhalten" meckern. ...

Aber für den Bereich 0 ... 10 % Helligkeit kann deine PWM - Ansteuerung der KSQ nicht so optimal sein. Nicht umsonst heisst es: 0, 1-10V . Der Bereich unter 1 V ist also undefiniert. ( Mal angenommen, dein Volt-Messwert ist relevant.)

.....

Und der Zusammenhang zwischen PWM Tastverhältnis , Spannung am DIM-Eingang (was auch immer dein Multimeter anzeigt) , und Strom-Ausgang der KSQ ist nochmal eine andere Geschichte. ....

Naja..... Am DIM Eingang liegt bei einem Tastverhältnis von 1:254 bis 254:1 eine pulsierende Gleichspannung von 11,63V an. Dem Messwert glaube ich. Ein Voltmeter ist nicht in der Lage eine solche pulsierende Gleichspannung darzustellen.

michael_x und VIERcntHOLZ Macht euch bitte, bitte, bitte den Unterschied zwischen PWM und Analog klar!

Hier mal eine Hilfe dazu: http://de.wikipedia.org/wiki/Analogsignal http://de.wikipedia.org/wiki/Pulsweitenmodulation

Macht euch bitte, bitte, bitte den Unterschied zwischen PWM und Analog klar!

Hier mal eine Hilfe dazu: http://de.wikipedia.org/wiki/Analogsignal http://de.wikipedia.org/wiki/Pulsweitenmodulation

Vielen Dank für deine Sorge ;)

Ich habe sogar ein Gefühl für den Zusammenhang zwischen beiden, wenn ein Tiefpass im Spiel ist.

Ein Voltmeter ist nicht in der Lage eine solche pulsierende Gleichspannung darzustellen.

Ich geh mal davon aus, dass VIERcntHOLZ nicht nur Werte bei 255: 11.6V 0%, 0: 0.5V 100% und 226: 1.5V (geschätzt ca. 1% ) gesehen hat, sondern auch Zwischenwerte zwischen 1 und 11 V mit entsprechender mittlerer Helligkeit bei einem mittleren PWM - Wert.

Daher nehme ich mal an, dass sein Messgerät nicht zufällig entweder nur 0 oder 11,6 mit wechselnder Wahrscheinlichkeit anzeigt, sondern ein Tiefpass-Verhalten hat. Und somit PWM-Wechselspannungen geglättet anzeigt. Ist übrigens relativ normal, dass solche dimmbare KSQ mit variabler konstanter Spannung oder wahlweise mit PWM gedimmt werden können.

Mein Punkt ging eigentlich eher darum, dass vermutlich die KSQ mit der Transistor-Ansteuerung nicht gut ist, um den Bereich 226 .. 255 in einen linearen Helligkeitsbereich zwischen 0 und 1% zu kriegen. Ein besseres Gefühl was überhaupt gehen kann kriegt man vermutlich mit einem analogen Poti. Da wird die angezeigtre Spannung dasselbe sein, was der DIM Eingang "sieht". und was es mit der Angabe " 0, 1-10V " auf sich hat.

Ein 16 Kanal 12 bit PWM Modul statt der internen 8 bit PWM wird wohl nichts wesentlich verbessern.

Ein 16 Kanal 12 bit PWM Modul statt der internen 8 bit PWM wird wohl nichts wesentlich verbessern.

Zumindest muss man dann nicht mehr den Verlust von 20 Stufen beweinen.

mit der Transistor-Ansteuerung nicht gut ist

Die 11,63V direkt an den Arduino zu klemmen ist auch nicht gut! :D :D

Daher nehme ich mal an, dass sein Messgerät nicht zufällig entweder nur 0 oder 11,6 mit wechselnder Wahrscheinlichkeit anzeigt, sondern ein Tiefpass-Verhalten hat. Und somit PWM-Wechselspannungen geglättet anzeigt.

Ein Oszilloskop ist das Mittel der Wahl. Meiner Ansicht nach das einzige Werkzeug, was einem dem Spannungsverlauf am DIM Eingang anzeigen kann.

Und somit PWM-Wechselspannungen geglättet anzeigt.

Pulsierende Gleichspannung! Nicht Wechselspannung. Übliche Multimeter sind für Gleichspannung gebaut (nix pulsieren) Oder eben für 50Hz Sinus Wechselspannung. Da zeigen sie auch ganz schön den Effektivwert.

Ich will nicht bezweifeln, dass das Messgerät bei PWM was anzeigt, aber die Anzeige hat herzlich wenig Bezug zur Realität. Ich könnte aus den Messergebnissen nichts ableiten. Keine Vermutungen, und erst recht nicht irgendwelche logischen Schlüsse ziehen.