[Résolu] Exploiter capteur de température

Salut à tous !

J'ai besoin d'un coup de pouce pour faire une chose simple, afficher sur un LCD la température du moteur de ma voiture.

Le programme est fait, il est simple.

Mais je n'arrive pas à mettre en forme la tension que me délivre le capteur. Le capteur, le voici : https://radiospares-fr.rs-online.com/web/p/capteurs-de-temperature-et-humidite/0403620/?searchTerm=Thermistance+active+MCP9700-E%2FTO%2C+±1°C+TO-92+3-Pin+2.3+to+5.5V&relevancy-data=636F3D3126696E3D4931384E44656661756C74266C753D6672266D6D3D6D61746368616C6C7061727469616C26706F3D3926736E3D592673743D44454641554C545F5345415243482673633D592677633D4E4F4E45267573743D546865726D697374616E636520616374697665204D4350393730302D452F544F2C203F313F4320544F2D393220332D50696E20322E3320746F20352E355626

Que fait mon programme ?

Je lis la tension analogique sur la broche analogique 0 d'une UNO.
Cette valeur devenue numérique va être convertie ensuite en tension. Tension que je transforme ensuite grâce à la caractéristique du capteur.
Mais quelle est donc cette opération que je dois appliquer à ma tension ?
Je n'arrive pas à avoir quelque chose de cohérent.
Je pense que le capteur délivre une tension négative en dessous de 0°C et Arduino ne lis pas les tensions négatives.
Mais ce n'est pas grave, mon moteur ne gèle pas en fonctionnement =).
Je précise que j'utilise la tension de référence de 5V car je grefferai ensuite ce programme dans un autre.

Je vous laisse prendre connaissance du Datasheet.

Merci,

a+, Val

Doc capteur de temp rs france.pdf (510 KB)

Salut,

Page 8 de la doc il y a la fonction de transfert. Poste ton code y'a peut-être une erreur dedans

Hello,

Ton capteur ne délivre pas de tension négative. Il y a un offset de 500mV à 0°C pour le MCP9700/9700A et de 400mV pour le MCP9701/9701A (cf page 2 datasheet).
Tu peux donc utiliser le MCP9700/9700A jusqu'à -40°C et le MCP9701/9701A jusqu'à -10°C
Les coefficients de temperature (10.0mV/°C MCP9700/9700A et 19.5mV/°C MCP9701/9701A) sont à prendre en compte dans ta formule (en plus de l'offset à 0°C).
Ton code aiderait bien pour voir si il n'y a pas une erreur dans ta formule de conversion.

@+

Merci les gars.

Je n'ai pas le code sous la main. Je le poste dès que possible.

Ma conversion doit être sans doute fausse.

Donc à ma tension en mV délivrée par le capteur (modèle MCP9700/9700A), je dois la multiplier par 10 + 500mV pour avoir des degrés ?
Et un offset, c'est quoi, juste un décalage ? Il sert à éviter d'avoir une tension négative en dessous de 0°C ? A -40°C, on serait à 0V ?
Je débute dans le métier XD

Merci.

Vout = T x 10 mV + 500 mV donc T = (Vout-500)/10

Dans le code attention à prendre en compte le dimensionnement des variables

Génial !

C'était pas si compliqué :grin:

Faudra quand même que je vérifie avec un thermomètre.
J'ai 25°C dans mon studio étudiant. C'est bien connu que les jeunes n'ont pas d'argent pour se chauffer :stuck_out_tongue:

Voici le code, il me permet d'avoir la température sur un lcd ainsi que la tension Vout du capteur.
A noter que la conversion numérique vers analogique peut se faire avec la fonction map.

 #include <LiquidCrystal.h>
     
  
     
    //                BS  E D4  D5  D6  D7
    LiquidCrystal lcd( 7, 8, 9, 10, 11, 12);

  float mesure=0;        //Variable pour le stockage de la mesure retournée par le capteur
  float temperature=0;   //Variable pour le stockage de la température 
  float mesureEnVolt=0;  // Variable pour convertir la valeur numérique en volts
  
  int analogPin1 = 1; // Sortie capteur sur broche analogique 1
  

  void setup()
  {
    lcd.begin(16, 2); // afficheur LCD, 16 colonnes, 2 lignes
    
    
    
  }


  void loop()
  {
    mesure = analogRead(analogPin1);  //Lecture de la valeur fournie par le capteur de température
    mesureEnVolt = (mesure * 5 / 1024); // Conversion en volt de la valeur numérique
    
    temperature = (mesureEnVolt - 0.500 )/0.010 ;  
    
   lcd.setCursor(0, 0);     
   lcd.print(temperature    );
   
   lcd.setCursor(0, 1);   
   lcd.print(mesureEnVolt   );
   
   //              ----------------
    lcd.print("                "); // nettoie l'affichage
lcd.setCursor(0,1);
 

  }

Encore merci, je passe à la suite, exploiter un capteur de pression différentielle (c'est pour le compresseur volumétrique de cette auto ci au fait : http://www.flat4ever.com/fabrication-dun-compresseur-judson-t62156.html ).

Bonne soirée,
Val

La mienne est un peu plus récente (cf. image jointe)

Mais pas trop non plus faut pas déconner xD

Elle est bien propre cette auto.
Mais c'est quelle marque, au premier coup d'oeil, j'aurais dit Rover mais non ?

Peut-être que l'arrière sera plus parlant à tes yeux :slight_smile:

(bon en même c'est carrement marqué dessus la xD)

Bonjour,
Il paraît qu'avec ce type de voiture, il en faut 2 (une en réparation et l'autre en service) :grin:

Nan c'est hyper fiable :wink:

Les anciennes par contre ... Ce qui valait l'expression "une jaguar, ça se mérite"

TZR2RL:
...
Encore merci, je passe à la suite, exploiter un capteur de pression différentielle (c'est pour le compresseur volumétrique de cette auto ci au fait : http://www.flat4ever.com/fabrication-dun-compresseur-judson-t62156.html ).
...

bonjour
Ha une cox , j'ai une tendresse particuliere pour cette voiture = çà a été ma premiere voiture (une 1303 bleue metal d'occaz )
pleins de souvenirs :grin:
mais le plus anecdotique qu'il me reste (hormis la batterie sous le siege arriere = toujours bien penser à remettre les protections pour eviter un CC intempestif avec les ressorts de la banquette et les consequences induites sur le rembourrage ... :grin: )

C'est le lave glace pris en pression sur la valve de la roue de secours , ça pouvait quelquefois (rarement heureusement :grin: ) conduire à des situations "tres emmerdantes" , mais au moins ensuite ça apprend à ne jamais faire l'impasse sur une check-list :grin:

B@tto:
Peut-être que l'arrière sera plus parlant à tes yeux :slight_smile:

(bon en même c'est carrement marqué dessus la xD)

J'avais pensé aussi à Jaguar mais je n'ai pas reconnu le logo. Je ne connais pas beaucoup les Jaguar.
Je suis plus Mercedes w124. Comme notre modo Jean-François :wink:

Elle est très belle bravo ! Elle est de quelle année ?

Artouste:

TZR2RL:
...
Encore merci, je passe à la suite, exploiter un capteur de pression différentielle (c'est pour le compresseur volumétrique de cette auto ci au fait : http://www.flat4ever.com/fabrication-dun-compresseur-judson-t62156.html ).
...

bonjour
Ha une cox , j'ai une tendresse particuliere pour cette voiture = çà a été ma premiere voiture (une 1303 bleue metal d'occaz )
pleins de souvenirs :grin:
mais le plus anecdotique qu'il me reste (hormis la batterie sous le siege arriere = toujours bien penser à remettre les protections pour eviter un CC intempestif avec les ressorts de la banquette et les consequences induites sur le rembourrage ... :grin: )

C'est le lave glace pris en pression sur la valve de la roue de secours , ça pouvait quelquefois (rarement heureusement :grin: ) conduire à des situations "tres emmerdantes" , mais au moins ensuite ça apprend à ne jamais faire l'impasse sur une check-list :grin:

C'est ce qui fait qu'on aime les cox :wink: