Arduino páratartalom-mérés
DHT11 / DHT22 szenzor
A DHTxx modul egy rezisztív típusú nedvességmérési komponenst és egy NTC hőmérsékletmérő komponenst tartalmaz. A méréseket egy integrált 8 bites mikrokontroller végzi el, mely kalibrált digitális jelkimenetet biztosít. A modul nagy megbízhatósággal és kiváló hosszú távú stabilitással rendelkezik. A DHT22-be az AM2302 típusú IC került integrálásra.
A DHT22 szenzor nagyon- , míg a DHT11 ultra olcsónak számít, nyilván a 11-es némileg kevesebbet is tud (lásd lent az összehasonlítást).
A DHTxx modul lekérdezését egy egyvezetékes soros interfészen keresztül lehet megvalósítani, a jelátvitel maximális távolsága 20 méter. A szenzort digitális pin-re kell csatlakoztatni.
Páratartalom-mérő modul
A DHT 11/22 moduloknak két változata van. Az egyiken a kapcsolat kiépítéshez szükséges ellenállás és kondenzátor integrálásra került (pl. 140C80, KY-015,..), a másik típuson az érzékelőn kívül nincs más alkatrész, így ezeknél az ellenállást és kondenzátort még külön be kell építeni (lásd: vezetékezés).
Specifikáció
jellemző | DHT11 | DHT22 |
---|---|---|
Tápfeszültség | 3.3 ~ 5.5V DC | |
Jelátviteli távolság | maximum 20 m | |
Páratartalom mérési tartomány | 20 - 80% RH | 0 - 100% RH |
Páratartalom mérési hibahatár | ± 5% | ± 2 ~ 5% |
Hosszú távú stabilitás | < ± 1% RH / év | |
Hőmérséklet mérési tartomány | 0 - 50 °C | -40 - 125 °C |
Hőmérséklet mérési hibahatár | ± 2% | ± 0.5% |
Felbontás | páratartalom 1% RH, hőmérséklet 1 ℃ |
Vezetékezés
Szoftver
A szenzort egy Arduino Uno-val teszteltem. A legegyszerűbb módszer a beállítására, hogy az alábbi (Adafruit) könyvtárt:
https://github.com/adafruit/DHT-sensor-library
A könyvtár nem fog lefordulni az alábbi további könyvtár elérése nélkül:
https://github.com/adafruit/Adafruit_Sensor
Szóval, ezt a két könyvtárt a Githubról telepíteni kell (lásd könyvtár telepítése a Github-ról), majd a szintén innen települő példaprogramok közül futtatni kell a DHTtestert.
A lecsupaszított program, delay funkció nélkül, belső időzítéssel (a fenti könyvtárak kellenek hozzá):
SI7021, GY-21 modul
Ezek olyan páratartalom és hőmérsékletmérő modulok,
- melyek I²C kommunikációval érhető el
- a HTU21D IC-t integrálják
A modul (elvileg) technikailag az alábbi modulokkal egyezik meg: HTU21D, SHT20, SHT21, HDC1080.
Technikai adatok
Jellemző | Adat |
---|---|
Üzemi feszültség | 1.9 .. 3.6 V DC (3,3V ajánlott) |
Készenléti áram | 60nA |
Hőmérséklettartomány | -40 és 85 °C (-10 .. 60 °C ajánlott) |
Hőmérséklet pontosság | ± 0,4 °C (-10 .. 85 °C) |
Páratartalom | 0-100% relatív páratartalom (20% - 80% relatív páratartalom) |
Páratartalom pontosság | ± 3% relatív páratartalom (0-80% relatív páratartalom) |
Hőmérséklet-konverziós idő | 7ms |
Páratartalom-konverziós idő | 17ms |
Kommunikáció | I²C |
Fix I²C cím | 0x40 |
Áthidalható távolság | Nagyjából 1 méter 100 Kbaud esetén, és 6-8 méter 10 Kbaud esetén |
Az IC apró fehér fedele (ha van) egy Politetrafluoretilén (PTFE) membránszűrő.
A kommunikáció összekötése után érdemes az Arduino I²C scanner programmal tesztelni a modul jelenlétét.
Az Arduino I²C összefoglalása itt található: Arduino I²C.
- A modul 3.3V TTL logikával működik, az 5V-os logikához való csatoláshoz 10kΩ-os ellenállást kell alkalmazni.
- A modul beépített 4.7 KΩ-os lehúzó ellenállásokkal rendelkezik az I²C kommunikációhoz. Amennyiben más résztvevőket is akar az I²C-re csatolni, ezt az ellenállást le kell forrasztani (vagy a többi résztvevőhöz már ezek nem kellenek).
- A modul PTFE szűrője lassítja a mérést, de a szűrő eltávolítása a készülék rövidített élettartamát vagy meghibásodását eredményezheti nagyon nedves környezetben.
- A szenzort óvni kell a fizikai / kémiai szennyeződéstől, mert ezek erőteljesen befolyásolják a mérés pontosságát.