Aide Echelle Sonde NTC

Bonjour,

Voila je souhaite utiliser le code ci-dessous mais adapté à mes sondes (sur lesquelles je n'ai pas de référence).
Il me faut donc trouver les coefficient suivants :

Rref
double A_1 = 
double B_1 = 
double C_1 = 
double D_1 =

Ci-joint par contre l'évolution de ma sondes (je pense que c'est une CTN 4k)

#include <math.h>
#define PIN_NTC 0
 
double Rref = 10000.0; //Résistance de référence à 25°C
double V_IN = 5.0; //Alimentation électrique
 
//Information de la thermistance
double A_1 = 3.354016E-3;
double B_1 = 2.569850E-4;
double C_1 = 2.620131E-6;
double D_1 = 6.383091E-8;
 
double SteinhartHart(double R)
{
  //Division de l'équation en 4 parties. La premiere est 
  //uniquement A1
  double equationB1 = B_1 * log(R/Rref);
  double equationC1 = C_1 * pow(log(R/Rref), 2);
  double equationD1 = D_1 * pow(log(R/Rref), 3);
  double equation = A_1 + equationB1 + equationC1 + equationD1;
  return pow(equation, -1);
 
}
 
void setup() {
  Serial.begin(9600);
}
 
void loop() {
  //Calcul de la tension sur la borne analogique
  double valeurAnalog = analogRead(PIN_NTC);
  double V =  valeurAnalog / 1024 * V_IN;
 
  //Calcul de la résistance de la thermistance
  double Rth = (Rref * V ) / (V_IN - V);
  Serial.print("Rth = ");
  Serial.print(Rth);
 
  //Calcul de la température en kelvin( Steinhart and Hart)
  double kelvin = SteinhartHart(Rth);
  double celsius = kelvin - 273.15; //Conversion en celsius
  Serial.print("Ohm  -  T = ");
  Serial.print(celsius);
  Serial.print("C\n");
  delay(1000);
}

Pouvez vous m'aider ?

Bonsoir
il ya plusieurs pistes dans ce fil de discussion
Au vu des mesures la thermistance serait une "4,5k" (4504 Ohm à 25°C)

Le lien du fichier excel proposé ne fonctionne plus

Descendre au message #16 le fichier excel y est joint avec un exemple de récupération des coefficients pour la relation Steinhart-Hart

Avec le grand nombre de mesures effectuées, il peut être intéressant d'oublier cette relation et travailler avec la courbe de tendance comme expliqué dans le fil de discussion cité. Vous serez ainsi ' au plus près' du composant que vous avez entre les mains.

La relation de Steinhart-Hart par contre est très utile dans une production en série , on travaille alors avec les coefficients fournis par le fabricant de la thermistance .....pas question de faire la courbe de tendance de chaque thermistance !!

J’essaie de récupérer l'équation d'un graphique en faisant une courbe de tendance mais quand je recalcule manuellement le résultat avec l'équation donnée par excel le résultat est complètement faux.
ci-joint le fichier, case verte variable x et case orange résultat de y.

NTC.zip (15.1 KB)

Température -> résistance
essayer par exemple une Regression polynomiale de degré 3 ça donne un bon résultat sur le domaine [-50°C, +35°C]

Résistance -> température
içi un graphe en XY et une régression logarithmique (Open Office)

Pour un meilleur résultat : se limiter à la plage de température effective !

Comparer avec l'autre méthode :
3 mesures -> tableau Excel de calcul des 3 coefficients -> Relation de Steinhart-Hart
je joins à nouveau ce tableau.
Le principe de calcul des 3 coefficients est détaillé içi

S-H coefficients.zip (301 KB)

Lestig:
J’essaie de récupérer l'équation d'un graphique en faisant une courbe de tendance mais quand je recalcule manuellement le résultat avec l'équation donnée par excel le résultat est complètement faux.
ci-joint le fichier, case verte variable x et case orange résultat de y.

Sur Excel, mets toi en nuages de points , et donnes un maximum de chiffres significatifs aux termes de ton équation :wink: !

J'ai inversé X/Y, je retombe bien sur l'équation de al1fch mais quand je recalcule en dessous du graphique dans le excel deux exemples je ne retrouve pas du tout les bonnes valeurs.

y = -1.3549x^3+242.12x^2-14281x+290100

Exemple dans le fichier excel :
Pour X= 10°C je trouve 170147.1 Ohms au lieu de 8964.8
Pour X=-20°C je trouve 683407.2 Ohms au lieu de 43664

NTCV2.zip (15.1 KB)

je suis également perplexe au vu de certaines équations proposées par nos tableurs pour l'ordre 3 ou 4, l'application de l'équation proposée n'a pas la qualité de la courbe dessinnée !!

mauvaise utilisation de notre part ? point faible du calcul interne (phénomène de Runge ?) pour les données présentées ici ? les spécialistes d'Excel (ou autre tableur analogue) nous en dirons sans doute plus ....

En attendant tu peux utiliser le tableau permettant de calculer A,B et C à partir des données expérimentales puis de tester la relation de Steinhart-Hart
le voici cijoint avec :
-dans l'onglet calibration : un report des données pour -50°C, 0°C et 35°C, calcul de A, B et C
-dans l'onglet data transformation : après le report des valeurs des 3 coefficients , un calcul de température pour un résistance donnée.

calculer et utiliser coeffs ABC Steinhart-Hart.zip (341 KB)

j'ai utilisé les coefficients de Steinhart-Hart et ça fonctionne très bien !
Merci beaucoup

Pour info il y a mieux que des tableurs pour faire des calculs autour d'une courbe dont un grand choix d'approximation.
Les tableurs sont prioritairement pensés pour faire des calculs financiers.

Le logiciel le plus connu est Qtiplot, libre sous Linux, à problèmes sous windows.

J'ai découvert un fork de Qtiplot --> scidavis qui semble aussi libre sous windows.

Bosnsoir

je confirme 68tjs, Scidavis est libre pour toutes les plateformes supportées (meme license GNU)

Bien entendu pour cette catégorie de logiciel il y a un peu d'apprentissage à prévoir, ce n'est pas un tableur !

Qtiplot est maintenant exclusivement 'commercial' sous Windows... mais les sources étant disponibles on trouve des exécutables correspondant à des versions antérieures, compilées par des tiers (qq fonctionnalités en moins)
Ce n'est pas 'piraté'..... ça fonctionne ... sauf pour les fonctionnalités manquantes !

J'utilise les deux de temps à autre....