DHT22

Forum pour tous les autres objets : sondes météo, capteurs, actionneurs ...
Vous avez un besoin mais vous ne savez pas quel matériel choisir ? C'est ici.
oli80330
Messages : 19
Inscription : 21 oct. 2014, 16:38

DHT22

Message par oli80330 »

Bonjour

J'ai installé un DHT 22 sur mon RPi.

En utilisant la bibliothèque Adafruit, script python ou C, j'ai toujours de nombreuses erreurs (retours sans valeurs de température et humidité). :evil:

Vous utilisez quel méthode pour lire vos sondes DHT11 ou 22 ?

Merci
Domoticz on RPi : Prises, Volets, Temp, Conso (via Shelly), Contacts et mouvements Meian
Contrôles : Volets , Lumières (Script IP, capteurs MVT), Alarmes (heures, mobiles...), Poêle ETNA (via ESP), Clim (via plugin Tuya)
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: DHT22

Message par patrice »

Bonjour,
En ce qui me concerne je n'ai jamais pu obtenir de résultats corrects avec DHT22 et le Rasp
Autant avec un Arduino cela marche parfaitement que avec le Pi ...

J'envisage donc, mais j'ai un peu la flemme, de connecter DHT a un Arduino puis un bus I2C vers le Rasp, :evil:
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
oli80330
Messages : 19
Inscription : 21 oct. 2014, 16:38

Re: DHT22

Message par oli80330 »

Ok je termercie

J'ai jamais essayé l'Arduino. C'est compliqué de l'interfacer avec le RPi ?
Domoticz on RPi : Prises, Volets, Temp, Conso (via Shelly), Contacts et mouvements Meian
Contrôles : Volets , Lumières (Script IP, capteurs MVT), Alarmes (heures, mobiles...), Poêle ETNA (via ESP), Clim (via plugin Tuya)
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: DHT22

Message par patrice »

Bonjour
Non ce n'est pas vraiment compliqué mais c'est de la programmation pure et dure
D'autre part ce qui est compliqué c'est d'avoir UN Arduino plus son alim plus les cables de laision I2C vers le PI dédié à UN DHT
, disproportionné par rapport à l'usage que je veux en faire (humidité SDB)

Par contre mon expérience à moi n'est peux être pas représentative de l'ensemble

D'autres avis ?
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
nickos
Messages : 50
Inscription : 28 sept. 2014, 19:28

Re: DHT22

Message par nickos »

bonjour

J'ai installé la bibliothèque Adafruit et pour moi sur un rpi cella fonctionne

Code : Tout sélectionner

mkdir adafruit
cd adafruit
wget https://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code/archive/master.zip
unzip master.zip
cd Adafruit-Raspberry-Pi-Python-Code-master/Adafruit_DHT_Driver/
Réponse avec

Code : Tout sélectionner

sudo ./Adafruit_DHT 22 4

Code : Tout sélectionner

Using pin #4
Data (40): 0x0 0xfa 0x0 0xee 0xe8
Temp =  23.8 *C, Hum = 25.0 %
J'aurais une question, comment intégrer ces résulta dans domoticz avec des capteur virtuel?
J'ai tester cette méthode (http://easydomoticz.com/raspberry-et-dht11/) mais j'ai une erreur d'autorisation quand je lance

Code : Tout sélectionner

sudo Adafruit_DHT 11 27
sudo: unable to resolve host PI
sudo: Adafruit_DHT: command not found
merci
Rpi B avec Domoticz + RFXcom 433.92Mhz + Carte 8 relais sur Gpio
+ 9 Module 1000W DI.O+ 1 Multi modules DI.O + 2 Détecteur de fumée sans fil FA20RF
Rpi B avec squeezlite + Webcam sous Motion
Rpi B avec squeezlite
Rpi B avec Raspbmc + Squeelite pour xbmc
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: DHT22

Message par patrice »

Bonjour

C'est quoi ta distrib Linux ?

D'autre part je ne comprends pas la différence entre l éetape ou tu décrit que cela fonctionne et celle ou tu dis que cela fait l'erreur dans les 2 cas tu fait sudo adadafruit ....

Pour l'erreur je pense qu'il manque PI dans /etc/hosts and/ou /etc/hostname

Modifie à la main ou avec raspi-config
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
nickos
Messages : 50
Inscription : 28 sept. 2014, 19:28

Re: DHT22

Message par nickos »

salut
1)
Ma distrib est raspbian. Est installé aussi squeezbox (vue que j'utilise ce rpi comme squeezplay ) et domoticz pour pouvoir recupéré les donnée de la sonde DHT22 dans la salle de bain que j'aimerais renvoyé sur un autre rpi avec mon domoticz principal. Oui je sais ça fait un peut usine a gaz mais jusque ici squeezbox et domoticz cohabite bien.
2)

Code : Tout sélectionner

sudo ./Adafruit_DHT 22 4
fonctionne et

Code : Tout sélectionner

sudo Adafruit_DHT 22 4
me donne l'erreur

Code : Tout sélectionner

sudo: Adafruit_DHT: command not found
3)
hosts

Code : Tout sélectionner

127.0.0.1	localhost
::1		localhost ip6-localhost ip6-loopback
fe00::0		ip6-localnet
ff00::0		ip6-mcastprefix
ff02::1		ip6-allnodes
ff02::2		ip6-allrouters

127.0.1.1	Salle De Bain
hostname Mon probleme est que je n'arrive pas récupérer les donné de la sonde.J'ai suivie ce tuto http://easydomoticz.com/raspberry-et-dht11/
Ma sonde est sur le gpio 4 elle fonctionne vue que je recupère les donnée avec
sudo ./Adafruit_DHT 22 4
J'ai créer un script dans /home/pi/domoticz/scripts que j'ai nommé sonde_dht22
#!/bin/sh
# Domoticz server
SERVER="192.168.1.10:8081"
# DHT IDX
# le numero de l IDX dans la liste des dispositifs Domoticz
DHTIDX="6"
#DHTPIN
# LE GPIO ou est connecte le DHT11
DHTPIN="4"
# si vous avez un DHT22 modifiez plus bas sur la ligne Adafruit_DHT 11 par Adafruit_DHT 22
# TMPFILE : chemin pour fichier temporaire a placer dans le RAMDRIVE pour eviter les
# ecritures sur la SD card
# sinon chemin ou sera ecrit le fichier contenant les temperature
# /tmp/temper.txt est un bon choix si pas de RAMDRIVE installe
# consultez http://www.easydomoticz.com pour tout savoir
TMPFILE="/var/tmp/temper.txt"
while :
do
TEMP=""
sleep 5
sudo nice -20 Adafruit_DHT 22 $DHTPIN > $TMPFILE
TEMP=$(cat $TMPFILE|grep Temp |awk '{print $3}')
if [ $TEMP ]
then
TEMP=$(cat $TMPFILE|grep Temp |awk '{print $3}')
HUM=$(cat $ $TMPFILE |grep Temp |awk '{print $7}')
# echo $TEMP
# echo $HUM
# Send data
curl -s -i -H "Accept: application/json" "http://$SERVER/json.htm?type=command&param=udevice&idx=$DHTIDX&nvalue=0&svalue=$TEMP;$HUM;2"
TEMP=""
HUM=""
# rm $TMPFILE
fi
mais mon virtual device m'affiche toujour status 0°C,Humidité 50% donc ça ne fonctionne pas :evil:
Rpi B avec Domoticz + RFXcom 433.92Mhz + Carte 8 relais sur Gpio
+ 9 Module 1000W DI.O+ 1 Multi modules DI.O + 2 Détecteur de fumée sans fil FA20RF
Rpi B avec squeezlite + Webcam sous Motion
Rpi B avec squeezlite
Rpi B avec Raspbmc + Squeelite pour xbmc
nickos
Messages : 50
Inscription : 28 sept. 2014, 19:28

Re: DHT22

Message par nickos »

bon j'ai trouvé la solution google est t'on ami. :|
info trouvé làhttp://www.cannaweed.com/topic/190528-j ... -domoticz/
et là http://www.domoticz.com/forum/viewtopic.php?f=12&t=2006

C'etais qu'une question de droit dans

Code : Tout sélectionner

/usr/bin/Adafruit_DHT
et dans

Code : Tout sélectionner

/home/pi/domoticz/scripts/nom_du_script
un

Code : Tout sélectionner

chmod 777 /usr/bin/Adafruit_DHT 
et

Code : Tout sélectionner

chmod 777 /home/pi/domoticz/scripts/nom_du_script
avec mes recherche j'ai vue qu'on pouvait éclaté les résultats en trois, température+Humidité,Température et humidité.

Code : Tout sélectionner

#!/bin/sh
# Domoticz server
SERVER="Ip_de_domoticz:et_son_port"
# DHT IDX
# le numero de l'IDX dans la liste des dispositifs Domoticz
DHTIDX="Idx_temp+hum"
DHTIDX2="temp"
DHTIDX3="hum"

#DHTPIN
# LE GPIO ou est connecte le DHT22
DHTPIN="4"
# si vous avez un DHT22 modifiez plus bas sur la ligne Adafruit_DHT 11 par Adafruit_DHT 22
# TMPFILE : chemin pour fichier temporaire a placer dans le RAMDRIVE pour eviter les
# ecritures sur la SD card
# sinon chemin ou sera ecrit le fichier contenant les temperature
# /tmp/temper.txt est un bon choix si pas de RAMDRIVE installe
# consultez www.easydomoticz.com pour tout savoir
TMPFILE="/var/tmp/temper.txt"
TEMP=""

until [ -n "$TEMP" ] ; do
sleep 5
sudo nice -20 Adafruit_DHT 22 $DHTPIN > $TMPFILE
TEMP=$(cat $TMPFILE|grep Temp |awk '{print $3}')
done

TEMP=$(cat $TMPFILE|grep Temp |awk '{print $3}')
HUM=$(cat $TMPFILE |grep Temp |awk '{print $7}')

# Send data
curl -s -i -H "Accept: application/json" "http://$SERVER/json.htm?type=command&param=udevice&idx=$DHTIDX&nvalue=0&svalue=$TEMP;$HUM;2"
curl -s -i -H "Accept: application/json" "http://$SERVER/json.htm?type=command&param=udevice&idx=$DHTIDX2&nvalue=0&svalue=$TEMP"
curl -s -i -H "Accept: application/json" "http://$SERVER/json.htm?type=command&param=udevice&idx=$DHTIDX3&nvalue=0&svalue=$HUM"
TEMP=""
HUM=""
mais et oui y'a un mais l'humidité seul ne s'affiche pas.pourquoi ça ne peut pas marché du premier coup :twisted:
Rpi B avec Domoticz + RFXcom 433.92Mhz + Carte 8 relais sur Gpio
+ 9 Module 1000W DI.O+ 1 Multi modules DI.O + 2 Détecteur de fumée sans fil FA20RF
Rpi B avec squeezlite + Webcam sous Motion
Rpi B avec squeezlite
Rpi B avec Raspbmc + Squeelite pour xbmc
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: DHT22

Message par patrice »

Bonsoir
LE plus probable est que tu as oublie à la fin de la ligne de HUM un;2 pour le HUM_STAT
/json.htm?type=command&param=udevice&idx=IDX&nvalue=45&svalue=HUM;HUM_STAT

The above sets the parameters for a Humidity device

IDX = id of your device (This number can be found in the devices tab in the column "Idx")
HUM = Humidity: 45%
HUM_STAT = Humidity_status: 2 (Dry)

Sinon parce que le capteur que tu tente de renseigner avec ton IDX3 n'est pas un capteur humidité
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
nickos
Messages : 50
Inscription : 28 sept. 2014, 19:28

Re: DHT22

Message par nickos »

salut patrice

pour le ";2" de la ligne de HUM, ça ne fonctionne pas non plus. :(

le capteur qui renseigner l' IDX3 est un capteur virtuel d'humidité LaCrossTx3
ce que je comprend pas c'est qu'avec le capteyur de temperature ça fonctionne super bien.
Pièces jointes
Capture humidité.JPG
Capture humidité.JPG (13.24 Kio) Consulté 14890 fois
Rpi B avec Domoticz + RFXcom 433.92Mhz + Carte 8 relais sur Gpio
+ 9 Module 1000W DI.O+ 1 Multi modules DI.O + 2 Détecteur de fumée sans fil FA20RF
Rpi B avec squeezlite + Webcam sous Motion
Rpi B avec squeezlite
Rpi B avec Raspbmc + Squeelite pour xbmc
Répondre