problème de fiabilité de mesure

bonjour,
mon problème est le suivant:
je mesure la température avec deux LM35
un des capteur est relié a la carte avec un fil de 6 m et la mesure est très différente de l'autre capteur
y a t'il moyen de corriger cela et que la longueur du fil ne transforme pas la mesure

alex38:
... et la mesure est très différente de l'autre capteur ...

C'est-à-dire ? combien de degrés d'écart ?

Cordialement.

Pierre

les deux capteurs sont placés proche l'un marque 21 et l'autre varie de 20 à30 la mesure n'est pas fiable

Vous êtes très certainement tributaire de bruit dans la liaison. Il faut filtrer le signal.

Pour cela, plusieurs méthodes :

  • par logiciel, vous faites une moyenne sur plusieurs valeurs (lissage) ou un filtrage par un filtre passe-bas logiciel
  • électronique : vous placez un condensateur d'une centaine de nF entre le GND et l'entrée de l'Arduino. Ces deux connexions se faisant au plus près de l'Arduino et vous relier la sortie du LM35 à l'entrée de l'Arduino par une dizaine de kOhms.

Cordialement.

Pierre

merci pour la réponse
quel est le role du condensateur?

vous voulez dire un condo entre le gnd et l"entréee analogique et un une résistance en série sur la borne data du lm 35?

alex38:
vous voulez dire un condo entre le gnd et l"entréee analogique et un une résistance en série sur la borne data du lm 35?

C'est exactement ce que j'ai dit.

L'ensemble résistance/condensateur forme ainsi un filtre passe-bas de fréquence de coupure :

f = 1 / (2.PI.R.C)

Soit de l'ordre de 150 Hz pour les valeurs que je vous ai indiquées.

Cordialement.

Pierre

merci pour ces infos
pour vous la longueur de 6 m est t'elle utopique pour récupérer une valeur correcte de la température ou est ce quelque chose de classique?
bien à vous

Un condensateur ne fera pas beaucoup de bien.

un des capteur est relié a la carte avec un fil de 6 m

C'est là le probléme.
Le Lm35 n'aime absolument pas être relié par un circuit capacitif et entre un fil de donnée et un fil de 0V de 6 mètres de long il y a de la capacité parasite.

Il y a plusieurs solutions.

  1. la solution préconisée par National SemiConducteur (maintenant absorbé par Texas Instrument) qui est de placer une résistance en série sur les données, la résistance est placée juste à la sortie du LM35.
    Sur la solution NS j'ai fait des essais sur des distances de 9m avec du câble téléphonique plat (pourri de chez pouris, impédance 600 ohms)
    NS préconise 2k, perso j'ai trouvé que j'obtenais les meilleurs résultats avec 4,7k.

Résultat (dispersion des mesures)


2) La solution que je préfère.
Accrochez vous on va faire un peu de transmission sur ligne adaptée.
Deux fils torsadés ou pas présentent par unité de longueur une petite résistance série, une petite inductance série et une petite capacité parallèle.
Sur quelques cm toutes ses "petites" quantités sont négligeables. Mais sur des grandes longueur elles ne le sont plus du tout et elles fichent le bazar.

En quoi une ligne adaptée est la solution :
Si un cable coaxial 75 ohms est chargé par autre chose que 75 ohms à l'autre extrémité on verra de tout comme impédance en fonction de la fréquence ET il y aura des réflexions, comme des vagues dans un bassin clôt rebondissent sur les bords, qui perturberont le signal.

Par contre si le câble est chargé par son impédance caractéristique :

  1. à l'autre extrémité on verra une résistance pure égale à l'impédance caractéristique, on ne verra plus d'inductance et de capacité.
  2. il n'y aura aucune réflexion

Avec ce schéma j'ai utilisé un rouleau de 50m de câble éthernet cat5.
L'impédance caractéristique de ce câble est 100 ohms.
J'ai considéré que l'impédance de sortie du LM35 est nulle et j'ai mis 100 ohms en sortie pour que le câble voit un générateur d'impédance 100 ohms.
Dans la réalité l'impédance de sortie du LM35 fait plutôt autour d'une vingtaine d'ohms et pour être "sérieux" j'aurais du mettre en sortie du LM35 80 ohms ou 75 ohms.
La manip a confirmé que mon choix pouvait fonctionner malgré l’approximation (merci à la vieille expérience).

A l'autre extrémité, coté arduino, il fallait aussi charger par 100 ohms mais mettre 100 ohms directement à la masse aurait chargé le LM35 par 200 ohms ce pourquoi il n'est pas prévu.
J'ai donc ajouter un condensateur en série avec la résistance de 100 ohms pour couper le continu.

Pour la valeur du condensateur j'ai estimé que les phénomènes gênants étaient de fréquence relativement haute et qu'un condensateur de 100µF n'était pas utile.
Un essais avec 100 nF a confirmé mes hypothèses de départ.

Au final le circuit que je préfère est le suivant :

LM35_adaptation.png

Dernier point : Masse du LM35.
Compte tenu des niveaux à exploiter (le mV) il est suicidaire d'utiliser un fil de masse commun entre le Lm35 et un autre composant.
Sans quoi le courant d'alimentation de l'autre composant provoquera une chute de tension dans le fil qui n'a bien évidement pas une impédance nulle.

Donc que ce soit clair

  • Masse câblée en étoile
  • qui dit LM35 dit LM35 SEUL sur son fil de masse
  • qui dit LM35 dit diamètre du fil de masse suffisant --> il faut être raisonnable inutile de prendre du 2mm2 mais évitez les fils chinois de 5 brins de 2/10 de mm.

Cerise sur le gâteau :
J'avais encore une carte UNO fonctionnelle et j'ai amélioré le circuit, ou plutôt rectifié les erreurs Arduino, en soudant un condensateur (100nF) entre AREF et GND du boîtier MICRO pas de la carte.

Si Atmel a placé les pins Aref et Gnd cote à cote sur son microcontrôleur c'est bien parce que le découplage de Aref est primordial pour avoir des mesures stables
Ce qu'Arduino n'a pas compris puisqu'il balade la piste Aref en diagonale de la carte afin de bien la bruiter.

LM35_adaptation.png

68tjs:

  • qui dit LM35 dit diamètre du fil de masse suffisant

Extrait du système d'unité de mesures pifometrique décrit dans un autre post.