NEWS
alte Fenstersensoren Smart machen
-
Ich mache jetzt Trick 17
-5 400,9 -4 436,7 -3 475,3 -2 517 -1 561,9 0 610 1 657 2 706 3 758 4 813 5 872 6 935 7 1001 8 1072 9 1147 10 1227 11 1312 12 1402 13 1497 14 1598 15 1705 16 1817 17 1937 18 2063 19 2196 20 2337
Das sind die Werte des Drucks für alle Temperaturen, unter -5 wird es nie werden, und auch nie mehr als 20, dann berechne ich das nicht, sondern gebe die Werte vor
Vorn Temperatur, dahinter der Druck, damit sollte es gehen.
-
dazu meldet sich bestimmt User homoran, der macht das öfters
und vergiß die Alarmmeldung nicht.
Datenpunkt in Mqtt erstellen und beschreiben mal in Ruhe testen.
"" ist Text Variable, der Timer zählt hoch bis 5 und wird dann auf 0 gesetzt.
Wenn WRT ist > < 50 dann Nass oder Trocken>D Timer=0 WRT=48 NAS="Nass" TRO="Trocken" KEL="" >BS ;Datenpunkt Mqtt anlegen nach reboot +>subscribe EA, cmnd/Keller/Feuchte >S Timer+=1 if WRT>50 then KEL=NAS endif if WRT<50 then KEL=TRO endif if Timer>5 ;alle 5 Sekunden then ; Datenpunkt mit Wert beschreiben ; und an IO MQtt senden +>publish Keller/Feuchte %KEL% ;Timer auf 0 setzen Timer=0 endif >W Kellerfeuchte{m} %KEL% Feuchtewert{m} %WRT%
-
if temp>9 then sat=1147 endif if temp>10 then sat=1227 endif if temp>11 then sat=1312 endif
So dachte ich es
Aber wenn ich untenWasser in g/m³ %sat%
scheint die Variable leer zu sein ?
-
zeig mal alles ab D
hinter then nix schreiben, neue Zeile für sat= -
Halleluja
hier der Code falls es wen interessiert
>D temp=0 hum=0 sat=0 wasser=0 >T temp=AM2301#Temperature hum=AM2301#Humidity >S if temp>9 then sat=1147 endif if temp>10 then sat=1227 endif if temp>11 then sat=1312 endif wasser=sat*0.018/8.314/(273.15+temp)*1000 >W Wasser in g/m³ %wasser%
Jetzt muss ich es noch so pimpen das der Wert rechts steht, und ihn per MQTT pushen, dann bin ich fertig
Hinweis, im Code sind aktuell nur 3 Sättigungswerte für die 3 Temperaturen hinterlegt, der Rest kommt noch
Edit 2, die 8,78 sind natürlich der Wert für 100% muss den noch mit meiner % Zahl multiplizieren, um den tatsächlichen Wert zu erhalten
-
@berndsolar13 sagte in alte Fenstersensoren Smart machen:
Jetzt muss ich es noch so pimpen das der Wert rechts steht, und ihn per MQTT pushen, dann bin ich fertig
{m}
das gehört hinter der Var Wasser
g/m³Mqtt publish :
+>publish Keller/Feuchte %wasser%geht doch ............................................
+>subscribe EA, cmnd/Keller/Feuchtezustand
+>subscribe EA, cmnd/Keller/Feuchtewert+>publish Keller/Feuchtezustand %KEL%
+>publish Keller/Feuchtewert %WRT% -
danke dir, für heute reichts erstmal
Das Ding läuft nun, weiter gehts in 3 Wochen, wenn die ESP32 kommen.
Bis dahin können die erst mal Daten Loggen.Letzter Stand jetzt:
Werde dann die Tage mal testen, ob die Menge an Wasser in der Luft sich beim Lüften reduziert.
-
ok, dann lade bitte das fertige script später hoch, kann ich auch gebrauchen
Muß erst Sensoren bestellen. -
@ralla66 sagte in alte Fenstersensoren Smart machen:
ok, dann lade bitte das fertige script später hoch, kann ich auch gebrauchen
Muß erst Sensoren bestellen.Klaro, stell ich dann rein,
DHT22 bei Ebay 3er Pack für Knapp 7 Euro (China), wenn du 3 Wochen warten kannst, oder in DE bestellen, 2 Tage warten, dafür 6 Euro pro Sensor -
Muss doch noch mal stören
Hab das ganze bisher über den Sonoff Adapter laufen lassen, wie alle meine Tasmotas.
Da ich auch die Wasserwerte loggen will, mit deinem Script hab ich den MQTT Broker Adapter aktiviert. Er verbindet auch, das Problem ist aber im Gegensatz zum Sonoff Adapter sind die Werte hier scheinbar in einem "Objekt"{ "StatusSNS": { "Time": "2023-12-27T20:27:37", "AM2301": { "Temperature": 9.1, "Humidity": 74.7, "DewPoint": 4.8 }, "TempUnit": "C" } }
Es gibt also kein Zahnrad wie beim Sonoff wo ich jeden Wert einzeln speichern kann ?
Ist das so normal, wenn ja, muss ich mir wohl paar Videos anschauen, wie ich das dann in Influx bekomme.Dafür kommen meine Wasserwerte mit deinem Publish Script an.
Oder ich pushe alle werte so, und irgnoriere die Tasmota Übertragung. -
lade mal dein script hoch dann teste ich mit.
Habe noch einen gefunden.
Können wir dann per Blockly zerlegen. -
Also ist das normal das es so ankommt ?
Dachte MQTT ist auch wie Sonoff wo ich jeden einzelnen Wert speichern kann.
Ich muss diesen Json String also erst noch zerlegen ?>D temp=0 hum=0 sat=0 wasser=0 real=0 kellervolumen=180 full_water=0 Timer=0 >T temp=AM2301#Temperature hum=AM2301#Humidity >BS +>subscribe EA, cmnd/Windows/Bad +>subscribe EA, cmnd/Windows/Küche >S Timer+=1 if temp>9 then sat=1147 endif if temp>10 then sat=1227 endif if temp>11 then sat=1312 endif wasser=sat*0.018/8.314/(273.15+temp)*1000 real=wasser*hum/100 full_water=kellervolumen*real/1000 if Timer>10 then +>publish /Windows/Bad %real% +>publish /Windows/Küche %full_water% Timer=0 endif >W Wasser in g/m³ {m} %real% Wasser in Luft komplett {m} %full_water% l
Die 180 sind die m³ vom Keller, musst du bei deinem Keller anpassen
-
leider zerlegen oder du findest den Weg wie wir das nach Sonoff subscriben können.
Das passt bei Sonoff Adapter nicht :
+>subscribe EA, cmnd/Keller/Feuchtehier passt was mit dem Tasmota Topic / Fulltopic nicht.
Eventuell muß Tasmota Topic dann Keller sein. -
-
-
ich hab dein Push Script von oben verwendet, für die Fenster.
if Timer>10 then +>publish /keller/temp %temp% +>publish /keller/humi %hum% +>publish /keller/taup %tau% +>publish /keller/sat %real% +>publish /keller/wasser %full_water% Timer=0 endif
Sobald alle Tests abgeschlossen sind, werde ich es auf 60 Sekunden ändern, das sollte reichen
So schauts nun in Grafana aus.Denke das ist nun quasi perfekt, und ich brauche kein Blockly Script
PS, den Subscribe Teil hab ich entfernt, läuft trotzdem
-
supi, Läuft, fertig
wenn du das mal im Sonoff Adapter hinbekommst melde dichCooles Projekt, bin Weg 3,... 2....1-------------------------------------------->
-
Hab noch was im Forum gesucht, und folgenden Beitrag gefunden
https://forum.iobroker.net/topic/2313/skript-absolute-feuchte-berechnen/607?_=1703715957395
Der Hammer ist, die Werte für das Wasser in der Luft waren quasi identisch, 0.1 war die Abweichung
Dort einfach die Datenpunkte für die Sensoren außen und innen eingeben, und es gibt zusätzlich noch die Empfehlung fürs lüften.Das verlinkte Script berechnet für alle Sendsoren das "Dampfgewicht" in Gramm pro m³
Also wie bei meinem Tasmota Script nur für alle Sensoren. -
Ich hab das ganze noch mal verbessert, und die "statische" version durch eine "flexible" Version ersetzt. Vorher wurde je bei >10° der gespeicherte Wert für 10 genommen.
Hab die Formel nun umgesetzt, klappte aber nicht zu 100% weil in Tasmota die Expotential Funktion einen "Bug" hat steht auch in deren Anleitung
(imprecise version only)
bei 2 hoch 2 kommt in Tasmota nur 3,88 raus, richtig wäre 4
hab das ganze noch mit 2% erhöht, und die Werte schauen nun besser aus.
Vor allem ist nun der Treppen Effekt weg.
Ist also nur was für Perfektionisten, war vorher schon gut- Tippfehler oben übersehen, muss natürlich Neue und nicht Neuer heißen
-
Neues Update
Hatte heute etwas zeit, also hab ich mal einen 2. Sensor angeschlossen
Die Unterschiede bei der Luftfeuchte erkläre ich mir so, der 1. Sensor ist wegen der Stecksdose in der hinteren Ecke des Raums, der andere ist in einem anderen Zimmer in der Nähe der Tür, an der gerade die Außenluft von Links nach Rechts durch den Keller strömt. Und die Luft ist etwas trockener.Durch die 2 Sensoren, hat sich auch intern der Code geändert, aus AM2301 wurde nun AM2301-00 daher muss der Code angepasst werden, damit MQTT wieder geht. Bisher alles ohne irgendwelche Widerstände.
Überlege mir noch so ein Anschluss Board für 3 Euro zu holen, wo man den ESP 32 drauf setzt.
Das anbringen der Sensor Kabel wird mir sonst etwas zu fummelig, werden ja wohl über 20 Adern ;D Andere Variante, ein Female Female Jumper Kabel halbieren, und dann dort dann jeweils 1 Ader per Lüsterklemme verbinden.@Ralla66 wie verbindest du deine Kabel mit dem Boards, bei 4 kein Thema, bei 20 ist es fummelig