Go Down

Topic: Schaltvorgänge elektronisch zwischenspeichern, Regensensor (Read 640 times) previous topic - next topic

Vogeldodel

Hallo Leute,
 ich möchte folgendes Modul in meine Wetterstation einbeziehen:
https://www.amazon.de/gp/product/B00QDMBXUA?pf_rd_p=671e72bc-8864-4ab6-8ef7-60da5d6ead8c&pf_rd_r=EP0EDSTNNPW7368EDB9N]
Diesen misst einfach mit einem Reedkontakt die Umschläge der Kippe.
Mein Problem ist nun, das meiner Wetterstation draußen aus Energiegründen im DeepSleep modus ist und nicht dauernd auf einen "Umschlag der Wippe" warten soll. Alle anderen Sensoren werden alle 10 min abgefragt. Es regnet ja aber leider nunmal konstant durch...

Meine Frage ist nun, kann ich die Umschläge bzw. Kontaktschlüsse ohne Micrcontroller irgentwie "elektronisch" zwischenspeichern (ich bin elektrotechnisch ein Neuling :)) und dann alle 10 Min auslesen.
Hat jemand dazu eine möglich Schaltung ? Irgenwas mit Schieberegistern vieleicht?
Vielen Dank.
LG

combie

Quote
Mein Problem ist nun, das meiner Wetterstation draußen aus Energiegründen im DeepSleep modus ist und nicht dauernd auf einen "Umschlag der Wippe" warten soll.
Ich sehe den Widerspruch nicht, unter dem du leidest.

Mit einer Hardwareentprellung und Interrupts sollte das doch beherrschbar sein
Säge kein Sägemehl.

Vogeldodel

Hm ja stimmt die hardware interrupts gibt es ja auch noch...
Ich frage mich dann nur wenn dann wirklich alle paar Sekunden die Wippe klappt, ob dann nicht auch ordentlich Energie verbraucht wird... naja müsste ich testen.

Zur Hardwareentprellung, wie würdest du das im Idealfall machen?
Ich wäre jetzt spontan nur auf einen Widerstand und kleinen Kondensator gekommen.


combie

Quote
Ich wäre jetzt spontan nur auf einen Widerstand und kleinen Kondensator gekommen.
Ja...
So, oder so ähnlich.

Alternativ
Kann man auch (teilweise) in Software nachbilden.



Säge kein Sägemehl.

HotSystems

Hm ja stimmt die hardware interrupts gibt es ja auch noch...
Ich frage mich dann nur wenn dann wirklich alle paar Sekunden die Wippe klappt, ob dann nicht auch ordentlich Energie verbraucht wird... naja müsste ich testen.
.....
Da wirst du wohl nicht drum herum kommen. Du musst ja die Informationen zeitnah auswerten.
Du kannst die ausgewertete Information ja zwischenspeichern und erst später senden, das spart auch Energie.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Vogeldodel

Ja Zeitnah muss es sein. Ich dachte nur an einen mit einer kleinen schaltung realisierten oder als bauteil Zähler der nur alle 10 min vom esp32 ausgelesen werden kann....

combie

Ja Zeitnah muss es sein. Ich dachte nur an einen mit einer kleinen schaltung realisierten oder als bauteil Zähler der nur alle 10 min vom esp32 ausgelesen werden kann....
Ein ESP32 .....
Ja dann... warum nicht sofort diese Information?

evtl einen tiny85 als Zähler und I2C Slave.


Merke:
Wenn hier im Arduino Forum gefragt wird, ohne Angabe des µC, dann wird IMMER davon ausgegangen, dass du einen UNO, oder einen der anderen mit ATMega328P, verwendest.
Säge kein Sägemehl.

HotSystems

Ich merke schon, wir müssen alle unsere Glaskugel erneut hervorholen.
Ohne die gehts nimmer.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

combie

Ich merke schon, wir müssen alle unsere Glaskugel erneut hervorholen.
Ohne die gehts nimmer.
Ich befürchte, dass das Problem woanders liegt....
Da kannste polieren, soviel du willst.


Säge kein Sägemehl.

Tommy56

@TO: Wenn Du abschätzen kannst, wieviele Impulse maximal in den 10 Minuten zu erwarten sind, dann könntest Du auch einen CMOS-Zähler (z.B. 4040) zählen lassen und diesen dann nach 10 Minuten auslesen und zurücksetzen.
Bei 2 hoch 12 wären das 4095 Impulse in 10 Minuten. Das sollte ausreichen.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Vogeldodel

Ui super für die vielen Ideen,
ja stimmt den 2. Kern kann ich auch nehmen, da w-lan und bt sowieso aus sind.

Sorry ich dachte die Details wären nicht so wichtig:
Die Wetterstation umfasst ein BME 280 (Druck, Feuchte, Lufttemp) einen DS18b20 (Bodentemp), einen Lichtsensor 1750 (Lichtstromdichte) und einen kapazitiven Feuchtigkeitssensor (Erdfeuchte) gekoppelt mit einem ESP32 dessen Daten per LoRa (RFM95W) dann zu einem 2. SP32 in der Wohnung gesendet werden. Mit Abschalten aller Sensoren komme ich auf einen DeepSleep Strom von 80 µA. Alle 10 min misst und snedet er dann für ca. 3s einen mit Durchschnitts Strom von 100 mA. Mit meinem 6000 mA LiFePo4 Akku komme ich dann rechnerisch ohne Witterungseinflüsse auf ca 1 Jahr.
Diese Zeit wollte ich mir durch den Regensensor nicht besonders stark verkürzen, daher mein beharren auf eine energiesparende Lösung.

Vogeldodel

Hm ja das Video hab ich mir schon angeschaut, bekomme aber irgentiwe die ULP library nicht zum Laufen obwohl ich alles so mache wie die readme sagt.
Es kommt dann immer:

exec python executable file not found in $path

wenn ich die Dateien wieder raus lösche geht wieder alles...

Scherheinz

Hänge besser noch einen DS18b20 für die Lufttemperatur dran. Die Temperatur des BME 280 ist die Chip Temperatur und liegt etwas höher als die eigentliche Außentemperatur und wird zur Berechnung der Feuchtigkeit gebraucht.  Bei mir sind es zwischen 2 und 3 Grad bei beiden Chips. Es gibt auch ein paar Diskussionen im Netz darüber.
Hier könnte ihre Werbung stehen

postmaster-ino

Hi

Beim DS18B20 habe ich hier die Beobachtung, daß der Sensor im TO92 wärmer anzeigt, als die 'waterproof'-Versionen - allerdings sitzt die TO92-Variante auch direkt am Arduino (Shield).
Selbst, wenn ich die Hülsen-Versione auf das TO92 Gehäuse auflege, habe ich dort eine Differenz.

Nicht, daß die 16.tel Grad nachher zwar viele Nachkommastellen tanzen lassen, aber 2K von der Raumtemperatur entfernt sind.

MfG
Dein Problem, Dein Sketch, Deine Bilder.
Ob ich ohne Diese an Deinem Problem arbeiten will, entscheide aber immer noch ich.
Große Buchstaben? Immer wieder, neben Punkt und Komma, gerne gesehen.

Vogeldodel

Ich hab das Library Problem mit dem ULP gelöst:
Ich musste nur Python (wichtig Verion 2.7) im PATH unter Systemteurerung ergänzen wie hier erklärt wurde:
(https://www.pythoncentral.io/add-python-to-path-python-is-not-recognized-as-an-internal-or-external-command/)

Zu den Temp Sensoren: Stimmt der BME 280 liegt immer ca 1 °C über dem Ds18b20. Wer ist da nun richtig? Da er jedoch mit dem Wetterdienst in meiner Nähe ziemlich gut übereinstimmt, hatte ich das Problem aus den Augen verloren.
Könnte man dann nicht auch einfach immer 1°C abziehen? Wie müsste ich denn dann die Feuchtigkeit korrigieren?

Go Up