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

      @berndsolar13

      bei 1 sec langweilt sich das IC 🙂

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

        tasmo.jpg

        Die Temperatur DHT22 Sensoren aus China sind heute angekommen.
        Da alles funktioniert, hab ich heute noch mal 3 ESP32 in China bestellt, 3er Pack, da kostete einer 4,50
        Das kann man machen 😄

        EPS32, weil ich einfach für die Fenster Reed Kontakte mehr Platz brauche.
        1 DHT 22 kommt da auch noch dran, dann, muss mal schauen, ob man auch einen 2. anschließen kann. Vom Erdgeschoss in der Küche geht ein Leerrohr in den Keller, falls ich da später noch mal Sat oder Lan haben wollte, daher das Leerrohr, da könnte ich jetzt einen Klingeldraht durch schrieben, und den 2. Sensor anstöpseln 😉 Dann wäre die Küche auch gleich mit erfasst, und ich brauche dort keinen Wemos D1.

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

          @ralla66

          Hab noch mal ne Spezial Frage an dich.
          Um zu prüfen, ob der Keller entfeuchtet wird, will ich noch per Formel das Wasser in der Luft berechnen. Vorbereitet in Excel hab ich das vorher.
          Ich wollte nun unterhalb der 3 Werte in der Weboberfläche über die Script Funktion noch eine 4. Zeile hinzufügen.
          Wasser in g/m3

          aber egal was ich unter Scripting eingebe, in der Weboberfläche erscheint keine zusätzliche Zeile.
          Ich will das Wasser auch in Influx mit loggen, um zu sehen, wie viel Wasser aus den Wänden per Diffusion in die Luft gelangt

          In Schritt 2, will ich alle 3 Kellerräume mal überwachen, damit ich sehe, welcher der 3 Räume der ist, der die Luftfeuchte am meisten erhöht 😉

          Die Idee ist nun, das Wasser direkt in der Script Funktion zu berechnen, und wie bei deinem Offen zu Script oben, das ganze per MQTT zu übertragen. Dann muss ich das nicht über Blocky machen 😄

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

            @berndsolar13

            ah ja, ok

            Schritt 1,
            Beispiel soll Webgui:
            unter >D muss stehen SWT2=0
            vorbesetzen der Variable SWT2 mit dem Wert 0
            dies unter >W eingeben
            Test{m} %0SWT2%
            alles unter >W erscheint auf der Webgui
            Test ist dann der Text
            {m} füllt auf mit Leerzeichen zwischen Text und Variablenwert
            %0SWT2% ist %xxx% ist eine Variable die unter >D angelegt wurde,
            0 bei Zahlen ohne Kommawert, 2 wäre mit 2 Stellen hinter dem Komma
            SWT2 ist der Variablenwert selbst

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

              @ralla66

              es bleibt bei den 3 Zeilen oben wie im Bild.

              Folgendes hab ich aktuell zum Testen inklusive Haken oben drin stehen

              >D
              SWT2=0
              
              >W
              Ausgabe %0SWT2% ist %xxx%
              

              Liegt es an der Firmware ? hab eine Sensors mit Scripting genommen, oder braucht man dafür noch etwas zusätzlich ? Der gleiche Code unter Scripting beim Wemos Display klappt bestens. Das ist ja das was ich nicht verstehe 😄

              Edit, Google meint es fehlt

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

                @berndsolar13 sagte in alte Fenstersensoren Smart machen:

                ohne ist %xxx%

                habe mir eine Bastel.bin gebaut wo das meiste zum spielen drin ist.

                #define USE_TIMERS
                #define USE_SCRIPT
                #define USE_SCRIPT_GLOBVARS
                #define USE_SCRIPT_STATUS
                #define USE_WEBSEND_RESPONSE
                #define USE_SCRIPT_STATUS
                #define USE_SCRIPT_FULL_JSON_PARSER
                #define USE_SCRIPT_JSON_EXPORT
                #define SUPPORT_MQTT_EVENT
                #define USE_SML_M
                #define USE_SCRIPT_WEB_DISPLAY
                #define USE_SCRIPT_SERIAL
                

                du fragst ja eh danach 🙂
                ESP8266

                tasmota.bin

                Berechnung :

                >D
                
                ZAL1=50
                ZAL2=200
                ERG=0
                
                >S
                
                ;>S jede Sekunde
                ;Berechnung
                
                ERG=ZAL1*ZAL2/1000
                
                ;Ausgabe in der Variable ERG Console mit print
                print Ergebnis %ERG&
                
                >W
                Ergebnis{m}  %1ERG% Wert
                

                du rufst mit %xxx% eine Variable auf die nicht in >D aufgeführt ist,
                dann wird die Zeile in >W nicht ausgeführt

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

                  @ralla66

                  hab mir vorhin eine compiliert, werde deiner aber trotzdem mal saugen 😄
                  Die Zeile ist nun da, der Wassergehalt pro m³ wird berechnet.

                  Folgende Formel muss ich noch einbauen
                  Sättigungsdruck

                  =610,8*EXP(17,1*B16/(234,2+B16))
                  

                  B16 ist die Zelle in Excel wo die Temperatur steht, in Tasmota Scripting wäre das die Variable "temp"
                  Jetzt muss ich das nur noch in das Tasmota reinbekommen. Sollte es nicht klappen melde ich mich 🙂

                  Ralla66 1 Reply Last reply Reply Quote 0
                  • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            134
                                            9205
                                            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