Page 1 sur 1

Calcul température ressentie

Publié : 11 févr. 2019, 22:01
par Honrap
Bonjour,
J'ai une station météo (détectée Alecto V2) qui me remonte sur Domoticz: la température, la pluviométrie, l'hygrométrie, et le vent (normal et rafale, mais pas la direction).

Sur l'écran de la station, j'ai aussi la température ressentie (Windchill / Refroidissement éolien).
Je suppose qu'elle est calculée selon la formule disponible sur Wikipedia.

Est-ce que vous savez s'il existe une méthode pour calculer cette valeur et l'ajouter dans Domoticz ?

Re: Calcul température ressentie

Publié : 11 févr. 2019, 22:10
par papoo
en lua

Code : Tout sélectionner

-- Calculate wind chill. If temperature is low but it's windy, the temperature
-- feels lower than the actual measured temperature. Wind chill formula from
-- <a href="http://www.nws.noaa.gov/om/windchill/">http://www.nws.noaa.gov/om/windchill/</a>.
-- @param temperature Temperature in Fahrenheit, must be 50 or less
-- @param wind_speed Wind speed in miles per hour
-- @return Wind chill of the given conditions, or nil if invalid input received
function calc_wind_chill(temperature, wind_speed)
	local apparent = nil
	if (temperature ~= nil and wind_speed ~= nil and temperature <= 50) then
		if (wind_speed > 3) then
			local v = math.pow(wind_speed, 0.16)
			apparent = 35.74 + 0.6215 * temperature - 35.75 * v + 0.4275 * temperature * v
		elseif (wind_speed >= 0) then
			apparent = temperature
		end
	end

	return apparent
end
la fonction pour convertir les fahrenheit en celsius

Code : Tout sélectionner

function fahrenheit_to_celsius(fahrenheit, digits) 
    return round((5/9) * (fahrenheit - 32), digits or 2)
end
la fonction km en miles

Code : Tout sélectionner

function km_to_miles(km, digits) 
    return round((km * 0.62137119223733), digits or 2)
end
et la fonction round

Code : Tout sélectionner

function round(value, digits)
	if not value or not digits then
		return nil
	end
		local precision = 10^digits
        return (value >= 0) and
		  (math.floor(value * precision + 0.5) / precision) or
		  (math.ceil(value * precision - 0.5) / precision)
end

Re: Calcul température ressentie

Publié : 11 févr. 2019, 22:27
par Honrap
Merci papoo.
J'en ai jamais ajouté, faut que je regarde où on met ça. Peut-être dans Réglages / Plus d'options / Événements, puis ajouter un script lua, mais il me propose 5 choix: All (commented), Device, Security, Time, User variable.

Re: Calcul température ressentie

Publié : 16 févr. 2019, 18:17
par papoo
time si tu veux que ton script agisse cycliquement
device si tu veux que ton script réagisse à un device particulier
personnellement je ne mets pas en base de données, je mets mes scripts sous forme de fichiers dans le répertoire script