Tasmota Sensordaten an OH3 senden/auslesen

Die alternative Firmware für ESP8266 based devices

Moderatoren: seppy, udo1toni

Alfi84
Beiträge: 3
Registriert: 9. Sep 2020 13:56

Re: Tasmota Sensordaten an OH3 senden/auslesen

Beitrag von Alfi84 »

Aber ich kann mir nicht vorstellen, das hier das Volumen ausgerechnet werden muss. Der Sensor kann ja nur Distanz messen. Eigentlich muss ich ihm doch nur sagen, das bei 20cm die Zisterne 6000l hat und bei 250cm der Tank leer ist. Oder denke ich hier falsch?

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Tasmota Sensordaten an OH3 senden/auslesen

Beitrag von peter-pan »

...ok. Du denkst nicht falsch. Das geht bestimmt auch. Vielleicht so:
6000 - (6000 ltr. / 230 cm) x (Distanz in cm - 20 cm). ;)
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Benutzeravatar
udo1toni
Beiträge: 13856
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Tasmota Sensordaten an OH3 senden/auslesen

Beitrag von udo1toni »

Wenn es Dir nur darum geht, ob die Zisterne leer oder voll ist, mag das passen. Distanz = 20 cm -> voll; Distanz = 220 cm -> leer. Wenn die Zisterne ein aufrecht stehender Zylinder ist, kannst Du mit der Formel l = 6000l/(dMax-dMin)*(dMax - d) die Füllmenge ausrechnen.
Sollte der Tank aber kein aufrecht stehender Zylinder (oder wahlweise auch Quader) sein, so wird die Formel so nicht funktionieren.
Üblich sind liegende Zylinder. Damit ändert sich die Formel für den teilgefüllten Körper erheblich, von der maximalen Füllhöhe bis zur halben Füllhöhe nimmt das Volumen pro mm zu, anschließend nimmt es wieder ab. Das heißt, da wird ein Arcuscosinus mit einfließen, der mit (dMax-d)/(dMax-dMin)*180 gefüttert wird, das ist dann aber leider nur ein Teil der Wahrheit... für die genaue Formel bin ich jetzt zu müde...

EDIT: Google hilft... https://iwer.info/article/Mathematische ... index.html

Ich habe in meinem Garten einen Tank von Wisy, die sind etwa so geformt wie eine Eierhälfte, oben in der Mitte sitzt dann der Dom zum Einsteigen. Der Tank ist super stabil durch die Form, aber das Volumen gegen die Füllhöhe zu berechnen dürfte kein Zuckerschlecken sein. Jetzt weiß ich auch wieder, warum ich immer noch keinen Sensor verbaut habe...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: Tasmota Sensordaten an OH3 senden/auslesen

Beitrag von peter-pan »

.... :lol: . Also, wie gesagt, alles eine Sache der Betrachtung, bzw. der Genauigkeit und der Form. Udo hat es auf den Punkt gebracht.

Ich hab das mit deiner "einfachen Lösung" ohne Randbedingungen ausprobiert und hier ist das Ergebnis:
Als Yaml-Code:

Code: Alles auswählen

component: oh-label-cell
config:
  title: Zisterneninhalt
  subtitle: Fassungsvermögen 6000 ltr.
  footer: ="momentane Distanz ist. " + items.esp_amica_01_dist.displayState
  icon: '=(items.esp_amica_01_dist.state > 230) ? "oh:cistern-0" :
    (items.esp_amica_01_dist.state > 50) ? "oh:cistern-60" :
    (items.esp_amica_01_dist.state > 21) ? "oh:cistern-100" : ""'
  item: esp_amica_01_dist
  label: =Number(6000 - ( 6000/230) * (items.esp_amica_01_dist.state
    -20)).toFixed(0) + " Liter"
  color: '=items.esp_amica_01_dist.state >230  ?  "red"  :  "green"'
  on: =items.esp_amica_01_dist.state >1
Die eigentliche Berechnung erfolgt unter:

Code: Alles auswählen

 label: =Number(6000 - ( 6000/230) * (items.esp_amica_01_dist.state -20)).toFixed(0) + " Liter"
Die anderen Ausdrücke/Expressions (z.B.: color, icon, etc.) sind noch kleine Gimmicks. ;)

als Screen-Shot:
zisterne.jpg
Wenn dir das reicht ???!!! :lol: ;)

Edit: Achtung - Ich bin keine Mathe-Genie :oops: :oops: ;)
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Alfi84
Beiträge: 3
Registriert: 9. Sep 2020 13:56

Re: Tasmota Sensordaten an OH3 senden/auslesen

Beitrag von Alfi84 »

Genau so reicht mir das ;)
Eine Angabe in % wäre auch ok z.b. 20cm=100% und 230cm=0%
Mir kommt es nicht auf die exakte Menge an. Es ist mir nur wichtig zu wissen, dass eventuell bei 10% eine Bewässerung mit der Pumpe nicht reicht und sich somit die Pumpe nicht leer saugt🧐
Blöde Frage aber wo müsste ich den Code dann einfügen? Einfach am Item?

Benutzeravatar
udo1toni
Beiträge: 13856
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Tasmota Sensordaten an OH3 senden/auslesen

Beitrag von udo1toni »

Der Code ist in diesem Fall Bestandteil der UI.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten