Tout existe, il suffit de le trouver...!
tout le monde a bien compris que c'était une erreur pire cas évidemment mais ça laisse perplexe sur la précision de la référence de tension12°C d'erreur c'est quand toutes les misères s'acharnent sur toi et que tu es maudit par les Dieux de l'Olympe.
J'ai mis en oeuvre le 335 à plusieurs reprises et jamais autant d'erreur.
Tout existe, il suffit de le trouver...!
Personne ne peut faire mieux que l'étalon.
Je ne te dirai pas la précision, tu pourras encore critiquer.
Pour mon applic, c'est suffisant.
Et toi, tu fais beaucoup de chose à +/- 0,5° près ?
Je ne critique pas pour le plaisir de critiquer, mon cher Gérard. J'essaie simplement de te convaincre que pour une application à µC, un capteur de température analogique est dépassé et qu'il n'y a pas besoin de calibration pour obtenir une précision de +/-0.5°C (DS18S20 +/-0.5°C à 3 sigma)
Tout existe, il suffit de le trouver...!
C'est quoi tes applications où +/- 0,5° est nécessaire ?
Je te rappelle que c'est un thermométre que notre ami veut faire, il est donc important à mon sens d'avoir une bonne précision absolue et une résolution d'au moins 0.25°C, mais cela reste mon avis perso. Sinon autant afficher la température avec un bargraph !
En branchant un LM335 sur un ADC10 bits sans réf de tension, pour moi ça n'est pas un appareil de mesure suffisament précis pour dire que c'est un thermométre.
J'ai cru comprendre que c'était destiné à surveiller une cave à vin, le pinard, ça c'est un truc qu'il faut prendre trés au sérieux !
Tout existe, il suffit de le trouver...!
Et le DS1722, saura-t-il faire à +/- 0,25° ?
J'ai des doutes.
Je ne suis pas "ton chez Gérard" !Je ne critique pas pour le plaisir de critiquer, mon cher Gérard. J'essaie simplement de te convaincre que pour une application à µC, un capteur de température analogique est dépassé et qu'il n'y a pas besoin de calibration pour obtenir une précision de +/-0.5°C (DS18S20 +/-0.5°C à 3 sigma)
Ce que tu penses n'engage que toi.
Si moi je préfère le LM, c'est mon problème, qu'il soit dépassé ou pas.
Maintenant tu parles du 1820, avant du 1722, n'a-t-il pas les mêmes perfs ?
désolé, je pensais que c'était une discussion amicale, mais visiblement ça n'a plus l'air d'être le cas.. enfin.Je ne suis pas "ton chez Gérard" !
tout à fait et d'ailleur je n'impose rien, ni à quiconque ! je propose simplement une solution alternative au LM335, plus performante et plus d'actualité. Si tu veux continuer à brancher des LM335 sur tes pics, c'est ton probléme... mais pour Kanterkro qui cherche une solution, je me devais de lui présenter ce type de capteur numérique et de lui indiquer les avantages.Ce que tu penses n'engage que toi.
Si moi je préfère le LM, c'est mon problème, qu'il soit dépassé ou pas.
pas vraiment:Maintenant tu parles du 1820, avant du 1722, n'a-t-il pas les mêmes perfs ?
DS18S20 DS1722
Précision +/-0.5°C [-10/+85] +/-2°C
Résolution 9 bits 8 à 12 bits configurables
bus One wire SPI/microwire
Tout existe, il suffit de le trouver...!
Je refais ma comparaison dans l'autre sens, les tabulations ne marchent pas !
DS18S20 / précision +/-0.5°C [-10/+85] / résolution 9 bits / bus One wire
DS1722 / +/-2°C / Résolution 8 à 12 bits configurables / bus SPI/microwire
Tout existe, il suffit de le trouver...!
Bonjour à tous,
Bon j'ai passé commande, je vous retiens dès que je reçoit le tout !!!
Merci à vous,
Cordialement
Bonjour à tous,
Voilà je viens de recevoir ma commande de chez Gotronic, plus qu'à attendre celle de chez Selectronic. Je pense que ça ne va pas tarder vu qu'il n'avait pas en stock la plaque d'essai et que maintenant elle est dispo sur le site.
Sinon, hier soir je me suis un peu amusé avec le PIC Simulateur IDE. J'ai regardé de près l'exemple fourni de l'ADC. J'ai assez facilement réussi à mettre mes entrées analogiques que je souhaitais. J'ai également modifié certains paramètres comme la fréquence de l'horloge externe. J'ai vérifié également le registre ADCON1 et y a aucun soucis. Mes entrées de capteurs sont valides.
J'ai regardé de façon un peu plus rapide le fonctionnement du programme de l'afficheur. Là par contre, j'ai un peu plus de mal. En laissant les mêmes ports que dans l'exemple qui sont reliés à l'afficheur, j'ai réussi à afficher la valeur de mes deux capteurs sur des entrées différentes que celle de l'exemple.
Par contre, lorsque j'ai changé les ports de l'affichage, là plus rien. Je n'ai pas trop cherché longtemps hier soir. Mais bon, c'était pour vous tenir au courant de mon avancé.
Cordialement
Bonjour à vous,
Voilà, j'avais quelques choses qui me trottais dans la tête...
En ce qui concerne le LM335, j'ai fait un graphique sur Excel mais je suis pas sur de mon coup... Je trouve que les tensions fournies au PIC sont vraiment très faible...
Si ma plage de température est de -10°C à 40°C, je n'aurais donc en sortie seulement 115mV - 140mV ?
Un peu d'explication me ferait pas de mal...
Merci à vous,
Désolé, je n'ai pas pu éditer.
Un truc que je comprends pas c'est que j'ai trouvé que le LM335 donne 10mV/°K, soit 2,73V à 0°C...
Donc ma courbe ne correspond pas du tout... Je suis perdu... Si quelqu'un peut me donner un petit tuyau.
J'ai regardé sur la datasheet, j'ai vu qu'il y a bien des montages avec des AOP pour convertir en mV/°C, mais je préfère le faire de façon logiciel car j'ai déjà effectué ma commande et je n'ai pas d'autres composants. Je ne veux pas non plus changer de capteur. (Ce serait fuir la difficulté...)
Merci de vos précieux conseils !
Bonsoir,
je ne veux pas paraitre moralisateur mais j'avais un peu prévenu au post #72 !
ça fait un petit moment qu'on en parle... t'es un peu long à percuter ! c'est justement l'objet de discorde entre les capteurs numériques et analogiques entre moi et Gérard..j'ai trouvé que le LM335 donne 10mV/°K, soit 2,73V à 0°C...
Le °K et le °C sont équivalent en terme de pente, à part que pour un capteur en degré Kelvin, il y a un offset de 273°C soit 2,73V !
Tout existe, il suffit de le trouver...!
Reprenons :
tu as quoi et tu voudrais quoi ?
Le plus simple, tu cables suivant la doc et tu fais des essais.
Ben désolé de débuter et de chercher tout seul pour essayer de comprendre ce que vous disiez...ça fait un petit moment qu'on en parle... t'es un peu long à percuter !
Je pense qu'au contraire, si j'ai bien compris l'offset avec le LM335 me permet d'avoir une plage de température autour du 0°C alors qu'avec le LM35, je suis obligé de rajouter des composants autour. (J'ai regardé la doc du LM35, je me souviens plus très bien, mais de mémoire, on doit avoir une source de tension négative...)Le °K et le °C sont équivalent en terme de pente, à part que pour un capteur en degré Kelvin, il y a un offset de 273°C soit 2,73V
Pour répondre à Gérard :
J'ai un LM335 avec une résistance à mettre en série et un potentiomètre à mettre en parallèle. J'ai suivi le montage avec le calibrage de la documentation du constructeur.tu as quoi
Je souhaiterais mesurer un plage de température entre -10°C et +50°C. Je souhaiterais également que l'on corrige mes deux courbes, du moins qu'on m'explique comment la faire. Car je pense que je me suis vraiment raté...et tu voudrais quoi ?
Pour le moment je viens de recevoir la totalité des composants, mais il me manque le principal, la plaque à trous pour pouvoir les mettre. Donc pour le moment, je simule. J'ai un potar où je fais varier les valeurs et j'essaye de les afficher sur un afficheur LCD. Je pense que le programme ne doit pas être compliqué.Le plus simple, tu cables suivant la doc et tu fais des essais.
Je vois les chose de la façon suivante :
1/ Je capte la température avec le LM335 il transmet une tension équivalente au PIC.
2/ Je fais un petit calcul afin de transformer cette tension en un nombre donnant la température.
3/ J'affiche ce nombre avec un petit texte du style : Temp frigo : xx
xx correspondant au résultat du calcul du 2/
N'hésitez pas à me corriger. Merci à vous !
il est temps de ce poser la question !tu as quoi et tu voudrais quoi ?
que veux tu faire face à une personne qui achéte plus vite qu'il ne réflêchit !Ben désolé de débuter et de chercher tout seul pour essayer de comprendre ce que vous disiez...
On a toujours été là pour t'expliquer ou te conseiller mais tu semblais très pressé de passer ta commande !
Tout existe, il suffit de le trouver...!
Il est toujours bon de faire le point de temps en temps, les différents échanges font parfois changer d'avis.
Si les choses ne sont pas clairement dites, il y a souvent confusions.
Pas grave, si jamais des composants sont de trop cette fois-ci, ils serviront la prochaine fois.
Bonsoir Gérard, (tu noteras que je n'ai pas dit "Cher Gérard" !)
j'évites d'utiliser ce genre de concept en gestion de projet, (on applique un minimum de refléxions par avance afin de déterminer les bons choix !)Il est toujours bon de faire le point de temps en temps, les différents échanges font parfois changer d'avis.
Tout existe, il suffit de le trouver...!
Tu ne vas pas te mettre à pleurer tout de même !
Juste, le LM35 ne peut mesurer des T° négatives qu'avec un artifice.Je pense qu'au contraire, si j'ai bien compris l'offset avec le LM335 me permet d'avoir une plage de température autour du 0°C alors qu'avec le LM35, je suis obligé de rajouter des composants autour. (J'ai regardé la doc du LM35, je me souviens plus très bien, mais de mémoire, on doit avoir une source de tension négative...)
C'est suffisant.
Les courbes ne sont pas justes.
Ce sont des droites, si tu y tiens, fais les à la main (crayon, papier)
Non, ce n'est pas compliqué.Pour le moment je viens de recevoir la totalité des composants, mais il me manque le principal, la plaque à trous pour pouvoir les mettre. Donc pour le moment, je simule. J'ai un potar où je fais varier les valeurs et j'essaye de les afficher sur un afficheur LCD. Je pense que le programme ne doit pas être compliqué.
OK pour moi.Je vois les chose de la façon suivante :
1/ Je capte la température avec le LM335 il transmet une tension équivalente au PIC.
2/ Je fais un petit calcul afin de transformer cette tension en un nombre donnant la température.
3/ J'affiche ce nombre avec un petit texte du style : Temp frigo : xx
xx correspondant au résultat du calcul du 2/
N'hésitez pas à me corriger. Merci à vous !
Quel est ton PIC ?
Quel est ton langage de programmation ?
Je peux te donner un exemple en Basic.
C'est noté.
Il me semble que nous sommes en gestion de loisirs et que les changements d'idées et d'avis sont fréquents, d'où une remise à plat.
En loisirs, il n'y a pas les mêmes contraintes de temps, rentabilité, cout ... qu'en industrie.
à part que pour la gestion de coût, c'est de sa poche...En loisirs, il n'y a pas les mêmes contraintes de temps, rentabilité, cout ... qu'en industrie.
Tout existe, il suffit de le trouver...!
Aprés avoir influencé notre ami sur le type de capteur, il va falloir maintenant que tu réfléchisses à la manière de gonfler le signal du LM335 en réduisant l'offset du aux degrée de Monsieur Kelvin.....
Tout existe, il suffit de le trouver...!
Bonjour à vous,
Pour répondre au différentes remarques
Je suis plutôt d'accord avec Gérard, car j'avais déjà évoqué ce que je voulais. Après vos remarques, c'est vrai j'avais l'air un peu pomé. Mais après recherche sur les docs constructeurs je suis retourné sur ma première position avec le LM335.Il est toujours bon de faire le point de temps en temps, les différents échanges font parfois changer d'avis.Envoyé par Qristoff Voir le message
il est temps de ce poser la question !
Si les choses ne sont pas clairement dites, il y a souvent confusions.
Ne vous inquiétez pas, il y a des choses plus importante dans la vie, je n'irais pas pleurer car j'essaye de chercher par moi-même ! Et pour tout dire, c'est bien du loisir à but éducatif.Tu ne vas pas te mettre à pleurer tout de même !
Revenons sérieux tout de même !
Pour le PIC, j'utilise un PIC16F877A.Quel est ton PIC ?
Quel est ton langage de programmation ?
Je peux te donner un exemple en Basic.
En ce qui concerne le langage, je m'essaye au BASIC, il me semble que c'était d'ailleurs vous, Gérard ou Satmicro1, qui m'avait proposé ce langage.
Pour compléter, j'utilise PIC Simulator IDE ainsi que des exemples de programmation situé ici
Par contre, je ne comprends pas votre phrase Qristoff.Car justement, si je me trompe pas, l'offset me permet d'avoir une plage de mesure dans des températures négatives.il va falloir maintenant que tu réfléchisses à la manière de gonfler le signal du LM335 en réduisant l'offset du aux degrée de Monsieur Kelvin.....
Cordialement,
J'ai refait ma courbe ça parait déjà mieux. Je pris 2,73V pour 273K soit 0°C. Ensuite, j'ai diminué ou augmenté de 10mV et en même temps j'ai diminué ou augmenter de 1K. Il m'a suffit de convertir ensuite en °Celsius.
Ce qui me donne pour une différence de température allant de -10°C à +50°C, une tension variant de 2,63V à 3,23V.
Par conséquent, si je suis le procédé de numérisation avec la formule : N=((VIN - VREF-) / (VREF+ - VREF-)) * 1023)
Sachant que VREF- = 0V et VREF+ = 5V, j'ai :
N=1023 * (VIN / 5 )
Ce qui me donne une valeur min de N = 538 et max N = 661.
J'ai également calculé le quantum qui est de 5,859.10^4.
Je continu mes recherches sur le CAN en Basic.
Cordialement
Un exemple en Basic :
Tu me diras si tu as des questions.Code:;************************************************************* ; S/P MESURE DE LA TEMPERATURE ;************************************************************* ;valeurs mesurées : ; Vdd = 5,06V soit 233°C ; Vref- = 2,48V soit -25°C ;formule à utiliser : ; T°(C) = (num / 1023) * 258 - 25 ; num / 1023 = (T + 25) /(233 + 25) MES_TEMP: For I = 0 To 3 ;acquisition de 4 valeurs TabTemp [I] = ADIn 0 ;mesure LM335 DelayMS 50 Next SommeTemp = 0 ;init variable For I = 0 To 3 SommeTemp = SommeTemp + TabTemp [I] Next Temp1 = SommeTemp / 4092 ;/4 et /1023 Temp1 = Temp1 * 258 ;mise à l'échelle Temp1 = Temp1 - 25 ;ajout talon ; DelayMS 50 ;acquisition de la 2ème T° For I = 0 To 3 ;acquisition de 4 valeurs TabTemp [I] = ADIn 1 ;mesure LM335_2 DelayMS 50 Next SommeTemp = 0 ;init variable For I = 0 To 3 SommeTemp = SommeTemp + TabTemp [I] Next Temp2 = SommeTemp / 4092 ;/4 et /1023 Temp2 = Temp2 * 258 ;mise à l'échelle Temp2 = Temp2 - 25 ;ajout talon Return
Les décalages de °K à °C sont pris en compte.
Bonsoir à vous,
Voilà j'ai regardé votre code sans avoir eu le temps de le simuler...
Quelques petites questions concernant des petits morceaux de code :
En fait, vous ici, vous stocké 1 valeur dans le tableau TabTemp, vous attendez 50ms. Ensuite, la seconde valeur sera stocké dans la 2nd case et ainsi de suite...Code:For I = 0 To 3 ;acquisition de 4 valeurs TabTemp [i] = ADIn 0 ;mesure LM335 DelayMS 50 Next
J'avais fait quelques choses de ressemblant, cependant je n'avais pas mis les phases de calcul. J'avais pris comme référence le reference manual au chapitre : Using internal A/D converter module. Par contre, sur cette exemple, je ne comprends pas l'intérêt de la dernière ligne. Je mets ci-dessous le programme en entier :
Sinon, pour info, j'ai reçu ma plaque à trous hier matin.Code:DIM V(5) AS BYTE DIM VM AS WORD DIM I AS BYTE DEFINE ADC_CLOCK = 3 DEFINE ADC_SAMPLEUS = 50 TRISA = 0xFF TRISB = 0 ADCON1 = 0 FOR I = 0 TO 4 ADCIN 0, V(I) NEXT I VM = 0 FOR I = 0 TO 4 VM = VM + V(I) NEXT I VM = VM / 5 PORTB = VM.LB
Allez moi je vais quand même aller me coucher...
Je suppose qu'il veut mettre le résultat de la conversion sur le portB.