Wie viel Strom kann ich aus den Pins des Arduino ziehen?

Was ist die maximale Strommenge, die ich von jedem der Pins des Arduino ziehen kann, ohne eine der internen Sicherungen auszulösen? Gibt es ein Limit pro Pin sowie ein Gesamtlimit für das gesamte Board?

Antworten (5)

Das ist etwas komplex. Grundsätzlich gibt es eine Reihe von limitierenden Faktoren:

Die IO-Leitungen vom Mikrocontroller (dh die analogen und digitalen Pins) haben sowohl eine aggregierte (z. B. Gesamt-) Strombegrenzung als auch eine Begrenzung pro Pin:

Geben Sie hier die Bildbeschreibung ein
Aus dem ATmega328P-Datenblatt .

Je nachdem, wie Sie die Arduino "Pins" definieren, ist dies jedoch nicht die ganze Geschichte.

Der 5-V-Pin des Arduino ist nicht über den Mikrocontroller verbunden . Als solches kann es deutlich mehr Leistung liefern. Wenn Sie Ihr Arduino über USB mit Strom versorgen, begrenzt die USB-Schnittstelle Ihren Gesamtstromverbrauch auf 500 mA. Dies wird mit den Geräten auf dem Arduino-Board geteilt, sodass die verfügbare Leistung etwas geringer ist.
Wenn Sie eine externe Stromversorgung über den Hohlstromanschluss verwenden, sind Sie durch den lokalen 5-V-Regler begrenzt, der für maximal 1 Ampere ausgelegt ist . Dies ist jedoch auch thermisch begrenzt , was bedeutet, dass sich der Regler beim Ziehen von Strom erwärmt. Wenn es überhitzt, wird es vorübergehend abgeschaltet.

Der geregelte 3,3-V-Ausgang kann maximal 150 mA liefern, was die Grenze des 3,3-V-Reglers darstellt.


In Summe

  • Das absolute Maximum für jeden einzelnen IO-Pin beträgt 40 mA ( dies ist das Maximum . Sie sollten niemals volle 40 mA aus einem Pin ziehen. Im Grunde ist dies der Schwellenwert, bei dem Atmel nicht mehr garantieren kann, dass der Chip nicht beschädigt wird. Sie sollten immer sicherstellen, dass Sie diese Stromgrenze sicher unterschreiten . )
  • Der Gesamtstrom aller IO-Pins zusammen beträgt max. 200 mA
  • Der 5-V-Ausgangspin ist gut für ~400 mA bei USB, ~900 mA bei Verwendung eines externen Netzteils
    • Die 900 mA sind für einen Adapter, der ~ 7 V liefert. Mit zunehmender Adapterspannung steigt auch die Wärmemenge, mit der der Regler umgehen muss, sodass der maximale Strom mit zunehmender Spannung abfällt. Dies wird als thermische Begrenzung bezeichnet
  • Der 3,3-V-Ausgang kann 150 mA liefern .
    • Hinweis – Jeglicher Strom, der von der 3,3-V-Schiene gezogen wird, muss durch die 5-V-Schiene fließen . Wenn Sie also ein 100-mA-Gerät am 3,3-V-Ausgang haben, müssen Sie es auch mit dem 5-V-Gesamtstrom verrechnen.

Hinweis: Dies gilt nicht für den Arduino Due, und es gibt wahrscheinlich einige Unterschiede für den Arduino Mega. Dies gilt wahrscheinlich im Allgemeinen für jeden Arduino, der auf dem ATmega328-Mikrocontroller basiert.

Schöne Zusammenfassung! Denken Sie daran, dass der maximale Strom an einem Pin zwar 40 mA beträgt, dies jedoch das absolute Maximum ist. Und wie das Datenblatt sagt, kann der Betrieb am absoluten Maximum schädlich sein. Generell wird eine Begrenzung auf <35mA empfohlen.
Der Due verfügt über eine Ladungspumpe zur Versorgung der Kernspannung, die nicht direkt als Pin freiliegt, sondern angelötet werden könnte.
Tatsächlich gibt es DREI einschränkende Faktoren, die beiden in der obigen Antwort aufgeführten sowie die Tatsache, dass das Datenblatt besagt, dass die Summe aller Ströme, die von den Ports C0-C5, D0-D4, ADC7 und RESET bezogen werden, 150 mA nicht überschreiten sollte. Ebenso sollte der Gesamtstrom, der für die Ports B0-B5, D5-D7, ADC6, XTAL1, XTAL2 bezogen wird, 150 mA nicht überschreiten. Was die Stromsenke betrifft, sollte die Summe der Ports C0-C5, ADC7, ADC6 100 mA nicht überschreiten; die Summe der Ports B0-B5, D5-D7, XTAL1, XTAL2 sollte 100mA nicht überschreiten; und die Summe der Ports D0-D4, RESET sollte 100mA nicht überschreiten. Das steht alles im Datenblatt.
An die Person, die in einer Bearbeitung vorgeschlagen hat, dass die 3,3-V-Schiene vom FT232 stammt, ist dies in keiner der Versionen des Boards, die ich mir angesehen habe, der Fall.
Welche Komponente würden Sie normalerweise verwenden, um mehr als 40 mA bei hohen Frequenzen (500 Hz oder so?) Mit einem Datapin zu schalten? Ich habe mir Demux angesehen, aber sie haben auch eine ziemlich niedrige maximale Stromstärke?
arduino.stackexchange.com/a/24546/6628 ist eine interessante Antwort darauf, was passiert, wenn Sie 40 mA, einen Innenwiderstand von 25 Ohm an den Pins und Überlegungen zum Arbeitszyklus überschreiten. Zusammengenommen können höhere Ströme für kurze Zeiträume, z. B. das Laden eines MOSFET-Gates über einen 10-Ohm-Widerstand, oder PWM mit niedrigem Arbeitszyklus in der Lage sein, höhere Momentanströme ohne übermäßige Hitze zu bewältigen.

Was ist die maximale Strommenge, die ich von jedem der Pins des Arduino ziehen kann, ohne eine der internen Sicherungen auszulösen ?

Es gibt nur eine Sicherung auf den Arduino-Boards. Am USB-Anschluss befindet sich eine rücksetzbare Polyfuse , die den Strom ab 500 mA begrenzt. Diese Sicherung ist nur wirksam, wenn sie über USB mit Strom versorgt wird, und nur dann, wenn die Gesamtentnahme auf der 5-V-Schiene mehr als 500 mA beträgt. (Beachten Sie, dass diese Art von Sicherung nicht einfach "durchbrennt".)

Wenn Sie zu viel Strom (40 mA oder mehr) von einem I/O-Pin ziehen, wird der Pin beschädigt. Es gibt keine Sicherungen an den I/O-Pins.

haben die Nano- und die Micro-Boards diese Polyfuse auch? Hier heißt es, der Nano habe keine Polyfuse (und damit keinen Strombegrenzer am 5V-Pin)

Die maximalen Stromwerte sind hier für den Uno, Duemilanove aufgelistet:

Gleichstrom pro I/O-Pin: 40,0 mA

Gleichstrom pro VCC- und GND-Pins: 200,0 mA

Gesamt-DC-Strombegrenzung für alle IO-Pins zusammen: 200 mA

Beachten Sie, dass der Arduino mehr Strom aufnehmen kann, wenn mehr als ein VCC/Vin/GND-Pin vorhanden ist. (Jeder Pin entspricht einem Pin am ATMega328)

Diese scheinen für die meisten Arduinos mehr oder weniger Standard zu sein, da diese aktuellen Einschränkungen für den Mikrocontroller gelten.

Haben Sie eine Idee für Arduino Nano, Gleichstrom per VCC und GND-Pins: ??? mA

Gemäß dem v2.3-Schema ist der Arduino Nano 3.3v-Regler der FTDI-USB-zu-Seriell-IC. Das hat eine maximale Stromstärke von 50mA.

Wenn Sie sich die Schaltpläne für den Nano ansehen, können Sie sehen, dass der 3,3-V-Pin vom FT232RL-Chip bereitgestellt wird. Laut Datenblatt kann dieser Pin maximal 50 mA liefern.

Um Ihr Modul zu betreiben, müssen Sie eine externe 3,3-V-Versorgung bereitstellen. Möglicherweise von einem 3,3-V-LDO-Regler bereitgestellt, der über den 5-V-Pin gespeist wird, der entweder vom USB oder vom 5-V-Regler, einem UA78M05 , gespeist wird, die beide maximal 500 mA betragen (abzüglich des vom Nano benötigten Stroms).

Umdenken: Ich glaube, ich könnte einfach den 5-V-Pin mit einem Spannungsteiler (2 Widerstände) verwenden, um die Spitze von ~ 250 mA zu erhalten, die ich bei 3,3 V benötige.
Du überdenkst falsch. Spannungsteiler können keine großen Ströme liefern. Sie sind nur für sehr kleine Ströme (Referenzspannungen) geeignet.
Wusste ich nicht - du hast mir viel Zeit und Ärger erspart. Danke.
Für diejenigen, die diese spezielle Antwort in Zukunft sehen: Dies war eine Antwort auf eine andere Frage, die sich speziell auf den 3v3-Pin im Arduino Nano bezieht. Ein Administrator hat beschlossen, diese Frage hier zusammenzuführen (wodurch eine ausgezeichnete Antwort auf die ursprüngliche Frage in eine unvollständige Antwort auf die Frage umgewandelt wurde, in die sie verschoben wurde).