Warum sterben meine P-Kanal-MOSFETs in dieser H-Brücke immer wieder?

9

Das ist also meine H-Brücke: Geben Sie hier die Bildbeschreibung ein Jedes Mal, wenn ich sie in einer Richtung benutze, sterben der P-Kanal-MOSFET und der NPN-BJT, die zur verwendeten Richtung gehören, in Sekunden. Der getötete MOSFET und der BJT entwickeln einen Kurzschluss, so dass ich die andere Richtung nicht mehr benutzen kann. Sie sterben ohne merkliche Hitze oder Rauch!
Der Controller ist ein Arduino-Uno, und nur die N-Kanal-MOSFETs werden mit PWM-Signal angesteuert, die P-Kanäle sind mit einfachen digitalen Ausgangspins verbunden. Die PWM-Frequenz ist die Standardeinstellung von 490 Hz für die digitalen Pins 9 und 10(Jeder PWM-Ausgang ist individuell). Ich habe bereits 4-5 P-Kanal MOSFET + BJT Paar getötet, es könnte auf beiden Seiten passieren. (Es hängt davon ab, welche Richtung ich zuerst benutze.) Der Motor ist ein 12-V-Scheibenwischer-Gleichstrommotor, die Stromversorgung beträgt 12 V, 5 A. 12V- und 5V-Stromversorgungserdungen sind angeschlossen.

Es gibt zwei Dinge, die wahr sein mögen, aber ich bin nicht 100% sicher, da ich es nicht gründlich getestet habe:

  • In der früheren Version habe ich 1k-Widerstände für R7 und R8 verwendet und hatte keine Probleme. Ich werde es noch einmal versuchen, aber mir gehen jetzt die P-Kanal-MOSFETs aus.
  • Wenn ich das gebratene MOSFET + BJT-Paar ausschneide, kann ich die andere Richtung verwenden, ohne das verbleibende MOSFET + BJT-Paar zu töten.

Bitte helfen Sie mir, was hier passiert :)

  • Sollte ich einen Widerstand zwischen dem NPN BJT und dem P-Kanal-MOSFET verwenden?
  • Sollte ich anstelle des 2N2222 BJT einen 2n7000 MOSFET verwenden?

UPDATE: Ich habe gerade die H-Brücke mit einer 12V 55W Glühbirne anstelle des Wischermotors getestet. Der P-FET und der NPN wurden während des Tests getötet. Die N-Kanal-Seite wurde mit einem 40% PWM-Signal angesteuert. Ohne Last hatte es kein Problem.

UPDATE2: Ich habe R7 und R8 von 150R auf 1k zurückgesetzt. Jetzt funktioniert die Bridge wieder, ohne dass Komponenten ausfallen. (Ich habe es tagelang nicht betrieben, aber mit den 150R-Widerständen dauerte die Wiedergabe des Fehlers nur einige Sekunden.) Ich werde trotzdem einige Entkopplungskondensatoren auf der Brücke zwischen GND und +12 V hinzufügen, wie Brian vorgeschlagen hat. Vielen Dank für die Antworten an alle!

gOldie_E36
quelle
Haben Sie einen Programmierfehler ausgeschlossen? Stirbt es immer noch, wenn Sie Ihre H-Brücke manuell steuern?
rve
Ich habe versucht, es auszuschließen. Ich habe es nicht manuell versucht, aber ich habe viele Tests mit einem kleineren Netzteil durchgeführt, ohne dass die H-Brücke mit einer Last verbunden war. Ich werde das nächste Mal versuchen, die Brücke manuell zu steuern.
gOldie_E36
1
Versuchen Sie zum Testen und um die Wahrscheinlichkeit zu verringern, dass Sie einen anderen Mosfet töten, Ihren Motor durch etwas viel Kleineres zu ersetzen. Wie ein Paar LEDs oder ein kleiner Spielzeugmotor oder so.
Passant

Antworten:

11

Wie entkoppeln Sie die 12V-Versorgung?

Ein möglicher Fehlermodus besteht darin, dass induktive Spitzen durch Abschalten des Motorstroms (dh mit der PWM-Rate) über die Rücklaufdioden in die 12-V-Versorgung eingespeist werden. Ja, das soll passieren, aber ...

Wenn die 12-V-Versorgung nicht entkoppelt ist und von einem Netzteil stammt, das keine wiederaufladbare Batterie ist, oder über ein langes (induktives) Kabel, handelt es sich nicht um eine 12-V-Versorgung, sondern wird momentan auf diese induktive Spitzenspannung angesteuert. Welches könnte weit über den MOSFET-Bewertungen liegen ...

Überwachen Sie die 12-V-Versorgung mit einem schnellen Oszilloskop. Wenn es Anzeichen von Überspannungsspitzen zeigt, erhöhen Sie die Entkopplung, bis dies nicht mehr der Fall ist. (Dies sollte 0,1 uF Keramikkondensatoren für niedrige HF-Impedanz sowie einen Elektrolytreservoirkondensator umfassen. Und möglicherweise eine 16V- oder 25V-Zenerdiode für alle Fälle ...).

Ich weiß nicht, dass dies Ihr eigentliches Problem ist, aber es ist eine Basis, die Sie abdecken müssen.

Brian Drummond
quelle
1
Dies ist die plausibelste Erklärung. Eine solche Spitze könnte leicht die absolute 20-Vgs-Spezifikation von 20 V des IRF4905 überschreiten. Der resultierende Kurzschluss zwischen Gate und Source würde dann einen großen Strom durch den NPN-Treiber fließen lassen und ihn ebenfalls zerstören.
Dave Tweed
Guter Punkt, ich benutze keine Entkopplung. Ich habe ein billiges 20-MHz-Oszilloskop. Ich werde versuchen, die Versorgung zu überwachen. Ich habe einige Keramik- und Elektrolytkondensatoren, damit ich sie anschließen kann. Ich habe aber keine Zener. (Ich werde welche bekommen.)
gOldie_E36
Halte die Zenere zurück; In Automobil-Apps reichen 16-V-Zener nicht aus, da alles andere die Versorgung erhöhen kann (während des Ladevorgangs liegt sie ohnehin gefährlich nahe bei 16 V.). Und wenn diese FETs wirklich 20-V-Vgs sind, halten sie in einem Auto nicht lange, obwohl sie auf einem (entkoppelten) 12-V-Labornetzteil in Ordnung sind.
Brian Drummond
Der Motor kommt aus einem Auto, aber ich habe vor, ihn mit einer 12-V-Laborversorgung zu verwenden (eigentlich handelt es sich um ein billiges chinesisches AC / DC-Schaltnetzteil).
gOldie_E36
1
Ich habe die Kondensatoren noch nicht hinzugefügt, weil ich gespannt war, was mit derselben Schaltung passieren wird, sondern mit der induktiven Last mit einer Glühbirne. Es verhält sich immer noch genauso.
gOldie_E36
6

R1 R2 sind viel zu groß für alle außer den kleinsten nicht existierenden Mosfets. Dies bedeutet, dass sie sich viel langsamer drehen als sie sich einschalten Ich benutze einen zusätzlichen Transistor, um schnell abzuschalten, es lohnt sich.

Autistisch
quelle
Ich habe zwischen dem Richtungswechsel 100 ms Totzeit verwendet, aber beim letzten Versuch wurde mir die Richtung überhaupt nicht geändert. (Um die Möglichkeit auszuschließen, in wechselnden Richtungen durchzuschießen.) Und die Transistoren braten trotzdem. Welche Widerstandsgröße empfehlen Sie für R1 und R2? Und wie soll ich die zusätzlichen Transistoren zum Ausschalten anschließen?
gOldie_E36
5

Einer der oberen P-Kanal-MOSFETs ist aktiv - dies bestimmt die Richtung. Wenn Sie PWM auf beide N-Kanal-MOSFETs anwenden (wie in Ihrer Schaltung impliziert), werden Sie auf einer Hälfte der H-Brücke durchgeschossen.

Sie dürfen PWM NICHT auf beide N-Kanal-Geräte anwenden - wenden Sie es nur unten rechts an, wenn das P-Kanal-Gerät oben links aktiviert ist, ODER wenden Sie es nur links unten an, wenn das P-Kanal-Gerät oben rechts aktiviert ist.

BEARBEITEN - auch Ihre P-Kanal-MOSFETs stehen auf dem Kopf.

Andy aka
quelle
1
Testen Sie es beim nächsten Mal mit einem strombegrenzten Netzteil, damit sich Ihre Transistoren nicht selbst zerstören, wenn Sie aus irgendeinem Grund einen Fehler haben.
Bimpelrekkie
Ich wende PWM nicht gleichzeitig auf beide N-Kanäle an. Nur zu einem nach dem anderen. Ich kann zum ersten Mal beide Richtungen verwenden, aber während des Betriebs sterben der P-Kanal-MOSFET und der BJT, der zur verwendeten Richtung gehört.
gOldie_E36
Es findet kein Durchschießen statt, und ich habe die letzten Male eine 12-V-55-W-Glühbirne in Reihe mit dem Netzteil verwendet. So kann ich Durchschießen erkennen (die Glühbirne wird hell) und gleichzeitig meine MOSFETs vor Durchschießen schützen. Das Problem ist, dass die Transistoren während des normalen Betriebs sterben.
gOldie_E36
@ gOldie_E36 Wenn ja, warum haben Sie dies gesagt "die N-Kanal-MOSFETs werden mit PWM-Signal angesteuert" und warum zeigt Ihr Diagramm "PWM" als Namen auf beiden N-Kanal-MOSFETs? Außerdem stehen Ihre P-Kanal-MOSFETs auf dem Kopf.
Andy aka
1
Menschen können Ihnen nur helfen, wenn Sie genaue Informationen liefern. Wenn Sie schlechte Informationen liefern, verschwenden Sie die Zeit der Leute. In Anbetracht dessen, was passiert ist, wie kann jemand darauf vertrauen, dass Ihre physische Platzierung von Komponenten genauer ist als Ihre Diagramme?
Andy aka
3

Eine Sache, die mir auffällt, ist das Fehlen von Flyback-Dioden in Ihren FETs. Da Ihr Motor eine induktive Last ist, kann er sehr leicht hohe Spannungen an Ihren FETs erzeugen, wenn sich der Strom ändert (V = L dI / dT in einer Induktivität). Diese Spannungen können die Durchschlagfestigkeit des Source-Drain-Übergangs in Ihren FETs leicht überschreiten.

Um dies zu lösen, wird normalerweise eine Diode parallel zur Verbindungsstelle geschaltet, um die Spannung wie folgt in Schach zu halten:

H Brückendioden

(Bild von: http://www.modularcircuits.com/blog/articles/h-bridge-secrets/mosfets-and-catch-diodes/ )

Dies "klemmt" die Spannung am FET.

user2036607
quelle
Tut mir leid, es ist mein schlechtes. Ich vergesse es vom Bild. Für jeden der MOSFETs gibt es Flyback-Dioden zwischen Source und Drain. 1N4007 Dioden zielen in die richtige Richtung. Ich werde das Bild aktualisieren. Ich habe die Dioden an den P-Kanal-MOSFETs bereits getestet und ausgetauscht, aber die Situation ist dieselbe. :(
gOldie_E36
MOSFETs haben eingebaute Dioden, die normalerweise ausreichend sind. Der 1N4007 ist eine Niederfrequenzgleichrichterdiode, die nicht zum schnellen Schalten geeignet ist. Wenn Sie externe Dioden verwenden, sollten diese vom Schottky-Typ sein.
Bruce Abbott
MOSFEts brauchen also überhaupt keine Flyback-Dioden? Ich verwende nur ~ 490Hz. Ist das zu schnell für die 1N4007-Dioden?
gOldie_E36
1

@Autistic hat Recht mit R1 und R2 - diese Anordnung führt zu sehr langsamen Schaltzeiten bei den P-Fets. Sie können anstelle des BJT + Pullup auch eine spezielle P Fet-Treiberladepumpe verwenden.

Einige Gesundheitsprüfungen

Können Sie die Fahrsignale überprüfen? Es ist sehr wichtig, welcher FET ein- oder ausgeschaltet ist.

forward: 
p1 on    p2 off 
n1 off   n2 on

backwards: 
p1 off    p2 on 
n1 on     n2 off

brake: 
p1 off    p2 off
n1 on     n2 on

Versuchen Sie Folgendes:

  • Stoppen Sie alle PWM
  • Last abklemmen
  • Fahren Sie von Ihrem Code als: p1 ein n1 aus, warten Sie 500 ms, p1 aus n1 aus 100 ms (Totzeit), p1 aus n1 auf 500 ms, p1 aus n1 aus 100 ms (Totzeit) und wiederholen Sie den Vorgang. Dies erzeugt ein Testsignal, das leicht zu debuggen ist.
  • Jetzt soll der p1 n1-Ausgang der h-Brücke gut von GND auf 12 V umschalten. Verwenden Sie ein Zielfernrohr, um es zu testen, oder verwenden Sie auch eine kleine Glühbirne. Schließen Sie die Glühlampe zwischen GND und dem Ausgang p1 n1 an - sie muss blinken, damit p1 gut ist. Schließen Sie es an den 12V- und p1 n1-Ausgang an - es soll blinken, damit n1 gut ist.
  • Wenn Sie einen Bereich haben, überprüfen Sie, ob p1 und n1 nicht kreuzleitend sind. Wenn Sie dieses Signal überprüfen, sehen Sie in der 100-ms-Totzeit keinen anderen Wert als sauberes GND, sauberes 12V und etwas schwebendes GND.
  • Wenn Sie keinen Bereich haben, können Sie eine ziemlich große Totzeit einstellen, z. B. 500 ms - es kann nicht schaden :), aber Sie können Ihren P-Fet retten.
  • Schließen Sie jetzt Ihren Motor anstelle der Glühbirne an. Er soll wie die Glühbirne laufen und langsamer werden / anhalten. Dies überprüft, ob die Fets in Ordnung sind.

Das Problem

  • Seien Sie bei der obigen PWM-Anordnung sehr vorsichtig. Sie können Ihre Fets sehr leicht braten. Sie können die P-Seite einschalten, während Sie die N-Seite wechseln. Daher machen Sie Kurzschlüsse (kleiner oder größer - je nach Qualität Ihrer Stromquelle kann sie mit 20% PWM überleben).

Normalerweise verfügen Mikrocontroller über einen dedizierten PWM-Treiber mit 4 Ausgängen und Totbandsteuerung. Die 4 PWM-Signale können die 4 Fets ansteuern, und diese Signale werden synchronisiert und invertiert, wobei die Totzeit berücksichtigt wird. Weitere Informationen finden Sie in der PWM der PIC-Mikrocontroller. http://www.ermicro.com/blog/wp-content/uploads/2009/01/picpwm_03.jpg

Da das Arduino nicht für diesen Zweck entwickelt wurde, möchten Sie möglicherweise eine grundlegende Logik verwenden, um die richtigen PWM-Signale zu erzeugen. Ziel ist es sicherzustellen, dass n1 und p1 immer komplementär angetrieben werden, ebenso wie n2 und p2. Sie können es erhalten, indem Sie einige weitere BJTs verwenden: http://letsmakerobots.com/files/YG_H-Bridge1.jpg Dann haben Sie die zwei Pins, die Sie PWM-Laufwerk können.

Sie könnten lieber einige Logikgatter wie das folgende verwenden: https://e2e.ti.com/blogs_/b/motordrivecontrol/archive/2012/03/26/so-which-pwm-technique-is-best-part-2 und dann haben Sie einen sauberen Vorwärts- / Rückwärtsgang sowie einen PWM-Pin, der die Geschwindigkeit steuert.

Dieser Artikel ist möglicherweise eine Überprüfung wert: http://www.modularcircuits.com/blog/articles/h-bridge-secrets/h-bridge_drivers/

Gee Bee
quelle
Danke für die Antwort. Dieser Teil ist mir noch unklar: "Versuchen Sie NICHT die obige PWM-Anordnung. Es ist einfach falsch. Sie können die P-Seite nicht steuern, während Sie die N-Seite wechseln, daher machen Sie Kurzschlüsse." Ist dies immer noch gültig, wenn ich nicht die P-Seite mit PWM, sondern nur die N-Seite wechsle und wenn ich eine große Totzeit zwischen Richtungswechseln verwende? Wenn das so ist, wie?
gOldie_E36
1
Tut mir leid, dass ich das zu streng gemacht habe. Es gibt mehrere Möglichkeiten, PWM zu betreiben. Die Standardmethode besteht darin, P1 N2 von einem komplementären PWM-Ausgang und P2 N1 von einem anderen Paar komplementärer PWM-Ausgänge anzusteuern. Auf diese Weise benötigen Sie 4 pwm-Ausgänge, die alles richtig steuern. Ihre Lösung könnte funktionieren, wenn Sie sehr vorsichtig sind und den Motor nicht bremsen müssen. ZB p1 ein, n1 aus, p2 aus, n2 PWM ist eine gültige Anordnung - obwohl Sie den Motor nicht bremsen können und die endgültige Motordrehzahl von der PWM plus der mechanischen Belastung abhängt. (Wenn n2 während der PWM ausgeschaltet ist, liegt keine Antriebsspannung am Motor an.)
Gee Bee
Ich habe meine Antwort umformuliert. Wenn es sich nicht um eine Lernaufgabe handelt, würde ich die Verwendung eines fertigen H-Brücken-Controllers oder eines H-Brücken-Controllers mit externen FETs vorschlagen.
Gee Bee
0

Sind Sie sicher, dass Sie den oberen linken P-FET einschalten, wenn Sie PWM auf den unteren rechten N-FET anwenden?

Sie sollten Ihre P-FET-Ausrichtung überprüfen. Es scheint, als ob der P-FET rückwärts ist und Sie eine übermäßige Verlustleistung erhalten, wenn die P-FET-Körperdiode leitet. Messen Sie die Spannung am P-FET unter Ihren Fehlerbedingungen. Wenn Sie bei eingeschaltetem 2N2222 etwa 0,6 V am FET sehen, ist der P-FET umgekehrt. Überprüfen Sie auch die P-FET-Gate-Spannung während des Fehlerzustands, um sicherzustellen, dass sie weniger als 0,2 V sieht.

Sehen Sie immer noch den Fehlerstrom, wenn Sie Ihren Motor aus dem Stromkreis entfernen?

user2661956
quelle
Hallo, danke für deine Antwort. Ich werde die Ausrichtung noch einmal überprüfen. Das Problem ist, dass ich während der Wiedergabe eigentlich nichts tun kann, da es nur wenige Sekunden dauert, bis der MOSFET abgeschaltet ist (lautlos, ohne übermäßige Hitze). Und natürlich kostet es mich einen MOSFET :) Ohne Motor und mit 1A Netzteil habe ich allerdings viel gemessen. Wenn ich den P-FET einschalte, ist die Spannung an der Drain-Source minimal (etwa 0,01 V). Ich werde die Schaltung abends mit dem 5A-Netzteil und ohne induktive Last (Motor) erneut testen. Ich plane stattdessen nur eine Glühbirne zu verwenden.
gOldie_E36
Schalten Sie den P-FET nicht ein (fahren Sie den 2N2222 nicht an) und prüfen Sie, ob Sie beim PWM des N-FET die Strombegrenzung erreicht haben. Wenn ja, leitet die P-FET-Körperdiode. Versuchen Sie auch, Ihre Motorlast durch einen 100-Ohm-Widerstand zu ersetzen UND einen 10-Ohm-Widerstand zwischen die Stromversorgung und Ihren Stromkreis zu legen. Sie begrenzen den Strom, wenn der N-FET die P-FET-Körperdiode gegen Masse kurzschließt. Die Widerstände geben Ihnen auch Zeit, einige Messungen vorzunehmen, bevor Sie überhitzen.
user2661956
Gute Ideen zum Testen, danke. Ich habe bereits einen Widerstand zwischen dem Netzteil und der H-Brücke zum Schutz verwendet.
gOldie_E36