Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
Forum général sur le langage C !

Modérateur : Jérémy

Hygromètre à PIC
RETRAITE128
Amateur
Amateur
Messages : 125
Enregistré en : août 2021

#1 Message par RETRAITE128 » jeu. 4 juil. 2024 15:21

Bonjour,
Je voudrais vous soumettre les soucis que j'ai avec deux structures à PIC 16F84 sur des réalisations d'hygromètre.

Les différents capteurs que j'ai utilisés, des DHT22-AM2302, donnent des résultats différents entre eux loin des tolérances fournies par le constructeur.
Un DHT22 simple fourni par un ami donne aussi des valeurs différents de deux autres, mais tout de même plus proches de la réalité.

Voici le lien d'une des montages : https://simple-circuit.com/pic16f84a-dh ... ment-12712

Je dispose du fichier .HEX du PIC mais je ne sais pas comment l'insérer dans ce message.

Dans l'attente de vous lire,

COrdialement,

Alain

Hygromètre à PIC
Jérémy
Administrateur du site
Administrateur du site
Messages : 2750
Âge : 46
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#2 Message par Jérémy » jeu. 4 juil. 2024 18:46

Bonjour RETRAITE128,

Le fichier .HEX est illisible pour les Humains, c'est un fichier prévu pour le compilateur. Il faut le ou les fichiers .C

Tu peux mettre du code en suivant ce lien : https://www.fantaspic.fr/viewtopic.php?p=1020#p1020

La précision n'est pas pareil que la calibration. Cela ne sert à rien d'être précis, si le capteur n'est pas calibré et étalonné. I lest commun de voir des différences sur ce genre de capteur.

Le circuit et le routage peut également joué sur la valeur lue.
Le code aussi joue suivant comment est lu la valeur si c'est de l'analogie bien sur.


@+
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Hygromètre à PIC
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3256
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#3 Message par paulfjujo » jeu. 4 juil. 2024 19:01

Bonsoir,

effectivement avec un fichier *.hex ..on ne peut rien faire .
Le desassemblage ! un boulot de romain ..ou plutot d'esclave .

il faut le code source original qui a été ecris en ASM,ou en C ?
ou en basic,pascal ....

La mesure absolue du taux d'humidité ne peut etre que relative
vu que c'est TRES compliqué à etalonner ... avec des echantillons calibrés
En mileu industriel on utilise des bouteilles d'air calibrée en % humidité
et des sondes + chaine de mesures dont le prix est plutot vers quelques K€ .

Il n'y a que la mesure de temperature qui purrait etre assez precise , ou facilement corrigeable par soft.
donc ,pas etonnant que 2 capteurs puissent diverger sur la mesure d'humidité..

Ton 16F84 delivre les donnes sous quelle forme ?
via un LCD texte 2x16 , ou un terminal ou ?
Aide toi, le ciel ou FantasPic t'aidera

Hygromètre à PIC
RETRAITE128
Amateur
Amateur
Messages : 125
Enregistré en : août 2021

#4 Message par RETRAITE128 » jeu. 4 juil. 2024 20:37

Bonsoir,

Merci pour vos réponses,

Le fichier code disponible sur le site dont je vous ai donné le lien peut-il vous être utile ?

Dites moi svp.

Cordialement,

Alain

Hygromètre à PIC
RETRAITE128
Amateur
Amateur
Messages : 125
Enregistré en : août 2021

#5 Message par RETRAITE128 » jeu. 4 juil. 2024 20:38

J'ai oublié de vous dire que le schéma se trouve aussi dans ce lien, désolé

Hygromètre à PIC
RETRAITE128
Amateur
Amateur
Messages : 125
Enregistré en : août 2021

#6 Message par RETRAITE128 » ven. 5 juil. 2024 10:13

Bonjour à tous,

Je vous joins le schéma et le fichier en langage C.

dht22.c

Schéma.jpg


J'espère que c'est ainsi qu'il faut faire, dites le moi.

Cordialement,

Alain
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

Hygromètre à PIC
gwion
Expert
Expert
Messages : 1121
Enregistré en : février 2022

#7 Message par gwion » ven. 5 juil. 2024 10:44

A ce que je vois le capteur renvoie toutes les 2 secondes une trame numérique qu'il faut décortiquer.
Déjà est-ce que la température affichée est correcte (ceci pour voir si le décorticage/décodage parait cohérent) ?
Ensuite si tu as un Arduino sous la main, tu peux tester tes capteurs avec en utilisant les librairies standards. Si ça te donne la même chose avec du code testé et retesté par la communauté, c'est que tes capteurs ne valent pas un clou.

Hygromètre à PIC
RETRAITE128
Amateur
Amateur
Messages : 125
Enregistré en : août 2021

#8 Message par RETRAITE128 » ven. 5 juil. 2024 11:44

Bonjour,

Désolé je n'ai pas d'Arduino pour faire le test.

Côté température c'est correct.

Cordialement,

Alain

Hygromètre à PIC
gwion
Expert
Expert
Messages : 1121
Enregistré en : février 2022

#9 Message par gwion » ven. 5 juil. 2024 13:00

Tu as bien un quartz de 8MHz ?

Hygromètre à PIC
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3256
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#10 Message par paulfjujo » ven. 5 juil. 2024 19:01

bonsoir,

rappel suite à des tests réalises pour un projet d'arrosage Plantes


Au sujet de ce DTH22 AM2302 et au vu de sa datasheet
IL y a un truc qui me chiffonne dans la spec sheet du DTH22 , page 9, paragraph 7. ..
où il est question d'une periode de lecture > 2 sec ( et 1,7 seconde pour le AM2303) !
J'ai deja remarqué que je ne peux pas relire le DTH22 avec un intervalle de temps < 480mS
sinon j'ai des messages de defauts.."Pas de reponse DTH22"
J'ai du inserer une Tempo de 250mS au sein de ma boucle principale .. qui globalement s'execute en ~450mS
et lancer cette mesure qu'une fois sur 4.
// Attente de xxxms =Timeout Timer0 OU sur arrivée String sur RX UART1
// AM2303 *Collecting period should be : >1.7 second.
// AM2302 *Collecting period should be : >2 second.
Arme_Timer0_250mS();
while ((Flag_Buffer1==0) && (Flag_Timer0==0)) ;
mais de la à parler de 2sec .. 2000mS ! .. sans aucune explication..


j'essaie de tester mon AM2302 avec un vieux PIC16F84
qui necessite un programmateur POK508 + DB9/USB TU59 converter + ICProgr 1.05D.exe
il met 10 minutes pour programmer ce PIC !!
Windows10 doit rajouter pas mal de couches software ! car I/O pas possible , non autorisé.

un 16F628 serait mieux approprié ICSP oblige..
Aide toi, le ciel ou FantasPic t'aidera


Retourner vers « Langage C »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 5 invités