Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. alte Fenstersensoren Smart machen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    alte Fenstersensoren Smart machen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Ralla66
      Ralla66 Most Active @berndsolar13 last edited by Ralla66

      @berndsolar13

      wenn nicht geht am einfachsten das einzeln in Vars schreiben.
      610,8EXP
      17,1
      B16
      234,2+B16

      viel Spass,
      mein Wissen ist auch im Scripting begrenzt 🙂
      Der einfache Weg geht immer.

      B 1 Reply Last reply Reply Quote 0
      • B
        berndsolar13 @Ralla66 last edited by

        @ralla66

        die Formel wenn ich EXP weg lasse klappt soweit in einer Zeile
        ich brauche nur noch das Selbe was Excel mit EXP macht für Tasmoata, aber das bekomme ich auch noch raus 😄

        Ralla66 1 Reply Last reply Reply Quote 0
        • Ralla66
          Ralla66 Most Active @berndsolar13 last edited by

          @berndsolar13

          was macht EXP ?

          B 1 Reply Last reply Reply Quote 0
          • B
            berndsolar13 @Ralla66 last edited by

            @ralla66 sagte in alte Fenstersensoren Smart machen:

            @berndsolar13

            was macht EXP ?

            das müsste die Exponentialfunktion sein, die braucht man, um für die aktuelle Temperatur den Sattigungsdruck zu berechnen, um damit wiederum die Maximale Wasseraufnahme der Luft zu berechnen.

            Ich hab dafür mal eine Excel Tabelle runter geladen, da gebe ich die Temperatur und Luftfeuchte ein, und das Ergebnis ist die Wasser Menge in der Luft pro m.³

            Ralla66 1 Reply Last reply Reply Quote 0
            • B
              berndsolar13 last edited by berndsolar13

              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.

              1 Reply Last reply Reply Quote 0
              • Ralla66
                Ralla66 Most Active @berndsolar13 last edited by Ralla66

                @berndsolar13

                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%
                

                Keller.jpg

                B 1 Reply Last reply Reply Quote 0
                • B
                  berndsolar13 @Ralla66 last edited by

                  @ralla66

                  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 unten

                  Wasser in g/m³ %sat%
                  

                  scheint die Variable leer zu sein ?

                  Ralla66 1 Reply Last reply Reply Quote 0
                  • Ralla66
                    Ralla66 Most Active @berndsolar13 last edited by

                    @berndsolar13

                    zeig mal alles ab D
                    hinter then nix schreiben, neue Zeile für sat=

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      berndsolar13 @Ralla66 last edited by berndsolar13

                      @ralla66

                      Halleluja 😄

                      keller2.jpg

                      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

                      Ralla66 1 Reply Last reply Reply Quote 0
                      • Ralla66
                        Ralla66 Most Active @berndsolar13 last edited by Ralla66

                        @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%

                        Keller 2.jpg

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          berndsolar13 @Ralla66 last edited by berndsolar13

                          @ralla66

                          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:
                          keller3.jpg

                          Werde dann die Tage mal testen, ob die Menge an Wasser in der Luft sich beim Lüften reduziert.

                          Ralla66 1 Reply Last reply Reply Quote 0
                          • Ralla66
                            Ralla66 Most Active @berndsolar13 last edited by Ralla66

                            @berndsolar13

                            ok, dann lade bitte das fertige script später hoch, kann ich auch gebrauchen 🙂
                            Muß erst Sensoren bestellen.

                            B 1 Reply Last reply Reply Quote 0
                            • B
                              berndsolar13 @Ralla66 last edited by berndsolar13

                              @ralla66 sagte in alte Fenstersensoren Smart machen:

                              @berndsolar13

                              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 😄

                              1 Reply Last reply Reply Quote 0
                              • B
                                berndsolar13 last edited by

                                @ralla66

                                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.

                                Ralla66 1 Reply Last reply Reply Quote 0
                                • Ralla66
                                  Ralla66 Most Active @berndsolar13 last edited by

                                  @berndsolar13

                                  lade mal dein script hoch dann teste ich mit.
                                  Habe noch einen gefunden.
                                  Können wir dann per Blockly zerlegen.

                                  1 Reply Last reply Reply Quote 0
                                  • B
                                    berndsolar13 last edited by

                                    @ralla66

                                    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

                                    Ralla66 1 Reply Last reply Reply Quote 0
                                    • Ralla66
                                      Ralla66 Most Active @berndsolar13 last edited by Ralla66

                                      @berndsolar13

                                      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/Feuchte

                                      hier passt was mit dem Tasmota Topic / Fulltopic nicht.
                                      Eventuell muß Tasmota Topic dann Keller sein.

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        berndsolar13 @Ralla66 last edited by

                                        @ralla66

                                        Habs nun anders gelöst

                                        9d46f505-8b0f-44fe-b966-394b6336778b-image.png

                                        Das sollte perfekt sein 🙂
                                        Ich sende nun alles über das Script

                                        Ralla66 1 Reply Last reply Reply Quote 0
                                        • Ralla66
                                          Ralla66 Most Active @berndsolar13 last edited by Ralla66

                                          @berndsolar13

                                          Script zeigen ----->
                                          nimm auch gerne das perfekte 🙂

                                          Parsen wäre so

                                          DHT22_parsen.png

                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            berndsolar13 @Ralla66 last edited by berndsolar13

                                            @ralla66

                                            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.

                                            keller7.jpg

                                            Denke das ist nun quasi perfekt, und ich brauche kein Blockly Script 🙂

                                            PS, den Subscribe Teil hab ich entfernt, läuft trotzdem

                                            Ralla66 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            800
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            134
                                            9276
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo