Planung für Zisternenfüllstandsmessung, Erfahrungsaustausch...

HA-DAU

Active member
Hallo zusammen,

ich plane aktuell meinen Füllstand der Zisterne zu messen und in Homeassistant einzubinden.
Das mit dem Sensor finde ich an sich gar nicht schlecht: TL-136 Drucksensor

Wie sind Eure Erfahrungen?
Wie habt Ihr das mit dem Füllstand dargestellt.
So eine Zisterne mit steigenden und sinkenden Füllstand wäre schon gut, so ähnlich wie bei einer Battery.
Geht das überhaupt?

Bin mal auf Eure Berichte gespannt, wie Ihr das gemacht habt.

Nachtrag: Ich glaube so könnte es vielleicht aussehen.....
Ist aktuell nur ein Test mit einem °C Sensor, aber das Prinzip müsste ja das gleiche bleiben, oder?
1713017755391.png
 
Und ? Hast Du dein Projekt schon umgesetzt ?
Ich habe im Garten einen IBC 1000 Liter Container und in der Garage ein 500 Liter Regenfass.
Da würde ich auch super gerne wissen, wie sieht der aktuelle Füllstand aus.
Gelesen habe ich, das manche das wohl mit Ultraschall Sensoren machen, aber das soll relativ unzuverlässig sein, gerade, wenn das Wasser in Bewegung ist.
Das mit dem Drucksensor klingt da schon deutlich besser, wobei ich aber auch ein Problem mit dem WLAN hätte. So weit reicht mein WLAN dann leider auch wieder nicht und noch mehr Repeater will ich auch nicht wirklich aufstellen.
Am liebsten wäre mit eine Lösung mit Kabel. Also Stromversorgung und Signale erst mal mit ca. 20 Meter Kabel näher an mein WLAN bringen und dann kann es gerne in eine WLAN Schaltung gehen. Fragt sich nur, ob ESP32 mit 20 Meter Kabellänge klar kommt oder ob mir die Signale zu schwach werden und auch ob die Spannungsversorgung das noch schafft.
Deswegen wäre eine Lösung mit LoRa WAN wohl am besten. Geringerer Stromverbrauch und deutlich größere Reichweite bzw. ähnlich Zigbee eine Weiterleitung der Daten über mehrere Geräte.

Wie sieht das bei euch aus ? Hat da schon jemand Erfahrung mit gesammelt ? Also den Drucksensor an einen ESP32 und der dann mit LoRa WAN ausgerüstet ?
 
Hallo @RudiP,

ja ich habe mein Projekt wie oben beschrieben umgesetzt und bin immer noch begeistert davon.

Der Sensor TL-136 Drucksensor ist in der Zisterne verbaut. Und durch ein sehr langes Kabel, Plus und Minus ins innere vom Haus verlängert worden.

So habe ich jetzt auch vier Balken des WLAN im Hause zu dem HomeAssistant im ESPHome.

1725883787809.png
Hier habe ich noch eine Gauge Anzeige gebaut.....
1725883906671.png

Nimm nicht die Ultaschallsensoren, die vergammeln mit der Zeit in der Luftfeuchte....

Achso, das mit Plus und Minus, kannst Du bis glaube ich >100 Meter verlängern. Macht keine Probleme...
Ich mache das mit einem ESP8266 D1 mini und die anderen Komponente wie beschrieben.
Habe den Code fast 1:1 von dort übernommen.
Nur auf meinen Füllungsgrad und Voltstärken angepasst.

In Grafana laufen auch die Daten auf und habe dort auch noch die Zisterne am laufen.
1725884794535.png


https://forum.heimnetz.de/threads/a...ation-die-farben-reihenfolge-veraendern.4552/
 
Zuletzt bearbeitet:
Wie war das mit dem Kalibrieren ?
In dem verlinkten Beitrag klang das beim ersten Versuch noch recht aufwendig mit Rohr, etwas Wasser rein und 10 cm weise messen, Werte notieren usw. Beim zweiten Versuch klang das einfacher.
Wie hast Du es gemacht ?
 
Hallo @RudiP

Wir haben das zu zweit gemacht über zurufen
Den Sensor habe ich alle 10% markiert.
Danach haben wir ohne Wasser den Voltwert notiert. Sollte aber nicht 0,0 V sein. Immer höher.
Sollte der Sensor ausfallen und 0,0 V anzeigen ist was faul.
Danach jede 10% Steigerung direkt in der Zisterne gemessen und aufgeschrieben.
So durch gearbeitet bis 100%.
War ja dieses Jahr kein Problem bei soviel Regen.
Reicht die Info?
Bei deinem Container reicht vermutlich auch die 0% und 100% Kalibrierung. Nennt sich 2 Punkt Messung linear.
 
Ja, das hilft mir alles schon gut weiter.
Das man den Sensor einfach mit 2 Kabel verlängern kann ist Super. Dann kann ich da noch 3, 4 Meter Kabel dran machen und komme damit bis in die Garage, wo es dann Trocken und wärmer ist, womit die Schaltung dann etwas geschützter ist.
Dort steht auch noch ein 500 Liter Regenfass, was ja dann an die selbe Schaltung dran kann mit einem eigenen Drucksensor.
Entfernungsmäßig könnte es dann auch schon mit dem WLAN klappen.
Das wird dann sicher eines meiner nächsten Projekte werden.
 
Hallo @RudiP,

mein zusätzliches Kabel und Sensor ist glaube ich ca. 30-40 Meter verlängert worden.
Wenn Du die Aktion aber machst, schreibe für jeden Sensor eine Eigene *.yaml und teste das Ergebnis.
Wenn das erste in Ordnung ist. Dann das ganze stromlos abklemmen und den nächsten Sensor in Angriff nehmen.
Wenn dann da auch alles passt. Dann die beiden Sensoren zusammen an das Modul anschließen und hoffen, dass noch alles passt.
Mit solchen 2 Sensoren an einem Modul habe ich noch nie gearbeitet.

Gehe lieber noch ein paar Meter näher zum WLAN mit dem ESP xxxx.
Verlängere lieber den Draht Plus und Minus, ist sicherer.

11 Stück DS18B20 Temperatur Sensoren habe ich an einem Modul am laufen. Da hat ja jeder Sensor eine hauseigene IP.
Viel Erfolg bei Deinem Projekt.
Berichte davon, wie es gelaufen ist....
 
Danke, werde ich mir mal anschauen, wenn ich wieder was mehr Zeit habe.
Heute ist mein Batteriespeicher Anker Solix mit PV gekommen, die ich jetzt erst mal in HA Integrieren will nebst einer automatischen Regelung der Ausgangsleistung.
 
Hallo @RudiP,

ja ich habe mein Projekt wie oben beschrieben umgesetzt und bin immer noch begeistert davon.

Der Sensor TL-136 Drucksensor ist in der Zisterne verbaut. Und durch ein sehr langes Kabel, Plus und Minus ins innere vom Haus verlängert worden.

So habe ich jetzt auch vier Balken des WLAN im Hause zu dem HomeAssistant im ESPHome.

Anhang anzeigen 8251
Hier habe ich noch eine Gauge Anzeige gebaut.....
Anhang anzeigen 8252

Nimm nicht die Ultaschallsensoren, die vergammeln mit der Zeit in der Luftfeuchte....

Achso, das mit Plus und Minus, kannst Du bis glaube ich >100 Meter verlängern. Macht keine Probleme...
Ich mache das mit einem ESP8266 D1 mini und die anderen Komponente wie beschrieben.
Habe den Code fast 1:1 von dort übernommen.
Nur auf meinen Füllungsgrad und Voltstärken angepasst.

In Grafana laufen auch die Daten auf und habe dort auch noch die Zisterne am laufen.
Anhang anzeigen 8254


https://forum.heimnetz.de/threads/a...ation-die-farben-reihenfolge-veraendern.4552/

Hallo @HA-DAU ,
Ich habe auch das Projekt nachgebaut und den Code mit meinen Daten abgeändert. Leider habe ich aber irgendwo einen Fehler, bekomme u.a. einen negativen Volumenwert angezeigt, wenn der Sensor draußen liegt. Kannst du mir deinen Code zur Verfügung stellen? Für mich ist das Thema ESP komplettes Neuland. Vielleicht erkenne ich dann bei einer Gegenüberstellung der Codes, wo der Fehler sich bei mir versteckt hat. Vielen Dank

Grüße Thoralf
 
Zuletzt bearbeitet:
Hallo @thalf007,

hier der Code ab der wichtigen Stelle....
YAML:
captive_portal:

  # i2c Bus auf D1 und D2 konfigurieren
i2c:
  id: bus_a
  sda: D2
  scl: D1
  scan: True

# ADC einrichten, ADDR-Pin ist auf VCC gelegt, daher Adresse 0x49 = https://esphome.io/components/sensor/ads1115.html, hier wegen gain: https://forum.arduino.cc/t/analogwerte-schwanken-nach-neustart-ungenau-mit-ads1115-gy-61-am-esp8266/1214305
ads1115:
  - address: 0x49
    id: ads1115_49

# ADC Kanal A0 zur Messwerterfassung
sensor:
  - platform: ads1115
    multiplexer: 'A0_GND'
    gain: 4.096   #oder diese Zahl?= 1.024*6 = 6.144
    name: "Wasserstand Zisterne cm"
    id: levelraw
    update_interval: 20s
    unit_of_measurement: cm
    accuracy_decimals: 1
    icon: "mdi:car-coolant-level"
# Messwerte glätten:
    filters:
      - sliding_window_moving_average:
          window_size: 20
          send_every: 20
# Spannungen nach Messreihe in Füllhöhe cm umrechnen
      - calibrate_linear:
          - 0.286 -> 0.0
          - 0.5 -> 23.0
          - 0.73 -> 46.0
          - 0.97 -> 69.0
          - 1.21 -> 92.0
          - 1.45 -> 115.0
          - 1.69 -> 138.0
          - 1.90 -> 161.0
          - 2.16 -> 184.0
          - 2.40 -> 207.0
          - 2.66 -> 230.0
         
# Spannungen nach Messreihe in Prozent Füllhöhe umrechnen
  - platform: template
    name: "Zisterne %"
    lambda: |-
      return id(levelraw).state;
   
    filters:
      - calibrate_linear:
   
          - 0.0 -> 0
          - 23.0 -> 10        
          - 46.0 -> 20              
          - 69.0 -> 30        
          - 92.0 -> 40        
          - 115.0 -> 50        
          - 138.0 -> 60        
          - 161.0 -> 70        
          - 184.0 -> 80        
          - 207.0 -> 90      
          - 230.0-> 100
         
    unit_of_measurement: prozent
    accuracy_decimals: 2          

# Füllmenge nach Füllstandskurve Liter berechnen

  - platform: template
    name: "Zisterne Liter"
    lambda: |-
      return id(levelraw).state;
   
    filters:
      - calibrate_linear:
   
          - 0.0 -> 0
          - 11.5 -> 380
          - 23.0 -> 760
          - 34.5 -> 1140
          - 46.0 -> 1521
          - 57.5 -> 1901      
          - 69.0 -> 2281
          - 80.5 -> 2661
          - 92.0 -> 3041
          - 103.5 -> 3421
          - 115.0 -> 3802
          - 126.5 -> 4182
          - 138.0 -> 4562
          - 149.5 -> 4942
          - 161.0 -> 5322
          - 172.5 -> 5702
          - 184.0 -> 6082
          - 195.5 -> 6463
          - 207.0 -> 6843
          - 218.5 -> 7223
          - 230.0 -> 7603
         
    unit_of_measurement: liter
    accuracy_decimals: 0

  - platform: wifi_signal # Reports the WiFi signal strength/RSSI in dB
    name: "WiFi Signal dB"
    id: wifi_signal_db
    update_interval: 600s
    entity_category: "diagnostic"
  - platform: copy # Reports the WiFi signal strength in %
    source_id: wifi_signal_db
    name: "WiFi Signal Percent"
    filters:
      - lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
    unit_of_measurement: "% Signal"
    entity_category: "diagnostic"
    device_class: ""
 
Zuletzt bearbeitet:
Hallo @HA-DAU,

vielen Dank. Mein Code ist im Grunde fast identisch. Leider zeigt es mir weiterhin bei einem leeren Füllstand in cm, -428 Liter an. Ich habe die Ausgabe in % hinzugefügt und die passt auch.
Bin ratlos.
Kann es daran liegen, dass ich mein System ohne eine Multiplexer aufgebaut habe? Dann dürfte aber der cm Wert auch nicht passen.

VG
Thoralf
 
Hallo @thalf007,

hast Du die Spannung bei 0 Prozent auf Deinen Wert angepasst?
Bei mir ist das in cm so.
- calibrate_linear:
Spannung - 0.286 -> 0.0 cm

Das ist der wichtige Schritt.

Nimm mal alles andere erst einmal raus.
Dann die nächste Umrechnung benutzen und anpassen.
 
@HA-DAU ,

habe den Fehler gefunden!

# Messwerte glätten:
filters:
- sliding_window_moving_average:
window_size: 20
send_every: 20
- multiply: 3.3
# Spannungen nach Messreihe in Füllhöhe umrechnen
- calibrate_linear:
- 0.12 -> 0.0
- 0.16 -> 10.0
- 0.26 -> 15.0
- 0.36 -> 20.0
- 0.46 -> 25.0
- 0.56 -> 30.0
- 0.66 -> 35.0
...

Das multiply: 3.3 hat bei mir gefehlt.

Jetzt sieht es gut aus.
Danke für die Hilfe. Werde das System nochmal mit einem Multiplexer nachbauen.

VG
 

Zurzeit aktive Besucher

Keine Mitglieder online.

Neueste Beiträge

Letzte Anleitungen

Statistik des Forums

Themen
6.568
Beiträge
63.152
Mitglieder
6.786
Neuestes Mitglied
Munber
Zurück
Oben