Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Skript] Absolute Feuchte berechnen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Skript] Absolute Feuchte berechnen

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dexic last edited by

      @homoran

      Dann verlinke bitte den laufenden Post im ersten Post gleich in der ersten Zeile mit "Hier findet ihr die aktuelle Version X: (LINK)

      Ginge das?

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @dexic last edited by Homoran

        @dexic sagte in [Skript] Absolute Feuchte berechnen:

        Dann verlinke bitte den laufenden Post im ersten Post gleich in der ersten Zeile mit "Hier findet ihr die aktuelle Version X: (LINK)

        ach was!? 😁

        @dexic sagte in [Skript] Absolute Feuchte berechnen:

        Ginge das?

        dann hätte ich es gemacht, aber

        @homoran sagte in [Skript] Absolute Feuchte berechnen:

        der Beitrag ist jetzt schon zu lang.

        um neu zu speichern müssten tausende Zeichen entfernt und schon gar nich etwas hinzugefügt werden.

        Deswegen

        @homoran sagte in [Skript] Absolute Feuchte berechnen:

        muss mal sehen was man rauskürzen kann

        D 1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators last edited by

          @paul53

          Ich habe den Link oben in deine Anwort (Post #2) eingefügt
          Ist das ok?

          paul53 1 Reply Last reply Reply Quote 0
          • D
            dexic @Homoran last edited by

            @homoran

            Ich Dummerchen... 😉 Verzeih mir!

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Homoran last edited by paul53

              @homoran sagte: Ist das ok?

              Kannst du die Version 0.6.4 im ersten Post löschen?

              Homoran 1 Reply Last reply Reply Quote 1
              • Homoran
                Homoran Global Moderator Administrators @paul53 last edited by Homoran

                @paul53 sagte in [Skript] Absolute Feuchte berechnen:

                @homoran sagte: Ist das ok?

                Kannst du die Version 0.6.4 im ersten Post löschen?

                ja, mach ich

                EDIT:
                Hat geklappt!

                Dann kann ich deinen Post wieder im Original herstellen und den Link zu 0.6.8 im Startpost anhängen

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Homoran last edited by paul53

                  @homoran sagte: den Link zu 0.6.8 im Startpost anhängen

                  Weshalb ersetzt du nicht
                  "Das jeweils aktuelle Skript zur Gesamtlösung aus diesem Thread befindet sich als letztes in diesem Post."
                  am Anfang durch den Link zu 0.6.8?

                  Homoran 1 Reply Last reply Reply Quote 1
                  • Homoran
                    Homoran Global Moderator Administrators @paul53 last edited by

                    @paul53 sagte in [Skript] Absolute Feuchte berechnen:

                    Weshalb ersetzt du nicht

                    weil ich blöd bin 😂

                    Danke für den Hinweis!
                    erledigt

                    1 Reply Last reply Reply Quote 0
                    • D
                      dexic last edited by

                      Hallo zusammen!

                      Könnte man bitte einen "Filter" ins Skript einbauen, damit man einzelne Bestandteile davon ein- und ausschalten kann, ohne viel auszukommentieren? Da passieren nur unnötige Fehler.

                      Ich brauche den Auskühlschutz und die Kühlung nicht, die sind mir wurst. Ich möchte gerne Feuchtigkeit regulieren und irgendwann auch bei einem bestimmten CO2-Stand alarmiert werden. Das wird auch vielen "Newbies" so gehen, denen man das Leben so viel einfacher machen könnte.

                      Viele Grüße und danke für das tolle Skript!

                      Homoran 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @dexic last edited by

                        @dexic sagte in [Skript] Absolute Feuchte berechnen:

                        Ich brauche den Auskühlschutz und die Kühlung nicht,

                        ich auch nicht.
                        Hab aber nichts auskommentiert.

                        @dexic sagte in [Skript] Absolute Feuchte berechnen:

                        bei einem bestimmten CO2-Stand alarmiert werden

                        das macht das Skript aber auch nicht

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          dexic @Homoran last edited by

                          @homoran said in [Skript] Absolute Feuchte berechnen:

                          bei einem bestimmten CO2-Stand alarmiert werden

                          Das wäre der nächste logische Schritt. 😉 Dann vielleicht Luftqualität anhand von Partikelmessungen. Die Sensoren sind mittlerweile ja verhältnismäßig günstig zu haben.

                          1 Reply Last reply Reply Quote 0
                          • M
                            mariva last edited by mariva

                            Hallo zusammen,

                            ich hoffe mir kann das jemand erklären:

                            Ich habe das Script in Version 0.6.8

                            folgende Settings:

                            var hunn            = 576;       // eigene Höhe über nn (normalnull), z.B. über http://de.mygeoposition.com zu ermitteln
                            var defaultTemp     = 16.00;     // Default TEMP_Minimum, wenn im Raum nicht angegeben (Auskühlschutz, tiefer soll eine Raumtemperatur durchs lüften nicht sinken)
                            var defaultMinFeu   = 40.00;     // Default Mindest Feuchte wenn nicht angegeben.
                            var defaultMaxFeu   = 55.00;     // Default Maximal Feuchte wenn nicht angegeben.
                            
                            var hysMinTemp      = 0.5;              // Default 0.5, Hysterese Mindesttemperatur (Auskühlschutz). Innerhalb dieser Deltatemperatur bleibt die alte Lüftungsempfehlung für den Auskühlschutz bestehen.
                            var hysEntfeuchten  = 0.2;              // Default 0.3, Hysterese Entfeuhten: Delta g/kG absolute Luftfeuchte. In dem Delta findet keine Änderung der alten Lüftungsempfehlung statt    
                             
                            

                            Ich verstehe nciht ganz die Lüftungsempfehlung.

                            Beispiel:
                            Wetterstation Homematic auf Dach:
                            23,9 °C
                            Luftfeuchtigkeit
                            54 %

                            Innensensor Homematic im UG AUSSEN (schatten) auf Fensterbank:
                            Temperatur 26.20 °C
                            Rel. Luftfeuchte 53 %

                            Küche innenSensor aktuell:

                            rel. 56.00%
                            temp: 24.80 °C
                            Bedingungen für Entfeuchten, Kühlen und Auskühlschutz erfüllt.

                            Ich habe den ganzen Tag die Fenster offen. Die Lüftfeuchtigkeit ändert sich nicht, die Innentemperatur wird einfach nur wärmer passend zu aussen (ist ja logisch weil Fenster ständig offen ist.)

                            Müsste die Empfehlung nicht irgendwann verschwinden ?

                            Auch ist mir aufgefallen, das wenn ich mit den Werten die Absolute Feuchtigkeit verlgeiche mit z.b. https://electric-junkie.de/2022/01/absolute-luftfeuchtigkeit sind es andere Werte.

                            1 Reply Last reply Reply Quote 0
                            • H
                              Huligan @berndsolar13 last edited by Huligan

                              @berndsolar13 Wird bei mir auch noch bemängelt. Nur "logs" konnte ich durch "log" fixen.

                              Allerdings kommt es noch bei Luftfeuchtewerten ohne Nachkomma zu einem Fehler:
                              80df59e3-43cf-480c-ae9e-32ae92db3277-grafik.png
                              63 = 630 %
                              63.0 = 63 %

                              1 Reply Last reply Reply Quote 0
                              • D3ltoroxp
                                D3ltoroxp last edited by D3ltoroxp

                                Hallo zusammen,

                                schaut mal bitte

                                7cf1e836-875a-4d9d-9685-07ecb2f31244-image.png

                                Der Raum z.b. hat

                                62994725-3d6a-4a7a-ba04-554353ea62b2-image.png

                                Warum wird er dann immer noch als Raume zum lüften angezeigt ? Eigentlich müsste doch aus der Liste fallen ?

                                paul53 1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @D3ltoroxp last edited by

                                  @d3ltoroxp sagte: Warum wird er dann immer noch als Räume zum lüften angezeigt ?

                                  ... weil im Winter die Außenluft immer trockener ist als die Raumluft und die Raumtemperatur höher als die Minimaltemperatur (15 °C) ist.
                                  Meine Anmerkung zu defaultMaxFeu hast du gesehen?

                                  D3ltoroxp 1 Reply Last reply Reply Quote 0
                                  • D3ltoroxp
                                    D3ltoroxp @paul53 last edited by

                                    @paul53 Hm irgendwie raff ich das nicht so ganz. Ich dachte immer wenn ich zwischen min und max bin was ich ja wäre, wird der Raum nicht mehr aufgeführt. Default min / max ist doch genau das was der Sensor in % anzeigt oder ?

                                    Wenn ich im Winter auf max 40 gehe, dann wird der Raum doch permanent zum lüften angezeigt oder ? Die 40% erreiche ich nie.

                                    paul53 1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 @D3ltoroxp last edited by

                                      @d3ltoroxp sagte: Die 40% erreiche ich nie.

                                      Erst, wenn defaultMinFeuchte unterschritten wird, ist die Luft zu trocken und es sollte nicht mehr gelüftet werden. defaultMaxFeuchte ist für die Hysterese.

                                      D3ltoroxp 1 Reply Last reply Reply Quote 0
                                      • D3ltoroxp
                                        D3ltoroxp @paul53 last edited by

                                        @paul53 Also müsste ich minFeuchte auf z.b. 55% stellen, das es bei 50% nicht mehr auftaucht. Ich teste mal. Danke dir.

                                        1 Reply Last reply Reply Quote 0
                                        • D3ltoroxp
                                          D3ltoroxp last edited by D3ltoroxp

                                          Gibt es die Möglichkeit die Liste mit Räumen die gelüftet werden müssen, anders dar zu stellen ?`

                                          c3d17f79-82b2-4018-89f2-3e6aa1a7d9c9-image.png

                                          auflisten lassen kann ? Wenn ich das richtig sehe, sollte er auch alle 30 min prüfen. Oft steht bei mir, das Datum vom Vortag, wenn ich auf den Datenpunkt schaue.

                                          Leider scheint sich das Script nicht neu zu starten bzw die Prüfung all halbe Stunde auszuführen.

                                          03f4f644-8bf0-494b-995e-1eedb54e0259-image.png

                                          var cronStr         = "*/30 * * * *";
                                          
                                          JoJo58 1 Reply Last reply Reply Quote 0
                                          • JoJo58
                                            JoJo58 @D3ltoroxp last edited by

                                            @d3ltoroxp sagte in [Skript] Absolute Feuchte berechnen:

                                            Gibt es die Möglichkeit die Liste mit Räumen die gelüftet werden müssen, anders dar zu stellen ?`

                                            Ich lasse es so in einem Inventwo Universal Widget anzeigen:

                                            Luftfeuchte 1.jpg

                                            Dazu habe ich ein Script, welches den Datenpunkt "0_userdata.0.Raumklima.Lüften_Liste" aufteilt auf mehrere DP und die Länge kann man einstellen. Dazu habe ich 3 Datenpunkte angelegt: "0_userdata.0.Raumklima.Raum_1" bis "Raum_3" und die maximale verfügbare Zeichenzahl auf 35 gestellt. Das passt bei mir perfekt. Wenn ich die Zeichenlänge runtersetze auf 30, sieht es so aus:

                                            Luftfeuchte 2.jpg

                                            Das ist das Scipt dazu:

                                            //Liste_zu_Lueften_aufteilen_Komma
                                            
                                            const sourceDpId = '0_userdata.0.Raumklima.Lüften_Liste'; // Datenpunkt mit der Liste der Raumnamen
                                            const targetDpIds = ['0_userdata.0.Raumklima.Raum_1', '0_userdata.0.Raumklima.Raum_2', '0_userdata.0.Raumklima.Raum_3']; // Zieldatenpunkte
                                            
                                            // Funktion zum Aufteilen und Aktualisieren der Zieldatenpunkte
                                            function splitAndSetDataPoints(value) {
                                                // Eckige Klammern entfernen und Raumnamen extrahieren
                                                const roomNames = value.slice(1, -1).split(',').map(room => room.trim().replace(/"/g, ''));
                                            
                                                let textBuffer = '';
                                                let dpIndex = 0;
                                            
                                                roomNames.forEach(room => {
                                                    if ((textBuffer + `"${room}"`).length <= 35) {
                                                        textBuffer += `"${room}"` + ' ';
                                                    } else {
                                                        setState(targetDpIds[dpIndex], textBuffer.trim(), true);
                                                        dpIndex++;
                                                        textBuffer = `"${room}"` + ' ';
                                                    }
                                            
                                                    if (dpIndex >= targetDpIds.length) {
                                                        return; // Maximal drei Datenpunkte erreicht
                                                    }
                                                });
                                            
                                                // Letzten Textpuffer aktualisieren
                                                setState(targetDpIds[dpIndex], textBuffer.trim(), true);
                                                
                                                // Leere Datenpunkte, wenn weniger als drei Räume vorhanden sind
                                                for (let i = dpIndex + 1; i < targetDpIds.length; i++) {
                                                    setState(targetDpIds[i], '', true);
                                                }
                                            }
                                            
                                            // Datenpunkt abonnieren, um Änderungen zu erkennen
                                            on({ id: sourceDpId, change: 'ne', ack: false }, event => {
                                                const newValue = event.state.val;
                                                splitAndSetDataPoints(newValue);
                                            });
                                            
                                            // Initialen Zustand verarbeiten
                                            const initialSourceValue = getState(sourceDpId).val;
                                            splitAndSetDataPoints(initialSourceValue);
                                            
                                            

                                            Das Script habe nicht ich geschrieben, sondern ich habe es über ChatGPT schreiben lassen. Ich habe keine Ahnung vom programmieren. Habe es aber schon lange im Einsatz.

                                            Zu deinem Problem mit der automatischen Aktualisierung, kann ich dir nicht helfen. Hast du dir deine Quelldatenpunkte mal angesehen? Werden die denn regelmäßig aktualisiert?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            809
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            95
                                            738
                                            186381
                                            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