Meine Schaltungsanwendung erfordert die Verarbeitung während körperlicher Aktivität, kann jedoch für lange Zeiträume der Inaktivität in den Tiefschlaf versetzt werden. Ich benötige einen "wahren" oder "falschen" Ausgang von einem Sensor, der zum Unterbrechen eines Mikrocontrollers verwendet werden kann, dh ein Beschleunigungsmesser wäre ein massiver Overkill.
Gibt es einen sehr billigen (<$ 1) und sehr stromsparenden (<10 uA) Sensor oder eine Technik, die einen Interrupt für einen Mikrocontroller erzeugt, wenn der Sensor physisch bewegt wird?
quelle
Ja. Es gibt Bewegungssensoren, die wie ein Schalter wirken und sich beim Bewegen zufällig öffnen und schließen. Wenn die Ausgabe nicht verschoben wird, friert sie in dem Zustand ein, in dem sie zuletzt war. Diese Dinge können überraschend empfindlich sein.
Ein Nachteil ist, dass Sie nie wissen, ob der Schalter geöffnet oder geschlossen wird, wenn nichts passiert. Da es für längere Zeit geschlossen sein kann, müssen Sie dies bei der Auslegung für niedrigen Strom berücksichtigen. In Ihrem Fall können Sie 10 µA tolerieren, das ist also kein großes Problem. Ein 1 MΩ Pullup würde nur 3,3 µA bei 3,3 V benötigen.
Sie können regelmäßig mit einem Mikro abtasten und den Pullup nur für einen Bruchteil der Zeit eingeschaltet lassen, um den Strom zu reduzieren. Es wird dann ein Wahrscheinlichkeitsspiel mit langsamen Abtastraten. Wenn Sie feststellen, dass der Status des Schalters jedes Mal zufällig ist, wenn Sie ihn abtasten, während sich das Gerät bewegt, besteht nur eine Wahrscheinlichkeit von 1: 1024, dass nach 10 Abtastungen eine Bewegung fehlt. Wenn Sie im Vergleich zur mechanischen Zeitkonstante des Sensors schnell genug abtasten, sinkt die Wahrscheinlichkeit einer fehlenden Bewegung erheblich, aber Ihr durchschnittlicher Strom steigt. Beispielsweise ist es unwahrscheinlich, dass beim Abtasten alle 10 ms auch nur ein Ereignis übersehen wird, während alle 100 ms das Ergebnis beim Bewegen zufällig macht.
quelle
Siehe meine Antwort auf diese Frage: Beschleunigungsmesserschalter zum Auslösen der LED-Überblendung .
Bei einigen anderen Vorschlägen gibt es Probleme: Beschleunigungsmesser vom Typ MEMS sind die ideale Lösung, müssen jedoch zum Erkennen eingeschaltet werden. Schalter, die zufällig geöffnet / geschlossen werden, benötigen auch etwas Strom, um die Erfassung durchzuführen (oder ein kompliziertes Abfragesystem). Kippschalter können gut sein, wenn die "Leerlauf" -Position bei ausgeschaltetem Schalter garantiert ist.
Mein supergünstiger Beschleunigungsmesser (den ich nicht erfunden habe) kann mit unterschiedlichen Empfindlichkeiten hergestellt werden und verbraucht keinen Strom, wenn keine Bewegung stattfindet. Wenn Ihr Mikrocontroller keine guten Energieeinsparungsfunktionen bietet, können Sie wahrscheinlich einen eigenen externen Schaltkreis erstellen, um die Stromversorgung der MCU abzuschalten, bis Bewegung auftritt.
quelle
Suchen Sie einen Neigungsschalter ? Es erkennt nicht so viele Arten von Bewegungen wie ein 3-Achsen-Beschleunigungsmesser, ist jedoch einfacher. Es kann über einen sehr großen Pull-up-Widerstand mit Strom versorgt werden, um Energieverschwendung zu vermeiden.
Es gibt auch piezoelektrische Schwingungssensoren . Sie würden 3 orthogonal benötigen, um Bewegungen in jede Richtung zu erfassen. Sie erzeugen ihre eigene Spannung.
quelle