Script zur Berechnung des Feuchtegehalts
Moderator: Co-Administratoren
Re: Script zur Berechnung des Feuchtegehalts
Habe das Skript zur Berechnung der Warn- und Alarmgrenzfeuchte vereinfacht
http://homematic-forum.de/forum/viewtop ... 835#p71539,
denn der Sättigungsfeuchtgrad der Wand muss nur einmal berechnet werden.
http://homematic-forum.de/forum/viewtop ... 835#p71539,
denn der Sättigungsfeuchtgrad der Wand muss nur einmal berechnet werden.
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)
- JPS
- Beiträge: 1093
- Registriert: 07.08.2010, 22:51
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 8 Mal
- Danksagung erhalten: 20 Mal
- Kontaktdaten:
Re: Script zur Berechnung des Feuchtegehalts
Ist im Artikel umgesetzt. Ich habe es vorher mal ausprobiert, läuft...paul53 hat geschrieben:Habe das Skript zur Berechnung der Warn- und Alarmgrenzfeuchte vereinfacht
http://homematic-forum.de/forum/viewtop ... 835#p71539,
denn der Sättigungsfeuchtgrad der Wand muss nur einmal berechnet werden.
Verwendung meiner Hinweise und Skripte auf eigenes Risiko | Ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung
C
Ich habe jetzt die neuen Wandthermostaten als reine Thermo- Hygrometer eingesetzt.
Die Temperatur passt hervorragend zu den bisherigen Meßwerten mit TH-I und TH-O, lediglich die rF liegt bei beiden Raumthermostaten exakt gleich, jedoch ca. 10% niedriger als bei allen THs, die in sich wieder exakt gleich sind (ca. 45% statt 50%).
ich habe jetzt als Workaround im Skript eingegeben rf = (rf * 1.1)
Bei dem einen Wandthermostaten ändert sich die aF gar nicht, bei anderen nur marginal; (7,676 -> 7,724)
Wo habe ich denn den Denkfehler?
bei einer Erhöhung der rF um 10% muss doch bei gleicher Temperatur (21°C) die aF auch ansteigen?
Zum Testen habe ich den Faktor auf 2 gesetzt, da stieg die aF von 7,724 auf 15,643
[EDIT] auf der Seite: http://www.wetterochs.de/wetter/feuchte.html bekomme ich außerdem deutlich höhere Werte heraus (ca. +15%). Die kommen mir plausibler vor.
Ich weiß, dass mit HM nur Grundrechenarten möglich sind. Deshalb habe ich so eine Formel selber gar nicht umsetzen können.
Gruß
Rainer
Die Temperatur passt hervorragend zu den bisherigen Meßwerten mit TH-I und TH-O, lediglich die rF liegt bei beiden Raumthermostaten exakt gleich, jedoch ca. 10% niedriger als bei allen THs, die in sich wieder exakt gleich sind (ca. 45% statt 50%).
ich habe jetzt als Workaround im Skript eingegeben rf = (rf * 1.1)
Code: Alles auswählen
...
! Werte einlesen
t = dom.GetObject("BidCos-RF.LEQ0081020:1.TEMPERATURE").Value();
rf = dom.GetObject("BidCos-RF.LEQ0081020:1.HUMIDITY").Value();
rf = (rf * 1.1);
...
Wo habe ich denn den Denkfehler?
bei einer Erhöhung der rF um 10% muss doch bei gleicher Temperatur (21°C) die aF auch ansteigen?
Zum Testen habe ich den Faktor auf 2 gesetzt, da stieg die aF von 7,724 auf 15,643
[EDIT] auf der Seite: http://www.wetterochs.de/wetter/feuchte.html bekomme ich außerdem deutlich höhere Werte heraus (ca. +15%). Die kommen mir plausibler vor.
Ich weiß, dass mit HM nur Grundrechenarten möglich sind. Deshalb habe ich so eine Formel selber gar nicht umsetzen können.
Gruß
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!
Re: Script zur Berechnung des Feuchtegehalts
funktioniert nicht, da rf ein Integer-Wert ist (der Wert 1.1 wird auf 1 abgerundet).Homoran hat geschrieben:Code: Alles auswählen
rf = (rf * 1.1);
Richtig:
Code: Alles auswählen
rf = 1.1 * rf;
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)
Re: Script zur Berechnung des Feuchtegehalts
Bei wetterochs.de wird die absolute Luftfeuchte in g/m³ berechnet. Das Script berechnet den Feuchtegehalt in g/kg (g Wasser pro kg trockener Luft).Homoran hat geschrieben:[EDIT] auf der Seite: http://www.wetterochs.de/wetter/feuchte.html bekomme ich außerdem deutlich höhere Werte heraus (ca. +15%).
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)
Re: Script zur Berechnung des Feuchtegehalts
Natürlich!
klappt jetzt, Danke!
zumindest die abs-Werte sind jetzt mit den übrigen Werten vergleichbar.
Was die "echte Richtigkeit" der abs-Werte angeht: Wieso sind die Werte nach deinem Skript soviel niedriger, als nach (allen) anderen mir bekannten Formeln?
z.B.
http://www.wetterochs.de/wetter/feuchte.html
http://www.hobby-photo.de/shop/pg45.htm
Dies ist eine Frage , kein Meckern!
EDIT: da haben sich unsere posts überschnitten, auch hier nochmal danke!
Gruß
Rainer
Code: Alles auswählen
! Lokale Variablen
real t; ! Temperatur in °C
integer rf ! relative Feuchte in %
real af; ! absolute feuchte in g/kg
! Werte einlesen
t = dom.GetObject("BidCos-RF.LEQ0080851:1.TEMPERATURE").Value();
rf = dom.GetObject("BidCos-RF.LEQ0080851:1.HUMIDITY").Value();
rf = (1.1 * rf);
zumindest die abs-Werte sind jetzt mit den übrigen Werten vergleichbar.
Was die "echte Richtigkeit" der abs-Werte angeht: Wieso sind die Werte nach deinem Skript soviel niedriger, als nach (allen) anderen mir bekannten Formeln?
z.B.
http://www.wetterochs.de/wetter/feuchte.html
http://www.hobby-photo.de/shop/pg45.htm
Dies ist eine Frage , kein Meckern!
EDIT: da haben sich unsere posts überschnitten, auch hier nochmal danke!
Gruß
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!
Re: Script zur Berechnung des Feuchtegehalts
So, ich habe jetzt mal drei "Thermo-Hygrometer" nebeneinander gestellt.
- Der HM-TC-IT-WM-W-EU (ist eingebaut in einem GIRA 3er Rahmen über einem Schaltaktor und musste seitdem einen Offset von -1° ertragen)
- Der TC-IT-WM-W-EU (TH-O) soll mal nach draußen kommen, liegt im Moment sonst im Wohnzimmer
- Der HM-WDS40-TH-I steht sonst im Bad
Die Werte für die absolute Feuchte (ich habe es trotzdem g/m³ genannt auch wenn es g/kg sind) sind jetzt im Skript mit einem Faktor versehen.
Die originalwerte der relativen Feuchte sieht man in den "Tachoanzeigen" und in den Buttons für die Chartdarstellung, die ich in den Thermometerbasis versteckt habe.
Früher hatte ich alle meine Thermometer mal nebeneinander gelegt. Die Temperatur war +/- 0,1° Der Schaltaktor strahlt wohl etwas Wärme ab, deswegen jetzt korrigiert.
Die Feuchtigkeit bei TH-I, TH-O und OC3 waren nahezu identisch, die der Wandthermostaten untereinander auch aber eben um 10% niedriger. als in der anderen Gruppe.
Durch die Faktorisierung im Skript kann ich jetzt wenigstens die absolute Feuchte korrigieren, um die Lüftungsempfehlung oder -steuerung mit verschiedenen Geräten besser in den Griff zu bekommen
Danke nochmals
Rainer
- Der HM-TC-IT-WM-W-EU (ist eingebaut in einem GIRA 3er Rahmen über einem Schaltaktor und musste seitdem einen Offset von -1° ertragen)
- Der TC-IT-WM-W-EU (TH-O) soll mal nach draußen kommen, liegt im Moment sonst im Wohnzimmer
- Der HM-WDS40-TH-I steht sonst im Bad
Die Werte für die absolute Feuchte (ich habe es trotzdem g/m³ genannt auch wenn es g/kg sind) sind jetzt im Skript mit einem Faktor versehen.
Die originalwerte der relativen Feuchte sieht man in den "Tachoanzeigen" und in den Buttons für die Chartdarstellung, die ich in den Thermometerbasis versteckt habe.
Früher hatte ich alle meine Thermometer mal nebeneinander gelegt. Die Temperatur war +/- 0,1° Der Schaltaktor strahlt wohl etwas Wärme ab, deswegen jetzt korrigiert.
Die Feuchtigkeit bei TH-I, TH-O und OC3 waren nahezu identisch, die der Wandthermostaten untereinander auch aber eben um 10% niedriger. als in der anderen Gruppe.
Durch die Faktorisierung im Skript kann ich jetzt wenigstens die absolute Feuchte korrigieren, um die Lüftungsempfehlung oder -steuerung mit verschiedenen Geräten besser in den Griff zu bekommen
Danke nochmals
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!
Re: Script zur Berechnung der absoluten Feuchte
Um die Werte der absoluten Feuchtigkeit mit denen verschiedener Rechner im Internet vergleichen zu können, war ich auf der Suche nach einer Formel, die das Ergebnis in g/m3 zurück gibt.JPS hat geschrieben:Interessant, kannst du noch beschreiben, welches physikalische Rational / welche Formel hinter deiner Berechnung steckt?
Anmerkung Stand Februar 2014:
Mit Unterstützung von "paul53" habe ich die wesentlichen Erkenntnisse und Empfehlungen aus diesem - zwischenzeitlich etwas
unübersichtlich gewordenen - Thread in einem Artikel zusammengefasst. Vielleicht ist das ja für jemanden hilfreich.
Auf Grund der Beschränkungen der Scriptsprache (keine ln/log/exp Funktionen) habe ich folgende Näherungsformel per Excel mit einer quadratischen Gleichung angenähert.
Quelle: http://www.wetterochs.de/wetter/feuchte.html
Näherungsformel: AF= 13,233 * rF * ((10 ^ ((7,5 * T) / (237 + T))) / (273,16 + T))
Ergebnis zum Einsetzen in Skript:
af = (0.073285404876355*t)+(0.00146403726645358*t*t)+(0.038722254159359*rf)+(0.0000496056590027689*rf*rf)+(0.00287021134797329*t*rf)+(0.00000155149810199798*t*rf*t*rf);
Die quadratische Näherung hat im Wertebereich rf:(20-95), t:(0-25) einen maximalen quadratischen Fehler von 0,6. Siehe auch folgendes Bild: Vielleicht kann dies jemand verwenden. Kommentare herzlich willkommen
Re: Script zur Berechnung des Feuchtegehalts
Hallo
ich habe ein Problem das Script zur Berechnung der absotuten Feuchte zum Laufen zu bringen. Ich bin offensichtlich zu blöd oder ich bin blind. Wäre echt total tollwenn mir jemand helfen könnte. Könntet ihr mir das Script schicken wenn angenommen der Temperatursender die Seriennummer "IEQ1234567" hat und die Sysvar in die der Wert g/Kg geschrieben werden soll "absolutF" heisst.
Wäre echt nett! Bin ein blutiger Anfänger
ich habe ein Problem das Script zur Berechnung der absotuten Feuchte zum Laufen zu bringen. Ich bin offensichtlich zu blöd oder ich bin blind. Wäre echt total tollwenn mir jemand helfen könnte. Könntet ihr mir das Script schicken wenn angenommen der Temperatursender die Seriennummer "IEQ1234567" hat und die Sysvar in die der Wert g/Kg geschrieben werden soll "absolutF" heisst.
Wäre echt nett! Bin ein blutiger Anfänger
Re: Script zur Berechnung des Feuchtegehalts
Wenn Du mit der Seriennummer arbeitst, dann so:
Code: Alles auswählen
! Feuchtegehalt berechnen und in Systemvariable schreiben
! Lokale Variablen
real t; ! Temperatur in °C
integer rf; ! relative Feuchte in %
real af; ! Feuchtegehalt in g/kg
! Werte einlesen
t = dom.GetObject("BidCos-RF.IEQ1234567:1.TEMPERATURE").Value();
rf = dom.GetObject("BidCos-RF.IEQ1234567:1.HUMIDITY").Value();
! Berechnung Sättigungsfeuchtegehalt
if (t < 0.0) {t = 0.0;}
if (t < 10.0)
{ af = (3.78 + (0.285 * t) + (0.0052 * t * t) + (0.0005 * t * t * t));
}
else
{ af = (7.62 + (0.524 * (t-10.0)) + (0.0131 * (t-10.0) * (t-10.0)) + (0.00048 * (t-10.0) * (t-10.0) * (t-10.0)));
}
! Feuchtegehalt
af = (af * rf) / (100.0 + af * (100.0 - rf) / 622);
! In Systemvariable schreiben
dom.GetObject("absolutF").State(af);
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)