Die obige Schaltung wird verwendet, um einen 48-Volt-1000-Watt-Motor "MY1020" unter Verwendung einer High-Side-Treiberkonfiguration anzutreiben. 48 Volt werden mit 4 in Reihe geschalteten versiegelten Bleibatterien erreicht, und die 12-V-Batterie stammt von einer der 4 Batterien.
Die Datenblätter der verwendeten Komponenten lauten:
Leistungs-MOSFET: IRF3205
http://www.irf.com/product-info/datasheets/data/irf3205.pdf
High- und Low-Side-Treiber: IR2110
http://www.infineon.com/dgdl/ir2110.pdf?fileId=5546d462533600a4015355c80333167e
Pin 10 ( HIN ) im IR2110 ist mit Arduinos PWM- Pin 9 verbunden. Pin 9 erzeugt ein PWM-Signal mit einer eingestellten Frequenz von 22 kHz und es wird ein Code geschrieben, um die Schaltung zu testen. Der Code beginnt mit einem Arbeitszyklus = 30 %, was 4 Volt entspricht, was der Schwellenwert des MOSFET ist, und erhöht allmählich den Arbeitszyklus = 90 %, was 10,8 Volt entspricht.
Der Code:
/* The code changes the PWM frequency of the Arduino
* and increases the gate voltage of the transistor
* from 4 Volts(30% Duty cycle) to 10.8 volts (90% Duty cycle)
* with a step of 0.5 Volts every 2 seconds. The process is repeated.
*/
#include <PWM.h>
int32_t freq= 22000; //PWM frequency = 22KHz
int x=85; // Initial Duty Cycle=30% at x=85
void setup() {
InitTimersSafe();
SetPinFrequencySafe(9, freq);
}
void loop() {
while(x<230) // Duty cycle =90% at x=230
{
analogWrite(9,x); // pin 9 is connected to pin : HIN
delay(2000); // delay for 2 seconds
x+=10; // step by 0.5 Volts
}
x=85; // x is reset to 85 to repeat the process again
}
Ich habe die Schaltung mit diesem Code ausprobiert und hier ist das Problem. Der Motor beginnt erwartungsgemäß mit niedriger Drehzahl und erhöht sich allmählich. Der Motor sollte 14 Geschwindigkeitsschritte durchlaufen, da (230-85)/10 = 14,5 = ~ 14 Schritte. Ungefähr im 4. Schritt stieg die Geschwindigkeit sofort auf ihr Maximum an, als würde man den Motor mit einer Batterie kurzschließen. Ich habe mit dem Multimeter einen Durchgangstest am IRF3205 durchgeführt und festgestellt, dass die Drain- und Source- Anschlüsse kurzgeschlossen sind.
Ich habe die gleiche Schaltung früher an einem kleinen 12-V-Motor getestet und sie lief in verschiedenen Arbeitszyklusbereichen und PWM-Frequenzen einwandfrei.
Was könnte das Problem sein? Die Vds- Bewertung des MOSFET beträgt 55 Volt und die Batterien 48 Volt. Kann dies zu viel für den MOSFET sein, vorausgesetzt, an meinem Wohnort werden minderwertige Komponenten verkauft? Gibt es ein Problem im Treiber? Sind die Inkremente der Gate-Spannung pro Arduino -Ausführungszeit dV/dT zu hoch?
Für ein Bild aus dem wirklichen Leben; hier der Prüfstand:
55 V ist eine gefährlich niedrige Vds-Bewertung bei einer 48-V-Versorgung.
Wählen Sie Vdsmax wenn möglich bei doppeltem Vsupply und versuchen Sie es zumindest mit 25% + und mehr ist besser. Wahrscheinlich NICHT das Hauptproblem, aber marginal.
Das Fehlen einer Anti-Spike-Diode würde leicht ausreichen, um den FET-Tod zu verursachen, wenn dies allein für Zwecke der Absorption von induktiven Spitzen erforderlich wäre.
ABER in dieser Anwendung spielt es eine andere wichtigere Rolle. Beim Antrieb eines Gleichstrommotors muss der Motorstrom zirkulieren können, wenn der FET-Schalter ausgeschaltet ist.
In üblicheren Fällen kann die Diode, wenn sie zur Unterdrückung von Spitzen verwendet wird, unter Iload bewertet werden, da die Diode nur für einen kleinen Prozentsatz des Zyklus Strom leitet. Sehen Sie sich das Datenblatt der Diode zur Leistungsminderung bei einem Arbeitszyklus von nicht 100 % an.
Während es "Ihr Glück herausfordern" wäre, ist dies möglich
Der FET ist gut, ABER beachten Sie, dass bei 20 A + Datenblatt Abb. 1 zeigt, dass bei kaltem FET Vds = sagen wir 0,15 A = 3 W Verlustleistung bei 20 A,
aber wenn er heiß ist (175 ° C-Übergang) Vds ~ = nahe 0,3 V und diese sind TYPISCH und nicht Worst-Case-Kurven, UND beachten Sie, dass die Diagramme für 20-US-Impulse gelten. In realen Situationen beträgt Rdson manchmal 2 x Rdson bei 25 ° C und normalerweise 10-20% mehr.
Sagen wir also 0,4 V Vds x 20 A = 8 W.
Ihr Testkühlkörper scheint im Bereich von 10-20 C / W zu liegen, sodass die FET-Temperatur beispielsweise um 8 W x 10-20 = 80-160 C über die Umgebungstemperatur ansteigen kann.
Ist es in der Praxis heiß geworden?
Rthjc beträgt 0,75 C/W, das ist also kein Problem, wenn es gut gekühlt wird.
Ihr Kommentar zum Ansteuern des FET scheint ein Missverständnis darüber widerzuspiegeln, wie die Schaltung funktionieren wird. Du sagst:
„Der Code beginnt mit einem Tastverhältnis von 30 %, was 4 Volt entspricht, dem Schwellenwert des MOSFET, und erhöht allmählich das Tastverhältnis von 90 %, was 10,8 Volt entspricht.“
Wenn Sie sich auf das beziehen, was der MOTOR "sieht", ist dies ungefähr richtig, ABER der Ausdruck "was die Schwelle des MOSFET ist" deutet darauf hin, dass Sie daran denken, dass Vgate ein analoger Pegel ist. Es ist nicht. Wenn dies der Fall wäre, würde der FET bei niedrigen PWM-%-Arbeitszyklen nicht vollständig verbessert, und Rdson wäre hoch und die Verlustleistung wäre für einen kurzen Zeitraum enorm 0.
Das passiert NICHT.
Jeder PWM + ve-Ausgangsimpuls führt dem MOSFET eine volle Gate-Ansteuerung zu - hier nominell 12 V, aber wahrscheinlich im Bereich von 19 bis 12 V. Der FET schaltet bei jedem PWM-Tastverhältnis % vollständig ein, wobei Ton >> FET-Einschaltzeit ist.
Der Motor "sieht" eine durchschnittliche Spannung von etwa V + _motor x PWM%, aber das FET-Gate sieht immer Vdrive max oder 0.
Dies würde für die Gate-Spannung eher zutreffen, wenn ein gs-Kondensator vorhanden wäre und die PWM auf Gleichstrom geglättet würde. Der FET würde dann im linearen Modus arbeiten und bei niedrigem PWM% eine sehr hohe Verlustleistung erfahren, da Vgsdc niedrig und Rdson hoch ist und ...!
.
user_1818839
Spannungsspitze
Tony Stewart EE75
Tony Stewart EE75
Tony Stewart EE75
Khaled Ismail
Tony Stewart EE75
Khaled Ismail
Khaled Ismail
Tony Stewart EE75