Exponentielle pour calcul humidité absolue Python Scenario tag

Hello,

Après de longues fouilles j’ai enfin trouvé la formule pour calculer l’humidité absolue mais je galère avec la fonction exponentielle.
La formule fonctionne et donne le bon résultat en python mais impossible de la faire marcher dans un virtuel.

(6.112 * exp((17.67 * T) / (T + 243.5)) * rh * 2.1674 / (273.15 + T))

(avec T pour température et rh le taux d’humidité bien sûr).

C’est le « exp » qui bloque, quelqu’un sait comment faire svp ?

Mon plugin #plugin-rosee le fait directement

3 « J'aime »

Merci, je ferais ça si je ne trouve pas mais j’aimerais bien savoir comment faire quand même :wink:

un petit script en python …
dans le bloc code de scenario !

Avec le plugin script ?

non direct depuis un bloc code de scenario

Faudra que je teste .
Sinon la fonction exp n’est pas dispo dans virtuel alors ?

$req='python3 ////script.py parametres1 2 3' 
$scenario->setLog('DEBUG REQUETTE : '.$req);
$output0 = shell_exec($req);
$scenario->setLog('DEBUG RETOUR : '.$output0);

/// exploitation du résultat dans $output0

Je me demandais où vous tapiez la formule dans un virtuel ?

Je colle ça en haut de mon script et je mets $output0 dans la valeur du virtuel ?

Dans nom information et tu te sers de rechercher l’équipement en dessous pour sélectionner tes équipements

1 « J'aime »

OK, alors la formule est trop compliquée pour Jeedom.
Le testeur d’expression n’y arrive pas non plus: avec T = 1 et rh =67
image

Il y a trop de niveau de parenthèses. Même calcul avec moins de parenthèse:
image

Il vous reste les solutions:

  • du plugin de @JAG qui vous donnera en meme temps les alertes givre ou rosée
  • celle d ’ @olive dans un bloc code de scénario avec l’appel d’un script python à exécuter
  • ou directement en php dans un bloc code de scénario avec la création d’une variable à récupérer dans un virtuel.

En python ça passe bien

#!/usr/bin/python3
from math import exp
T = 20
rh = 50
ah = float(6.112 * exp((17.67 * T) / (T + 243.5)) * rh * 2.1674 / (273.15 + T))
print ((ah),"g/m3")

Mais j’ai du mal à l’intégrer dans jeedom.

Ya pas la pression atmosphérique à prendre en compte aussi ?

J’ai déjà pleuré pour trouver cette formule alors on va dire que 1024mbar ça ira :wink:

1024 c’est dans un anticyclone. La normale est à 1013.
Le plugin rosée de @JAG utilise la pression atmo.

1 « J'aime »

L’école c’est loin pour moi, lol.
Effectivement je crois que je vais finir avec le plugin rosée.
Merci de votre aide.

Je suis à bac +47 :wink:

Moi bep +30 :wink:

Un calculateur en ligne : Calculatrice en ligne: Convertisseurs humidité relative vers humidité absolue et vice-versa