Page 1 sur 2

DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 22 juil. 2020, 22:43
par Formid
Bonjour
Je surveille la température de mon frigo et congélateur à l'aide de sondes DHT22 reliées à une carte ESP32 NodeMcu qui envoie les info à Domoticz.
Pour surveiller si une porte n'est pas restée ouverte, j'ai écrit un petit script en DzVent qui m’envoie un sms si, par exemple la température du congélateur est supérieure à -8°C.
Globalement cela fonctionne bien.
Malheureusement les sondes DHT22 sont parfois capricieuse et renvoient des données farfelues. c'est souvent une mesure ponctuelle qui est erronée. Pour la lecture de la température dans Domoticz ce n'est pas un problème, c'est transparent.
Par contre si l'erreur arrive au moment ou le script vient lire la valeur de la température, je reçois un message d'alerte.

Je souhaiterais supprimer cet envoi de message erroné pour ne recevoir que les véritables message d'alerte quand mon congélateur est réellement trop chaud.

Mon idée serait de modifier mon script pour que quand il mesure une température >-8°C il n’envoie pas de message mais se met en pause quelques minutes (un sleep ou delay?) puis refait une nouvelle mesure qui si elle est toujours en erreur m’envoie le message d'alerte.

Mais je ne sais pas comment intégrer un sleep ou un delay dans un script DzVent.
Cela est t'il possible?

Voici mon script actuel (une seule mesure sans pause)
--
-- Alarme Temperature Congel
--
return
{
on =
{
timer = { 'Every 10 minutes' }
},
execute = function(domoticz, TempCongelateur)

if (domoticz.devices (67).temperature > -8) then
domoticz.log('Porte ouverte', domoticz.LOG_INFO)
domoticz.notify(Congel,'Température du Congélateur > -8°C', domoticz.PRIORITY_NORMAL)

end
end
}
Merci

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 23 juil. 2020, 05:29
par Chrominator
C'est très faisable avec ça ;

Ce qui gêne dans le cas décrit ici est l’apparition de la notification immédiatement.
Dans le script proposé, la notification peut intervenir plusieurs minutes après l'apparition du défaut, s'il persiste toujours.

Voir exemple n°4

Code : Tout sélectionner

Exemple 4 : être averti si la température ou l'hygrométrie dépasse les seuils minimal ou maximal pendant un certain nombre de minutes
    avec fréquence de notifications en minutes et notification des heures calmes

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 23 juil. 2020, 22:43
par Formid
Merci
Effectivement cela doit répondre parfaitement à mon problème.
Je vais étudier tranquillement ce script de notification ultime que je ne connaissais pas.
Ça n'a pas l'air tout simple mais je devrais réussir.

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 23 juil. 2020, 23:09
par Chrominator
En fait ce n'est pas très compliqué.
Fais juste attention à ne pas mettre d'espaces avant et après les {} qui entourent les paramètres en json, et tout ira bien.

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 25 juil. 2020, 11:18
par Formid
Bonjour
Je viens de tester ce matin.
Çà fonctionne super.
C'était exactement ce que je recherchais.
Ce script est vraiment génial.

Si j'avais une amélioration à suggérer, ce serait que pour les problèmes de température, lors de l'envoi de la notification, la température mesurée soit donnée et pas seulement le seuil de dépassement.
Comme c'est le cas si l'on fait une notification simple directement par l'onglet notification du dispositif.
Bon, c'est du cosmétique.

Merci encore

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 25 juil. 2020, 13:44
par Chrominator
Content que tu aies réussi à paramétrer ce script pour ton usage.

Concernant les idées d'amélioration, il vaut mieux les poster directement sur le post d'origine.

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 25 juil. 2020, 15:15
par vil1driver
Salut,

Personnellement j'aurais travaillé sur le fait qu'une mesure farfelue ne soit pas envoyée à domoticz

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 27 juil. 2020, 07:43
par david86
Bonjour,
Par curiosité et par intérêt, comment insérez vous vos sondes dans votre frigo ou congélateur ?
Merci,

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 27 juil. 2020, 14:06
par higgins91
je n'utilise pas de DHT22 mais du 1 wire avec une sonde DS18B20 en TO92. Je l'ai soudée à un câble et mis dans de la gaine thermo. Elle est insensible à l'humidité et ne provoque pas de mesure farfelue...
Je l'ai glissée dans la grille la plus haute et j'ai scotché le fil contre le montant en faisant bien attention de ne pas faire un bourrelet avec le fil mais une pente progressive pour ne pas abimer le joint de la porte.
en place depuis 2016 sans problèmes...

Re: DHT22 et script Alarme temperature Congélateur, inclure une pause

Publié : 27 juil. 2020, 22:45
par Formid
Bonjour
Les sondes DS18B20 sont aussi un bon choix si l'on ne souhaite que la mesure de température.
Je suis parti sur des sondes DHT22 car j'en utilisais déjà une en sonde extérieure qui me fait hygrométrie et température depuis 2 ans.
Récemment j'ai du la remplacer car l’hygrométrie restait bloquée à 100%. (Elle était fixée sous abri mais dans certaines conditions de vent elle a pu recevoir directement de la pluie, cela ne la sans doute pas arrangé!)

Il est vrai quelles peuvent louper quelques mesures. Dans le programme le cas est prévu et si une mesure est loupée elle est relancée aussitôt.
Dans mon installation domotique j'en ai 4 en service. Une extérieure, une dans un congélateur, une dans un congélateur de frigo et une dernière dans un frigo.

Je fais une mesure toutes les 6 secondes. Il m'arrive de ne pas avoir de mesures pendant plusieurs minutes mais ce n'est pas gênant. Je ne fais pas une mesure toutes les 6 sec pour un besoins de mesure mais pour pouvoir mettre à jour mon ESP32 par WiFi. Ce qui n'est possible que si la boucle de programmation est inférieure à 10sec.

J'avais aussi le problème de valeurs erronées qui, pour le coup étaient vraiment gênantes car cela me déclenchais des fausses alarmes. Cela est totalement transparent depuis que j'utilise le "script de notification ultime"

Pour le raccordement des DHT22 j'utilise un vieux câble téléphonique dont j'ai dénuder la gaine extérieure et, conservé que les 3 fils utile, pour passer la porte.

Pour les frigo ce n'est en place que depuis quelques mois, je ne peux donc pas juger sur la durée mais, pour le moment j'en suis satisfait.