Forum: Analoge Elektronik und Schaltungstechnik MOSFET schnell mit AVR schalten


von Daniel K. (dkiefhab)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich baue gerade ein LED-Array (für eine wissenschaftliche Anwendung), 
auf dem Reihen mit bis zu 36 700mA LEDs 1.) in verschiedenen 
Helligkeiten leuchten müssen und 2.) schnell ein- und ausgeschaltet 
werden müssen. Das ganze wird eine Beleuchtung für Aufnahmen mit einer 
High Speed Kamera, die Bilder mit 6kHz aufnimmt. Die Details sind an 
dieser Stelle wohl irrelevant, die technischen Parameter vielleicht 
nicht:

Ich muss ca. 700mA, 80V schalten, die LEDs sollen kürzestenfalls nur ca. 
4us leuchten.

Im Anhang mein erster Testaufbau (Widerstände statt LEDs, habe statt 
einem IRF510 die Logic Level Version IRL510) und das Ergebnis auf dem 
Oszi.

Ich bin Physiker, kein Elektroniker und habe nicht viel Erfahrung mit 
solchen Schaltungen, vielleicht kann mir jemand helfen das Ergebnis zu 
interpretieren, insbesondere:

1.) woher kommen die Überschwinger am Gate?
2.) Wieso dauert der Abschaltvorgang so lange (ca. 1us auf der 
Lastseite, obwohl die Gate-Spannung ausreichend schnell abfällt)?

Daran anschließend: Wie kann ich die Schaltung verbessern, damit der 
Schaltvorgang zuverlässig und schnell läuft (mit minimalem zusätzlichen 
Bauteileinsatz)?

Vielen Dank für eure Hilfe,
Daniel

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Daniel Kiefhaber schrieb:
> 1.) woher kommen die Überschwinger am Gate?
Vom Aufbau (Masseführung) und vom Messfehler.
Wie und wo hast du gemessen?
Mach da mal ein Foto davon...

> 2.) Wieso dauert der Abschaltvorgang so lange (ca. 1us auf der
> Lastseite, obwohl die Gate-Spannung ausreichend schnell abfällt)?
Die Widerstände sind zu hochohmig. Deshalb ist der Strom zum Laden der 
parasitären Kapazitäten zu gering...

> 700mA, 80V
Wären knapp 120 Ohm. Mach einfach mal eine zusätzlich Last rein...

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Lothar Miller schrieb:
>> 1.) woher kommen die Überschwinger am Gate?
> Vom Aufbau (Masseführung) und vom Messfehler.
> Wie und wo hast du gemessen?
> Mach da mal ein Foto davon...

Lt. Datenblatt hat der IRF510 auch eine Drain Induktivität von 4,5 nH 
und eine Source Induktivität von 7,5 nH. Wohlgemerkt, das sind die 
internen Ls, da kommen durch den Aufbau noch mehr dazu.

Lothar Miller schrieb:
>> 2.) Wieso dauert der Abschaltvorgang so lange (ca. 1us auf der
>> Lastseite, obwohl die Gate-Spannung ausreichend schnell abfällt)?
> Die Widerstände sind zu hochohmig. Deshalb ist der Strom zum Laden der
> parasitären Kapazitäten zu gering...

Die Ansteuerung des Gate sollte auch kräftig sein, denn da wird ja eine 
Ladung von (lt. Datenblatt) 8,9 nC umgeladen. Das klingt erstmal nicht 
so viel, ist aber im Nanosekunden Bereich dann doch eine nennenswerte 
Last. Ein LowSide Driver arbeitet mit einer Gegentaktendstufe und zieht 
das Gate aktiv auf Null.

von Falk B. (falk)


Lesenswert?

@  Daniel Kiefhaber (dkiefhab)

>      mosfet.JPG
>      1,1 MB, 7 Downloads

Lies mal bitte etwas über Bildformate.

 (Hallo Johannes, so besser? ;-) )

>Ich muss ca. 700mA, 80V schalten, die LEDs sollen kürzestenfalls nur ca.
>4us leuchten.

Kein großes Problem.

>Im Anhang mein erster Testaufbau (Widerstände statt LEDs, habe statt
>einem IRF510 die Logic Level Version IRL510) und das Ergebnis auf dem
>Oszi.

>1.) woher kommen die Überschwinger am Gate?

Kann eine MEssfehler sein, wenn dein Masseverbindung am Tastkopf zu lang 
ist. Da nutzt man am besten die sog. Ground Spring, also sie kurze, 
vielleich 10mm lange Massefeder.
Es kann aber auch schlechte Leitungsführung sein.

>2.) Wieso dauert der Abschaltvorgang so lange (ca. 1us auf der
>Lastseite, obwohl die Gate-Spannung ausreichend schnell abfällt)?

Weil deine 1,8kOhm die Drain Source sowie Drain-Gate Kapazität aufladen 
müsssen.

>Daran anschließend: Wie kann ich die Schaltung verbessern, damit der
>Schaltvorgang zuverlässig und schnell läuft (mit minimalem zusätzlichen
>Bauteileinsatz)?

So schlimm ist das doch nicht. Ausserdem sieht es mit den LEDs + 
Vorwiderstand anders aus. Denn der STROM wird schnell abgeschaltet, nur 
die SPANNUNG ist hier langsam. Vertausche mal R1 und R2 und miss 
nochmal, das kommt der realen Situation mit LEDs näher.

MFG
Falk

von Daniel K. (dkiefhab)


Angehängte Dateien:

Lesenswert?

Hallo Lothar,

danke für die schnelle Antwort.
Messfehler wäre eine schöne Ursache... anbei der Aufbau, ist sicher 
alles andere als ideal. Ich hatte gestern schon festgestellt, dass die 
Kapazität der Messfühler durchaus einen Effekt hat, sie stehen jetzt auf 
10X, um das zu minimieren.

Andere Last werde ich gleich ausprobieren, das zweite Bild ist nochmal 
der gleiche Aufbau nur mit zusätzlichem 220 Ohm Widerstand vor dem Gate, 
da gehen entweder die Überschwinger zurück, oder der Messfehler wird 
reduziert... :)

Andere Frage: Könnte ich 36 MOSFETs auf diese Art direkt von einem AVR 
treiben, wenn sie gleichzeitig geschaltet werden sollen oder kann der 
dann nicht genug Strom liefern, um alle Gate-Kapazitäten zu laden und 
komische Sachen passieren?

Gruß
Daniel

von Falk B. (falk)


Lesenswert?

@  Matthias Sch. (Firma: Matzetronics) (mschoeldgen)

>Lt. Datenblatt hat der IRF510 auch eine Drain Induktivität von 4,5 nH
>und eine Source Induktivität von 7,5 nH.

Das sind je 5 bzw 7mm Draht.

>Die Ansteuerung des Gate sollte auch kräftig sein, denn da wird ja eine
>Ladung von (lt. Datenblatt) 8,9 nC umgeladen. Das klingt erstmal nicht
>so viel, ist aber im Nanosekunden Bereich dann doch eine nennenswerte
>Last. Ein LowSide Driver arbeitet mit einer Gegentaktendstufe und zieht
>das Gate aktiv auf Null.

Macht der AVR auch, nur nicht sooo stark. Für diese Anwendung reicht es, 
er muss nicht in 10ns schalten, 100ns tun es auch denke ich.

Beitrag "Re: Transistor, 1A, 4MHz Schaltfrequenz"

von blablub (Gast)


Lesenswert?

Der einfachste Weg wäre einen dedizierten Gatetreiber einzubauen. Der 
AVR packt es einfach nicht das Gate des MOSFET so schnell umzuladen.

Eine simple und günstige Lösung für so eine einfach Ansteuerung wäre es 
wohl einfach einen einige Gatter als Gatetreiber zu verwenden, z.B. der 
40106.

Such mal bei springerlink nach 'Ulrich Schlienz' und schau da nach dem 
Kapitel 'Treiberschaltungen für MOSFETs und IGBTs'. Da wird eigentlich 
alles sehr schön erklärt.

von lowlevel (Gast)


Lesenswert?

Falk Brunner schrieb:
> Macht der AVR auch, nur nicht sooo stark. Für diese Anwendung reicht es,
> er muss nicht in 10ns schalten, 100ns tun es auch denke ich.

Er "tut" es aber nicht in 100ns. Dazu wäre ein Strom (dach) von 86mA 
nötig, den der AVR nicht liefern kann.

von Daniel K. (dkiefhab)


Lesenswert?

@ Falk:

War mir klar, dass es Haue gibt wegen dem Bild, wollte es noch ändern, 
nachdem ich es gesehen habe, aber geht anscheinend nicht so ohne 
weiteres. Warum muss mein Handy seine schlechten Bilder auch so groß 
abspeichern...

Wie auch immer, ich bau mal schnell um und häng ein paar LEDs rein und 
schau dann nochmal wie es aussieht.

Vielen Dank für eure schnellen Antworten!

von Falk B. (falk)


Lesenswert?

@  Daniel Kiefhaber (dkiefhab)

>Messfehler wäre eine schöne Ursache... anbei der Aufbau, ist sicher
>alles andere als ideal.

In der Tat, da ist das bisschen Klingeln noch wenig.

> Ich hatte gestern schon festgestellt, dass die
>Kapazität der Messfühler durchaus einen Effekt hat, sie stehen jetzt auf
>10X, um das zu minimieren.

Sinnvoll.

>Andere Last werde ich gleich ausprobieren, das zweite Bild ist nochmal
>der gleiche Aufbau nur mit zusätzlichem 220 Ohm Widerstand vor dem Gate,
>da gehen entweder die Überschwinger zurück, oder der Messfehler wird
>reduziert... :)

Beides.

>Andere Frage: Könnte ich 36 MOSFETs auf diese Art direkt von einem AVR
>treiben, wenn sie gleichzeitig geschaltet werden sollen

Nein.

> oder kann der
>dann nicht genug Strom liefern, um alle Gate-Kapazitäten zu laden und
>komische Sachen passieren?

Ja, deine Schaltzeiten werden riesig. Selbst die Eingänge von 36 
MOSFET-Treibern sind schon recht viel, hier muss möglicherweise eine 
Zwischenstufe rein. Ich würde 7x 74HC04 nehmen. Der erste wird ein 1:6 
Verteiler, welcher jeweils pro Ausgang einen weiteren 74HC04 treibt. 
Dort hängt dann an jedem Ausgang ein MOSFET dran. Siehe hier

Taktung FPGA/CPLD

MFG
Falk

von Falk B. (falk)


Lesenswert?

@  Daniel Kiefhaber (dkiefhab)

>Wie auch immer, ich bau mal schnell um und häng ein paar LEDs rein und
>schau dann nochmal wie es aussieht.

Du musst auch das richtige messen. Nicht die Spannung am Drain ist 
wichtig, sondern der Strom durch die LEDs. Den misst du am besten mit 
einem Shunt an VCC, sagen wir 1 Ohm. Mit AC-Kopplung am Scope kannst du 
dort den Pulsstrom leicht messen.

von Matthias L. (Gast)


Lesenswert?

Nimm als Gatetreiber einfach eine Push/Pull-Stufe. Die verstärkt den 
Strom vom Atmel-pin. Der FET sollte aber ein Logik-Level Typ sein.

von Daniel K. (dkiefhab)


Lesenswert?

Ok, der Test mit LEDs sieht vielversprechend aus, auch wenn ich nur die 
Spannung und noch nicht den Strom gemessen habe, die Abschaltverzögerung 
hat sich schon mal auf ca. 250ns reduziert, damit könnte ich notfalls 
schon leben. Ab dem Nachmittag habe ich auch eine schnelle Photodiode, 
mit der ich direkt das emittierte Licht messen kann, das ist ja das, was 
mich eigentlich interessiert.

@ Falk:
Ich will die MOSFETs nicht mit einem einzelnen Pin schalten, sondern 
jeder muss einen eigenen Pin bekommen, da alle zu unterschiedlichen 
Zeiten geschaltet werden müssen.

@ Matthias:
Dann werd ich mal schauen, wie eine Push/Pull Stufe funktioniert, ist 
das die einfachste Lösung? Oder gibt es vielleicht noch eine, die mit 
weniger Bauteilen auskommt und dann vielleicht nicht ganz so gut 
funktioniert?

von Falk B. (falk)


Lesenswert?

@  Daniel Kiefhaber (dkiefhab)

>schon leben. Ab dem Nachmittag habe ich auch eine schnelle Photodiode,
>mit der ich direkt das emittierte Licht messen kann, das ist ja das, was
>mich eigentlich interessiert.

Und du weißt auch, wie man schnelle Signale mit Photodioden misst?

>Ich will die MOSFETs nicht mit einem einzelnen Pin schalten, sondern
>jeder muss einen eigenen Pin bekommen, da alle zu unterschiedlichen
>Zeiten geschaltet werden müssen.

Das geht.

>Dann werd ich mal schauen, wie eine Push/Pull Stufe funktioniert, ist
>das die einfachste Lösung?

Nein, direkt anschließen ist einfacher und hier IMO ausreichend.

von Daniel K. (dkiefhab)


Lesenswert?

Problem ist nur, dass alle gleichzeitig angeschaltet werden müssen, kann 
der ein einzelner ATMega insgesamt über die Pins verteilt soviel Strom 
liefern?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Daniel Kiefhaber schrieb:
> insgesamt über die Pins verteilt soviel Strom liefern?
Ja.

von Falk B. (falk)


Lesenswert?

@  Daniel Kiefhaber (dkiefhab)

>Problem ist nur, dass alle gleichzeitig angeschaltet werden müssen, kann
>der ein einzelner ATMega insgesamt über die Pins verteilt soviel Strom
>liefern?

Naja, das wird eher nix. Im Labor wird es vielleicht laufen, aber ich 
hätte Bauchschmerzen. Nimm besser Treiber, z.B. ICL7667.

von Falk B. (falk)


Lesenswert?

@  Lothar Miller (lkmiller) (Moderator) Benutzerseite

>> insgesamt über die Pins verteilt soviel Strom liefern?
>Ja.

36x10mA wären schon deutlich über den üblichen 200mA über VCC/GND. Und 
bei direkter Anschaltung an die Gates fließen DEUTLICH mehr als 10mA, 
eher 50mA, wenn auch nur kurz. Macht schlappe 1,8A!

von Daniel K. (dkiefhab)


Lesenswert?

Nochmal vielen Dank an alle, werd dann wohl wirklich einfach einen 
ICL7667 nehmen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Falk Brunner schrieb:
> Macht schlappe 1,8A!
Uuuups, da hatte ich was übersehen...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.