Forum: Mikrocontroller und Digitale Elektronik Chip Power Down bei Reed-Kontakten


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Markus Reinmann (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Peter D. (peda)


Bewertung
1 lesenswert
nicht lesenswert
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.

von Axel S. (a-za-z0-9)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Falk B. (falk)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Route_66 H. (route_66)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.