Czy ktoś ma doświadczenie w temacie czujników temperatury NTC. W projekcie wykorzystałem czujnik temperatury NTC 10 oraz opornik 10K. Na tyle ile potrafię z pomocą gogle napisałem kod i obecnie pokazuje mi 32,6 C gdzie faktycznie temperatura jest 20,5 C zmierzone czujnikiem SHT31 a więc sporo zawyża. Jak to ugryźć. Czy dać inny Rezystor czy w kodzie powinny być inne dane.
Aby pomiar był prawidłowy musisz dokładnie zmierzyć napięcie 3.3V i takie wpisać do konfiguracji.
Druga sprawa to musi bić ono bardzo dobrze stabilizowane. Kolejna sprawa to współczynnik temperaturowy b_constant - trzeba znać producenta i zdanych ustawić właściwe wartości. 3950 jest dla termistora “generic”.
Ewentualnie zrobić pomiary dla kilku temperatur i samemu wyznaczyć współczynnik.
Poza tym przyglądam się wynikom pomiarów pomiarów i wychodzi mi, że rezystor powinien być podłączony do 3.3v a termistor do GDN. Przy takim połączeniu jak na załączonym przez Ciebie schemacie wyniki są nie logiczne jakie by nie były parametry wpisane w konfiguracji.
Jak robili mi wylewki to instalator umieścił w posadzce kilka czujników ntc10. Instalatora przepadł ( jego wynalazki również ) szkoda mi nie wykorzystać tych czujników. Skoro już są to pomyślałem, że podepnę się do nich.
Jedne są 3 metrowe inne 5 metrów maxymalnie. Od jakiegoś czasu uczę się esphome i z waszą pomocą dużo się już nauczyłem.
Na chwilę obecną wygląda to tak jak na zdjęciu. No i Faktycznie napięcie również ma duże znaczenie aby go wpisać prawidłowo. Zmierzona wartość to 3.18V i tak wpisałem w kodzie w ESPhome. Musze to teraz potestować jak temp w pokoju ulegnie zmianie. Na razie mam to na stoliku dla testów.
Pomiar odbywa się poprzez pomiar napięcia na dzielniku. Aby prawidłowo przeliczyć mierzone napięcie najpierw na rezyztancję NTC potrzebujemy znać w miarę precyzyjnie wartość napięcia na dzielniku oraz rezystancję opornika wzorcowego R. To jest funkcja liniowa więc obliczenia są proste.
Następnie obliczoną rezystancję NTC należy przełożyć na temperaturę wg. jego charakterystyki. T(R).
Najprościej mówiąc bez podawania formuły, która opisuje krzywą. Do tego potrzbna jest znajomość wsp. b_constant
Jeśli instalator nie był kompletnym partaczem, to czujniki powinien umieścić w rurce/peszlu. Ja na Twoim miejscu zastanowił bym się nad wymianą (jeśli są w rurce) na coś cyfrowego, chociażby DS18B20.
Co do wejść pomiarowych ADC musisz wiedzieć, że wewnątrz ESP jest kolejny dzielnik napięcia. Sam pomiar jest w miarę dokładny w pewnym zakresie napięć. Przy granicznych wartościach dzielnika, traci on dokładność. Są również znaczące różnice pomiędzy wejściem analogowym dla ESP8266 a ESP32.
I to jest sedno sprawy. Chciałem właśnie użyć DS18B20 do pomiaru temperatury “pod izolacją” (trudno dostępne miejsce, wymagany przewód 5m) ale obawiam się możliwej awarii takiego czujnika i problemu z jego ewentualną wymianą. @RobinI30 zauważył, że w przypadku czujnika NTC nie ma się co zepsuć. Minusem rozwiazania jest jeden czujnik - jeden ESP.
Bo ja wiem czy na upartego? Po prostu można. Zwykle zewnętrzne przetworniki analog → cyfra mają sporo lepsze parametry niż to co znajdziemy na pokładzie ESP82xx (1 wejście analog) czy ESP32 (sporo więcej z 2 multipleksowanymi ADC).
ADS1115 ma 16-bitowe przetworniki i 4 wejścia asymetryczne (pomiar względem masy) albo 2 różnicowe, ale wsparcie jest też dla innych konwerterów (wszystkie pozostałe to wejścia asymetryczne) np. “znanych i lubianych” MCP3204 = 4 wejścia 12bit albo MCP3208 = 8 wejść 12bit.; ADC128S102 ma 8 wejść 12-bitowych; a MCP3008 8 wejść 10-bitowych.
ESP32 ma sporo więcej wejść analogowych (de facto ma 2 przetworniki i multipleksery, więc np. w ESP32 devkit v1/2/3/4 można użyć do 15 GPIO w charakterze wejść analogowych)
To zależy od stosunku rezystancji przewodów do rezystancji termistora NTC w interesującym zakresie temperatur (zwykle jest to pomijalnie mała wartość).
biorąc pod uwagę, że wskazany model ma około 10kiloomów w temperaturze pokojowej, to rezystancja przewodów dla takich temperatur będzie pomijalnie mała nawet gdyby sięgała dziesiątek omów.
Oba, to zależy jak skonfigurujesz integrację
dla połączeń jak z lewego obrazka
PS @ponczur używaj odwrotnych apostrofów (po 3 sztuki w linijce przed i po wklejonym kawałku jakiegokolwiek kodu, a szczególności YAMLa - zobacz jak zedytowałem posty na początku wątku)
PPS W YAMLu fundamentalne znaczenie mają wcięcia tekstu i ilość użytych spacji jest ważna (nawet jedna nadmiarowa lub brakująca spacja może rozwalić działanie kodu, wcięcia zasadniczo są wielokrotnością 2 spacji i nie używamy tabulatorów zamiast spacji !)