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. ioBroker Allgemein
  4. Javascript Adapter 2.03, Feedback

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    818

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Javascript Adapter 2.03, Feedback

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
42 Beiträge 11 Kommentatoren 10.5k Aufrufe
  • Ä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.
  • S Offline
    S Offline
    Solear
    schrieb am zuletzt editiert von
    #41

    paul53,

    ich habe das jetzt halbwegs hinbekommen, und lasse mir die absolute Feuchte ausgeben.

    Jedoch kommt dort ein anderer Wert heraus als ihn mir CUxD liefert.

    Keller rel Feuchte: 64 %

    Keller Temperatur: 15,80 °C

    ****Ergebnis:

    CUxD: 8,62 g/m³

    Script: 7,17 g/m³****

    Das ist schon eine erhebliche Differenz.

    Liegt das an meiner umprogrammierten Anzeige?

    Ich habe Dein Script erweitert um:

    createState('Keller.Temperatur', 0);
    createState('Keller.rel_Feuchte', 0);
    createState('Keller.Feuchtegehalt', 0);
    createState('Keller.Taupunkt', 0);
    createState('Keller.Klima', 0);
    

    und die var ersetzt mit

    var tsid = "hm-rpc.0.LEQ1082995.1.TEMPERATURE"/*Keller.WT-Temperatur*/;
    var hsid = "hm-rpc.0.LEQ1082995.1.HUMIDITY"/*Keller.WT-rel.Feuchte*/;
    var tid = "Keller.Temperatur";
    var rhid = "Keller.rel_Feuchte"
    var xid = "Keller.Feuchtegehalt";
    var dpid = "Keller.Taupunkt";
    var aid = "Keller.Klima";
    

    Also sozusagen meine Fühler direkt als Gerät eingebunden.

    Dann noch die korrigierte Temperatur und relFeuchtigkeit angezeigt.

    Hier der gesamte Code

    ! ````
    // Sensorwerte um Offset korrigieren, abs. Feuchte und Taupunkt berechnen und (inkl. Enthalpie) anzeigen
    ! // Raumkurzname am Anfang des Datenpunktnamen und als JS-Gruppenname
    var raum = name.split(".")[2];
    createState('Keller.Temperatur', 0);
    createState('Keller.rel_Feuchte', 0);
    createState('Keller.Feuchtegehalt', 0);
    createState('Keller.Taupunkt', 0);
    createState('Keller.Klima', 0);
    ! // Offsets
    var toffset = 0.0; // in K
    var rhoffset = 0; // in %
    ! var tsid = "hm-rpc.0.LEQ1082995.1.TEMPERATURE"/Keller.WT-Temperatur/;
    var hsid = "hm-rpc.0.LEQ1082995.1.HUMIDITY"/Keller.WT-rel.Feuchte/;
    var tid = "Keller.Temperatur";
    var rhid = "Keller.rel_Feuchte"
    var xid = "Keller.Feuchtegehalt";
    var dpid = "Keller.Taupunkt";
    var aid = "Keller.Klima";
    ! var t = getState(tsid).val + toffset; // Temperatur, korrigiert in °C
    var rh = getState(hsid).val + rhoffset; // rel. Feuchte, korrigiert in %
    var x; // Feuchtegehalt in g/kg
    var dp; // Taupunkt in °C
    ! var DP = require('dewpoint');
    ! // 70 m über NN
    var xdp = new DP(70);
    ! function calc() {
    var y = xdp.Calc(t, rh);
    x = y.x;
    dp = y.dp;
    setState(xid, x);
    setState(dpid, dp);
    }
    ! function anzeige() {
    // Enthalpie berechnen
    var h = (1.00545 * t + (2.500827 + 0.00185894 * t) * x).toFixed(1) + " kJ/kg";
    var tanz = t.toFixed(1) + "°C";
    dp = dp.toFixed(1) + "°C";
    var rhanz = rh.toFixed(0) + " %";
    x = x.toFixed(2) + " g/kg";
    var anz = '';
    anz = anz + '
    ! | Temper. | rel.F. | Feuchtegeh. | Taupunkt | Enthalpie |
    | ' + tanz + ' | ' + rhanz + ' | ' + x + ' | ' + dp + ' | ' + h + ' |
    ! ';
    setState(aid, anz);
    setState(tid, t);
    setState(rhid, rh);
    }
    ! function klima() {
    calc();
    anzeige();
    }
    ! klima(); // Script start
    ! on(tsid, function (dp) {
    t = dp.state.val + toffset;
    setState(tid, t);
    klima();
    });
    ! on(hsid, function (dp) {
    rh = dp.state.val + rhoffset;
    setState(rhid, rh);
    klima();
    });

    
    Nicht schön, sondern nur pragmatisch versucht umzusetzen.
    
    Aber wo kommt die Differenz zum CUxD - Wert her?
    
    Offset-Werte bei allen Einstellungen auf Null gestellt. Die NN-Höhe habe ich auch mal von 70 auf 0 gestellt, aber die daraus folgende Änderung ist ja nur minimal.
    
    Mir ist klar, dass die errechneten Werte zum abs. Feuchte alle nur Näherungswerte sind, aber der Unterschied ist schon heftig (ca 1,5 g/m³). Wo ist mein (Denk-)Fehler?
    
    Vielen Dank!

    iobroker als LXC unter Proxmox

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      Solear
      schrieb am zuletzt editiert von
      #42

      Verwechselst du vielleicht gerade g/m³ und g/kg? 8-)

      Ging mir genauso…in CUxD kannst du die Einheit anpassen, die angezeigt werden soll. g/kg ist richtig.

      iobroker als LXC unter Proxmox

      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
      FAQ Cloud / IOT
      HowTo: Node.js-Update
      HowTo: Backup/Restore
      Downloads
      BLOG

      631

      Online

      32.6k

      Benutzer

      82.0k

      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