![]() |
|
DS18B20 Précision du capteur - Version imprimable +- F1ATB forum (https://f1atb.fr/forum_f1atb) +-- Forum : Forum de F1ATB (https://f1atb.fr/forum_f1atb/forum-3.html) +--- Forum : Routeur Photovoltaïque (https://f1atb.fr/forum_f1atb/forum-4.html) +--- Sujet : DS18B20 Précision du capteur (/thread-2301.html) |
DS18B20 Précision du capteur - Yves911 - 16-02-2026 Salut la team, Je voudrais faire remonter les températures des sondes DS18B20 sur deux chiffres après la virgule via MQTT. Dans les données brutes du routeur je vois bien 27.67°C mais je ne retrouve que 28.8°C dans les trames MQTT. J'ai besoin de ca pour calculer précisément les vitesses de chauffe et de refroidissement de mon CE. Cheers Yves RE: DS18B20 Précision du capteur - Mike - 16-02-2026 Bonjour, Ce n'est pas possible avec le code actuel. Il faudrait changer la ligne 381 de EnvoiMQTT.ino : sprintf(value, "%s,\"Temperature_%s\": %.1f", value, String(canal), temperature[canal]); remplacer le %.1f par %.2f RE: DS18B20 Précision du capteur - Lolo69 - 16-02-2026 C est complètement utopique de travailler à 2 chiffres après la virgule sur une températures. Au delà de la précision de la sonde en elle même, tu as le temps de transfert de la chaleur de l eau à la sonde ( à la limite si on les suppose constant ce qui n est pas le cas en relatif ça pourrait marcher) mais surtout ce sont les mouvements de convections de l eau dans le CE qui ne sont jamais répétitifs. De plus tu crées des turbulences à chaque fois que tu tires de l eau. Et la finalité ça te servirait à quoi d avoir la vitesse de réchauffement avec 4 chiffres significatifs ? C est comme si ton compteur de voiture affichait 79,43 km/h .. RE: DS18B20 Précision du capteur - Yves911 - 16-02-2026 (16-02-2026, 09:22 PM)Mike a écrit : Bonjour, Merci pour ta réponse Il faudra que je teste pour voir si j'arrive a avoir quelque chose de convaincant coté Home Assistant (calcul du coefficient de refroidissement en °C/h avec une dérivée) RE: DS18B20 Précision du capteur - alexandeur - 18-02-2026 DS18B20 Précision du capteur c est + ou - 0.5c degres , je sais pas si allez chercher le centieme de degres ca sert a quelquechose RE: DS18B20 Précision du capteur - Lolo69 - 18-02-2026 (18-02-2026, 10:49 AM)alexandeur a écrit : DS18B20 Précision du capteur c est + ou - 0.5c degres , je sais pas si allez chercher le centieme de degres ca sert a quelquechose on peut passer à par %.12f Il faut effectivement revenir sur les bases des calculs de précisions, qui ne sont pas si simples , mais en tout cas on améliore pas la précision en augmentant le nombre de chiffres ( non siginificatifs) , au delà de l 'electronique dans le cas présent on a aussi la physique, la sonde ne peut pas prendre la temperature de l'eau à l interieure du ballon de façon précise puisqu elle est aussi refroidie par son environnement. Coté Numériques le DS18B20 possède un CAN de 1/16 = 0,0625 °C mais pour des raisons de vitesse d'acquisition est –55 °C à +125 °C, par défaut la conversion est "bridée" sur 9 bits, comme on enleve 3 bits la resolution passe de 0.0625 *2^3 =0.5 degré C. ceci dit on peut reprogrammer le DSB pour repasser en 12 bits à cette vitesse la frequence d'echantillonnage est de 2 secondes ce qui est largement suffisant Pour passer les DS18B20 flasher l ESP avec le code suivant, toutes les sondes coonectées au bus passeront en 12 bits, soit sur un esp separé avec les sondes dessus , soit en flashant le routeur avec , puis reflasher avec le code du routeur Code : #include <OneWire.h> |