NEWS
[gelöst] gefühlte Temperatur
-
@codierknecht danke, werde berichten. Leider schmiert der Fernzugriff über die Cloud immer ab wegen zu vieler Anfragen oder so. Jetzt muss ich immer 5 Minuten warten bevor ich mich wieder verbinden kann. Den Fehler muss ich erst Googlen.
@peter666666 Versteh ich nicht, der Adapter kriegt doch die Daten geliefert, ich glaub so alle 10 Minuten. Das sollte dann so funktionieren wie @Codierknecht es vorgeschlagen hat.
-
@codierknecht sagte: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als aich bei den ID's der Datenpunkte.
Ich auch.
In der Berechnung würde ich den Exponenten nur einmal verwenden:
return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * Math.pow(v, 0.16);oder
return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * v ** 0.16;@Codierknecht Du wirst feststellen, dass Deine Formel anders aussieht.
-
@peter666666 Versteh ich nicht, der Adapter kriegt doch die Daten geliefert, ich glaub so alle 10 Minuten. Das sollte dann so funktionieren wie @Codierknecht es vorgeschlagen hat.
-
@peter666666 sagte in gefühlte Temperatur:
@codierknecht danke. Habe die Umlaute entfernt und habe das Skript mal gestartet - Keine Fehlermeldung aber "0_userdata.0.Hausdaten.gefühlte_Temperatur" noch leer. Mal schauen ob in ein paar Minuten ein Wert unter "0_userdata.0.Hausdaten.gefuehlte_Temperatur" steht.
Da sollte etwas stehen, sobald sich einer der beiden Eingangswerte ändert.
@codierknecht Dein Skript habe ich auch versucht. userData bleibt aber leer. Irgendwas mach ich falsch :(

-
@peter666666 sagte in gefühlte Temperatur:
@johgre Wenn ich es so mache kommen einige Warnungen:


Dein Script heist noch Gef
ühlte_Außentemperatur. Ändere das mal -
@codierknecht Dein Skript habe ich auch versucht. userData bleibt aber leer. Irgendwas mach ich falsch :(

@peter666666
Heissen Deine DP tatsächlichnetatmo.0.xxx...? -
Deine Formel ist richtig. Sie wird in verschiedenen Beiträgen im www falsch dargestellt.EDIT: Formel ist falsch.
@paul53
Die Formel hatte ich hier gefunden:
https://homematic-forum.de/forum/viewtopic.php?t=50821#p509661 -
@peter666666
Heissen Deine DP tatsächlichnetatmo.0.xxx...?@codierknecht sagte in gefühlte Temperatur:
@peter666666
Heissen Deine DP tatsächlichnetatmo.0.xxx...?nein, die schauen schon so aus wie deine. In den Objekt.States stehen aber schon Werte drinnen?
-
@paul53
Die Formel hatte ich hier gefunden:
https://homematic-forum.de/forum/viewtopic.php?t=50821#p509661@codierknecht sagte: Die Formel hatte ich hier gefunden:
Das entspricht nicht dieser Formel, die man meistens findet. Der Exponent von 0,16 wirkt nur auf die Windgeschwindigkeit.
-
@codierknecht sagte in gefühlte Temperatur:
@peter666666
Heissen Deine DP tatsächlichnetatmo.0.xxx...?nein, die schauen schon so aus wie deine. In den Objekt.States stehen aber schon Werte drinnen?
@johgre ja da stehen die gemessenen Werte drinnen.
-
@johgre ja da stehen die gemessenen Werte drinnen.
@peter666666 sagte in gefühlte Temperatur:
@johgre ja da stehen die gemessenen Werte drinnen.
Probier das mal und benenne das Script mal um.
function Start() { Berechne(); } function GefuehlteTemperatur(temp, wind){ log('temp: ' + temp + ' wind: ' + wind); var t =temp var v = wind var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16; return w; } function Berechne(){ var t = parseFloat( getState('netatmo.0.5ea0208a5f0d9668fe02b62c.70-ee-50-03-da-44.02-00-00-03-d7-bc.Temperature.Temperature'/*Temperature*/).val); log('Temperatur: ' + t); var v =parseFloat( getState('netatmo.0.5ea0208a5f0d9668fe02b62c.70-ee-50-03-da-44.06-00-00-00-1e-82.Wind.WindStrength'/*Wind strength*/).val); log('WindStrength: ' + v); var w = GefuehlteTemperatur(t,v); log('Gefühlte Temperatur: ' + Math.round(w * 10) / 10 + ' °C'); } Start();da müssen die Log-Statements was ausgeben.
-
@codierknecht sagte: Die Formel hatte ich hier gefunden:
Das entspricht nicht dieser Formel, die man meistens findet. Der Exponent von 0,16 wirkt nur auf die Windgeschwindigkeit.
@paul53 sagte in gefühlte Temperatur:
Das entspricht nicht dieser Formel, die man meistens findet
Und bei Wikipedia findet sich wieder eine andere:
https://de.wikipedia.org/wiki/Windchill -
@paul53 sagte in gefühlte Temperatur:
Das entspricht nicht dieser Formel, die man meistens findet
Und bei Wikipedia findet sich wieder eine andere:
https://de.wikipedia.org/wiki/Windchill@codierknecht sagte: Wikipedia findet sich wieder eine andere:
Die Formel ist identisch zu der von mir angegebenen. Zu beachten ist, dass in dieser Formel die Windgeschwindigkeit in km/h vorliegen muss.
-
@codierknecht sagte: Wikipedia findet sich wieder eine andere:
Die Formel ist identisch zu der von mir angegebenen. Zu beachten ist, dass in dieser Formel die Windgeschwindigkeit in km/h vorliegen muss.
@paul53
Naja - die Formel dann anzupassen scheint aktuell das geringere Problem. -
@peter666666 sagte: Wenn ich es so mache kommen einige Warnungen:
Durch das Anhängen von " °C" wird aus der Zahl wieder ein String. Bei Datenpunkten vom Typ Zahl trägt man "°C" unter common.unit ein.
-
@peter666666 sagte in gefühlte Temperatur:
@johgre ja da stehen die gemessenen Werte drinnen.
Probier das mal und benenne das Script mal um.
function Start() { Berechne(); } function GefuehlteTemperatur(temp, wind){ log('temp: ' + temp + ' wind: ' + wind); var t =temp var v = wind var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16; return w; } function Berechne(){ var t = parseFloat( getState('netatmo.0.5ea0208a5f0d9668fe02b62c.70-ee-50-03-da-44.02-00-00-03-d7-bc.Temperature.Temperature'/*Temperature*/).val); log('Temperatur: ' + t); var v =parseFloat( getState('netatmo.0.5ea0208a5f0d9668fe02b62c.70-ee-50-03-da-44.06-00-00-00-1e-82.Wind.WindStrength'/*Wind strength*/).val); log('WindStrength: ' + v); var w = GefuehlteTemperatur(t,v); log('Gefühlte Temperatur: ' + Math.round(w * 10) / 10 + ' °C'); } Start();da müssen die Log-Statements was ausgeben.
@johgre jetzt nochmal neu kopiert und die DP auch neu rein kopiert ins Skript. Userdata bleibt aber leer


-
@peter666666 sagte: Wenn ich es so mache kommen einige Warnungen:
Durch das Anhängen von " °C" wird aus der Zahl wieder ein String. Bei Datenpunkten vom Typ Zahl trägt man "°C" unter common.unit ein.
@paul53 wo mach ich das?
P.S.: Wind wird in km/h ausgegeben von Netatmo
-
@johgre jetzt nochmal neu kopiert und die DP auch neu rein kopiert ins Skript. Userdata bleibt aber leer


@peter666666 sagte in gefühlte Temperatur:
Userdata bleibt aber leer
Da steht ja auch nirgendwo
setState();-) -
@johgre jetzt nochmal neu kopiert und die DP auch neu rein kopiert ins Skript. Userdata bleibt aber leer


@peter666666 sagte in gefühlte Temperatur:
@johgre jetzt nochmal neu kopiert und die DP auch neu rein kopiert ins Skript. Userdata bleibt aber leer


Dein Datenpunkt ist ein Ordner
-
@peter666666 sagte in gefühlte Temperatur:
Userdata bleibt aber leer
Da steht ja auch nirgendwo
setState();-)