Termometr sht30 i wysoka rozbieżność

Cześć
Dziś mam taki temat związany z temperaturą.
Złożyłem sobie taki termometr na płytce
wemos d1 mini + sht30
image
Do tego 1,5m kabelka i zasilacz 5v.

Ustawiłem ten termometr wraz z dwoma czujnikami temp. tuya i jedną aqara.

Odczyt tyua i aqara jest bardzo podobny ale sht30 dość odbiega od reszty:
image

Czym to może być spowodowane ?
Możliwe żę sht jest za blisko d1mini ?
Może jest sht walnięty, ale nie mam na stanie obecnie żeby podmienić.
A może trzeba sht skalibrować?

Co poradzicie ?

Zdecydowanie za blisko, ten czujnik nie powinien być nawet w jednej obudowie z tym ESP. Zamykałem ten czujnik w obudowie wentylowanej Kradex Z123 - 76x76x30 i zawsze wskazania były zawyżone, dopiero wywalnie samego czujnika na zewnątrz pozwoliło uzyskać poprawne wskazania.

1 polubienie

Ja znów muszę zamknąć to w jednej obudowie.
Jeśli sht nie jest odpowiednim wyborem to pytanie jaki czujnik by był odpowiedni ?

Bliska odległość D1 będzie podnosić temperaturę każdemu czujnikowi.
Zrób przegrodę oddzielająca czujnik (oddzielna komora). Być moze, że offset na pomiary mógłby trochę poprawić wyniki. Na wykresach widać przesunięcie o stałą wartość

Masz na myśli przegrodę na płytce czy w jakimś innym miejscu ? Np obudowie ?

edit.
A może taki czujnik by zdał egzamin ?
image

na allegro 25 zł to nawet mniej jak d1 +sht + płytka

W obudowie, czujni na krótkich przewodach.
Na początek na stole możesz spróbować zrobić ściankę z kartonika pomiędzy D1 a czujnikiem,
sprawdzisz czy jest jakaś poprawa.

Robisz porównanie dwóch skrajnie różnych czujników . SHT w tej konkurencji wygrywa pod każdym względem. Jeśli precyzja wskazań +/- 2 st C i +/- 5% przy wilgotności, nie robi na tobie wrażenia, to możesz zastosować tą zabawkę jaką jest DHT11. Na 100% ESP 01 nie będzie się tak grzał jak wemosD1, pod warunkiem jednak, że nie zamontujesz w tej samej obudowie przetwornicy 3V .

A co myślisz o ESP8266-01S - dht11 ?
Trochę tańsze rozwiązanie, nie wiem jak ten czujnik się sprawuje.
Problem w tym że mam mało czasu na testy, na przyszły tydzień musze mieć gotowe rozwiązanie do puszki właśnie

To ma być czujnik na zimę do sterowania ogrzewaniem w domku letniskowym. Precyzyjny pomiar nie jest wymagany.
Jak ustawie zał ogrzewania przy 10 stopniach a rzeczywiście będzie 8 to się nic nie stanie :slight_smile:

Z tego co pisze na aukcji zasilanie jest 3.3-5v więc chyba przetwornica nie jest wymagana w tym przypadku ?

Dht lipa… i tak trzeba kalibrować.
Dwa obok siebie pokazują różne wartości.
Porównaj jeszcze zakresy pomiarowe, bo z tego co pamiętam też było słabo.

W takim wypadku DHT11 to by był ostatni czujnik o jakim bym pomyślał :slight_smile:
Może lepiej zastosować sprawdzone DS18B20, co prawda bez wigotności, ale daje znacznie większą gwarancję, że nie padnie po tygodniu

Panowie to w co iść żeby była wilgotność, dobry pomiar i sprawność? :slight_smile:
Już myślałem żeby kupić iść zigbee ale potrzebuje tylko 5 czujników, a taki zestaw żeby pod z2m działał to z 400 zł

Masz dobry, po co szukać :slight_smile:
Ten sam mam w stacji pogodowej.

Tylko martwi mnie ta rozbieżność temperatury :confused:
Chciałbym to jednej płytce zrobić żeby się nie rozłączyło przypadkiem

edit.
Zrobiłem trochę inaczej z odstępem. Zobaczymy jak będzie pomiar wyglądał


Na tą chwilę różnica między esp a tuya jest 1 stopień

Żaden - problemem jest produkcja ciepła przez MCU, w przypadku wentylowanej obudowy możesz wprowadzić stały offset, ale licz się z faktem, że wskazania z offsetem mogą mieć przekłamania zależne od wersji ESPHome (czasem jest kompilowany bardziej zoptymalizowany kod czasem mniej i to ma wpływ na pobór mocy przez MCU).

Jak to zamkniesz, to pomiar będzie nadal sporo zawyżony - zrób dodatkowe otwory wentylacyjne przy MCU.


Druga kwestia jest taka - rzeczywista temperatura powietrza w przeciętnym mieszkaniu zależy od miejsca montażu i nawet kilkanaście centymetrów różnicy w położeniu może wpływać na wskazania (po prostu temperatura się nieco różni w zależności od miejsca w pomieszczeniu), ale by to zauważyć musiałbyś mieć kilka identycznych czujników (które nie są podgrzewane w trakcie pomiaru).

Masz rację. Dalej jest różnica ok 2stopni.

Czyli musiałbym w obudowie zostawić ESP, a sht wynieść poza obudowę ? Przykleić np od spodu albo coś ?
Ewentualnie ds18b20 też unieść poza obudowę czy mógłby być w obudowie ?

Każdy czujnik musi być oddalony od źródła niepożądanego ciepła - w tym wypadku tym źródłem jest MCU ESP8266.
Więc jaki byś nie stosował czujnik, to musi być dostatecznie odizolowany termicznie od MCU.

Maxim kiedyś nawet zalecał aby odłączać zasilania od DS18B20 w czasie gdy nie jest wykonywany pomiar (tj. by zasilać te sensory tylko podczas pomiaru i obróbki danych, obecnie nie widzę takich zaleceń)

a wracając do tematu - jeśli MCU umieścisz w wentylowanej obudowie gdzieś u góry, a czujnik zainstalujesz w czymś odizolowanym termicznie na dole, to drogą konwekcji ciepło nie dostanie się do czujnika.

Przykładowe amatorskie rozwiązanie osłony czujnika to użycie tzw. kosza ssawnego - nadaje się do wszelkich niewielkich termometrów/termohigrometrów czy barometrów, link do losowego sklepu

tylko zauważ, że w części gwintowanej jest dziura, bo wymaga tego zastosowanie zgodnie z przeznaczaniem, w przypadku użycia na czujnik oczywiście tam musi się znaleźć izolacja termiczna.

Możesz zrobić jeszcze jeden “myk” - przekalibruj czujnik.

Wstaw zwój z jakimś który potraktujesz jako wzorcowy - w domu gdzie jest np 30C, w pokoju 20C, na zewnątrz, gdzieś w chłodnym i lodówce. Porównaj wskazania swojego i wzorcowego.

Przy odrobinie szczęścia będzie stały offset. Przy mniejszym szczęściu - wyznaczasz funkcję przez którą mnożysz/dzielisz wskazania czujnika żeby pokazywało to co wzorcowy. Jeżeli interesuje Cię dokładność rzędu 1C to nie powinno być większego problemu.

Właśnie o tym pisałem wyżej - stały offset się sprawdza idealnie, gdy źródło ciepła wydziela zawsze taką samą moc, niestety jak się okazuje nie zawsze tak jest (gdy źródłem ciepła jest MCU z uruchamianym co jakiś czas coraz innym oprogramowaniem, akurat ESP8266 jest już archaiczny i jednordzeniowy, więc nie spodziewam się już drastycznych zmian przy zmianach wersji ESPHome i projektów które zawiera “pod pokładem”, ale ilość wydzielanego ciepła nie zależy wyłącznie od uruchomionego na nim kodu; na pobór mocy → wydzielane ciepło, ma nawet wpływ poziom sygnału WIFI w miejscu instalacji).

Z drugiej strony “z tego się nie strzela”, więc pomiar nie musi być w sumie idealny, a i tak będzie wystarczający dla wielu zastosowań.

Dziś mi przyszły nowe sht30.
Podmienię czujnik i zobaczę jak to wygląda, bo przez te kilka dni czujnik leżał na parapecie bez obudowy a mimo to i tak była różnica w odczytach między sht a tuya

Udało mi się rozwiązać zagadkę zawyżania temperatury - okazuje się, że SHT30 jest przede wszystkim czujnikiem wilgotności. Zastanowiło mnie, że bardzo dobrze podaje wilgotność bezwzględną, jakby ogrzewał powietrze przed pomiarem. No i okazało się, że rzeczywiście je ogrzewa! W kodzie czujnika dodałem:

heater_enabled: false

i odczyt temperatury spadł z 27,7 na 24,3 stopnia! Ale za to wilgotność od razu wzrosła z 46% do 56%, więc coś za coś.

2 polubienia