Hallo!
Ich bin bei der Dimensionierung eines MOSFETs für eine Anwendung, bei
der ich einen Motor an 36V...42V (Akku) mit bis zu 40A mittels PWM
ansteuern will. (So viel fließen höchstens bei starker Überlastung des
Motors, aber sicher ist sicher)
Ich weiß zwar, wie man die Leistung am MOSFET abschätzen kann, wenn
Anstiegs- und Abfallzeiten der Spannungen/Ströme bekannt sind, doch
genau die sind nicht so einfach zu berechnen. (Gate-Ladung etc. ist ja
nicht so trivial...)
Meine Frage ist: Wie macht ihr das? Nehmt ihr Berechnungstools? Wenn ja,
welche?
Ich hatte auch die Idee mit LTspice zu simulieren, aber leider finde ich
kein Modell für den Treiber, den ich bei Conrad bekomme (ICL7667) und
umgekehrt sind Treiber, die in LTspice vorhanden sind, für
Otto-Normalverbraucher kaum zu bekommen.
Meine Idee wäre, dass ich den Treiber in der Simulation einfach mit
einer idealen Spannungsquelle in Serie mit einem Widerstand mit dem Wert
des im Datenblatt angegebenen Innenwiderstandes ersetze.
Käme das eurer Meinung nach der Realität nah genug? (Sprich, würde der
Transistor ausreichend gekühlt werden, wenn die Dimensionierung nach der
mit LTspice berechneten Leistung erfolgen würde?)
Danke im Voraus!
Erstmal kommt die Entscheidung, ob der Treiber eine Strombegrenzung
gegen Kurzschluss und Überlastung haben soll, bei der Wahl des ICL7667
wohl nicht.
Dann kommt also die Frage, wie hoch der Motorstrom beim Blockieren und
im Anlaufmoment ist (Betriebsspannung/Innenwiderstand). Den Strom müssen
die MOSFETs und Freilaufdioden aushalten.
Dann stellt sich natürlich die Frage, wieso wichtig ist, was man bei
Conrad bekommt, da kauft doch eh keiner mehr.
Wenn nun 40A zu schalten sind berechnet man die Verluste am RDSon, und
überlegt, ob und wie gross der Kühlkörper dafür sein muss.
Schaltverluste sind gering, wenn die PWM langsam ist, und die meisten
Motoren laufen gut am 230V~ Phasenanschnittdimmer, also mit 100Hz PWM,
knurren statt pfeifen.
Ich bin ja ein großer Freund von LTSpice wenn es um einfache
Analogschaltungen im Audiobereich geht. Aber Schaltverluste von MOSFETs
- da traue ich den Modellen einfach nicht über den Weg. Stattdessen
Temperaturmessung am realen Objekt - kommt der Wahrheit näher.
Danke für die schnelle Antwort!
Der Treiber wird mit einem Mikrocontroller gesteuert und fährt den Motor
an einer PWM-Rampe hoch. Daher sollte der Anlaufstrom gering sein.
Der Mikrocontroller misst auch den Strom (Abtastung alle 10-20ms wäre
angedacht, passendes Antialiasing-Filter natürlich inklusive) und
schaltet sofort ab, wenn der Strom so hoch wird, dass ein Blockieren des
Motors angenommen werden kann. (Der Transistor wäre für ca 195A
spezifiziert, daher sollte der Anauf-/Blockierstrom nach meinen ersten
Überlegungen für einige 10 Millisekunden durchaus ausgehalten werden...)
Ich möchte eine Frequenz von 20kHz nehmen, da ich die Zuleitung des
Akkus filtern möchte. Würde ich 100Hz nehmen, wären die Komponenten des
LC-Gliedes zu groß.
Ebenso möchte ich den Strom auf der Motorleitung relativ konstant
halten, auch dafür eignet sich die höhere Frequenz besser.
Außerdem gibt der Motor so weder Brumm- noch Pfeifgeräusche von sich.
Conrad (oder Reichelt) muss nicht unbedingt sein, wenn du einen Händler
empfehlen kannst, der keine Fälschungen verkauft und zeitnah nach
Österreich liefern kann, wäre ich natürlich dankbar. (Das Projekt soll
Anfang-Mitte August großteils fertig sein, daher das "zeitnah"...)
Danke!
Mark S. schrieb:> Stattdessen> Temperaturmessung am realen Objekt
...was man jedoch erst machen kann, wenn das Objekt schon da ist, sprich
fertig dimensioniert und auf der Platine fix angelötet, wo auch der
Kühlkörper draufgelötet werden soll, der jetzt zu dimensionieren wäre...
Du bist zu sehr auf den Treiber fixiert. Die Verlustleistung entsteht im
Mosfet, auch bei idealer Ansteuerung. Die Auswahl des Mosfets hat
wesentlich größeren Einfluss.
Hallo,
wir machen das typischerweise andersrum.
1. Auswahl des Mosfets nach Uds, Imax, Rdson, Cgate, Package,
Vorlieben...
2. Berechnen der Treiberleistung aus Cgate, Udrv+, Udrv-, Fpwm
3. Berechnen des Peakstromes aus Udrv+, Udv- und Rgate
Mit dem Peakstrom lässt sich dann ein Treiber-IC auswählen. Lieber
großzügig dimensionieren, weniger Strom geht immer. Die Ansteuerleistung
bleibt größtenteils im Gatevorwiderstand hängen. Der bestimmt auch
maßgeblich die Schaltgeschwindigkeit.
Letztendlich ist das ganze ein Kompromiss. Für geringe Verlustleistung
will man schnell schalten. Aber je schneller man wird, um so mehr EMV
und Schaltüberspannung tritt auf. Der typische Auslegungspunkt nach
Lehrbuch ist, ca. die gleichen Schaltverluste wie die Leitverluste.
Da du aber mit niedrigen Spannungen arbeitest, kannst du recht moderne
Mosfets nehmen. Die sind schnell und haben kleine Rdson und kleine
Gatekapazitäten. Das macht das ganze wesentlich einfacher.
Danke für die Tipps!
Jemand schrieb:> 2. Berechnen der Treiberleistung aus Cgate, Udrv+, Udrv-, Fpwm> 3. Berechnen des Peakstromes aus Udrv+, Udv- und Rgate
Ich hab auch den MOSFET zuerst gewählt aber ab dem 2. Punkt hänge ich.
Kannst du das vielleicht genauer ausführen? (Simulieren ist aber schon
genauer, oder?)
Hast du Platz um den Kühlkörper 50%-100% grösser auslegen zu können?
Wenn ja, kannst du später einerfach ausprobieren und jetzt reicht
schätzen.
Ansonsten kann man später immernoch einen anderen MOSFET mit besseren
Werten suchen und anstelle des jetzigen verbauen.
Mot schrieb:> Danke für die Tipps!>> Jemand schrieb:>> 2. Berechnen der Treiberleistung aus Cgate, Udrv+, Udrv-, Fpwm>> 3. Berechnen des Peakstromes aus Udrv+, Udv- und Rgate>> Ich hab auch den MOSFET zuerst gewählt aber ab dem 2. Punkt hänge ich.
Die Kapazität Cgate wird von Udrv- auf Udrv+ aufgeladen. Dabei wird die
Ladung Cgate*(Urdv+ - Udrv-) bewegt, innerhalb einer halbe Periodendauer
von Fpwm. Beim Entladen in der nächsten halben Periodendauer umgedreht.
Im Mittel fließt dann I = fPWM*Cgate*(Udrv+ - Udrv-).
Und wie komm ich auf die Flankensteilheiten? Ist ja nicht so einfach mit
Miller-Plateau & Co?
Und die Simulation kommt schon näher an die Realität, wenn auch nicht
perfekt, oder?
Mot schrieb:> Und wie komm ich auf die Flankensteilheiten?
Über den RC-Spannungsverlauf von Rgate und Cgate am Eingang, danach
weiter mit der Kennlinie.
Das habe ich auch schon überlegt. Aber: der MOSFET leitet doch erst ab
Uth. Das heißt die Flankensteilheit ergäbe sich aus der Ladezeit von Uth
bis zur Spannung, wo der projektierte Strom laut Kennlinie fließen kann,
ja?
Und dann bleibt noch die Frage des Miller-Plateaus...
Wenn man die gesamte Gate-Ladung aus dem Datenblatt nimmt, kann man dann
davon ausgehen, dass die Ladedauer ca so lang dauert, wie in echt, nur
dass der Ladeverlauf in echt stufiger ist?
Ja, halbwegs brauchbare eine Simulation ist besser als ein Rechnung von
jemand der das noch nie gemacht hat. Aber Obacht, die Simulation ist nur
so gut wie das Modell, soll heißen wenn: Wenn Du im LTSPICE komplett
falsche Mosfets auswählst, bekommst Du auch komplett falsche Ergebnisse.
Mot schrieb:> Das habe ich auch schon überlegt. Aber: der MOSFET leitet doch erst ab> Uth. Das heißt die Flankensteilheit ergäbe sich aus der Ladezeit von Uth> bis zur Spannung, wo der projektierte Strom laut Kennlinie fließen kann,> ja?
Na, fast. Es gibt sozusagen drei Bereiche im Gatespannungsverlauf.
1. Von aus bis Uth, Gatevorwiderstand und Gatekapazität.
2. Miller Plateau, das ist fast ein Gerade. Und das IST der
Schaltzeitpunkt.
Der Mosfet wird langsam leitend, also sinkt die Spannung Drain-Source.
Damit wird über die Millerkapazität ein Strom genau entgegen dem
Gatestrom ein das Gate eingeprägt. Das stellt sich von alleine ein. Je
schneller du Schalten willst, um so mehr "bremst" die Millerkapazität
dagegen.
3. Uds ist sehr klein, das Gate wird voll aufgeladen und der Mosfet wird
hier erst so richtig niederohmig.
So und jetzt wirds ekelig, die ganzen Kapazitäten sind alle so richtig
hässlich nichtlienar. Die Gatekapazität andert sich über die
Gatespannung um Faktor 5 oder so.
Da hat keiner Lust zum Rechnen, vor allem mit den ganzen Annahmen und
Streuungen.
Das kann man bei z.B. Infineon genauer nachlesen.
"MOSFET Power Losses Calculation Using the DataSheet Parameters"
by Dr. Dušan Graovac, Marco Pürschel, Andreas Kiep
Ich kann dir leider nicht mehr sagen wo ich das mal gefunden habe. Und
anhängen mag ich das auch nicht.
Für die Praxis:
Du legst den Treiber für die maximale Verlustleistung und Peakstrom aus.
Den Gatevorwiderstand ebenso.
Am Prototypen werden dann so lange die Gatevorwiderstände getauscht bis
die Überspannung passt und der Mosfet schnell genug ist. Oder das ganze
nicht so sehr schwingt (Ringing).
Und gut ist es.
Schaltverluste bzw. die dazugehörigen Spannungs- und Stromverläufe zu
berechnen ist fast unmöglich, dazu hängt das ganze viel zu sehr von den
parasitären Grössen (Streukapazitäten, Induktivitäten,
Temperatureabhängigkeit diverser Parameters ab. Die Schalterverluste
elektrisch zu messen ist in vielen Fällen ebenfalls aussichtslos. Was
gut funktioniert (aber sehr aufwändig ist) ist die kalorimetrische
Messung der Schaltverluste, anders hat man in vielen Fällen aber keine
Chance.
Jemand schrieb:> Für die Praxis:> Du legst den Treiber für die maximale Verlustleistung und Peakstrom aus.> Den Gatevorwiderstand ebenso.> Am Prototypen werden dann so lange die Gatevorwiderstände getauscht bis> die Überspannung passt und der Mosfet schnell genug ist. Oder das ganze> nicht so sehr schwingt (Ringing).> Und gut ist es.
Das ist für die meisten Fälle auch ausreichend.
Danke für eure Antworten!
Also wenn ich das zusammenfasse, kann man sagen:
1. In einfachen Fällen reicht es, die Werte des Treibers zu schätzen.
Man macht es dann so:
P=[ (Q_Gate/t_rise)*U_GS/t_rise + (Q_Gate/t_fall)*U_GS/t_fall ]*f_PWM
Das ist die minimale Leistung, die der Treiber können muss.
Der Maximalstrom ergibt sich aus:
I_max=U_GS/(Treiberinnenwiderstand+Gateinnenwiderstand)
Wenn man dann den Treiber bzw die Schaltung hat, kann man die
Flankensteilheit noch mit einem Widerstand zwischen Gate und Treiber
einstellen, dabei muss man darauf achten, dass es nicht zu einem
Schwingen kommt. (Passiert wenn Widerstand zu klein.)
2. Man kann das ganze simulieren, damit bekommt man bessere Ergebnisse,
als beim schätzen, vorausgesetzt, die Bauteile wurden hinreichend genau
modelliert. Auch diese Werte weichen in der Praxis noch ab, weshalb man
mit einem Oszi und dem Temperatursensor nachmessen sollte.
Soweit richtig?
Was mich außerdem noch interessieren würde, ist:
- Wie weit weichen die Werte einer Simulation mit recht guten
Bauteilmodellen ab? (Faktor bei Leistung)
- Falls man kein Modell für den Treiber bekommt: kommt eine
Serienschaltung aus idealer Quelle und einem Widerstand (entsprechend
des Innenwiderstandes des Treibers) einigermaßen hin? Oder liegt man da
sehr daneben?