Stromversorgung eines Raspberry Pi Zero über einen MOSFET

Ich habe einen Raspberry Pi Zero, den ich per Code ein- und ausschalten möchte, also habe ich diese Schaltung gemacht:

Schema

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Ich möchte vermeiden, den Raspberry Pi direkt über die GPIO-Pins mit Strom zu versorgen, also habe ich ein Micro-USB-Kabel zerhackt und seine 5 V an meine Stromversorgung angeschlossen (später wird es eine Batterie sein, aber jetzt ist es ein Telefonladegerät). Der Rest meiner Schaltung wird ebenfalls über dieselbe Stromversorgung mit Strom versorgt. Das Signal zum Gate wird von einem anderen Mikrocontroller geliefert, der ebenfalls mit 5 V arbeitet. Ich habe eine LED hinzugefügt, nur um bei der Fehlersuche zu helfen.

Wenn ich das 5-V-Signal am Gate anlege, leuchtet die LED, dann stecke ich den Micro-USB in den PWR-Steckplatz des Raspberry Pi und die LED erlischt. Unnötig zu erwähnen, dass der Raspberry Pi nicht hochfährt. Wenn ich es eingesteckt lasse, blinkt die LED nach etwa 5 - 10 Sekunden sehr schnell, und wenn ich den Raspberry Pi ausstecke, leuchtet die LED nach der gleichen Zeit wieder auf.

Ich habe die Versorgungsspannung in der Schaltung gemessen, während der Raspberry Pi eingesteckt ist und sie bleibt bei 5 V. Ich habe auch die Spannung am Gate gemessen, die 5 V ohne eingesteckten Raspberry Pi beträgt und auf 0 V abfällt (20 mV bis 150 mV). , ich weiß nicht, ob das ein Problem mit meinem Multimeter oder so ist), sobald ich es einstecke.

Die Masse des Raspberry Pi ist nur über den MOSFET mit der Schaltungsmasse verbunden, obwohl es I²C- und SPI- Verbindungen zu anderen Geräten gibt, von denen ich nicht sicher war, ob sie funktionieren würden, und etwas, das ich zu testen hoffte, ohne zu wissen, dass ich es nicht tun würde sogar in der Lage sein, den Raspberry Pi einzuschalten. Ich erwähne das, weil ich versuche, so erschöpfend wie möglich zu sein, um jedem zu helfen, der bereit ist, mir zu helfen.

Kommen die 5V an R2 von V1? Es sollte durchgehend bei 5 V bleiben. In der Zwischenzeit funktioniert das Schalten der niedrigen Seite (Masse) für Stromunterbrechungen oder immer verbunden nicht.
@jay ja, alles wird aus einer einzigen Versorgung gespeist.
Das Schalten von GND ist keine gute Möglichkeit, die Stromversorgung nachgeschalteter Dinge zu steuern. Obwohl Sie dies möglicherweise zum Laufen bringen, geht es irgendwie ins Gelände. Sie wären IMO viel besser dran, wenn Sie einen P-Kanal-FET verwenden und die High-Side-VCC schalten. Benötigen Sie weitere Einzelheiten?
Genau, sehe ich jetzt, "Tor geht auf Null". Unter der Annahme, dass die Erdung fest ist, besteht die Möglichkeit: R2 >> R1, Mikro-USB-Masse <-> durch eine andere Schaltung <-> an Masse Ort von Pi. Inzwischen, Sobald Sie die Masse abschalten, verliert die Steuereinheit den Bezug (GND) zu Pi, leckt durch die High-Side und das Signal. Wenn sie mit Masse verbunden werden, funktioniert der Schalter überhaupt nicht oder intermittierend (AC /Kappe Kupplung), Masse nicht wechseln.
@RandyNuss Ich habe versucht, ein Hochseitenschalten wegen des höheren (2x, 3x) Einschaltwiderstands zu vermeiden. Anscheinend werde ich darauf zurückgreifen, was in Bezug auf den Stromverbrauch immer noch besser ist als Relais. Ich werde sicherlich Fragen stellen, wenn ich wieder nicht weiterkomme. Danke!
@jay Ich verstehe diesen Teil nicht <-> durch eine andere Schaltung <-> auf Masse , R1 ist direkt mit GND verbunden, was auch USB-GND ist? Bilden R1 und R2 nicht einen Spannungsteiler, der angeblich 5 V an das Gate liefert, anstatt gegen Masse kurzzuschließen?
@php_nub_qq Das war zu verstehen, wie das Gate 0 V gemessen wurde. Es geht von mehreren Faktoren und einer hypothetischen Situation aus; R2 musste hoch sein und die Stromquelle und M1-Masse sind lose, die Last (pi) hat eine alternative Masseverbindung zur Stromquelle. Dann stellen R1, M1 Body-Diode und die Last einen Strompfad her.
@RandyNuss Das Umschalten von GND ist nach Möglichkeit durchaus sinnvoll, oder? Wir tun es die ganze Zeit. Bei komplexen Geräten mit vielen Ein- und Ausgängen ist dies jedoch oft nicht möglich.
@user253751 Ich stimme deinem Kommentar zu 100 % zu. In diesem Fall wurden andere Busse und Komplexitäten erwähnt, die nicht vollständig erklärt wurden, weshalb ich lediglich versucht habe, OP von der GND-Umschaltung wegzulenken. Es sind viele Low-RDs-ON-P-Kanal-MOSFETs verfügbar, sodass Verluste bei der Verwendung eines High-Side-Schalters kein Problem darstellen sollten. Aber wie Sie sagen, ist das GND-Schalten eine absolut gültige Methode, um eine gut verstandene Last zu schalten.
Gibt es einen Grund, warum Sie dies mit einem MOSFET und nicht mit einem Halbleiterrelais tun?

Antworten (3)

Ich habe versucht zu verstehen, was Ihre Schaltung tut, aber ich konnte es nicht. Ich verstehe, was Sie erreichen wollen.

Zuerst müssen Sie die Masse der Versorgung mit der Masse von Pi verbinden. Grundsätzlich muss Masse direkt angeschlossen werden, damit alle anderen Spannungen relativ dazu sind (da die Spannung an sich relativ ist und "relativ zur Masse" nur die Standardinterpretation davon ist).

Zweitens benötigen Sie einen einzelnen P-Kanal-Mosfet als High-Side-Schalter.

Die Schaltung sieht so aus:Geben Sie hier die Bildbeschreibung ein

Wobei R Ihre 10.000/20.000/100.000 ist; Sie haben auch einen winzigen Widerstand entlang der Gate-Steuerung, also platzieren Sie ihn auch dort; Laden ist Ihr Pi. Beachten Sie auch, dass der Pullup R über die 5 V des gleichen Micro-USB mit Strom versorgt wird.

Habe ein weiteres Bild einer identischen Schaltung gefunden (+5V ist Ihr Micro-USB 5V, Masse wie immer miteinander verbunden; ignorieren Sie die Flyback-Diode, sie schützt vor Spannungsspitzen für induktive Lasten, irrelevant für pi):

Geben Sie hier die Bildbeschreibung ein

Und Sie können die LED-Diode vor oder nach dem MOSFET mit Strom versorgen; Wenn Sie es nach dem MOSFET mit 5 V versorgen, ist es eine Ein / Aus-Anzeige, wenn es sich vor dem Mosfet befindet, ist es immer eingeschaltet, wenn das Kabel selbst mit Strom versorgt wird.

BEARBEITEN: Wenn Sie eine Hochspannungsschiene mit Niederspannungslogik steuern möchten, müssen Sie 2 Mosfets verwenden. Hier ist eine Standardschaltung, die Sie in jedem Telefon oder Laptop finden können, die genau das tut (n-Kanal steuert das Gate des p-Kanals, ohne Ihre 5 V direkt mit 12 V zu verbinden; wo Sie hier "5 V" sehen, sollten 12 V und GPIO sein ist, nun ja, Ihr GPIO, kann 5 V oder 3,3 V oder irgendetwas sein, solange N-Kanal-Mosfet betrieben werden kann):

Geben Sie hier die Bildbeschreibung ein

Ich konnte nicht genau verstehen, warum es sich nicht einschaltet, aber okay, ich werde es mit High-Side-Switching versuchen. Nur eine kurze Frage: Wenn die Versorgungsspannung 12 V beträgt, könnte ich sie nicht direkt versenken, wie in Ihren Schaltplänen gezeigt, oder?
Und noch eine kurze Frage, warum brauche ich einen Pull-up-Widerstand, wird mein Pin nicht als Ausgang konfiguriert und liefert das 5-V-Signal (HIGH)?
Was den Pullup betrifft, ja, wenn Sie den Pin aktiv hoch oder niedrig fahren, brauchen Sie keinen Pullup. Und wenn Sie es mit 12 V versorgen, benötigen Sie P-MOSFET + N-MOSFET (Niederspannungssignal steuert Hochspannungssignal)
Bearbeitetes Beispiel in
Was Pullup angeht, werde ich eine kleine Ergänzung machen, vielleicht möchten Sie immer noch einen haben, da er den Standardzustand für die Leitung festlegt und verhindert, dass sie während des Starts schwebt oder nur wenn Ihr GPIO, der sie steuern soll, nicht darauf eingestellt ist Ausgabe (noch). Eine gute Praxis, um einen Standardzustand festzulegen. Es verbraucht kaum Strom, aber wenn Sie auf Mikroampere abzielen, sollten sogar 100k gut funktionieren
Ich habe es gerade verkabelt und es funktioniert einwandfrei. Ich habe einen IRF9540 und er erwärmt sich nicht einmal leicht, was großartig ist. Der uC-Pin zieht keinen Strom, richtig? Sollte ich dies bei der Berechnung des Senkenstroms über den gesamten Chip berücksichtigen?
Technisch gesehen muss alles, was versenkt / bezogen wird, durch Ihren Pullup- oder Pulldown-Widerstand gehen, der wahrscheinlich nicht weniger als 10 k beträgt, was bedeutet, dass er weit unter einem halben Milliampere oder weniger liegt. Sie können ihn für diese Berechnungen getrost ignorieren. Wenn Sie einen Pullup haben, sinken Sie, wenn der Ausgang niedrig ist, und wenn Sie einen Pulldown haben, liefern Sie, wenn Sie hoch ausgeben (da der Widerstand zwei Punkte mit unterschiedlicher Spannung verbindet, muss also Strom vorhanden sein).

Wenn viele gemeinsame Erdungen mit E/A-Kabeln, Strom und Peripheriegeräten vorhanden sind, benötigen Sie einen High-Side-Schalter mit mehr Kapazität als Ihre Last.

Dies kann ein einzelner Chip oder die Umkehrung Ihres Designs sein.

Ich denke, es gibt eine Diskrepanz zwischen dem Schaltplan und der tatsächlichen Schaltung, die Sie gebaut haben, oder Ihr MOSFET ist defekt. Das Ausschalten der LED beim Anschließen des Pi deutet darauf hin, dass an einem offenen MOSFET ein Spannungsabfall von 3 + V auftritt, was so gut wie unmöglich ist.

Ich habe auch die Spannung am Gate gemessen, die 5 V beträgt, ohne dass das Pi angeschlossen ist, und auf 0 V abfällt (20 mV ~ 150 mV, ich weiß nicht, ob das ein Problem mit meinem Messgerät oder etwas anderem ist), sobald ich es einstecke.

Hier haben Sie es - das kann mit Ihrem Schaltplan nicht passieren, aber Sie messen es. Wenn Sie am Gate keine 5 V bereitstellen, schließt Ihr MOSFET und der Pi wird nicht mit Strom versorgt.