Hallo, ich möchte 1 bis 10 viele Reed-Kontakte (unten habe ich nur 3 abgebildet) an einen ESP8266 anschließen. Anwendungsfall: Ich möchte bei jedem Reed-Kontakt den Zustand wissen. Im Standardfall sind alle Reed-Kontakte geschlossen. Ich dachte mir es sei klug zum Strom sparen den CHPD (Chip Power Down-Pin) zu nutzen. d.h. sobald die Reeds geschlossen sind, fällt die Spannung ab und es müsste Power am CHPD anliegen. Ist die Schaltung richtig oder wie macht man es richtig? Als Transistor (hier: BC) würde ich "BC 557B :: Bipolartransistor, PNP, 45V, 0,1A, 0,5W, TO-92 (von polin)" nutzen. Gruß Markus
Markus Reinmann schrieb: > Ich möchte bei jedem Reed-Kontakt den Zustand wissen. Im Standardfall > sind alle Reed-Kontakte geschlossen. Alarmanlage? > Ich dachte mir es sei klug zum Strom sparen den CHPD (Chip Power > Down-Pin) zu nutzen. d.h. sobald die Reeds geschlossen sind, fällt die > Spannung ab und es müsste Power am CHPD anliegen. Dafür braucht es keine Transistoren, nur passende Pull-Up Widerstände von vielleicht 100k-1M an jedem Pin. Die Reed-Kontakte schalten dann gegen GND. Fertig. Klar frißt ein 1M Widerstand an 3,3V 3,3uA, das ist teilweise mehr als ein Mikrocontroller im Ruhezustand, aber viel anders als mit Pull-Ups geht es bei einfachen Kontakten halt nicht. Alternativ kann man die Pull-Ups schaltbar machen, d.h. man klemmt sie nicht an VCC sondern alle an einen IO-Pin, welcher als Ausgang geschaltet wird. Der Controller wacht nun per Timer alle paar hundert ms auf, schaltet die Pull-Ups ein, wartet ein paar Dutzend us und prüft dann die Eingänge. Am Ende werden die Pull-Ups wieder ausgeschaltet. Damit spart man viel Strom und kann die Pull-Ups auch deutlich kleiner machen, so 10-100k.
Ich mache sowas beim AVR mit dem Pin-Change Interrupt. Jeder Kontakt hat einen 1MΩ Pullup. Wird high erkannt, wacht der AVR auf und schaltet noch seine internen 50kΩ parallel, um die Störfestigtkeit zu erhöhen. Bei low schaltet er den internen Pullup ab, um Strom zu sparen.
Falk B. schrieb: > Alternativ kann man die Pull-Ups schaltbar machen, d.h. man klemmt sie > nicht an VCC sondern alle an einen IO-Pin, welcher als Ausgang > geschaltet wird. Der Controller wacht nun per Timer alle paar hundert ms > auf, schaltet die Pull-Ups ein, wartet ein paar Dutzend us und prüft > dann die Eingänge. Am Ende werden die Pull-Ups wieder ausgeschaltet. Das ist zum Stromsparen die sinnvollste Variante. Alternativ kann man auch Reed-Öffner oder Reed-Wechsler nehmen. Oder man baut einen Schließer mit zwei Magneten ein: einem festen Magneten, der den Kontakt schließt. Und einen zweiten, beweglichen Magneten, der das Magnetfeld des ersten Magneten aufhebt, wenn er in Ruheposition ist. Für Fenster- und Türkontakte ist das machbar. Wenn es darum geht, das Wegnehmen einer beweglichen Sache von einer Unterlage zu deketieren, dann eher nicht.
Axel S. schrieb: > Das ist zum Stromsparen die sinnvollste Variante. Alternativ kann man > auch Reed-Öffner oder Reed-Wechsler nehmen. Die sind ARG exotisch und damit auch teuer. > Oder man baut einen > Schließer mit zwei Magneten ein: einem festen Magneten, der den > Kontakt schließt. Und einen zweiten, beweglichen Magneten, der das > Magnetfeld des ersten Magneten aufhebt, wenn er in Ruheposition ist. Warum? Die intelligente Auswertung ist um Größenordnungen einfacher.
Markus Reinmann schrieb: > Anwendungsfall: > Ich möchte bei jedem Reed-Kontakt den Zustand wissen. Im Standardfall > sind alle Reed-Kontakte geschlossen. > > Ich dachte mir es sei klug zum Strom sparen den CHPD (Chip Power > Down-Pin) zu nutzen. d.h. sobald die Reeds geschlossen sind, fällt die > Spannung ab und es müsste Power am CHPD anliegen. Das ist jetzt missverständlich: willst Du wissen ob ein Kontakt geöffnet hat, oder welcher Kontakt geöffnet hat? Im ersten Fall schaltet man einfach die Kontakte in Serie. Für den zweiten Fall ist Deine oben vorgestellte Schaltung vollkommen ungeeignet.
In der direkten Umgebung des ESP Moduls und der Antenne würde ich nur Widerstände <10kΩ verwenden, da er sonst von seinen eigenen HF Signalen gestört werden kann.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.