Hőmérséklet és páraszenzor (AM2320)
2018. május 08. írta: eNeS

Hőmérséklet és páraszenzor (AM2320)

Az AM2320 a DHT22-höz paramétereiben némiképp hasonlító, de annál fizikailag kisebb (12,1x15x4,5mm) saját házzal ellátott hő-, és páratartalom mérő, ugyanúgy +/-0,5 fok pontosságú mérési pontosságot ígér a gyártó. E mellett a relatív páratartalmat is méri 3% pontossággal. A legfőbb különbség a csatlakoztatás módjában rejlik. Bár ugyanúgy négy lába van, ezeket másképpen kell csatlakoztatni, mivel egy I2C buszon kommunikáló eszközről van szó.
Ugyanúgy megtalálható benne a 2 másodperces korlát, vagyis leghamarabb 2 másodpercenként lehet hozzá fordulni adatokért. (Viszont tapasztalataim szerint kevesebb hibát és érvénytelen adatot is dob, mint a DHT)

am2320.jpg

Csatlakoztatásra négy tű szolgál, melyek szemből nézve balról jobbra haladva:

  • 1. VCC: 3.1-5.5V DC táp
  • 2. SDA
  • 3. GND: Raspberry GND
  • 4. SCL

Ezt nézhetjük úgy is, hogy egyel több lábat igényel, mint a DHT, de ha használunk egyéb I2C eszközt is, akkor csak 2 láb kell összesen, mindegyik (pl fénymérő, RTC...) I2C buszos eszközzel történő kommunikációram ilyen módon spórolhatunk a csatlakozásokkal.

Beépített felhúzóellenállás nincs benne, így ESP8266 modul esetében ezt nekünk kell külön biztosítani, Raspberry esetében erre nincs szükség, a hardveres I2C csatlakozóin ez megoldott.

rpi_i2c.jpg

Aki bizonytalan, annak itt az adatlap.

Szoftveres megjegyzések:

Az ESPEasy TESTING binárisok tartalmazzák a használatához szükséges plugint. Fontos: az I2C Scanner-t hiába futtatjuk, nem fogja megtalálni az eszközt! Ennek ellenére, ha jól kötöttük be, és biztosítottuk a szükséges felhúzóellenállásokat (2-10k) az SDA és SCL lábakra, akkor a plugin engedélyezése után pár másodperccel már jönnek is az adatok!

esp_i2c.jpg

Raspberry-re nem találtam függvénykönyvtárat hozzá, de az alábbi repoból letölthető egy működő kód:

Két fontos dolog:

  1. Az I2C buszt a szokásos módon a "dtparam=i2c_arm=on" beszúrásával a /boot/config.txt-be tudjuk megoldani
  2. Az I2C busz sebességét ne növeljük az alapértelmezett fölé, különben az első mérés után nem kapunk értelmezhető adatot
  3. Az i2cdetect sajnos nem fogja megtalálni az eszközt, hiába is próbálkozunk, de ahogy az ESP-nél így itt is működni fog ettől függetlenül, amennyiben helyesen kötöttük be (itt elvileg nem kell külön felhúzó ellenállás)

A python kódot kicsit átalakítottam a saját multiszenzorom számára:

https://github.com/enesbcs/multisensor-python-rpi/blob/master/unit_temp_am.py

A bejegyzés trackback címe:

https://bitekmindenhol.blog.hu/api/trackback/id/tr1813900084

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.