NEWS
[Skript] Absolute Feuchte berechnen
-
@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.
-
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.
-
@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:
63 = 630 %
63.0 = 63 % -
Hallo zusammen,
schaut mal bitte
Der Raum z.b. hat
Warum wird er dann immer noch als Raume zum lüften angezeigt ? Eigentlich müsste doch aus der Liste fallen ?
-
@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 zudefaultMaxFeu
hast du gesehen? -
@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.
-
@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. -
@paul53 Also müsste ich minFeuchte auf z.b. 55% stellen, das es bei 50% nicht mehr auftaucht. Ich teste mal. Danke dir.
-
Gibt es die Möglichkeit die Liste mit Räumen die gelüftet werden müssen, anders dar zu stellen ?`
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.
var cronStr = "*/30 * * * *";
-
@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:
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:
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?