Ich möchte Informationen an den Server senden, wenn sich das Licht ändert (ein- oder ausschaltet). Im Moment habe ich einen Fotowiderstand an den ADC-Pin des ESP8266 angeschlossen. Ich messe die Spannung und sende Informationen an einen Server, wenn sie sich stark ändert. ESP bleibt immer an.
Hier meine aktuelle Schaltung:
Allerdings würde ich es gerne etwas energieeffizienter machen.
Der Sensor wird in einem Badezimmer verwendet, daher ist das Licht normalerweise ausgeschaltet.
Vielleicht könnte ich ESP8266 irgendwie per Fotowiderstand aufwecken und dann eine Anfrage an den Server senden und warten, bis das Licht wieder ausgeht, und dann die zweite Anfrage senden und in den Tiefschlafmodus wechseln? Oder gibt es vielleicht einen besseren Weg?
Ich suche Hilfe bei der Erstellung einer Schaltung. Was soll ich verwenden? Wie soll die Schaltung aussehen?
Die Tiefschlaffunktion des ESP8266 wird verwaltet, indem Pin 16 mit dem RESET-Pin verbunden wird, und wenn Sie die Tiefschlaffunktion aufrufen, übergeben Sie die Anzahl der Mikrosekunden, die Sie schlafen möchten. Dann setzt der Mikrocontroller Pin 16 hoch und geht schlafen. Nach der angegebenen Zeit geht der Pin 16 auf Low, wodurch der ESP8266 zurückgesetzt wird. Die API-Details, einschließlich einiger Anwendungshinweise, finden Sie in der PDF-Datei „Low-Power-Lösungen“ von Espressif.
Ihr Plan, eine Verbindung zu Pin 16 herzustellen, wird also nicht genau funktionieren. Sie benötigen eine Schaltung, die erkennt, dass Pin 16 hoch ist, und dann einen niedrigen Impuls auf RST erzeugt, wenn Ihre Bedingung auslöst. Ohne mehr Details über Ihre Schaltung und die genaue Auslösebedingung zu kennen, ist es schwierig, eine detaillierte Antwort zu geben.
Wechseln Sie in den Tiefschlaf, ohne GPIO16 anzuschließen, und RESET führt zu endlosem Tiefschlaf, es sei denn, Sie pulsieren den Reset mit einer externen Schaltung!
Das müssen Sie tun. Schließen Sie Ihren Fotowiderstand an einen Differenzverstärker mit Monoflop in Reihe an, um saubere Impulse am Reset-Pin zu gewährleisten, oder verwenden Sie dazu einen Ultra-Low-Power-MCU. Bei jedem Lichtwechsel erkennt der Differentialverstärker also die hohe Flanke und löst das Monoflop aus!
Das Lesen von Pin 16 ist kein Muss, Sie können ein Timeout in Monoflop verwenden, aber das Hinzufügen eines UND-Gatters ist auch nicht wirklich schwierig.
Sie könnten den ESP einfach in den leichten Schlafmodus versetzen und einen GPIO-Pin als Interrupt binden, um ihn aufzuwecken. Lassen Sie Ihren Fotowiderstand den ESP aufwecken, wenn das Licht eingeschaltet ist, und senden Sie ihn dann an den Server. Das soll viel Strom sparen
Siehe Esp8266
Passant
Defozo
Passant
Defozo