Forum: Mikrocontroller und Digitale Elektronik Arduino Ausgangsstrom verstärken


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Philipp G. (geiserp)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo *.*

Ich stehe wieder mal auf dem Schlauch. Ich möchte n LEDS am Ausgang 
Arduino Nano P10 dimmen. Hierzu habe ich folgende Schaltung gezeichnet, 
nur den relevanten Teil davon. Probleme macht der orange eingekreiste 
Bereich:

Ausgangslage:

- Wenn ich nur eine LED mit R direkt an P10 anschliesse, kann ich 
wunderbar dimmen (0 - 5V).

- Die LEDS müssen highside geschalten werden, da in der Anwendung die 
Masse fix an den Kathoden verbaut ist.

- Es sind bis zu 70 LEDS verbaut, wobei jede mit max 10mA betrieben 
wird.

- Die Quelle ist ein LM2940, max 1A, er ist sowohl die Quelle für den 
Arduino als auch für die LED Last.

Problem:

Mit einer LED klappt alles wunderbar (dimmen), nur nicht am Ausgang Q1. 
Problem dürfte sein, dass einer der Transistoren bereits voll austeuert, 
mangels korrekter Berechnung der Widerstände.

Hat jemand eine Idee, oder soll ich ein FET nehmen?

Q1 ist BD138, sorry die Bezeichnung fehlt leider.

Gruss, Philipp

: Bearbeitet durch User
von Michael B. (laberkopp)


Bewertung
3 lesenswert
nicht lesenswert
4.7 Ohm ? Nicht doch eher 4k7 ?

600mA schalten wollen bei 5V mit 1k Basisvorwiderstand, also 5mA 
Basisstrom ? Das wird nichts, dein Transistor hat keine Stromverstärkung 
von 120, sondern eher von 20, braucht also 30mA Basisstrom also 130 Ohm 
Widerstand. Die 30mA schaltet der Q2 dann mit 4k7 Basisvorwiderstand.

Besser wäre nur eine Stromverstärkung von 10 zu fordern, also 68 Ohm an 
der Basis von Q1 und 680 Ohm vor Q2.

von Michael U. (amiga)


Bewertung
2 lesenswert
nicht lesenswert
Hallo,

wie willst Du aus dem AVR-Pin mit fast 1A Strom bekommen???
5V High-Pegel - 0,7V Ube für Q2 sind 4,3V, macht bei 4,7 Ohm fast 1A...

Dafür willst Du Q1 mit (5V - 0,7V Ube - 0,3V Uce von Q2) / 1k mit 4mA 
Basistrom für 600 mA Last schnell in die Sättigung bekommen?
600/1 = 100 * 3 (Übersteuerung) wäre eine Stromvertärkung von 300 für Q1 
bei dem Laststrom. Rechne eher mit 1/10tel davon, also 30.
Macht dann ca. 60mA nötigen Basisstrom und damit 4V/60mA ca. 56 Ohm oder 
weniger.
Die 4,7 Ohm auf 470 Ohm vergrößern.
Und dann über einen LogicLevel-MosFET für Q1 nachdenken.

Da hat jemand schneller gerechnet...

Gruß aus Berlin
Michael

: Bearbeitet durch User
von Philipp G. (geiserp)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ja, natürlich 4k7, habe den Schaltplan überarbeitet. Hab' hier leider 
nix anderes als das Fritzing Zeugs.

@Michael, danke, meinst Du das so, wie gezeichnet?

Ich muss dazu noch sagen, dass ich ganz bewusst nicht von einer 
Konstantstromregelung spreche, weil sowohl bei 10 oder 70 LEDS dieselbe 
Funktion erlangt werden soll, was das Dimmen anbelangt.

Beispiel:

Labornetzteil, begrenzt auf 1A. Ich kann n LEDS anschliessen und die 
über den Spannungsregler dimmen, solange die nicht (gesamt) mehr als 
1A ziehen. Der Strom stellt sich dabei an der LED ein. Ich hoffe ich 
habe mich verständlich ausgedrückt.

Diese Funktionalität möchte ich über der AR realisieren. Eine LED zieht 
dabei nie mehr als 10mA, wobei die mit max. 20mA betrieben werden könnte 
(weil in der Anwendung sind über 10mA zu hell).

@Amiga: Danke, es waren natürlich 4k7, wobei das auch falsch ist. Ich 
hoffe die labberkopische Überarbeitung passt besser.

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
> Mit einer LED klappt alles wunderbar (dimmen), nur nicht am Ausgang Q1.

Was macht denn der Ausgang von Q1 anstelle des erwarteten Verhaltens?

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
>> Mit einer LED klappt alles wunderbar (dimmen), nur nicht am Ausgang Q1.
>
> Was macht denn der Ausgang von Q1 anstelle des erwarteten Verhaltens?

Wie folgt:

Der Code dimmt probehalber im Loop von 0 - 255, resp, 0-5V am Ausgang. 
Mit einer LED geht das.

Am Ausgang von Q1 stelle ich folgendes fest: bei low = leuchtet nicht, 
irgenwann dazwischen steuert der voll durch, und die LED leuchtet fix. 
Also zusammengefasst die blinkt einfach nur.

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
68Ohm an die basis von Q1 und den R6 mit 220 Ohm direkt auf dessen 
BE-Strecke, also nach rechts rücken auf die andere Seite von R6.
480Hz oder 980 an D10? Wie schmal (in µs) ist der kürzeste Impuls? Der 
Transistor (beide!) muss sicher und schnell leiten UND sperren. Sperren 
in so kurzer Zeit ist meist das Problem, weil die Basis nicht schnell 
genug ausgeräumt bekommst. Stromverstärkung wurde ja schon genannt. Den 
4A-Typ verwenden. Da sinkt die Stromverstärkung bei 600mA nicht ganz so 
arg.
Evtl. geht ein BD438 besser...

von Stefan ⛄ F. (stefanus)


Bewertung
-1 lesenswert
nicht lesenswert
Philipp G. schrieb:
>> Was macht denn der Ausgang von Q1 anstelle des erwarteten Verhaltens?

> Wie folgt:
> Der Code dimmt probehalber im Loop von 0 - 255, resp, 0-5V am Ausgang.
> Mit einer LED geht das.

Die LED hast du an einen anderen Ausgang als D10 angeschlossen, richtig?

> Am Ausgang von Q1 stelle ich folgendes fest: bei low = leuchtet nicht,
> irgenwann dazwischen steuert der voll durch, und die LED leuchtet fix.
> Also zusammengefasst die blinkt einfach nur.

Dann hast du mit Sicherheit den Ausgang nicht als PWM Pin konfiguriert. 
Digitale Ausgänge verhalten sich nämlich genau so, wenn man mit 
analogWrite darauf zugreift:

Auszug aus wiring_analog.c:
1
// Right now, PWM output only works on the pins with
2
// hardware support.  These are defined in the appropriate
3
// pins_*.c file.  For the rest of the pins, we default
4
// to digital output.
5
void analogWrite(uint8_t pin, int val)
6
{
7
  // We need to make sure the PWM output is enabled for those pins
8
  // that support it, as we turn it off when digitally reading or
9
  // writing with them.  Also, make sure the pin is in output mode
10
  // for consistenty with Wiring, which doesn't require a pinMode
11
  // call for the analog output pins.
12
  pinMode(pin, OUTPUT);
13
  if (val == 0)
14
  {
15
    digitalWrite(pin, LOW);
16
  }
17
  else if (val == 255)
18
  {
19
    digitalWrite(pin, HIGH);
20
  }
21
  else
22
  {
23
    ...
24
    PWM Timer benutzen
25
  }

Es wird Zeit dass du deinen Quelltext zeigst und auch einen Plan, wie du 
die LEDs angeschlossen hast.

: Bearbeitet durch User
von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
4ms oder 4000 us, der Dimmeffekt soll für das Auge angenehm erscheinen, 
als nix Wildes gefordert. Ich überarbeite dann mal den Plan.

@stefan:

Doch, die LED ist an P10 und funzt wunderbar:
1
void setup()
2
{
3
  // PIN declarations
4
  pinMode(iPwrPinOut, OUTPUT);
5
6
7
// Loop
8
9
void ChangeBrightness(int iValue)
10
{
11
if (iValue > iOldVal)
12
  {
13
  for (int i = iOldVal; i <= iValue; i++)
14
    {
15
    delay(20);
16
    analogWrite(iPwrPinOut, i);
17
    }
18
  }
19
  
20
if (iValue < iOldVal)
21
  {
22
  for (int i = iOldVal; i >= iValue; i--)
23
    {
24
    delay(20);
25
    analogWrite(iPwrPinOut, i);
26
    }
27
  }
28
29
iOldVal = iValue;
30
analogWrite(iPwrPinOut, iValue);
31
}

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
-1 lesenswert
nicht lesenswert
Stefanus F. schrieb:

Im Auszug aus wiring_analog.c fehlte ein relevanter Block:
1
// Right now, PWM output only works on the pins with
2
// hardware support.  These are defined in the appropriate
3
// pins_*.c file.  For the rest of the pins, we default
4
// to digital output.
5
void analogWrite(uint8_t pin, int val)
6
{
7
  // We need to make sure the PWM output is enabled for those pins
8
  // that support it, as we turn it off when digitally reading or
9
  // writing with them.  Also, make sure the pin is in output mode
10
  // for consistenty with Wiring, which doesn't require a pinMode
11
  // call for the analog output pins.
12
  pinMode(pin, OUTPUT);
13
  if (val == 0)
14
  {
15
    digitalWrite(pin, LOW);
16
  }
17
  else if (val == 255)
18
  {
19
    digitalWrite(pin, HIGH);
20
  }
21
  else
22
  {
23
      ... (Timer einstellen)
24
25
      case NOT_ON_TIMER:
26
      default:
27
        if (val < 128) {
28
          digitalWrite(pin, LOW);
29
        } else {
30
          digitalWrite(pin, HIGH);
31
        }
32
    }
33
  }

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
> Doch, die LED ist an P10 und funzt wunderbar:

Ich sehe in deinem Schaltplan kein P10.

Dein Quelltext ist unvollständig, ich kann nicht sehen, welche Werte 
iPwrPinOut und iValue haben.

Hast du das richtige Arduino Modell in der IDE eingestellt? Hast du eine 
Library eingebunden, die diesen Pin vielleicht anders verwendet?

: Bearbeitet durch User
von Philipp G. (geiserp)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
>> Doch, die LED ist an P10 und funzt wunderbar:
>
> Ich sehe in deinem Schaltplan kein P10.
>
> Dein Quelltext ist unvollständig, ich kann nicht sehen, was iPwrPinOut
> und iValue ist.

P10 bezieht sich auf Pin 10 vom Ardu, korrekter müsste ich D10 
schreiben. Eine LED an D10 mit Vor R funzt wunderbar.
1
// declarations
2
#include <EEPROM.h>
3
const int iPwrPinOut = 10; 
4
const int iIlluMax = 255; //
5
const int iIlluMin = 1; //
6
const int iIncreaseStep = 10; //
7
const int iBrightnessIGNDefault = 120;
8
const int iBrightnessIlluDefault = 15;
9
10
int iBrightnessIGN = 0; // default brightness when ignition is on
11
int iBrightnessIllu = 0; // default brighness illuminiation switch is on
12
int iCurrentVal = 0;
13
int iOldVal = 0;
14
15
// setup
16
  // PIN declarations
17
  pinMode(iPwrPinOut, OUTPUT);
18
  pinMode(iSwitchUpPin, INPUT);
19
  pinMode(iSwitchDownPin, INPUT);
20
  pinMode(iIGNPinIN, INPUT);
21
  pinMode(iIlluPinIN, INPUT);
22
  
23
  // verify eeprom data
24
  iBrightnessIGN = EEPROM.read(0);
25
  if (iBrightnessIGN >= iIlluMax || iBrightnessIGN <= iIlluMin) // validate invalid values
26
  {
27
    iBrightnessIGN = iBrightnessIGNDefault;
28
  }
29
  
30
  iBrightnessIllu = EEPROM.read(1);
31
  if (iBrightnessIllu >= iIlluMax || iBrightnessIllu <= iIlluMin) // validate invalid values
32
  {
33
    iBrightnessIllu = iBrightnessIlluDefault;
34
  }
35
36
// Loop
37
38
  if (bIlluON == true)
39
  {
40
      iCurrentVal = iBrightnessIllu;
41
    ChangeBrightness(iCurrentVal);
42
  }  
43
  else

@axi: Stimmt das so?

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
https://forum.arduino.cc/index.php?topic=410287.0
PIN10 sollte aber lt. Recherche schon ein PWM-Pin sein.
Timer1 am Uno. Sollte also gehen hier.

Noch nen anderen Transistor rausgesucht.
https://www.mouser.de/ProductDetail/ON-Semiconductor-Fairchild/KSB1151YS?qs=sGAEpiMZZMshyDBzk1%2fWi6kfu%252bQlsU6SqXBhbm8Z5mo%3d

Infos so generell hierzu ua.
https://www.electronics-tutorials.ws/transistor/tran_4.html

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
der, in der Nachricht eingebette, Quellcode lässt sich nicht 
kompilieren.
Sorry - ich bin da überfragt.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Nochmal frage ich nicht nach dem GANZEN Quelltext. Mit diesen Fragmenten 
ist nur eine Aussage möglich: Es sollte funktionieren.

Tut es aber nicht, also ist gezieltes Vorgehen angesagt.

Reduziere dein Programm auf ein Minimum, womit das Problem 
nachvollziehbar und messbar wird.
1
void setup()
2
{
3
    pinMode(10, OUTPUT);
4
    digitalWrite(10, HIGH);
5
}
6
7
void loop()
8
{
9
}

Und jetzt misst du die Spannungen an D10, am Kollektor von Q2 und am 
Kollektor von Q1.
1
void setup()
2
{
3
    pinMode(10, OUTPUT);
4
    digitalWrite(10, LOW);
5
}
6
7
void loop()
8
{
9
}

Messe erneut die Spannungen an D10, am Kollektor von Q2 und am Kollektor 
von Q1.

Teile uns die Messergebnisse mit.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> der, in der Nachricht eingebette, Quellcode lässt sich nicht
> kompilieren.
> Sorry - ich bin da überfragt.

Das ist korrekt, funktionieren tut der wunderbar aber wie gesagt die 
Transistor Beschaltung nicht.

Ich habe es mal vereinfacht damit er sich kompilieren lässt:
1
const int iPwrPinOut = 10; 
2
3
// =============================================================
4
// Setup
5
void setup()
6
{
7
  // PIN declarations
8
  pinMode(iPwrPinOut, OUTPUT);
9
}
10
11
// =============================================================
12
// Main Loop
13
void loop()
14
{
15
  for (int i = 0; i <= 255; i++)
16
    {
17
    delay(20);
18
    analogWrite(iPwrPinOut, i);
19
    }
20
}

Das geht mit einer LED an Ausgang D10. Funktion: Dimmen.

Nun möchte ich das mit 10 - 70 LEDs realisieren. Stimmt der Plan?

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
> Das ist korrekt, funktionieren tut der wunderbar aber wie
> gesagt die Transistor Beschaltung nicht.

Das kann nur ein Irrtum sein. Die "analogen" Ausgänge liefern 
abwechselnd pulsieren High und Low. Demnach geht die LED an und aus. Das 
hast du auch bestätigt. Also funktioniert die Schaltung.

> Stimmt der Plan?

Das habe ich Dir bereits bestätigt. Nochmal: Der Schaltplan ist in 
Ordnung.

Der Fehler muss im Programm stecken.

: Bearbeitet durch User
von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
@Stefan: Eine grüne LED mit Vorwiderstand funktioniert wunderbar an D10. 
Aber meine Schaltung ist wohl grundauf falsch dimensioniert, bitte lies 
hierzu die beiden Beiträge von den Michaels:

>600mA schalten wollen bei 5V mit 1k Basisvorwiderstand, also 5mA
>Basisstrom ? Das wird nichts, dein Transistor hat keine Stromverstärkung
>von 120, sondern eher von 20, braucht also 30mA Basisstrom also 130 Ohm

von Ach Du grüne Neune (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> weil du die Basis nicht schnell
> genug ausgeräumt bekommst.

So sollte es eigentlich funktionieren, auch bei einer PWM-Frequenz bis 
zu 10kHz. Noch niederohmiger brauchen die Widerstände nicht sein!

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Du willst also weder den Quelltext noch die Schaltung untersuchen, 
sondern lieber diskutieren.

Ich verrate Dir was: Dieses Problem kann man nicht weg diskutieren. Ich 
bin raus. Bei so wenig Kooperation kann ich Dir nicht helfen.

Was traurig ist, denn diese Schaltung und das Programm sind Kinderkram.

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Der Code dimmt probehalber im Loop von 0 - 255, resp, 0-5V am Ausgang.
> Mit einer LED geht das.

Der Ausgang vom Arduino Nano liefert nie ein Analogsignal, auch wenn 
die Funktion analogwrite() heißt. Das Signal ist immer ein PWM-Signal, 
also ein Digitalsignal (entweder 0V oder 5V), mit einstellbarem 
Tastverhältnis.

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ach Du grüne Neune schrieb:
> Noch niederohmiger brauchen die Widerstände nicht sein!

Was soll dieser niederohmige R6?
BJTs werden mit Strom gesteuert und der kann nicht fließen, wenn Q2 
sperrt.

von Michael U. (amiga)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Wolfgang schrieb:
> Was soll dieser niederohmige R6?
> BJTs werden mit Strom gesteuert und der kann nicht fließen, wenn Q2
> sperrt.

er verküzt die Ausräumzeit der Basis und beschleunigt damit das 
Abschalten.
Man kann auch noch einen Kondensator parallel zu r5 schalten um die 
Einschaltzeit zu verkürzen.

Ob es bei der genutzen PWM-Frequenz Sinn macht?

genauso macht R7 durchaus Sinn obwohl der AVR ja aktiv Low/High 
schaltet. Beim Reset und damit tristate der Pins verhindert er aber 
Dreckeffekte durch Einsreuungen.

Gruß aus Berlin
Michael

Beitrag #5602741 wurde von einem Moderator gelöscht.
von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Du willst also weder den Quelltext noch die Schaltung untersuchen,
> sondern lieber diskutieren.

@Stefan:

Grundsätzlich, ich schätze und respektiere Deine Meinung sehr, du bist 
immer sehr hilfsbereit. Ich habe oben einen kleinen Code geliefert mit 
dem sich das Problem durchaus reproduzieren lässt. Du hast aber insofern 
Recht, dass ich Vorbehalte habe den gesamten Quelltext zu posten. Dies 
aus dem Grund, dass dieser fast 400 Zeilen umfasst, und noch etwas 
besser strukturiert werden muss. Es fehlen zum Beispiel Entprell 
Routinen an den Tastern, und es wird viel mit delays gearbeitet. Die LED 
an D10 funktioniert aber durchaus. Ich wollte halt vermeiden, dass dann 
seitenlang am Coding diskutiert wird und das eigentliche Problem, die 
Dimensionierung der Widerstände, vergessen geht. Dies mitunter aus dem 
Grund, dass ich offensichtlich das nicht auf die Reihe bekomme, das 
Coding schon. Dennoch Danke Stefan!

@Achdugrüneneune: Auch dir vielen Dank.

Ausblick:

Ich realisiere heute Abend die Schaltung von @grüneneune und berichte.

bis dann, Philipp

edit:

Der_Sauerläner schrieb im Beitrag #5602741:
> Wenn du ein Schematik Programm brauchst um schaltpläne zu zeichnen oder
> gar Layouts...dann nutze KiCAD...ist kostenlos, Open Source...und wird
> ständig gepflegt...besser als das mieserable Fritzung.

Ich weiss, habe ich zuhause. Ich darf (hier) leider nix installieren :) 
Daher der dilettantische Schaltplan.

: Bearbeitet durch User
von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Nach lesen dieses Threads fallen mir 2 Dinge auf:

1:
Das immer wieder auftretende  pinMode(iPwrPinOut, OUTPUT) ist flüssiger 
als Wasser.
Überflüssig.


2.
Statt des 2 Stufigen bipolaren Treibers, würde ich einen FET einsetzen.
z.B. einen IRLML9301 oder IRLML2244
Weil gerade auf Halde, es gibt sicherlich noch mehr brauchbare Typen.


--

Philipp G. schrieb:
> - Es sind bis zu 70 LEDS verbaut, wobei jede mit max 10mA betrieben
> wird.
Wie werden die 10mA gewährleistet?

: Bearbeitet durch User
von ÄXl (Gast)


Bewertung
1 lesenswert
nicht lesenswert
so sollte es nun gehen.
(nebenbei: PIN D10 macht KEINE 10kHz, sondern 490Hz)

von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Stimmt das so?

R6 muss keine 220R habenn.

Ach Du grüne Neune schrieb:
> So sollte es eigentlich funktionieren, auch bei einer PWM-Frequenz bis
> zu 10kHz. Noch niederohmiger brauchen die Widerstände nicht sein!

Sicher nicht, sie sind schon viel zu niederohmig.

Wolfgang schrieb:
> Was soll dieser niederohmige R6?

Tja, man will sich gegenseitig überbieten,
und keine Sau rechnet hier korrekt.

Michael U. schrieb:
> er verküzt die Ausräumzeit der Basis und beschleunigt damit das
> Abschalten.
> Ob es bei der genutzen PWM-Frequenz Sinn macht?

Natürlich nicht.

> genauso macht R7 durchaus Sinn

Nö.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Michael B. schrieb:
> Ach Du grüne Neune schrieb:
>> So sollte es eigentlich funktionieren, auch bei einer PWM-Frequenz bis
>> zu 10kHz. Noch niederohmiger brauchen die Widerstände nicht sein!
>
> Sicher nicht, sie sind schon viel zu niederohmig.

Jetzt geht's gegen Abend zu und Du prophezeist mir dass die grüneneune 
Schaltung doch falsch ist? Wenn Du bessere Werte hast immer gerne.

von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Wenn Du bessere Werte hast immer gerne

Richtig gerechnet und nicht bloss geschätzt wurde in meinem ersten 
Beitrag, und du hattest die ja auch übernommen.

Daß immer noch 4.7 Ohm an den Tastern sind.....

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Leute, ihr diskutiert hier marginale Verbesserungen, die am Problem des 
TO völlig vorbei gehen.

Seine Last geht berets AN und AUS.

Nur nicht dann, wann er es will (keine PWM erkennbar). Das könnt ihr 
nicht mit Widerständen und Kondensatoren kurieren!

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Nur nicht dann, wann er es will (keine PWM erkennbar). Das könnt ihr
> nicht mit Widerständen und Kondensatoren kurieren!

pff. Ich versteh' langsam nix mehr.

Stefan D10 macht PWM 490Hz.

Ich probier dann halt einfach beide Schaltungen, grüne neune und die vom 
Laberkopp.

Schade ist halt dass ich nicht beurteilen kann welche davon besser 
geeignet ist.

von Ach was (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Schade ist halt dass ich nicht beurteilen kann welche davon besser
> geeignet ist.

Das ist egal. Die taugen beide nichts.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
>> Nur nicht dann, wann er es will (keine PWM erkennbar). Das könnt ihr
>> nicht mit Widerständen und Kondensatoren kurieren!

Philipp G. schrieb:
> pff. Ich versteh' langsam nix mehr.
> D10 macht PWM 490Hz.

Genau das bezweifle ich.

Stefanus F. schrieb:
> Was macht denn der Ausgang von Q1 anstelle des erwarteten Verhaltens?

Philipp G. schrieb:
> Am Ausgang von Q1 stelle ich folgendes fest:
> bei low = leuchtet nicht, irgenwann dazwischen steuert
> der voll durch, und die LED leuchtet fix.
> Also zusammengefasst die blinkt einfach nur.

Wenn sie blinken kann, dann kann sie auch PWM darstellen.

Was ist bei den Messungen gemäß Beitrag #5602693 heraus gekommen?

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Nu wie gesagt stefan, bin hier immer noch auf der Ar...t

Also ich mach das jetzt so:

Die Pläne von grüneneune und Michael drucke ich mal aus und realisiere 
beide als Drahtigel.

Und für dich stefan mache ich einen mini dimming code (siehe oben) plus 
ein YouTube Vid. davon.

Das halt alles frühestens um 19:00.

Bis dann.

: Bearbeitet durch User
von Arduino Fanboy D. (ufuf)


Bewertung
-1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Schade ist halt dass ich nicht beurteilen kann welche davon besser
> geeignet ist.

Kannst du dir das nicht selber ausrechnen?
Was fehlt dir?

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Nu wie gesagt stefan, bin hier immer noch auf der Ar...t

Ach so, das habe in der tat vergessen. Ich habe heute Urlaub.

> Und für dich stefan mache ich einen mini dimming code (siehe oben) plus
> ein YouTube Vid. davon.

Eigentlich interessieren mich zuerst die Spannungspegel bei statischen 
High und Low Signalen. Denn wenn die schon nicht funktionieren, ist 
alles Weitere Zeitverschwendung.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Arduino Fanboy D. schrieb:
> Philipp G. schrieb:
>> Schade ist halt dass ich nicht beurteilen kann welche davon besser
>> geeignet ist.
>
> Kannst du dir das nicht selber ausrechnen?
> Was fehlt dir?

Wenn ich das hier lese:

Michael B. schrieb:
> Tja, man will sich gegenseitig überbieten,
> und keine Sau rechnet hier korrekt.
>
> Michael U. schrieb:
>> er verküzt die Ausräumzeit der Basis und beschleunigt damit das
>> Abschalten.
>> Ob es bei der genutzen PWM-Frequenz Sinn macht?
>
> Natürlich nicht.
>
>> genauso macht R7 durchaus Sinn
>
> Nö.

scheinen sich die beiden Herren ja auch nicht einig zu sein, und in 
Sachen Analogtechnik räume ich mal beiden eine recht hohe Fachkompetenz 
ein.

Ach was schrieb:
> Das ist egal. Die taugen beide nichts.

Dieser User scheint hingegen eine klare Meinung zu haben.

Also du siehst, dann muss ich gar nicht anfangen.

von Philipp G. (geiserp01)


Bewertung
1 lesenswert
nicht lesenswert
So.

Ich habe die Labberkopp Schaltung als Drahtigel direkt an den Ardu 
gehängt, für das sie nicht funktioniert geht sie ganz gut;)

Beschreibung:
Ich habe zwei Relais zwecks galvanischer Trennung mit denen ich die LEDS 
in unterschiedlichen Helligkeitsstufen ansteuere. Beim Wechsel wird je 
nach dem auf ein anderes Level gedimmt.

Vid: Testled hängt am BD138, el. Last mit 500mA auch daran. Wenn ich die 
Last auf 100mA drossle, ist die Helligkeit dann (natürlich) anders. Das 
macht in meinem Fall aber nichts da ich eh die Helligkeit über die 
Taster regle.

@stefan: gucksch du vid. Die LED IST an D10 dran.

https://www.youtube.com/watch?v=3Z29kw4Iq9k

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
> Ich habe die Laberkopp Schaltung als Drahtigel
> direkt an den Arduino gehängt

Welche wäre das?

von Philipp G. (geiserp01)


Bewertung
0 lesenswert
nicht lesenswert
die da:

ARDU_PWR_out_v2.png

Mach einfach ctrl f nach diesem String.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Das ist doch deine und von der reden wir die ganze Zeit!
Dachte ich jedenfalls.

: Bearbeitet durch User
von Forist (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Mach einfach ctrl f nach diesem String.

Und alles nur, weil sich jemand nicht in der Lage fühlte, auf 
"Markierten Text zitieren" zu drücken, damit der Bezug klar ist und eben 
ohne Suche zu finden ist ...

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
lass gut sein, dem TO wurde geholfen und mein Missverständnis ist 
aufgeklärt. Alles gut.

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Ich habe zwei Relais zwecks galvanischer Trennung mit denen ich die LEDS
> in unterschiedlichen Helligkeitsstufen ansteuere. Beim Wechsel wird je
> nach dem auf ein anderes Level gedimmt.

Das verwirrt mich.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
>> Ich habe zwei Relais zwecks galvanischer Trennung mit denen ich die LEDS
>> in unterschiedlichen Helligkeitsstufen ansteuere. Beim Wechsel wird je
>> nach dem auf ein anderes Level gedimmt.
>
> Das verwirrt mich.

Es handelt sich um zwei Signale welche ich unbedingt getrennt haben 
möchte vom Rest der Schaltung. Sowohl untereinander, also auch gegen das 
Board zu.

Weiss jemand warum das PWM Signal auf dem DSO dermassen 'suboptimal' 
aussieht?

von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Es handelt sich um zwei Signale welche ich unbedingt getrennt haben
> möchte vom Rest der Schaltung. Sowohl untereinander, also auch gegen das
> Board zu.

Schaltungen in Prosa, weil man zu faul ist, einen Schaltplan zu 
zeichnen, sind immer Mist.


Philipp G. schrieb:
> Weiss jemand warum das PWM Signal auf dem DSO dermassen 'suboptimal'
> aussieht?

Weiss jemand, warum du glaubst, daß die Leute hier deinen DSP Bildschirm 
sehen können, obwohl du sogar zu faul bist ein Photo zu machen ?

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Michael B. schrieb:
> Philipp G. schrieb:
>> Weiss jemand warum das PWM Signal auf dem DSO dermassen 'suboptimal'
>> aussieht?
>
> Weiss jemand, warum du glaubst, daß die Leute hier deinen DSP Bildschirm
> sehen können, obwohl du sogar zu faul bist ein Photo zu machen ?

Können sie doch Michael, hast du das Video oben vergessen?

von Lothar M. (lkmiller) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Weiss jemand warum das PWM Signal auf dem DSO dermassen 'suboptimal'
> aussieht?
Ich würde sagen: weil du keinen (ohmschen) Lastwiderstand oder einen zu 
hochohmigen Lastwiderstand angeschlossen hast.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Lothar M. schrieb:
> Philipp G. schrieb:
>> Weiss jemand warum das PWM Signal auf dem DSO dermassen 'suboptimal'
>> aussieht?
> Ich würde sagen: weil du keinen (ohmschen) Lastwiderstand oder einen zu
> hochohmigen Lastwiderstand angeschlossen hast.

Die Last besteht aus der elektronischen Last (ja labberkopp auch die 
sieht man im Video), sowie der LED mit Vorwiderstand.

von Ach Du grüne Neune (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Das Signal sieht wirklich nicht so gut aus. Bis auf den Peak werden 
zumindest schon mal die schrägen Flanken durch deine beiden (NPN und 
PNP) hintereinander geschalteten Emitterschaltungen begradigt, wenn du 
sie auch tatsächlich mal dahinterschalten würdest und oszilloskopierst.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
Ach Du grüne Neune schrieb:
> Das Signal sieht wirklich nicht so gut aus. Bis auf den Peak werden
> zumindest schon mal die schrägen Flanken durch deine beiden (NPN und
> PNP) hintereinander geschalteten Emitterschaltungen begradigt, wenn du
> sie auch tatsächlich mal dahinterschalten würdest und oszilloskopierst.

Woher könnte dieser single Peak neben dem abgeschrägten Rechteck 
zustande kommen? Soll ich dem Ausgang einen fetten C gönnen?

Philipp G. schrieb:
> wenn du
>> sie auch tatsächlich mal dahinterschalten würdest und oszilloskopierst.

Den Satz verstehe ich jetzt grad nicht.

: Bearbeitet durch User
von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Woher könnte dieser single Peak neben dem abgeschrägten Rechteck
> zustande kommen? Soll ich dem Ausgang einen fetten C gönnen?

NEIN, natürlich nicht, willst du bei jedem Umschalten einen Kurzschluss 
gegen den nicht/schon geladenen Kondensator haben ?

Das PWM Signal sieht ok aus bis auf den Peak. Der könnte aus falscher 
Programmierung stammen (kurz den Ausgang als Eingang und wieder zurück 
oder so) oder er ist eine Einstreuung aus einem anderen Kanál in die 
Masseleitung.

Philipp G. schrieb:
> Die Last besteht aus der elektronischen Last (ja labberkopp auch die
> sieht man im Video)

Videos ? Nein, ich bin nicht damit aufgewachsen alles in Form von 
bewegten Bildern sehen zu müssen, dann auch noch hochkant verwackelt 
unterbelichtet, für mich ein Paradebeispiel der Volksverdummung.

> sowie der LED mit Vorwiderstand.

oder es ist die elektronische Last, solche sind bekannt für jede Art von 
Signalverzerrungen.

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Pack an den Ausgang einen 10 Ohm Widerstand als Last und schliesse dort 
parallel deinen tastkopf an. Die Spitze an den 10R/Kollektor und diese 
kleine Masseklemme an die andere Seite vom Widerstand, der auch an Masse 
liegt. Dieses Signal interessiert dich. kein anderes. Deine 
Elektronische Last ist hier fehl am Platze.
Sind die Widerstände zwischen Basis-Emitter der beiden Transistoren 
bestückt? (die, die man ja nicht braucht, weil das ja alles sooo einfach 
ist?) An analogWrite() sollte es nicht liegen. dein delay(20) sorgt 
dafür, das mindestens 20msekunden lang das gleiche Signal ausgegeben 
wird. Wenn beim neusetzen des Tastverhältnisses ein Glicht auftritt, 
dann nur alle (ca.20millisekunden, aber nicht in jeder Periode)
Nimm Dir bitte ein Blatt und einen Stift und male uns auf, was Du dort 
KONKRET anstellst. Die Jungs, die sich auskennen, sind idR.. keine 25 
mehr und allesamt keine Fans der neuartigen Möglichkeiten, seine Werke 
zu präsentieren.
Kariertes Blatt, weicher Bleistift, im Raster aufmalen und n Bild 
machen.

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wie haben wir das blos früher angestellt?

von Philipp G. (geiserp)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> Sind die Widerstände zwischen Basis-Emitter der beiden Transistoren
> bestückt? (die, die man ja nicht braucht, weil das ja alles sooo einfach
> ist?) An analogWrite() sollte es nicht liegen. dein delay(20) sorgt
> dafür, das mindestens 20msekunden lang das gleiche Signal ausgegeben
> wird. Wenn beim neusetzen des Tastverhältnisses ein Glicht auftritt,
> dann nur alle (ca.20millisekunden, aber nicht in jeder Periode)

Ich sagte doch bereits, ich habe die lapperkopische Schaltung aufgebaut. 
Da wahrt ihr ja euch nicht ganz einig, also die da, als Anhang. Er 
scheint ja heute einen schlechten Tag zu haben, aber seine Rechnerei 
scheint ja stimmen.

Es ist genau so bestückt wie Du im Anhang siehst, 1:1. Somit Nein, der 
1K R zwischen B E bei Q2 ist nicht bestückt.

: Bearbeitet durch User
von ÄXl (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Die schrägen Flanken kommen vom BD138.
Die Ansteuerung ist zu hochohmig. Wurde aber oben schonmal gesagt.
Und ja: man muss das ausrechnen. Aber dann richtig...
Anschliessend hat man die überschlägigen Größen und kann sich daran 
machen, Werte einzusetzen, die es auch zu kaufen gibt.
Nochmal, die Stromverstärkung des BD138 bricht auf lächerliche Werte 
zusammen, wenn dort "ordentlich" Strom gezogen wird.
Brauchst Du denn die vollen 5Volt am Ausgang? Deine LEDs bekommen doch 
sowieso einen Vorwiderstand. Dann nimm einen NPN in der Ausgangsstufe 
und beschalte ihn als Spannungsfolger (Kollektorschaltung). Dann 
bekommen deine LEDs nur noch 4.x Volt, aber der Ausgangsstransistor ist 
nicht in der Sättigung.
Da allerdings Betriebsspannung der LEDs und deines Arduinos beide gleich 
groß sind, kannst Du auch (ohne etwas beachten zu müssen) einen P-Kanal 
FET einsetzen. Source an Plus, Drain an deine LEDs und Gate an D10.

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wird denn was warm? Sonst lass es halt so...

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> Da allerdings Betriebsspannung der LEDs und deines Arduinos beide gleich
> groß sind, kannst Du auch (ohne etwas beachten zu müssen) einen P-Kanal
> FET einsetzen. Source an Plus, Drain an deine LEDs und Gate an D10.
Habe ich schon probiert....
Scheint nicht gewünscht zu sein.

Ist vielleicht zu einfach?

von Ach Du grüne Neune (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> Wird denn was warm?

Genau. Das darf natürlich nicht passieren. Die Schaltung enthält auch 
die wichtigen B-E Widerstände. Wobei ich den R3 mit 10R etwas 
hochohmiger machen würde (z.B. 100R), es fallen jetzt gerade mal knapp 
die 0,6 Volt für Q3 ab. Ansonsten würde ich es genauso machen.  :)

Wenn das alles zu knapp wird, kann man auch für Q3 einen BD244 nehmen.

von Philipp G. (geiserp)


Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> Brauchst Du denn die vollen 5Volt am Ausgang? Deine LEDs bekommen doch
> sowieso einen Vorwiderstand. Dann nimm einen NPN in der Ausgangsstufe

Nein, maximum 4.0V

ÄXl schrieb:
> Wird denn was warm? Sonst lass es halt so...

Als ich kurz bei der el. Last 500mA eingegeben habe, wurde der BD138 
natürlich warm, aber noch 'anfassbar' warm, also so 50°C, aber dem werde 
ich eh einen Kühlkörper verpassen.

ÄXl schrieb:
> Da allerdings Betriebsspannung der LEDs und deines Arduinos beide gleich
> groß sind, kannst Du auch (ohne etwas beachten zu müssen) einen P-Kanal
> FET einsetzen. Source an Plus, Drain an deine LEDs und Gate an D10.

Wenn das denn besser wäre? Ich versuche es heute abend mal.

edit: Ich habe nur den  SI2305 zuhause:

D10 über R220 an Gate, Drain ist out, Source an +5V. Und zwischen +5V 
und Gate noch einen 10K R, geht das?

: Bearbeitet durch User
von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
ÄXl schrieb:
> Die schrägen Flanken kommen vom BD138.
> Die Ansteuerung ist zu hochohmig. Wurde aber oben schonmal gesagt.

Oben wurde gsagt, daß das schon so passt.

Die Flanken sind ausreichend.

Steilere Flanken, wie du sie mit Gewalt erwingst, erhöhen nur 
sinnloserweise die Störabstrahlung der Schaltung hin zu höheren
Frequenzen und reissen die EMV Grenzwerte.

Es ist nicht immer klug, das Maximum rauszuholen. Oftmals ist
ausreichend auch einfach genug.

von ÄXl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Michael B. schrieb:
> Oftmals ist
> ausreichend auch einfach genug.

Dem ist nichts hinzuzufügen.




Philipp G. schrieb:
> Wenn das denn besser wäre? Ich versuche es heute abend mal.
>
> edit: Ich habe nur den  SI2305 zuhause:

der wäre mir mit seinen grademal 8V etwas knapp. Probiers.

von Philipp G. (geiserp01)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Praxistest, ich muss das hier noch einmal hochholen. Aktueller 
Schaltplan liegt bei. Schaltung ist aufgebaut und funktioniert.

Ausgangslage:

80 LED beleuchtete Schalter habe ich vor sieben Jahren mit einer 
einfachen analogen Steuerung betrieben. Hierfür habe ich damals zu 
Linearregler gegriffen.

Soll:

Vor wenigen Wochen habe ich die Schaltung komplett neu mit einem Arduino 
Nano auf Atmega 328 Basis neu gemacht, damit ich die LEDs nach Wunsch 
auf Knopfdruck in der Helligkeit regeln kann. Die 80 LEDs werden neu mit 
PWM gedimmt. Der Schaltplan liegt als Anhang bei. Am Ausgang sind 
jeweils zwei LEDs in serie geschalten, und das 40 mal parallel.

Fehlerbeobachtung:

Sieben Jahre lang hat das ganze mit einem einfachen Linearregler 
funktioniert. Mit der neuen Schaltung leuchten 76 LEDs mit derselben 
Intensität, 2 davon flackern dunkel und zwei weitere leuchten gar nicht.

Jemand eine Idee? Hänge ich 4.4V an den Strang (2.2V pro gelber LED) 
leuchten natürlich alle.

@Aexl/Michael: Der BUD138 hat einen Kühlkörper spendiert bekommen. 
Selbst bei 1.5A Last bei der kalt, soweit so gut. In der Praxis bleibt 
die Last unter 600mA.

: Bearbeitet durch User
von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Die 80 LEDs werden neu mit
> PWM gedimmt. Der Schaltplan liegt als Anhang bei. Am Ausgang sind
> jeweils zwei LEDs in serie geschalten, und das 40 mal parallel.


Ich wiederhole meine Frage nochmal:

> Philipp G. schrieb:
>> - Es sind bis zu 70 LEDS verbaut, wobei jede mit max 10mA betrieben
>> wird.
> Wie werden die 10mA gewährleistet?

?

Philipp G. schrieb:
> 2 davon flackern dunkel und zwei weitere leuchten gar nicht.

Schon mal drüber nachgedacht, dass da was kaputt oder falsch 
angeschlossen ist?

von Philipp G. (geiserp01)


Bewertung
0 lesenswert
nicht lesenswert
Arduino Fanboy D. schrieb:
>> Philipp G. schrieb:
>>> - Es sind bis zu 70 LEDS verbaut, wobei jede mit max 10mA betrieben
>>> wird.
>> Wie werden die 10mA gewährleistet?
>
> ?

Steht im Schaltplan oben, über den BUD138.

Arduino Fanboy D. schrieb:
> Philipp G. schrieb:
>> 2 davon flackern dunkel und zwei weitere leuchten gar nicht.
>
> Schon mal drüber nachgedacht, dass da was kaputt oder falsch
> angeschlossen ist?

Nicht möglich, mit Labornetzteil leuchten alle 80 konstant. Vielleicht 
haben zwei davon einfach Altersschwäche im PWM Betrieb, was sich dann 
natürlich auf vier auswirkt.

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Deine Beschreibung lässt erahnen, dass die parallel geschalteten LEDs 
nicht gut selektiert wurden. Wenn das so ist, dann wirst du sehr bald 
noch weitere Probleme bekommen.

Möglicherweise fällt am Transistor zu viel Spannung ab, so das nicht 
alle LEDs leuchten können. Ich hätte für so viel Strom einen MOSFET 
verwendet und den Minus-Pol geschaltet, zum Beispiel mit einem IRLU024N.

>  mit Labornetzteil leuchten alle 80 konstant

Auch jetzt noch? Drehe ma die Spannung langsam runter, ich gehe davon 
aus, dann dann genau diese LEDs zuerst aus gehen. Wenn die LEDs gut 
selektiert sing, dann gehen sie alle gleichzeitig aus.

Eventuell hilft es, den Plus-Pol am linken Ende und den Minus-Pol am 
rechten Ende in die Lichterkette einzuspeisen, anstatt beides am selben 
Ende.

: Bearbeitet durch User
von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Steht im Schaltplan oben, über den BUD138.

Ich sehe weder eine Strombegrenzung auf 10mA, noch einen BUD138.

Und das nach mehrfachem ausführlichen untersuchen ALLER deiner 
Schaltpläne

von Philipp G. (geiserp01)


Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Auch jetzt noch? Drehe ma die Spannung langsam runter, ich gehe davon
> aus, dann dann genau diese LEDs zuerst aus gehen. Wenn die LEDs gut
> selektiert sing, dann gehen sie alle gleichzeitig aus.
>
> Eventuell hilft es, den Plus-Pol am linken Ende und den Minus-Pol am
> rechten Ende in die Lichterkette einzuspeisen, anstatt beides am selben
> Ende.

Gute Idee Stefan, das versuche ich.

Arduino Fanboy D. schrieb:
> Ich sehe weder eine Strombegrenzung auf 10mA, noch einen BUD138.

BD138, hast Recht. Der Strom wird nicht aktiv begrenzt, nur 
steuertechnisch so klein gehalten, dass dieser nie höher wird, also 
quasi in der Software.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Der Strom wird nicht aktiv begrenzt, nur
> steuertechnisch so klein gehalten, dass dieser nie höher wird, also
> quasi in der Software.

Dir ist aber schon klar, dass dein Arduino Board keine analoge Spannung 
ausgeben kann, sondern 100% Spannung pulsieren lässt? Die LED's bekommen 
den maximal möglichen Strom aufgebrummt, vertragen sie das?

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Der Strom wird nicht aktiv begrenzt, nur
> steuertechnisch so klein gehalten, dass dieser nie höher wird, also
> quasi in der Software.

Ach!
Also wieder: "Vorwiderstand braucht man nicht!"
(dachte ich mich doch schon)

Die 10mA sind als ein reines Fantasiegebilde!


Das ist problematisch!

Viel besser:
Jeder LED Strang, also die 2 in Reihe, brauchen einen Vorwiderstand.

: Bearbeitet durch User
von Philipp G. (geiserp01)


Bewertung
-1 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Dir ist aber schon klar, dass dein Arduino Board keine analoge Spannung
> ausgeben kann, sondern 100% Spannung pulsieren lässt? Die LED's bekommen
> den maximal möglichen Strom aufgebrummt, vertragen sie das?

Das Labornetzteil sagt aber was anderes. Warum?

von Arduino Fanboy D. (ufuf)


Bewertung
1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Das Labornetzteil sagt aber was anderes. Warum?

Da gibts kein Argumentieren!

Verstehe, wie PWM funktioniert, und deine Frage ist beantwortet.

von Stefan ⛄ F. (stefanus)


Bewertung
1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Das Labornetzteil sagt aber was anderes. Warum?

Das Labornetzteil sagt gar nichts. Es misst höchstens etwas, und wer 
viel misst, der misst viel Misst.

Hinterfrage also: Was genau misst das Instrument in dem Netzteil 
eigentlich? Wir reden hier von PWM mit vermutlich tausend Impulsen pro 
Sekunde. Kann dieses Instrument dieses Signal überhaupt sinnvoll 
darstellen? Wozu sind in digitalen Schaltungen Oszilloskope gut?

von Philipp G. (geiserp01)


Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Hinterfrage also: Was genau misst das Instrument in dem Netzteil
> eigentlich? Wir reden hier von PWM mit vermutlich tausend Impulsen pro
> Sekunde. Kann dieses Instrument dieses Signal überhaupt sinnvoll
> darstellen? Wozu sind in digitalen Schaltungen Oszilloskope gut?

Hm, es misst halt irgendwas, quasi gerundet, nur nicht den Peak der 
Amplitude. Hast ja Recht.

Wie wäre es mit einer Diode in Arbeitsrichtung? Verbrät 0.7V somit nur 
noch 4.3V pro LED paar, also max. 2.15 pro LED.

von Stefan ⛄ F. (stefanus)


Bewertung
1 lesenswert
nicht lesenswert
LEDs betreibt man mit einem gesteuertem oder geregeltem Strom.

Der Versuch, LEDs mit konstanter Spannung zu Betreiben führt unter 
anderem zu genau dem Problem, das du beschreibst. Dein Lösungsansatz mit 
der zusätzlichen Diode ist mangelhaft bis ungenügend.

Lies das: https://www.mikrocontroller.net/articles/LED

: Bearbeitet durch User
von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Wie wäre es mit einer Diode in Arbeitsrichtung? Verbrät 0.7V somit nur
> noch 4.3V pro LED paar, also max. 2.15 pro LED.

Du hast 10mA pro LED behauptet!
Der Wert ist schön/brauchbar.

Trage sorge, dass er auch eingehalten wird.
Dann wird alles gut.

von Philipp G. (geiserp01)


Bewertung
0 lesenswert
nicht lesenswert
@Stefan/ufuf:

Einen R20 vor jedes LED Paar als Alternative?

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Einen R20 vor jedes LED Paar als Alternative?

Ich kenne den Aufbau deiner Lichterkette nicht, daher kann ich dazu 
nichts sagen.

von Arduino Fanboy D. (ufuf)


Bewertung
0 lesenswert
nicht lesenswert
Und ich weiß nicht, was du mit R20 meinst.
Einen R20 finde ich in deinem Schaltplan nicht.

von Philipp G. (geiserp01)


Bewertung
0 lesenswert
nicht lesenswert
Arduino Fanboy D. schrieb:
> Und ich weiß nicht, was du mit R20 meinst.
> Einen R20 finde ich in deinem Schaltplan nicht.

Doch, weisst Du, weil:

Arduino Fanboy D. schrieb:
> Das ist problematisch!
>
> Viel besser:
> Jeder LED Strang, also die 2 in Reihe, brauchen einen Vorwiderstand.

Du das ja selber vorgeschlagen hast.

Also eine LED kann maximal 150mA für 0.1ms duty cycle ab, sagt das 
Datenblatt. Da bin ich ja weit drunter.

Alternative wäre halt, einen 50 Ohm Widerstand vor jedes LED Paar zu 
setzen.

: Bearbeitet durch User
von Arduino Fanboy D. (ufuf)


Bewertung
-1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Doch, weisst Du,
Nein!

Philipp G. schrieb:
> Du das ja selber vorgeschlagen hast.
Das weiß ich!

Aber R20 hast du ins Spiel gebracht.
Und dabei nicht mitgeteilt, was das sein soll.

Vermutlich soll es was bedeuten...
Vermutlich weißt du, was du damit meint.

Google sagt zu "R20":
> Ungefähr 313.000.000 Ergebnisse

: Bearbeitet durch User
von Alexander S. (esko) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
Philipp G. schrieb:
> Einen R20 vor jedes LED Paar als Alternative?

Ja, ein 20 Ω Widerstand vor jedem LED Paar ist genau die richtige 
Lösung. Manche schreiben auch 20 R.

Man darf LEDs nicht an einer Spannungsquelle betreiben, das mögen sie 
nicht. Oft funktioniert es trotzdem, weil viele Spannungsquellen "weich" 
sind, also einen hohen Innenwiderstand haben. Mehr im Artikel -> LED.

Somit hast du etwa: (5 V -0,4 V -2,2V -2,2V) / 20 Ω = 0,010 A = 10 mA

Die 5 V sind die Versorgungsspannung.
Die 0,4 V sind ungefähr der Spannungsabfall über dem BD138.

Teste vorher an einem Strang und variiere den Widerstand bis die 
Helligkeit passt.


Wenn die Leds am Ende der Kette (wo der Stromanschluss ist) heller sind, 
dann mach es wie von Stefanus vorgeschlagen:

Stefanus F. schrieb:
> Eventuell hilft es, den Plus-Pol am linken Ende und den Minus-Pol am
> rechten Ende in die Lichterkette einzuspeisen, anstatt beides am selben
> Ende.

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.