Hallo Ihr, ich probiere einen ESP8266 zu nutzen, um eine UDP Nachricht an meinen Raspberry Pi beim Öffnen und Schließen von Türen/Fenstern usw. zu senden. Der ESP8266 hat die Eigenschaft, dass er im Deep Sleep Mode <10µA verbraucht und nur durch eine fallende Flanke von 3,3v auf 0v am Reset Pin geweckt werden kann. Meine Idee daher: Reed-Schalter an die Türe, µC wecken beim Öffnen und Schließen, µC liest über weiteren Pin den Status vom Reed ein, schickt das ganze per UDP und geht wieder auf unbestimmte Zeit schlafen. Die SW Seite bekomme ich hin - aber bei der Hardware stehe ich am Schlauch. Hier stellen sich mir ein paar Fragen: a) Wie gehe ich damit um, dass der Reed Schalter ja nur öffnet und nicht auf 0v zieht - muss der Input dann theoretisch ein Pulldown sein, oder? Wenn Schalter zu liegt 3,3v an (HIGH) und wenn offen zieht der Pulldown ihn runter und es liegt sauber 0v an (LOW). Bekomme aber nicht so richtig raus, ob Pulldown vom ESP8266 unterstützt wird. b) Wie schaffe ich es, dass beim schließen erneut eine fallende Flanke kurzzeitig am Reset PIN anliegt? Ich schätze mal da brauche ich ein paar Logikgatter oder so? Danke euch! big_brother
Hi, soweit ich das bisher 8266er mit Tiefschlaf genutzt habe, machen die beim Aufwachen einen echten Reset. Du würdest nur mit einem REED Kontakt also einen Reset machen können, wenn z.B die Tür zu ist(oder auf). Allerdings bleibt dieser Pegel dann auch erhalten. Evtl. ist es besser, wenn Du einen kleinen Mikrocontroller nimmst der nicht viel verbraucht und den zur Zustandsüberwachung der Tür einsetzt. Sensor dann nach Wahl Reed, IR Reflex (verbraucht evtl. schon wieder zu viel für Batterie), Hall Sensor. Mit diesem überwachst Du dann Deinen Sensor, der ESP wird über einen Transistor stromlos geschaltet und erst wenn etwas zu übermitteln ist mit Spannung versorgt. Dann ein bisschen Warten (Wlan Login usw) und wenn er fertig ist über UART die Daten abschicken. Dann wieder einfach stromlos schalten. Viele Grüße Carsten
:
Bearbeitet durch User
Tangierender Magnet am Reedkontakt? Wenn die Tür auf od. zu ist, wäre ein dauerhafter Zustand eingetreten. Deshalb sollte der Magnet besser kurz auslösen wenn er vorbeifahrt?
Hallo, da das letztens schonmal Thema war und wenn Du Logikgatter verwenden willst siehe Schaltung. Kontakt und 10k Widerstand kannst Du auch tauschen, der 10k kann auch wesentlich hochohmiger sein um Strom zu sparen wenn der Kontakt geschlossen ist. Das RC-Glied am x86 Eingang ist nur geschätzt, wenn die Impulslänge nicht reicht eben ändern. Gruß aus Berlin Michael
He Ihr, danke für das Interesse und die Vorschläge. Beim Stöbern und Nachdenken habe ich jetzt sogar eine (hoffentlich) noch bessere Version gefunden: Der ESP8266 hat ein PW_EN/CHIP_ON IO Eingang, der auf High zum hochfahren gezogen werden muss. Da wir ja nicht regelmäßig pollen müssen, sondern nur wenn die Türe/Fenster aufgeht, nutzen wir das aus: 1. Türe geht auf, NC Reed Switch schließt und bestromt über Diode den CHIP_ON Eingang, ESP fährt hoch 2. ESP8266 hat eines der anderen GPIO (Hier mal GPIO_X) mit dem CHIP_ON kurzgeschlossen, sodass wir als erstes GPIO_X auf HIgh setzen, damit der Chip an bleibt, auch wenn der Reed wieder öffnet 3. Jetzt pollen wir regelmäßig ob die Türe offen ist und schicken den Status. 4. Sobald erkannt wurde, dass die Türe wieder zu ist, schicken wir das und ziehen GPIO_X auf LOW, der ESP8266 geht aus Vorteil: Kein zusätzlicher IC/µC, nur paar Widerstände und eine Diode benötigt (Minimale Kosten), Idle-Strom geht gegen 0 (hier laut Datenblatt im Off mode <0,5µA!) Nachteil: Nur anwendbar bei externem Trigger (Button, Reed, etc.), nicht zum regelmäßigen Polling von z.B. Temp-Sensoren nutzbar. Was meint ihr? PS: Was sind denn die besten (online?) Tools um Schaltbilder zu malen? Dann muss ich das nicht immer beschreiben.
Hallo, ich bin leider nicht so der Elektronik-Profi. Verzeiht mir meine vermutlich "einfachen" Fragen. Ich hätte eine Frage zu der Schaltung von oben (Sensor.png) von Michael U. (amiga). Ich verwende diese im Moment mit einem NC und NO Reedschalter. Wobei ich nur den NC Anschluss im Moment beschalten habe. Wenn das Fenster geschlossen ist - der Magnet also am Reedkontakt anliegt - ist der Stromkreis offen. Sobald man das Fenster öffnet, ist der Stromkreis geschlossen - der kurze Impuls zum Reset-Pin wird geschickt und der ESP8266 startet neu. Nun möchte ich den Zustand über einen GPIO-Pin des ESP auslesen (0=Fenster zu, 1=Fenster auf) und dann geht der Chip wieder in deep-sleep bis zum nächsten Reset. 1. Frage: Kann ich den GPIO zum auslesen einfach zwischen dem Schalter und dem ersten XOR-Gatter dazwischen legen? Oder geht da etwas kaputt und muss da noch ein Widerstand oder ähnliches dazwischen? 2. Frage: Wie müsste ich die Schaltung nun verändern, damit der "Impuls" zum Reset abgegeben wird und dann aber kein Strom mehr verbraucht wird? (Muss man dazu irgendwie den NO Anschluss des Reed-Kontakts mit einbinden?) Ich habe aktuell die Widerstände und den Kondensator etwas verändert, damit zieht die Schaltung wenn der Kontakt oben geschlossen ist (also das Fenster offen) weniger Strom - aber das ist leider immer noch zu viel für einen batteriebetriebenen Sensor. Kann man hier noch irgend ein Bauteil hinzufügen, damit man den Stromverbrauch während "Fenster auf" noch weiter minimieren oder ganz abstellen kann? Meine Schaltung sieht wie im Anhang aus.
Nimm einen CMOS Schmitt-Trigger, zum Beispiel CD4584:
1 | ____ |
2 | ____ 470nF | | |
3 | + o---- ----+----||-----+----| ST |o------ Low=Reset |
4 | | | |____| |
5 | |~| |~| |
6 | 220k | | | | 220k |
7 | |_| |_| |
8 | | | |
9 | GND GND |
Schließe den Reedkontakt so an, dass in Ruhelage kein Strom fließt. Der Chip hat noch 5 weitere Schmitt-Trigger, deren Eingänge du nicht offen lassen solltest, damit die Stromaufnahme in Ruhelage wirklich auf annähernd Null absinkt. Du kannst den GPIO Pin an jeden beliebigen Punkt legen, solange dort niemals mehr als 3,3V anliegen. Sicherheitshalber schadet es nicht, einen der 0och übrigen Schmitt-Trigger zwischenzuschalten:
1 | |
2 | ____ |
3 | | | |
4 | +----------------| ST |o------ Low=Fenster offen |
5 | | |____| |
6 | | ____ |
7 | ____ | 470nF | | |
8 | + o---- ----+----||-----+----| ST |o------ Low=Reset |
9 | | | |____| |
10 | |~| |~| |
11 | 220k | | | | 220k |
12 | |_| |_| |
13 | | | |
14 | GND GND |
Damit die Schaltung auf EMV nicht überempfinglich reagiert, würde ich noch einen Kondensator hinzufügen:
1 | |
2 | ____ |
3 | 47nF | | |
4 | + o---||-----+----------------| ST |o------ Low=Fenster offen |
5 | | |____| |
6 | | ____ |
7 | ____ | 470nF | | |
8 | + o---- ----+----||-----+----| ST |o------ Low=Reset |
9 | | | |____| |
10 | |~| |~| |
11 | 220k | | | | 220k |
12 | |_| |_| |
13 | | | |
14 | GND GND |
big_brother schrieb: > PS: Was sind denn die besten (online?) Tools um Schaltbilder zu malen? Das beste Werkzeug nützt dir nichts, wenn du nicht damit umgehen kannst. Hast du hier im Forum schon mal die Artikel der Kategorie:Schaltplaneditoren durchstöbert?
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.