So treiben Sie eine niederohmige Last mit Arduino und einem Transistor an

Ich baue ein Gerät, das mit einem kleinen 3,7-V-Lipo-Akku betrieben wird. Es wird auf 3,3 Volt heruntergeregelt und versorgt einen Arduino Mini mit Strom. Das Arduino muss für etwa eine halbe Sekunde eine induktive Last einschalten. Die Induktivität hat nur 5 Ohm Widerstand. Der Lipo-Akku liefert beim direkten Anschluss ausreichend Strom. Ich habe versucht, einen einfachen NPN-Transistorschalter herzustellen, um die Last mit dem Arduino-Signal zu aktivieren. Ich verwende direkten ungeregelten Strom von der Batterie durch die Last in den BJT-Kollektor, aber bisher haben die meisten Transistoren das Schalten des erforderlichen Stroms nicht ermöglicht. Wenige Komponenten sind erforderlich, da dieses Gerät klein sein muss

Wahrscheinlich besser dran, einen digitalen MOSFET (niedrige Gate-Spannung) zu verwenden
Sie sind anscheinend auf dem richtigen Weg, aber Sie benötigen einen MOSFET, wie von Jim erwähnt.

Antworten (3)

Ich stimme zu, dass der Arduino eher in der Lage sein wird, einen MOSFET-Transistor in die Sättigung zu treiben, aber ich denke nicht, dass dies das einzige Problem ist. Sobald Sie den Transistor zum Einschalten bringen, wird die große Stromaufnahme dazu führen, dass die Batteriespannung unter die vom Arduino benötigten 3,3 V fällt. Dies veranlasst den Arduino, den Transistor auszuschalten. Dann erholt sich die Batteriespannung, der Arduino wird zurückgesetzt und der gesamte Vorgang wiederholt sich immer und immer wieder ...

Messen Sie die tatsächliche Spannung über der Batterie, wenn diese an die induktive Last angeschlossen ist. Wenn es hoch genug bleibt (3,3 V + Abfall des Spannungsreglers), ersetzen Sie den NPN durch einen MOSFET und leben Sie ein langes und glückliches Leben. Wenn nicht, dann haben Sie noch mehr zu tun.

Sie haben nicht gesagt, was die induktive Last ist, aber ich vermute, dass es etwas Mechanisches wie ein Relais oder ein Solenoid ist, die alle ein ähnliches elektrisches Verhalten haben. Das erste, was man über sie verstehen muss, ist, dass sie eine gewisse Mindeststrommenge benötigen, um sie zu betreiben. Die volle Batteriespannung ist möglicherweise nicht erforderlich, um diese Mindeststrommenge durch sie zu leiten.

Die naheliegendste Lösung ist ein Vorwiderstand. So wie es aussieht, wird der Strom (nach dem induktiven Transienten) nur durch den 5-Ohm-Widerstand der Last begrenzt. Fügen Sie mehr Widerstand hinzu, um den Strom zu senken. Wenn Sie Glück haben, gibt es einen zusätzlichen Widerstandswert, der immer noch genug Strom zum Betreiben der Last zulässt, aber nicht so viel, um die Batteriespannung unter das zu senken, was erforderlich ist, um den Arduino am Leben zu erhalten.

Die ausgefeiltere Lösung besteht darin, den Arduino zu verwenden, um den Transistor zu PWM, um den erforderlichen Strom aufrechtzuerhalten. Dazu müssen Sie eine Freilaufdiode über der Last hinzufügen. Diese werden manchmal als Klemm- oder Flyback-Dioden bezeichnet, aber ich habe sie in diesem Fall als Freilaufdiode bezeichnet, weil sie es dem Induktor ermöglicht, weiter zu leiten, nachdem der Transistor ausgeschaltet ist. Es lässt den Transistor wie in der Abbildung rechts freilaufen.

Geben Sie hier die Bildbeschreibung ein

Die Idee ist also, Sie verwenden den Arduino, um den Transistor bei etwa 10 kHz (PWM) ein- und auszuschalten und das Tastverhältnis so einzustellen, dass der Strom nur so hoch ist, wie er durch das Relais oder den Magneten oder was auch immer fließen muss induktive Last ist.

Der nächste Entwicklungsschritt ist die Implementierung eines sogenannten Peak-and-Hold-Controllers. Dies nutzt die Tatsache aus, dass Relais und Solenoide normalerweise einen großen Strom benötigen, um sie zu betätigen, aber dann vergleichsweise weniger Strom, um sie zu halten. In Ihrem Fall müssen Sie die Last etwa eine halbe Sekunde lang aktiviert halten, aber je nach Gerät können Sie den Strom wahrscheinlich nach einem kleinen Bruchteil dieser Zeit reduzieren. Mit dem PWM-Controller reduzieren Sie einfach das Tastverhältnis nach beispielsweise 100 ms, um den Strom zu reduzieren.

Die tatsächlichen Ströme und Zeiten müssen aus Datenblättern oder Experimenten oder beidem bestimmt werden.

Für diese Art von Anwendung benötigen Sie einen FET mit niedriger Gate-Schwelle. Wenn Sie aus dem 'Logic Level FET'-Sortiment auswählen, sind Sie nicht weit davon entfernt.
Hier ist zum Beispiel das Datenblatt für einen PHP32N06LT: http://www.nxp.com/documents/data_sheet/PHP_PHB_32N06LT.pdf

Der VGS (Schwellenwert) für dieses Gerät liegt garantiert unter 2,5 V und dies ist in Abbildung 6 zu sehen. Es zeigt, dass Sie Ihren erforderlichen ID-Strom mit einem direkten logischen Antrieb von entweder 3,3 oder 5 V Mikroprozessor I/ O Häfen.

Vergessen Sie nicht, eine Diodenklemme über Ihre induktive Last zu legen.

Sie haben nur 3,7 V zur Verfügung und die Last will 740 mA ziehen. In diesem Fall ist es besser, einen FET zu verwenden. Ein gutes Beispiel, das direkt von einem 5-V- oder 3,3-V-Logikausgang angesteuert werden kann, ist der IRLML2502. Hier ist die Schaltung:

Es gibt eine Reihe von FETs, die einen angemessen niedrigen R dson mit 3,3 V Gate-Ansteuerung haben. Dieses Beispiel hat maximal 80 mΩ bei 2,5 V Gate-Ansteuerung. Bei 740 mA fallen nur 59 mV oder 1,6 % der Gesamtspannung ab. Es wird max. 44 mW abführen.

Beachten Sie die Diode. Es ist nicht optional. Sein Zweck besteht darin, dem Induktorstrom einen Platz zu geben, an den er unmittelbar nach dem Abschalten des FET gehen kann. Andernfalls würde der Induktor die Spannung erzeugen, die erforderlich ist, um den Strom kurzfristig aufrechtzuerhalten. Das würde ausreichen, um den FET zu braten.