Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Werte verleichen und State in Fis ändern

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    2
    1
    8

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    554

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Werte verleichen und State in Fis ändern

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
9 Beiträge 3 Kommentatoren 985 Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • K Offline
    K Offline
    karstent
    schrieb am zuletzt editiert von
    #1

    Hallo,

    Ich bräuchte mal Eure Hilfe. Ich habe ein paar Temperatur/Feuchtigkeits Fühler wobei einer im keller und einer Outdoor installiert ist. Da wir erhöhte Feuchtigkeitswerte im Keller haben möchte ich gerne die Feuchtigkeitswerte der Fühler miteinander vergleichen und wenn der Wert draußen niedriger ist eine Signalisierung in Vis auslösen. In Blockly kann ich ja auch Werte vergleichen. Nur wie erzeuge ich eine Änderung in Vis?

    Danke schon mal.

    1 Antwort Letzte Antwort
    0
    • K Offline
      K Offline
      karstent
      schrieb am zuletzt editiert von
      #2

      War dann doch einfacher als gedacht. Habe es hinbekommen. :D

      1 Antwort Letzte Antwort
      0
      • lobomauL Offline
        lobomauL Offline
        lobomau
        schrieb am zuletzt editiert von
        #3

        Trotzdem zur Sicherheit die Anmerkung: nicht relative Luftfeuchten, sondern nur absolute Luftfeuchten miteinander vergleichen.

        Falls du umrechnen musst in absolute Feuchtigkeit, dazu gibt es hier im Forum ein gutes Script "Raumklima" von Paul53/ruhr70.

        Host: NUC8i3 mit Proxmox:

        • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
        • Slave: Pi4
        1 Antwort Letzte Antwort
        0
        • K Offline
          K Offline
          karstent
          schrieb am zuletzt editiert von
          #4

          Irgendwie scheint es dann doch nicht zu funktionieren. Ha be folgendes Script gebaut:
          4848_01.jpg

          Humidity Keller und Humidity aussen sind die feuchtigkeitswerte die mir der Xiaomi Temp/Feuchtigkeitsmelder ausgibt. "Feuchtigkeit" ist ein Datenpunkt unter Objekte–> Jacascript den ich angelegt habe. Was mir allerdings auffällt sind die Werte die hier ausgegeben werden. Wenn ich mir die Werte unter Objekte --> mihome--> Devices ansehe, sind es nicht sie selben die ich unter anklicken und zuweisen der Objekt ID erhalte. Diese unterscheiden sich um mehrere Prozent. Als würden sie nicht aktualisiert werden. Das ist doch nicht normal, oder?

          Und was zeigt mir das Device den nun an? Absolute oder relative Feuchtigkeit. :shock:

          1 Antwort Letzte Antwort
          0
          • K Offline
            K Offline
            karstent
            schrieb am zuletzt editiert von
            #5

            ok, habe mir den Unterschied erlesen. Aber nur noch mal zum Verständnis. Warum sind die Werte andere als unter Objekte?

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #6

              @karstent:

              Und was zeigt mir das Device den nun an? Absolute oder relative Feuchtigkeit. `
              Das Gerät liefert die relative Feuchtigkeit. Die absolute Feuchtigkeit (Wassergehalt) muss http://www.iobroker.net/docu/?page_id=3651&lang=de werden.
              @karstent:

              Ha be folgendes Script gebaut: `
              In dem Skript werden die IDs der Datenpunkte verglichen, nicht die Werte !

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #7

                Anbei ein komplettes Skript, in dem nur die ersten 7 Zeilen und evtl. der Wert für die Höhe über NN angepasst werden müssen. In der Konfiguration der Javascript-Instanz muss unter "Zusätzliche NPM-Module" dewpoint eingetragen werden. Das Modul wird dann automatisch installiert.

                const idTi = '...'; // Datepunkt-ID Temperatur Keller
                const idTa = '...'; // Datepunkt-ID Temperatur Aussen
                const idFi = '...'; // Datepunkt-ID rel. Feuchte Keller
                const idFa = '...'; // Datepunkt-ID rel. Feuchte Aussen
                const idVis = '...'; //Datenpunkt-ID für Anzeige "Lüften" in VIS
                const timin = 10; // minimale Kellertemperatur in °C
                const timax = 20; // maximale Kellertemperatur in °C
                
                const  DP = require('dewpoint');
                
                var ti = getState(idTi).val;  // Raumtemperatur in °C
                var ta = getState(idTa).val;  // Aussentemperatur in °C
                var fi = getState(idFi).val;  // Raumfeuchte in %rH
                var fa = getState(idFa).val;  // Aussenfeuchte in %rH
                
                // 70 m über NN
                var xdp = new DP(70); 
                
                // Feuchtegehalt berechnen
                function calcx(t, rh) {
                   var y = xdp.Calc(t, rh);
                   return y.x;
                }
                
                var xi = calcx(ti, fi);  // Feuchtegehalt innen
                var xa = calcx(ta, fa);  // Feuchtegehalt außen 
                
                // Lüftung steuern mit 0,3 g/kg und 0,5 K Hysterese
                function lueften() {
                   if (xa <= (xi - 0.4) && ti <= (timax - 0.5) && ti >= (timin + 0.5)) {
                      setState(idVis, true, true);
                   }
                   else if (xa >= (xi - 0.1) || ti >= timax || ti <= timin) {
                      setState(idVis, false, true);
                   }	
                }
                
                lueften();  // Skriptstart
                
                on(idFi, function (dp) {
                   fi = dp.state.val;
                   xi = calcx(ti, fi);
                   lueften();
                });
                
                on(idFa, function (dp) {
                   fa = dp.state.val;
                   xa = calcx(ta, fa);
                   lueften();
                });
                
                on(idTi, function (dp) {
                   ti = dp.state.val;
                   xi = calcx(ti, fi);
                   lueften();
                });
                
                on(idTa, function (dp) {
                   ta = dp.state.val;
                   xa = calcx(ta, fa);
                   lueften();
                });
                
                

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • K Offline
                  K Offline
                  karstent
                  schrieb am zuletzt editiert von
                  #8

                  Danke für Deine Hilfe. Bin gestern beim recherchieren über dein Script gestolpert und habe es auch schon angepasst und in Benutzung. Soweit scheint alles gut zu funktionieren. Das einzige ist das ich die Tabelle in Vis nicht gut angepasst bekomme ist die Json Table in Vis mit der Ausgabe aller Werte. Die passt einfach nicht auf den Screen :( Oder gibt es da eine bessere Lösung?

                  1 Antwort Letzte Antwort
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #9

                    @karstent:

                    die Tabelle in Vis nicht gut angepasst bekomme ist die Json Table in Vis mit der Ausgabe aller Werte. Die passt einfach nicht auf den Screen :( Oder gibt es da eine bessere Lösung? `
                    Die Frage stelle besser unter der Rubrik "VIS Adapter" und poste einen Screenshot der jetzigen Lösung.

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    Antworten
                    • In einem neuen Thema antworten
                    Anmelden zum Antworten
                    • Älteste zuerst
                    • Neuste zuerst
                    • Meiste Stimmen


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    852

                    Online

                    32.5k

                    Benutzer

                    81.8k

                    Themen

                    1.3m

                    Beiträge
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                    ioBroker Community 2014-2025
                    logo
                    • Anmelden

                    • Du hast noch kein Konto? Registrieren

                    • Anmelden oder registrieren, um zu suchen
                    • Erster Beitrag
                      Letzter Beitrag
                    0
                    • Home
                    • Aktuell
                    • Tags
                    • Ungelesen 0
                    • Kategorien
                    • Unreplied
                    • Beliebt
                    • GitHub
                    • Docu
                    • Hilfe