NEXUS v4.3.0 – Methodendokumentation

NEXUS v4.3.0 – Methodendokumentation: Hardware, Sensorik & Dämpfungsberechnung

Projektstatus: Validierungsphase (Januar - Oktober 2026)
Autor: Jochen Roth
Letzte Aktualisierung: 7. Februar 2026
DOI: [wird nach Zenodo-Upload ergänzt]


1. Projektziel

Das NEXUS-System (Network for Environmental eXtreme-precision Ultrasonic Sampling) ist ein mobiles Monitoring-System zur Erfassung von Mikroklima-Parametern für die bioakustische Fledermausforschung.

Kernziel: Berechnung des frequenzabhängigen atmosphärischen Dämpfungskoeffizienten α (Alpha) nach ISO 9613-1, um die tatsächliche Quelllautstärke und Reichweite von Fledermausrufen unter realen Bedingungen zu bestimmen.


2. Hardware-Spezifikationen

2.1 Steuereinheit

Mikrocontroller: Seeed XIAO ESP32S3

  • Prozessor: Dual-Core Xtensa LX7, 240 MHz
  • RAM: 512 KB SRAM, 8 MB PSRAM
  • Flash: 8 MB
  • Konnektivität: WLAN 802.11b/g/n (2.4 GHz), Bluetooth 5.0
  • Betriebsspannung: 3.3V (USB-C, 5V Eingang)

Begründung der Wahl:
Kompakte Bauform (21×17,5 mm), integriertes WLAN für lokales Daten-Streaming, ausreichend Rechenleistung für ISO-Berechnungen in Echtzeit.


2.2 Umweltsensorik

BME680 (Bosch Sensortec)

Schnittstelle: I²C (0x76 oder 0x77)
Messparameter & Genauigkeit:

Parameter Messbereich Genauigkeit Auflösung
Temperatur -40°C bis +85°C ±0,5°C (0–65°C) 0,01°C
Luftfeuchtigkeit 0–100% rH ±3% rH (20–80%) 0,008% rH
Luftdruck 300–1100 hPa ±0,6 hPa (0–65°C) 0,18 Pa
VOC (Gas) 0–500 IAQ Qualitativ -

Montage: Thermisch entkoppelt, ca. 12 cm Luftlinie diagonal vom XIAO entfernt (aktuell in Tupper-Dose für Witterungsschutz, siehe Hardware-Dokumentation). Verhindert Prozessorwärme-Einfluss auf Temperatur- und Feuchtemessung.

Messzyklen: Alle 8 Sekunden (fest)
VOC-Stabilisierung: 25–30 Minuten nach Systemstart erforderlich


AIR530 GPS-Modul

Schnittstelle: UART (9600 Baud)
Funktion: Präzise Zeitstempel (UTC) und Standortdaten (WGS84)
Genauigkeit: ±2,5 m CEP (Circular Error Probable)
Kaltstart: <35 Sekunden
Warmstart: <1 Sekunde

Nutzung: GPS-Zeit wird für Daten-Synchronisation mit TeensyBat-Aufnahmen verwendet. Koordinaten werden NICHT veröffentlicht (Habitatschutz).


Sparkfun Weather Meter Kit (SEN-15901)

Komponenten:

  • Windgeschwindigkeit: Reed-Schalter-Anemometer (0,8–70 m/s)
  • Windrichtung: Potentiometer-basiert (8 Hauptrichtungen)
  • Niederschlag: Kippwaage (0,2794 mm pro Impuls)

Schnittstelle: Digitale/analoge GPIO-Pins
Zweck: Erfassung von Windeinfluss auf Rufausbreitung und Niederschlag (Fledermausaktivität bei Regen = 0).

Wichtig: Wind-Daten sind NUR bei stationären Messungen valide (siehe Abschnitt 4.2)!


2.3 Energieversorgung

Akku: 10.000 mAh LiPo Powerbank (USB-A zu USB-C)
Laufzeit: >72 Stunden (bei 240 MHz Dauerbetrieb)
Keep-Alive-Trick: Prozessor läuft bewusst mit voller Taktung, um Powerbank-Abschaltung zu verhindern (keine Auswirkung auf BME680-Messungen durch thermische Entkopplung).


2.4 Datenausgabe & Speicherung

Lokales Interface: WLAN Access Point "NEXUS_Base" (192.168.4.1)

  • HTML-Dashboard mit Echtzeit-Grafiken (Chart.js)
  • Parameter: Temperatur, Feuchte, Druck, α-Koeffizient (20, 40, 55, 80, 110 kHz)

Logging: microSD-Karte (CSV-Format, siehe Abschnitt 4)
Geplant: LoRaWAN-Modul für Fernübertragung (ab Phase 2)


3. Berechnungsgrundlagen

3.1 Atmosphärische Dämpfung nach ISO 9613-1

Die Schallabsorption in der Atmosphäre wird berechnet nach:

α = (1,84 × 10⁻¹¹ × (p/p₀)⁻¹ × (T/T₀)^0,5 × f²) + χ

Wobei:

  • α = Dämpfungskoeffizient [dB/m]
  • p = Luftdruck [hPa]
  • p₀ = Referenzdruck (1013,25 hPa)
  • T = Absolute Temperatur [K]
  • T₀ = Referenztemperatur (293,15 K = 20°C)
  • f = Frequenz [kHz]
  • χ = Molekulare Absorption (O₂ und N₂, temperatur- & feuchteabhängig)

Relevanz für Fledermausrufe:
Bei 110 kHz (typisch für Rhinolophus hipposideros) kann α zwischen 0,8 dB/m (kalt/trocken) und 2,5 dB/m (warm/feucht) variieren. Bei einer Distanz von 10 Metern bedeutet das einen Intensitätsverlust von 8–25 dB!


3.2 Implementierung im NEXUS

Die Berechnung erfolgt live auf dem ESP32S3:

  1. BME680 liefert Temperatur (°C), Feuchte (%), Druck (hPa)
  2. Umrechnung in absolute Temperatur (K)
  3. Berechnung von α für 20, 40, 55, 80, 110 kHz
  4. Ausgabe auf Display & Webinterface in dB/m

Code-Sprache: C++ (Arduino Framework)
Rechenzeit: <5 ms pro Zyklus


4. Datenformat & Struktur

4.1 CSV-Logging (microSD)

Dateiname: DD-MM-YY-N.csv (z.B. 03-02-26-1.csv)

Spaltenstruktur:

Date, Time, Lat, Lon, Alt, Sats, HDOP, Temp_C, Hum, DewPoint, Pres_hPa, Gas_kOhm, Cloud, 
Wind_Avg_ms, Wind_Gust_ms, Wind_Dir, Wind_Dir_deg, Rain_mm, Mode, 
a20k, a40k, a55k, a80k, a110k

Spaltenbeschreibung:

Spalte Einheit Beschreibung
Date DD.MM.YYYY Datum der Messung
Time HH:MM:SS Uhrzeit (Lokalzeit)
Lat Dezimalgrad Breitengrad (WGS84), "NoFix" wenn kein GPS-Signal
Lon Dezimalgrad Längengrad (WGS84), "NoFix" wenn kein GPS-Signal
Alt m ü. NN Höhe über Normalnull
Sats Anzahl Anzahl empfangener GPS-Satelliten (0 = kein Fix)
HDOP - Horizontal Dilution of Precision (GPS-Genauigkeit, <2 = gut)
Temp_C °C Lufttemperatur (BME680)
Hum % rH Relative Luftfeuchtigkeit (BME680)
DewPoint °C Taupunkt (berechnet aus Temp + Humidity)
Pres_hPa hPa Luftdruck (BME680)
Gas_kOhm VOC-Sensor Rohdaten (BME680, benötigt 25-30 Min Stabilisierung)
Cloud Okta (0-8) Bewölkungsgrad (manuelle Eingabe vor Start): 0 = wolkenlos, 8 = vollständig bedeckt
Wind_Avg_ms m/s Durchschnittliche Windgeschwindigkeit (nur bei Mode=Stationär valide!)
Wind_Gust_ms m/s Windböen (nur bei Mode=Stationär valide!)
Wind_Dir Text Windrichtung (N, NE, E, SE, S, SW, W, NW, ---)
Wind_Dir_deg ° Windrichtung in Grad (0-360)
Rain_mm mm Niederschlag (kumulativ seit Systemstart)
Mode Text Mobil = Transektbegehung (Wind-Daten NICHT valide)
Stationär = Festes Setup (Wind-Daten valide)
a20k dB/m Atmosphärische Dämpfung bei 20 kHz (ISO 9613-1)
a40k dB/m Atmosphärische Dämpfung bei 40 kHz
a55k dB/m Atmosphärische Dämpfung bei 55 kHz
a80k dB/m Atmosphärische Dämpfung bei 80 kHz
a110k dB/m Atmosphärische Dämpfung bei 110 kHz

Beispiel-Zeile (mit GPS-Fix):

03.02.2026,15:00:30,51.720558,8.760098,112.3,12,1.0,9.45,45.23,-1.83,988.92,8.43,8,0.0,0.0,---,0.0,0.0,Mobil,0.4536,0.7429,0.9917,1.5468,2.4686

Abtastrate: 8 Sekunden (fest)


4.2 Besonderheiten der Datenerfassung

GPS-Status

  • "NoFix": Kein GPS-Signal (z.B. in Gebäuden, unter dichtem Baumbestand)
  • Gültiger Fix: Mindestens 4 Satelliten erforderlich (Sats ≥ 4)
  • HDOP < 2: Gute Genauigkeit (<5m horizontaler Fehler)

Messmodus-Abhängige Datenqualität

Parameter Mode = Mobil Mode = Stationär
Temperatur, Feuchte, Druck ✅ Valide ✅ Valide
α-Koeffizienten (a20k-a110k) ✅ Valide ✅ Valide
GPS-Position ✅ Valide (Transekt-Track) ✅ Valide (feste Position)
Wind (Geschw. + Richtung) ❌ NICHT valide (Eigengeschwindigkeit verfälscht Messung) ✅ Valide
Niederschlag ✅ Valide ✅ Valide
Bewölkung (Cloud) ✅ Valide (manuelle Eingabe vor Start) ✅ Valide

Wichtig: Bei der Auswertung von Transektdaten (Mode=Mobil) dürfen Windgeschwindigkeit und Windrichtung NICHT zur Interpretation der Fledermausaktivität herangezogen werden!


4.3 Frequenzauswahl für α-Berechnung

Die fünf berechneten Frequenzen decken das biologisch relevante Spektrum deutscher Fledermausarten ab:

  • 20 kHz: Niedrigfrequente Arten (Nyctalus noctula, Großer Abendsegler)
  • 40 kHz: Myotis-Arten, Plecotus-Arten
  • 55 kHz: Eptesicus serotinus (Breitflügelfledermaus)
  • 80 kHz: Pipistrellus nathusii (Rauhautfledermaus)
  • 110 kHz: Rhinolophus hipposideros (Kleine Hufeisennase)

5. Kalibrierung & Qualitätssicherung

5.1 Sensor-Kalibrierung

BME680:

  • Werkseitig kalibriert (Bosch Sensortec)
  • Validierung gegen DWD-Wetterstation Paderborn-Lippstadt (EDLP)
  • Abweichung Temperatur: <0,3°C
  • Abweichung Luftdruck: <0,5 hPa

GPS-Zeitstempel:

  • Synchronisation mit NTP-Server (pool.ntp.org) bei WLAN-Verfügbarkeit
  • Genauigkeit: <1 Sekunde

5.2 Bekannte Limitierungen

Aspekt Limitation Auswirkung
Windmessung 8 Richtungen (nicht 360°) Grobe Richtungsangabe
Wind bei Transekt Eigengeschwindigkeit verfälscht Messung Wind-Daten nur bei Mode=Stationär valide
GPS-Fix Verzögerung bei Baumbedeckung Keine Koordinaten bei dichten Habitaten
Temperaturgradienten Sensor misst Punkt, nicht Raum Mikroklima-Varianz innerhalb 1 m möglich
VOC-Sensor Nicht kalibriert für spezifische Gase Nur qualitative Luftqualität
Gehäuse Provisorisches Setup (Tupper-Dose) Keine Auswirkung auf Messgenauigkeit, finale Gehäuselösung in Entwicklung

6. Feldeinsatz-Protokoll

6.1 Standard-Deployment

Setup-Konfiguration:

  • Rig-Höhe: 200 cm (NEXUS-Plattform auf Stativ)
  • Wetterstation: 240 cm über Boden
  • Freie Sicht: GPS-Modul (AIR530) benötigt Himmelssicht
  • Gehäuse: Tupper-Dose (witterungsgeschützt, belüftet)

Vorlauf: 30 Minuten Stabilisierungsphase

  • GPS-Fix: Typisch 2–5 Minuten
  • BME680 Gas-Sensor: Benötigt 25–30 Minuten für stabile VOC-Baseline
  • Grund: GPS-Zeitstempel müssen mit TeensyBat-Aufnahmen synchronisiert werden (Genauigkeit <1s erforderlich)

Laufzeit: Mindestens 2 Stunden (typisch: Abenddämmerung bis Mitternacht)

Begleit-Hardware:

  • TeensyBat (Rufaufnahme)
  • TOPDON TS004 (Thermalkamera)

6.2 Datenvalidierung

  • Cross-Check mit DWD-Daten (Temperatur, Druck)
  • Plausibilitätsprüfung: α steigt mit Frequenz
  • Ausreißer-Detektion: Werte außerhalb physikalisch möglicher Bereiche werden markiert

6.3 Pre-Deployment Checkliste

T-30 Min (Systemstart):

  • ☐ Powerbank angeschlossen (Ladezustand >80%)
  • ☐ NEXUS_Base WLAN prüfen (192.168.4.1 erreichbar?)
  • ☐ GPS-LED blinkt (Satellitensuche aktiv)
  • ☐ BME680 liefert erste Werte (auch wenn VOC noch instabil)
  • ☐ Bewölkungsgrad (Cloud) eingegeben (0-8 Okta)
  • ☐ Messmodus gewählt (Mobil / Stationär)

T-5 Min (Validierung):

  • ☐ GPS-Fix vorhanden (Lat/Lon stabil)
  • ☐ BME680 VOC-Wert stabilisiert (<10% Schwankung über 2 Min)
  • ☐ Temperatur/Feuchte/Druck plausibel
  • ☐ Wetterstation: Wind/Regen funktionsfähig (bei Stationär-Modus)
  • ☐ TeensyBat GPS-Sync bestätigt

T-0 (Start Rufaufnahme):

  • ☐ Beide Systeme (NEXUS + TeensyBat) laufen synchron
  • ☐ CSV-Logging aktiv (microSD-Schreibzugriff prüfen)

7. Weiterführende Analysen

Die NEXUS-Daten werden kombiniert mit:

  • BatDetect2-Klassifizierung (KI-basierte Artbestimmung)
  • Spektrogramm-Analyse (Ruffrequenz, Rufstruktur)
  • Thermalkamera-Validierung (Sichtbestätigung der Tiere)

Ziel: Rekonstruktion der ursprünglichen Rufintensität unter Berücksichtigung der atmosphärischen Dämpfung.


8. Datenpublikation & Reproduzierbarkeit

Zenodo-Upload (geplant: Oktober 2026):

  • Rohdaten (CSV)
  • Hardware-Schemata
  • Firmware (GitHub-Link)
  • Diese Methodendokumentation

Open Science:
Alle Daten werden unter CC-BY 4.0 Lizenz veröffentlicht. Nachbau des Systems ist ausdrücklich erwünscht!


9. Literatur & Standards

  • ISO 9613-1:1993 – Acoustics — Attenuation of sound during propagation outdoors — Part 1: Calculation of the absorption of sound by the atmosphere
  • BME680 Datasheet – Bosch Sensortec (Rev. 1.1, 2023)
  • Seeed XIAO ESP32S3 Specs – Seeed Studio Wiki
  • BatDetect2 – Mac Aodha et al. (2022), GitHub: macaodha/batdetect2

10. Kontakt & Projektinformationen

Blog: paderbats.blogspot.com
Daten: zenodo.org (DOI folgt nach Upload)
Beobachtungen: observation.org/users/821691
Kontakt: [Kontaktformular im Blog]


Version: 4.3.0
Letzte Änderung: 7. Februar 2026
Status: Validierungsphase, Pre-Feldsaison
Lizenz: CC-BY 4.0 (nach Publikation)

Kommentare

Beliebte Posts