Všichni bastlíři měří teplotu a vlhkost – doma, venku, v kanceláři. Víte ale, že si měření vlhkosti můžete velmi zpřesnit a naopak můžete velmi negativně ovlivnit měření teploty a to jenom kvůli tomu, že nevhodně použijete část čidla zvanou heater? Co to je a jak to vlastně použít se dozvíte níže.
Ať už používáte SHT40, Si7021 nebo třeba DHT11 – všechna tato čidla mají tzv. Heater. To je část čidla, která čidlo zahřívá – můžeme si ho představit jako topné těleso, odpor.
Heater v čidle použijeme v případě velmi vysoké vlhkosti – třeba když prší, protože voda dokáže kondenzovat uvnitř čidla. Čidlo by tak měřilo velmi nepřesně než je skutečnost a navíc zkondenzovaná vlhkost přispívá k degradaci samotného čidla. Heater slouží k vysušení vzduchu uvnitř čidla.
Zapnutím, na určitý čas, heateru (česky jej můžeme nazvat jako „ohřívač“) eliminujeme degradaci čidla a také můžeme dostat přesněsnější výsledky. A nebo taky ne…
Délka zapnutí a výkon (pokud čidlo disponuje možností nastavit výkon heateru) je kompromisem mezi délkou měření, přesností a celkovým odběrem energie čidla.
Navíc má čidlo takovou (nejčastěji) bílou nálepku – tu nikdy nesundáváme. Je to další ochrana čidla před přímým vnikem vody do samotného čidla.
Pokud zapnete heater na nejvyšší výkon (například) u čidla SHT4x, měřená teplota se může lišit až o 5 °C! Samozřejmě záleží na proudění okolního vzduchu a designu zařízení. Na druhou stranu, heater dokáže snížit relativní vlhkost až o 30 % Rh.
Odběr čidla se pak může vyšplhat až k téměř 95 mA (samozřejmě záleží čidlo od čidla). Takže jak jsem napsal výše, je to o kompromisu mezi délkou měření, spotřebou a přesností.
K čemu všemu se dá heater ještě použít?
Kromě vysušení čidla se může heater použít ještě k self-testu čidla. Před zapnutím heateru změříte teplotu, poté zapněte heater a opět změříte teplotu. Teplota musí být vždy vyšší – pokud není, čidlo je poškozené.
Díky heateru taky můžete zjistit rosný bod a to docela přesně (ale potřebujete k tomu ještě jedno čidlo).
Jak jsou na tom Arduino knihovny?
To je největší obtíž Arduino knihoven všeobecně – knihovnu může napsat každý a ne vždy čidlo implementuje správně nebo 100% nepokryje všechny vychytávky, které čidlo má – třeba zmíněný heater.
Držet se můžete knihoven od Adafruit a Sparkfun, jejich knihovny patří mezi nejlepší.
SI7021
Adafruit: sensor.heater(false/true);
Sparkfun: sensor.heaterOn(0/1);
SHT40
Adafruit: sensor.setHeater(); //(umožňuje nastavit výkon a čas zapnutí)
Každý katalogový list obsahuje informace o čidle samotném a pokud čidlo heater má, pak i o něm.
Tady jsem našel všeobecný článek o teplotních a vlhkostních čidlech Si70xx – doporučuji k přečtení. Kromě informací o heateru se tam dozvíte rozdíly mezi absolutní a relativní vlhkostí, co je rosný bod, jaký efekt má plošných spoj na měřené veličiny a další.
https://docs.rs-online.com/6cee/0900766b813b70bf.pdf