beelogger

Niederschlagsmesser

Der hier beschriebene Aufbau wurde von uns in mehreren Prototypen getestet. Anregungen zur Optimierung der Beschreibung und Aufbauhinweise nimmt der beelogger-support gerne auf.

 Der Niederschlagsensor ist kompatibel mit allen beelogger Varianten!

Hinweis:  beelogger- STM Systeme mit STM32F4xy haben mit Niederschlagmesser einen deutlich höheren Ruhestrombedarf von ca. 1mA gegenüber sonst üblichen Werten unter 20µA. Der Aufbau solcher Systeme sollte nicht erfolgen, weil die Versorgung des Akku über die Solarzelle nicht sichergestellt ist.

Als weiteres Element zur Erfassung von Wetterdaten wird hier ein Niederschlagsmesser, oft als Regenmesser bezeichnet, vorgestellt. Damit wird der beelogger-SMD oder beelogger-Universal um eine weitere Komponente zum Aufbau einer Wetterstation ergänzt.

Grafik Temperatur und Regen mit Tageswerten und SUmme

Grafik Temperatur und Regen mit Tageswerten und Summe

Der hier verwendete Niederschlagsmesser arbeitet nach dem Wippenverfahren. Über eine Auffangschale oder einen Trichter wird der Regen gesammelt und dem Wippensystem zugeführt. Mit jeder Füllung einer Seite der Wippe wird die Wippe gekippt und mittels eines Magneten ein Reed-Kontakt betätigt.

Das Messen von Regen erscheint damit relativ trivial. Eine genaue Messung hat jedoch ihre Tücken. Die Art des Regens, Niesel, feiner Nebel oder auch gefroren (Schnee), zeigen schnell die Grenzen eines Wippensystems auf. Informationen zu den Stärken und Schwächen der Niederschlagsmessverfahren finden sich bei https://de.wikipedia.org/wiki/Niederschlagsmesser . Auch der Aufstellort des Regenmessers hat Einfluß: https://www.wetterstation.net/regenmesser-aufstellen/ . Der Deutsche Wetterdienst beschreibt in seinem ‘Technikhandbuch der Wettermeldestellen’ ausführlich Vorgaben für Wetterstationen.

Die Anzahl der Wippenbewegungen ist das Maß für die Regenmenge und wird vom ATmega mittels einer Interruptroutine gezählt. Der Microcontroller führt das Zählen quasi so nebenbei durch. Damit bleibt die bisherige Eigenschaft des geringen Stromverbrauchs erhalten.

Regenmesser Aussenansicht

Niederschlagsmesser Aussenansicht

. .

Regenmesser Innenansicht

Niederschlagsmesser Innenansicht

Bauteile und Bezug:

Der Wippenmechanismus mit Auffangschale und Reedkontakt ist bei den div. Verkaufsportalen im Internet für ca. 10-15 € zu erwerben. Oft wird es als Ersatzteil für Wetterstationen angeboten. In Suchmaschinen bzw. den Verkaufsportalen führt der Begriff “Rain Gauge” meist schnell zum Ziel. Eine Libelle zur waagerechten Ausrichtung erleichtert die Aufstellung.

Eine Beschreibung zum Aufbau findet sich auch unter: http://www.elektronik-labor.de/Notizen/Regensensor.html. Für den Selbstbau stellen wir hier die 3-D-Druckvorlage der Wippe zur Verfügung. 3-D-Vorlage

Wir haben uns gegen die oft eingesetzten Hall-Sensoren entschieden, weil diese fortwährend Strom verbrauchen. Anstelle dessen werden ein Reedkontakt (Schliesser) z.B. PIC MS-324-3 oder 313-3; reichelt LITT FLEX141015 und ein/zwei Rundmagnete 4mm, z.B. reichelt Magnet 4.2 benötigt. Zur Ansteuerung des Reed-Kontakt ggf. zwei Magnete übereinander montieren.
Als Gehäuse des Regenmessers kann ein Abflussrohr HT DN 110 dienen. Benötigt wird das Rohrende mit Muffe, weil es etwas größer ist und die Wippe gut aufnehmen kann. Das Rohr wird so abgelängt, dass der im Rohr befindliche Trichter mit seinem Auslaufende ca. 5-10mm Abstand zur Wippe hat.

Für den Wippenmechanismuss und die Montage des Reedkontakts ist ein wenig Kreativität gefragt. Ein passender Trichter findet sich in gut sortierten Handel/Baumarkt usw..
Die Wippe darf im eingebauten Zustand nur eine minimale Vorzugslage haben. Ggf. durch Zusatzgewicht eine gute Symetrie herstellen.
Im rechten Bild zu sehen, dass die Wippe durch Anbringen einer Unterlagscheibe (eingeschmolzen mit dem Lötkolben), ausgeglichen wurde.

 

Der Anschluss an den beelogger und die Inbetriebnahme des Niederschlagmesser sind wie folgt durchzuführen:

Um einen Eingangsfilter an der beelogger-Platine aufzubauen wird ein Widerstand (470Ohm bis 1kOhm, 1/4 -1 W) und ein Kondensator (1-4,7nF, 16-100V, X7R/X5R) benötigt. Beide sollen bedrahtet sein, damit diese an der Schraubklemme montiert werden können.

Der ATmega 328, der im beelogger verwendet wird, verfügt über zwei Interrupteingänge.
Für den Regenmesser wird der Interrupt am ATmega Pin D3 benötigt. Damit die Verwendung von D3 für den Regenmesser möglich ist, sind kleinere Anpassungen notwendig:
– Der Anschluss des DS18B20 kann nicht mehr an D3 erfolgen.
– Der DS18B20 kann stattdessen anstelle des DHT Nr.2 Pin D6 angeschlossen werden.
– Der Widerstand (4k7) an D3, Anschluss für DS18B20 (beim der Solar-Platine beschriftet mit Z-R1), darf nicht bestueckt sein, ggf. entfernen.
Der oben genannte Eingangsfilter wird so aufgebaut:
– Der Kondensator (1nF- 4,7nF) wird an der Anschlussklemme zwischen D3 und GND eingebaut.
– Der Widerstand 470Ohm-1kOhm wird mit einer Seite an D3 angeklemmt, an die andere Seite wird ein Draht der Leitung zum Reed-Kontakt des Regenmesser angelötet. Der zweite Draht des Reed-Kontakt des Regenmessers wird an GND angeschlossen.

Beim beelogger-SMD kann der 470Ohm/1kOhm Widerstand auch anstelle des Jumpers D3 eingelötet werden und der Kondensator (1nF – 10nF) auf der Platinenunterseite zwischen D3 (ATmega-Seite des Widerstands) und GND der Schraubklemme.

Für die STM32F… µC wird PIN PA15 verwendet. Ein 4k7 Pullup von PA15 nach 3,3V (Dauerspannung von einer der 3,3V Pins des Controller-Moduls) ist einzubauen. Der Kondensator (1nF – 10nF) und Widerstand 150 Ohm (anstelle 1K) werden wie im Bild gezeigt an PA15 (anstatt D3) verdrahtet.

Anpassung bestehender Sketche:

Der Multi-Sketch wird mit der beelogger_addon.ino erweitert. Dazu die beelogger_addon.ino in das Sketch-Verzeichnis kopieren. Auf Serverseite wird das Skript ab Version M.07 benötigt. Die Zuordnung des Sensor-Wertes ist in der Funktion Sensor_Regen() auf die Variable Aux[2] programmiert.

Der Haupt-Sketch muss in der setup() und loop erweitert werden.

In setup() ist diese Zeilen zu ergänzen:

Init_Rain_Int();

In loop()  bzw. in der routine measure_and_send() werden unmittelbar vor dem Aufruf der Funktion Daten_Senden diese Anteile eingefügt:

Sensor_Regen();

Die Aktivierung des Sensors_Regen für die Messung und Datenübertragung erfolgt in der Sketch-Konfiguration:

#define Anzahl_Sensor_Regen 1 // Mögliche Werte: '0','1' --- Nr 2 ---- (Regenmesser, erfordert Umbau des beelogger und zusätzliche INO)

In der beelogger_config.h wird die Zuordnung des ONE_WIRE_BUS von PIN D3 auf PIN D6 mit Aktivierung des Regensensors in der Sketch-Konfiguration automatisch geändert, so dass keine Anpassung notwendig ist. Ungültige-Download-ID.
Systeme mit zwei DHT und einem DS18B20 sind nach zuzätzlicher Anpassung des beelogger möglich, z.B. Nutzung von D7 und zusätzlichem Pull-Up-Widerstand. Im Sketch ist die Konfiguration in der beelogger_config.h entsprechend dem Systemaufbau anzupassen.
Bei Fragen bitte eine Mail an den beelogger-support.

Die notwendigen Ergänzungen und Anpassungen für den Niederschlagsmesser am Beispiel des MULTI-WLAN-Sketch hier:
Ungültige-Download-ID.

Kalibrierung:

Die Kalibrierung des Regenmessers ist mit wenigen Schritten durchgeführt.

– 100ml Wasser langsam durch das Messsystem laufen lassen und die Ticks vom beelogger zählen lassen. Größere Mengen Wasser, z.B. 300ml, erhöhen die Genauigkeit. Zum Test der Schaltung, zählen der “Ticks” steht ein Testprogramm zu Verfügung.  Ungültige-Download-ID.

– Die Wassermenge durch die Anzahl der Ticks teilen. z.B. 100ml ergeben 20 Ticks, ergibt dann ca. 5ml.

– Die Oberfläche des Auffangbehälters berechnen: Pi * (Radius)² oder Pi * (Durchmesser/2)²

Im getesten Aufbau ist die 104cm² (Trichter mit 11,5cm Durchmesser).

Mit diesen Werten kann der Kalibrierwert errechnet werden. Kal_Wert = Wassermenge pro Tick[ml] / Oberfläche des Auffangbehälters[cm²]; Der Wert ist auf Liter pro Quadratmeter umzurechnen, mit 10000 cm²/m² und 1000 ml/l ergibt sich Faktor 10.

Das ergibt im Beispiel einen Kalibrierfaktor mit (5ml / 104 cm²)*10 von 0,48 l/m².

In der beelogger_addon.ino ist der Kalibrierwert des Regenmessers einzutragen.

const float Rain_Cal = { 0.48 }; // Hier ist der Wert aus der Kalibrierung einzutragen

Ein Sketch dazu findet sich hier: Kalibrierung&Test

Der Programmcode zum Messbetrieb für den Arduino Datenlogger mit Stockwaage für Imker ist für ATmega328 oder STM32Fxyz für unterschiedliche Konfigurationen mit bis zu vier Waagen pro System verfügbar.