Wie viel Strom kann ich von den Stiften des Arduino ziehen?

Antworten:

91

Das ist ein bisschen komplex. Grundsätzlich gibt es eine Reihe von einschränkenden Faktoren:

Die E / A-Leitungen vom Mikrocontroller (dh die analogen und digitalen Pins) haben sowohl eine Gesamtstrombegrenzung (z. B. Gesamtstrombegrenzung) als auch eine Begrenzung pro Pin:

Bildbeschreibung hier eingeben
Aus dem ATmega328P Datenblatt .

Abhängig davon, wie Sie die Arduino "Pins" definieren, ist dies jedoch nicht die gesamte Geschichte.

Der 5V-Pin des Arduino ist nicht über den Mikrocontroller angeschlossen . Als solches kann es wesentlich mehr Energie liefern. Wenn Sie Ihren 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 ein externes Netzteil verwenden, sind Sie über den Gehäusestromversorgungsstecker 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 aufheizt, wenn Sie Strom ziehen. Wenn es überhitzt, wird es vorübergehend heruntergefahren.

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 einen einzelnen E / A-Pin beträgt 40 mA ( dies ist das Maximum . Sie sollten eigentlich nie volle 40 mA von einem Pin abziehen. Grundsätzlich ist dies die Schwelle, bei der Atmel nicht mehr garantieren kann, dass der Chip nicht beschädigt wird. Sie sollten immer sicherstellen, dass Sie sicher unter dieser Stromgrenze sind. )
  • Der Gesamtstrom aller IO-Pins zusammen beträgt max. 200 mA
  • Der 5-V-Ausgangspin ist für ~ 400 mA bei USB und ~ 900 mA bei Verwendung eines externen Netzteils geeignet
    • Die 900 mA sind für einen Adapter vorgesehen, der ~ 7V liefert. Mit zunehmender Adapterspannung steigt auch die Wärmemenge, mit der der Regler umgehen muss, sodass der maximale Strom mit zunehmender Spannung abnimmt. Dies nennt man thermische Begrenzung
  • Der 3,3-V-Ausgang kann 150 mA liefern .
    • Hinweis - Jegliche Stromaufnahme von der 3,3-V-Schiene muss über die 5-V-Schiene erfolgen . Wenn Sie also ein 100 mA - Gerät auf dem 3,3V - Ausgang haben, müssen Sie auch gegen den 5 V Summenstrom zählen.

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

Connor Wolf
quelle
2
Schöne Zusammenfassung! Beachten Sie, 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 mit dem absoluten Maximum schädlich sein. Es wird allgemein empfohlen, auf <35 mA zu beschränken.
Baldengineer
Der Due verfügt über eine Ladungspumpe zur Versorgung der Kernspannung, die nicht direkt als Stift freiliegt, sondern an die gelötet werden könnte.
Naven87
6
Es gibt tatsächlich DREI einschränkende Faktoren, die beiden in der obigen Antwort aufgeführten sowie die Tatsache, dass das Datenblatt besagt, dass die Summe aller von den Ports C0-C5, D0-D4, ADC7 und RESET kommenden Ströme 150 mA nicht überschreiten sollte. Ebenso sollte der für die Ports B0-B5, D5-D7, ADC6, XTAL1, XTAL2 bereitgestellte Gesamtstrom 150 mA nicht überschreiten. Was die Stromsenke betrifft, sollte die Summe der Ports C0-C5, ADC7, ADC6 100 mA nicht überschreiten. Die Summe der Anschlüsse B0-B5, D5-D7, XTAL1, XTAL2 sollte 100 mA nicht überschreiten. und die Summe der Ports D0-D4, RESET sollte 100mA nicht überschreiten. Dies ist alles im Datenblatt aufgeführt.
Für die Person, die in einer Bearbeitung vorgeschlagen hat, dass die 3,3-V-Schiene vom FT232 stammt, ist dies in keiner der von mir betrachteten Versionen der Platine der Fall.
Connor Wolf
8

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

Gleichstrom pro E / A-Pin: 40,0 mA

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

Gesamtgleichstrombegrenzung für alle E / A-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.

Manishearth
quelle
8

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

Auf den Arduino-Platinen befindet sich nur eine Sicherung. Am USB-Anschluss befindet sich eine rücksetzbare Sicherung, die den Strom ab 500 mA begrenzt. Diese Sicherung ist nur wirksam, wenn sie über USB mit Strom versorgt wird und wenn der Gesamtstrom 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 E / A-Pin ziehen, wird der Pin beschädigt. An den E / A-Pins befinden sich keine Sicherungen.

Baldengineer
quelle
1
Haben die Nano- und die Micro-Platine auch diese Polyfuse? Hier heißt es, der Nano habe keine Polyfuse (und damit keinen Strombegrenzer am 5-V-Pin)
eadmaster 16.10.17
2

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

Passant
quelle
2

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

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

Majenko
quelle
Umdenken: Ich glaube, ich könnte einfach den 5-V-Pin mit einem Spannungsteiler (2 Widerstände) verwenden, um die ~ 250-mA-Spitze zu erhalten, die ich bei 3,3 V benötige.
Rufo
4
Du denkst falsch. Spannungsteiler können keine großen Ströme liefern. Sie sind nur für sehr kleine Ströme (Referenzspannungen) bestimmt.
Majenko
Das wussten Sie nicht - Sie haben mir viel Zeit und Ärger erspart. Vielen Dank.
Rufo
1
Für alle, die diese spezielle Antwort in Zukunft sehen: Dies war eine Antwort auf eine andere Frage, die speziell mit dem 3v3-Pin im Arduino Nano zusammenhängt. Ein Administrator hat beschlossen, diese Frage hier zusammenzuführen (und dabei eine hervorragende Antwort auf die ursprüngliche Frage in eine unvollständige Antwort auf die Frage umzuwandeln, in die verschoben wurde).
Rufo