Steuerrichtung des Stromflusses durch den Pin je nach angeschlossenem Gerätetyp

Ich habe ein kleines tragbares Gerät – nennen wir es MASTER – das in zwei verschiedene Zubehörteile eingesetzt werden kann – CHARGER und SLAVE. Sie können sehr grobe Blockdiagramme im beigefügten Bild überprüfen.

Diagramm

Der MASTER hat einen 40-mAh-LiPo-Akku mit einer Nennspannung von etwa 3,7 V (aber natürlich während des Betriebs zwischen 3 und 4,2 V). Diese Spannung wird weiter auf 1,8 V geregelt. Das ist die Spannung, die von der MCU verwendet wird.

MASTER hat 3 Stifte/Pads, die sich außerhalb des MASTER-Gehäuses erstrecken. Sie verlängern sich nicht viel, aber der Benutzer kann sie definitiv berühren oder auf andere Weise kurzschließen.

CHARGER und SLAVE haben Federfinger (so etwas wie http://www.te.com/catalog/products/en?q=2199001 ), die einen Kontakt bilden, wenn MASTER hineingesteckt wird.

Der DATA-Pin wird für die Single-Wire-Slave/Charger-Identifikation verwendet. Der Speicher mit ID wird parasitär mit Strom versorgt, sodass er auch dann gelesen werden kann, wenn die Batterie nicht mit dem SLAVE verbunden ist. Der MASTER kann leicht feststellen, ob das angeschlossene Zubehör SLAVE oder CHARGER ist.

Alles andere auf dem SLAVE (außer dem Speicher) muss von den BAT- und GND-Pins des MASTER mit Strom versorgt werden, da der SLAVE keine Batterie hat.

Aber auch die Batterie des MASTER muss über BAT- und GND-Pins wiederaufladbar sein.

Womit wir schließlich beim Problem wären - Ist es möglich, den SLAVE mit Spannung zu versorgen und auch die Batterie des MASTERS mit nur einem Pin aufzuladen? Und natürlich ohne Möglichkeit, den Akku des MASTER und andere Komponenten kurzzuschließen.

HINWEIS: Die Spannungsversorgung des SLAVE und das Aufladen des MASTER erfolgen NIEMALS gleichzeitig, dies sind völlig getrennte Ereignisse.

Nun einige Ideen, die ich hatte, aber nicht umsetzen konnte (wahrscheinlich weil ich zu dumm bin :)):

  • Sie können die Identifizierung am SLAVE/CHARGER verwenden, um die Versorgungs-/Ladepfade des Stromkreises zu „öffnen“, aber bedenken Sie, dass das Laden der Batterie möglich sein MUSS, selbst wenn die Batterie vollständig entladen und abgeschaltet ist.
  • Verwenden Sie etwas MOSFET / Transistor-Magie, um den Zubehörtyp (SLAVE oder CHARGER) zu erkennen.
  • Trennen Sie den BAT-Pin von der Batterie, wenn Überstrom erkannt wird. Aber schnell - rücksetzbare Sicherungen sind nicht schnell genug. Auch Relais oder SSR-Relais sind aufgrund ihrer Größe nicht geeignet.
  • Letzte Idee war, 4 Pins statt nur 3 zu verwenden. Dies sollte der letzte Ausweg sein. Wenn ihr mir sagt, dass es mit nur 3 Pins nicht geht, stelle ich eine neue Frage.

Vielen Dank an alle im Voraus!

Wie ist jeweils der Standardzustand der externen Datenleitung?
@IgnacioVazquez-Abrams Die Single-Wire-Schnittstelle ist UNI/O von Microchip ( Wiki ). Wiki sagt: "Der Ruhezustand des UNI / O-Busses ist logisch hoch."
Dann haben Sie schon die halbe Miete gewonnen, da Sie Einfügungsereignisse erkennen können.
@IgnacioVazquez-Abrams Ja, Einfügungsereignisse können sogar durch Abfragen der Datenleitung vom Master erkannt werden. Ich kann sogar herausfinden, welcher Typ (CHARGER/SLAVE) eingesteckt ist.
Ich würde nicht abfragen, ich würde einen schwachen Pulldown verwenden und die Datenleitung mit einem Interrupt-Pin verbinden. Sie können dies dann als Auslöser verwenden, um die Transistormagie zu starten (da Sie dies tun werden), nachdem sich die Dinge beruhigt haben.
Um fortzufahren, hätten Sie ein paar MOSFETs, die die Batterieleitung verbinden, mit einem weiteren MOSFET außerhalb davon im ohmschen Bereich, um zu erkennen, wann das Ladegerät angeschlossen ist. Das Problem tritt auf, wenn die Batterie leer ist, obwohl Sie in diesem Fall die Body-Diode nutzen könnten, um die MCU mit Strom zu versorgen.
Könnten Sie bitte ein einfaches Diagramm zeichnen, denn ein Bild sagt mehr als tausend Worte :) Und es tut mir sehr leid, aber mein Wissen über MOSFETs ist ziemlich begrenzt. Ich habe sie nur für einfache Designs verwendet.
So ungefähr , aber Sie müssen wahrscheinlich ein gemischtes Paar verwenden, da Sie eine Verbindung benötigen, um eine Verbindung herzustellen, wenn die Batterie leer ist. Und dann geht der andere MOSFET auf Masse und der Strom durch ihn wird gemessen, aber abgeschaltet, wenn die Peripherie festgestellt wurde. Ich habe nicht genug Erfahrung, um den Rundgang für Sie fertigzustellen, aber jemand sollte in der Lage sein, dieses Geschwafel zu nehmen und es in etwas Nützliches umzuwandeln.
Danke, hoffen wir, dass jemand auftaucht und uns hilft :) Ich habe ziemlich viel Zeit damit verbracht und immer noch nichts ...

Antworten (1)

Du machst es dir zu schwer. Alles, was Sie tun müssen, ist ein Batterieschalter, der die BAT-Leitung trennt, wenn kein Zubehör angeschlossen ist. Dies ist mit einem einzelnen MOSFET trivial (er hat eine Schutzdiode, stellen Sie also sicher, dass Sie ihn so anschließen, dass Sie ihn nicht entladen können Batterie, wenn MOSFET ausgeschaltet ist). Ein Mikrocontroller sollte den MOSFET öffnen, wenn das Gerät angeschlossen ist, und dann ist er praktisch nicht vom Kabel zu unterscheiden.

Ihre einzige Sorge ist, was passiert, wenn der Akku leer ist. Nun, in diesem Fall hilft die Schutzdiode des MOSFET - sie ermöglicht eine begrenzte Batterieladung, selbst wenn der MOSFET ausgeschaltet ist. Aufgrund des Spannungsabfalls ist keine vollständige Aufladung möglich, aber das spielt keine Rolle - sobald die Batterie nur noch wenig Strom hat, startet die MCU und öffnet den MOSFET.

Ich dachte darüber nach. Meinten Sie das so? Link zum Bild
Vielleicht habe ich vergessen, es zu erwähnen, aber die MCU läuft mit 1,8 V und ihre Ausgänge können daher nur 1,8 V liefern. Wenn MOSFET wie im obigen Bild verwendet wird, kann ich Vgs> Vth nicht ausführen. Habe ich recht?
Ihr Bild ist größtenteils richtig. Ein P-FET wird auf Masse getrieben, sodass seine Vgs der Batteriespannung entsprechen. Sie benötigen einen anderen Transistor, um ihn anzusteuern. Beispiel: edaboard.com/thread237294.html
Ich habe etwas simuliert und es sieht so aus, als würde es gut funktionieren :) Screenshot von der Simulation ist hier und die Live-Simulation ist hier . Schalten Sie einfach beide Schalter so um, dass jeweils nur einer aktiv ist. Was denken Sie? Ich werde versuchen, es zu bauen und Ergebnisse zu posten.
Okay Leute. Ich habe es auf Steckbrett gebaut und es funktioniert. Zumindest der Teil, der den Stift abschneidet. Aber ich habe ein anderes Problem - der Ladezyklus endet nie, wenn ich das Ladegerät auf den BAT-Pin stecke und den Mosfet öffne. Könnten Sie bitte zumindest zeigen, was falsch sein könnte? Ich verwende MCP73831T-2ACI/OT ( Datenblatt ), das sich außerhalb des MASTER im LADEGERÄT befindet.
Oder soll ich eine komplett neue Frage stellen?
Ich werde nach dem Zufallsprinzip vermuten, dass Ihr MOSFET nicht vollständig geöffnet ist. Wie lautet die MOSFET-Teilenummer? Wie hoch ist der Spannungsabfall am MOSFET, während die Batterie geladen wird (zwischen SOURCE- und DRAIN-Pins)? Es sollte < 0,1 Volt sein.
Der Spannungsabfall an SOURCE und DRAIN beträgt 0,04 Volt. Ich versuche den zweiten Lauf und werde versuchen, mehr zu experimentieren. MOSFET ist IRF9520 ( Datenblatt ). Beim ersten Start hat das Ladegerät den Ladevorgang nicht beendet (STAT-Pin war niedrig). Die Batteriespannung betrug 4,2 V (es könnte etwas weniger sein, aber ich verwende nur ein nicht so professionelles Multimeter). Nach dem Schließen und erneuten Öffnen des Mosfet beendete das Ladegerät den Ladevorgang und STAT schaltete auf hoch.
Der zweite Lauf hatte die gleichen Ergebnisse. Wenn die Batteriespannung 4,2 V beträgt, beträgt der Spannungsabfall an Source und Drain 0 V, was bedeutet, dass kein Strom in die Batterie fließt, richtig?
Ich habe eine neue Frage dazu gepostet. Bitte sehen Sie hier .