Null- oder Schwachstrom-Spannungsteiler zur Schaltererkennung

Ist es möglich, eine Spannungsteilerschaltung mit Schaltern zu entwerfen, die Nullstrom oder sehr niedrigen Strom verwendet? Würde es funktionieren, einen Transistor zu verwenden, um das Ende der Widerstandskette von Masse zu verbinden / zu trennen?

Hintergrund

Die Schaltung wird zwei Dinge tun. Jeder Schalter in der Schaltung weckt einen IC (ATMEGA328P), indem er einen Transistor verwendet, um einen Interrupt-Pin LOW zu senden. Sobald der IC aufwacht, tastet der ADC die von der Schaltung kommenden Spannungen ab, sodass der IC weiß, welche Taste gedrückt wurde.

Das gesamte Projekt wird batteriebetrieben sein, und dieser Spannungsteiler kann die Batterielebensdauer erheblich beeinträchtigen.

Das Projekt wird 1) Dateien von einer SD-Karte lesen, 2) in den Ruhezustand wechseln, 3) aufwachen und Töne abspielen, wenn eine der 16 Tasten gedrückt wird, und 4) in den Ruhezustand wechseln und den Vorgang beginnend bei #3 auf Tastendruck wiederholen. Ich gehe davon aus, dass es im laufenden Betrieb eine erhebliche Stromaufnahme hat.

Bestehende Spannungsteilerschaltung

Geben Sie hier die Bildbeschreibung ein

Mögliche Transistorlösung

Durch Platzieren eines Transistors zwischen dem Ende der Widerstandskette und Masse und Aktivieren des Transistors durch Drücken der Taste wird das Ende der Spannungskette mit Masse verbunden. Dies führt zu einem anfänglichen Spannungswert von 5 V, und sobald der Transistor eingeschaltet ist, entspricht die tatsächliche Lesespannung der beabsichtigten Spannung. Ich habe keine Ahnung, ob das funktionieren wird.

Mögliche Spannungsteilerschaltung mit Transistor

Andere Lösungen

Per Frage 28897 könnte ich hohe Widerstandswerte wie 10 MOhm verwenden. Aber dies wird immer noch eine Stromaufnahme von Hunderten von nA haben. Null wäre mir lieber.

Wenn Sie eine 1000-mAh-Batterie mit 5 V über 10 MOhm verwenden, hält die Batterie 228 Jahre oder 6 Jahre mit einer winzigen 30-mAh-Lithium-Knopfzelle. Jede Probe, die Sie mit einem ADC nehmen, lädt oder entlädt auch eine Kappe. Außerdem liegen die ADC-Eingangsimpedanzen bei Controllern in der Regel im 10K-Bereich, und Sie werden mit jeder Probe eine Obergrenze dafür aufladen. Sind Sie sich angesichts dessen sicher, dass Ihre nA-Lösung wirklich einen spürbaren Einfluss auf die Batterielebensdauer haben würde?
Sie haben Recht, da die Summe des Ruhestroms des Spannungsreglers und der MCU selbst (im Ruhezustand) wahrscheinlich mindestens 10 uA beträgt. Ich versuche nur, unnötigen Stromverbrauch zu reduzieren.
@n.taco Einige zusätzliche Daten würden helfen. Was ist Ihre maximale Batteriespannung? Was ist Ihre Vcc-Spannung? Wie wird der uC mit Strom versorgt (über einen Linearregler oder Schaltmodus oder direkt von der Batterie)?
Die Batteriequelle wird wahrscheinlich 4 D-Zellen sein. Der Spannungsregler ist ein Maxim MAX667 (linearer Spannungsregler), der alle Geräte mit Strom versorgt (keine Geräte außer dem Regler sehen die Batteriespannung). Vcc ist 5V.
@n.taco Übrigens, schreiben Sie Komponentenbezeichner in Ihre Schaltpläne. Es ist viel einfacher "Q23" zu sagen als "drittunterster BJT von rechts". Lesen Sie dies . Ihr Risiko für Bluthochdruck ist stark erhöht, wenn Sie diese Richtlinien auf EE.SE nicht befolgen . Faire Warnung.
Wenn es sich um billige Metallkontaktschalter handelt, können sie oxidieren. Sie können auch abprallen und mehrere Unterbrechungen verursachen. Um beide Probleme zu beheben, fügen Sie eine Kappe über jedem Schalter hinzu, die gerade groß genug ist, um die Spannung für die Dauer des Kontaktprellens aufrechtzuerhalten. z.B. wenn 1ms dann 100K*10nF = 1ms. Bei Bedarf größer verwenden. Folienkappen eignen sich am besten für niedrige ESR, um metallische Nicht-Gold-Kontakte zu desoxidieren.
Stellen Sie sicher, dass Sie Avcc mit RC- oder LC-Filter filtern. Das Problem bei Schaltern mit höherer Impedanz ist das Eindringen von mehr Rauschen durch streuende EMI und fingerinjizierte 60 Hz. Abschirmung ist also sinnvoll.
@NickAlexeev Ich habe meine ursprünglichen Zahlen aktualisiert, um den Richtlinien besser zu entsprechen.
@Richman Wenn sie oxidieren, was passiert? Werden diese Kondensatoren der Schaltung eine zusätzliche Stromentnahme hinzufügen?
Oxid ist ein Isolator, die Kappe brennt die dünne Schicht ab, kein DC-Drain und filtert auch Kontaktprellen.

Antworten (4)

Neue Antwort

Dein Ansatz kann funktionieren. Aber Ihr 2. Schaltplan hat einen Fehler, denke ich. Der ADC sieht immer V be des Transistors, der immer etwa 0,7 V beträgt.

Diese Variante sollte dieses Problem nicht haben, da zwischen Basis und ADC ein Widerstand R39 liegt.

Geben Sie hier die Bildbeschreibung ein

Alte Antwort, die keine Antwort war

Der Teiler kann mit einem Transistor geschaltet werden, um die Batterie zu schonen. Allerdings muss es ein High-Side-Schalter sein. Wenn Sie auf Masse schalten, erscheint die Batteriespannung am A/D-Pin, was den Eingang beschädigen könnte.

(Ursprünglich wurde der Schaltplan in diesem Thread gepostet .)

Wie würde diese Idee mit der Einschränkung funktionieren, dass die Schalter den Transistor einschalten?
Ersetzen Sie das digitale Signal divider On/Off, das den Transistor steuert, durch einen manuellen Schalter. Wie ist es damit?
1. Es fällt mir schwer zu sehen, wie ich dies erweitern würde, um zu identifizieren, welcher Schalter gedrückt wird. Müsste ich für N-Schalter nicht N-Transistoren plus die Widerstände zum Teilen der Spannung haben? 2. Wenn Vcc <= ADC-Maximalspannung, könnte ich Masse wechseln? In diesem Fall beginnt die Spannung am ADC bei 5 V, nimmt aber auf die geteilte Spannung ab, richtig?
@NickAlexeev Ich sehe den Fehler, danke für den Hinweis; Mir war auch nicht klar, dass dies mit einem Transistor möglich ist. Das sieht super aus, werde ich am Wochenende ausprobieren.

Sie brauchen nicht einmal einen Transistor, um die Widerstandskette zu trennen, Sie können ihn einfach an einen MCU-Ausgangspin anschließen. Stellen Sie ihn auf den gleichen Wert wie das andere Ende der Saite ein, und er verbraucht einen Strom nahe Null. Ich habe diesen Ansatz verwendet und es funktioniert gut.

(Geben Sie in Ihrem Diagramm dem Transistor seine eigene Masse und verbinden Sie den MCU-Pin mit der Unterseite der Widerstandskette).

Meinst du das zweite Diagramm oder das erste?
Wenn beide Pins HIGH sind, gibt es außerdem einen Spannungsabfall im Teiler?
Erstes Diagramm (habe Ihren Beitrag bearbeitet, um sie direkt aufzunehmen). Wenn beide Enden hoch sind, ist die Spannung an allen Punkten entlang des Teilers hoch und es fließt kein Strom.

Ist es möglich, eine Spannungsteilerschaltung mit Schaltern zu entwerfen, die Nullstrom verwendet ...

Dies sollte den Zweck erfüllen und es ist kein Masseschalten erforderlich. Ein Teiler wird nur dann mit der Batterie verbunden, wenn ein Schalter geschlossen ist, und der ADC-Eingang wird auf Masse gezogen, wenn alle Schalter offen sind.

Für 5 V Vcc ist der ADC-Eingang:

  • 5,0 V = SW1 geschlossen
  • 3,3 V = SW2 geschlossen
  • 1,7 V = SW3 geschlossen
  • 0V = alle Schalter offen

Natürlich können Sie die Widerstandswerte nach Ihren Wünschen anpassen.

Geben Sie hier die Bildbeschreibung ein

Dieser Ansatz kann gut sein, wenn man Qualitätsschalter verwendet. Es kann sehr schlecht sein, wenn man Kohlenstoffkuppeln auf einer Leiterplatte verwendet, da der Widerstand einer leicht gedrückten Taste weniger als 1 K oder mehr als 100 K oder irgendwo dazwischen betragen kann und ein solcher Widerstand scheinbar vernünftig bleibt für den Bruchteil einer Sekunde stabil. Während es für das System im Allgemeinen in Ordnung ist, leichte Tastendrücke zu ignorieren, ist es im Allgemeinen ärgerlich, wenn ein leichter Druck auf eine Taste als eine völlig andere Taste interpretiert wird.
Ich stimme zu; Die Verwendung eines druckempfindlichen Widerstands anstelle einer vernünftigen Annäherung an einen echten Schalter, offen im ausgeschalteten Zustand, kurz im eingeschalteten Zustand, führt in dieser Schaltung zu unvorhersehbaren Ergebnissen.
In vielen Anwendungen kann ein Kohlenstoffkuppelkontakt, obwohl er sich wie ein druckempfindlicher Widerstand verhält, als Schalter verwendet werden (obwohl das Hinzufügen von Hardware oder Halbhardware-Hysterese sicherlich hilfreich sein kann). Ich wollte nur sicherstellen, dass die Leser wissen, dass dies keine dieser Anwendungen ist.
In der Tat und leider ist es eine Unterscheidung, die gemacht werden muss. Nur weil etwas als "Schalter" bezeichnet wird, bedeutet das nicht unbedingt, dass es eine gute Annäherung an einen idealen Schalter ist.

Bei zwei E/A-Pins mit einigermaßen konsistenten Schaltschwellen könnte man eine geerdete Kappe über einen kleinen Widerstand mit jedem Prozessorpin verbinden, eine Kappe an jedes Ende der Widerstandskette binden und jeden Schalter einen Abgriff der Kette mit VDD verbinden lassen oder Masse (je nachdem, was bequemer ist; ich gehe für diese Diskussion von VDD aus). Haben Sie einen erheblichen Widerstand zwischen beiden Enden und dem ersten Schalter. Irgendwann, wenn kein Schalter gedrückt wird, erden Sie beide Pins lange genug, um die Kappen zu entladen; Floaten Sie dann einen und setzen Sie den anderen auf VDD. Zeit, wie lange es dauert, bis der Floating-Pin seinen Zustand ändert. Wenn sich die Schwellenwerte der Eingänge unterscheiden können, wiederholen Sie den Test für den anderen Eingang. Dann beide Stifte erden und dann schweben lassen - dies ist der Ruhezustand.

Sobald beobachtet wurde, dass ein Stift seinen Zustand ändert, erden Sie beide Stifte lange genug, um die Kappe zu entladen, und lassen Sie sie schweben. Zeit, wie lange es dauert, bis jeder Pin den Zustand ändert. Das Verhältnis dieser Zeit zur oben gemessenen Grundlinie gibt Ihnen den Widerstand von jedem Stift gegen VDD an. Stellen Sie sicher, dass die Summe der beiden Messungen ziemlich nahe am Gesamtwiderstand der Saite liegt (andernfalls hat der Knopf keinen guten Kontakt, sodass der Messwert möglicherweise fehlerhaft ist).

Wenn der Prozessor möglicherweise übermäßigen Strom zieht, wenn die Eingänge von den Schienen wegschweben, kann es eine gute Idee sein, die Kondensatoren regelmäßig zu entladen, auch wenn keine Taste gedrückt wird. In diesem Fall sollten die Ruheströme für das System ziemlich gering sein.

Interessante Idee. Ziehen die Kondensatoren nicht ständig Strom?
@n.taco: Um die Spannung an einer Kappe um einen bestimmten Betrag zu erhöhen, muss eine Ladungsmenge (in Coulomb) hinzugefügt werden, die der Spannungsänderung (in Volt) mal der Kapazität (in Farad) entspricht. Das Verringern der Spannung erfordert das Entfernen von Ladung. Ein Ampere entspricht einem Coulomb pro Sekunde. Das Laden eines Kondensators und das Entladen seiner Ladung mit einer bestimmten periodischen Rate auf Masse erfordert eine Strommenge, die der Ladung pro Zyklus mal der Frequenz entspricht. Wenn der Kondensator jedoch die meiste Zeit auf einer konstanten Spannung verbringt, verbraucht er während dieser Zeit im Wesentlichen keinen Strom.