DIY hőkamera AMG8833

Régen írtam már barkács-projektről, de persze ez nem azt jelenti, hogy csak pihengettem volna az elmúlt hónapokban, csak mással foglalatoskodtam. Ezúttal egy aránylag speciális szenzort kaptam kézhez sok szeretettel Kínából: egy AMG8833-at, ami 8x8-as mátrixban képes hőmérsékletadatokat reprezentálni és ezt tesztelgettem. Persze az vitán felül áll, hogy a 8x8 pixel nem túl sok mindenre elég, de némi lineáris interpolációval meglepően jó eredményeket lehet elérni egy 128x128 pixeles kijelzőn megjelenítve az eredményt. A különböző hőmérsékleteket a színskálára vetítve, egy kezdetleges hőkamerához juthatunk.

Természetesen nincs új a nap alatt, nem én találtam ki először, az alábbi projektekre alapoztam:

Az általam némileg leegyszerűsített eredmény pedig ez lett:

hokam_disp.jpg

 

Íme a szükséges eszközök listája és jelen áruk a nagy e-piacon:

Eszköz Bruttó ár
D1 Mini ESP8266 fejlesztői lap (*) 673 Ft
4x6cm protolap, kétoldalas (*) 120 Ft
Z79 ABS (79x89x38) Műszerdoboz, univerzális (*) 457 Ft
AMG8833 hőszenzor 8x8 felbontással (*) 9005 Ft
Bekapcsoló gomb / rocker switch (*) 42 Ft
100K ohmos ellenállás x1 20 Ft
Műanyag 18650 akkutartó, fekete, 1db-os (*) 208 Ft
LG ICR18650-MF1 2150mAh (*) 960 Ft
DC-DC feszültség Step-Up átalakító 2V-5V-ról 5V 2A (*) 360 Ft
ST7735 128x128 1.44" SPI TFT modul (*) 1015 Ft
Összesen: 12860 Ft

 

Az rögtön látható, hogy az ár nagy részét az AMG8833 teszi ki.. hát nem olcsó azt kell mondjam, alaphangon 30 dollár körül van. De viszonyításképpen egy belépő kategóriás 206x156 felbontású hőkamera 150 ezer forint körül vásárolható meg, egy közepes 320x200-as felbontású pedig már fél millió forint. Igaz a 8x8-as felbontással nem lehet csodákat tenni, leginkább csak demonstrációs célokra, vagy esetleg okosan megtervezett jelenlét-érzékelő szenzornak egy okosotthonba lehet alkalmas (ez további teszteket igényel még). A mozgásérzékelőkkel szemben ezzel a jelenlétet ugyanis akkor is detektálhatjuk, ha nem mozgunk.

Így néz ki a bestia:

amg8833.jpg

 

Az alábbi bekötési ábra szerint készítettem el a hordozható "kamerát" a fenti szenzor segédletével:

hokam_wiring.jpg

Ugyan nem feltétlen kellene WiFi képes chip erre az egyszerű feladatra, viszont olcsósága az ESP-t igen praktikussá teszi. Az interpoláció miatt pedig a számítási kapacitás is lényeges szempont, a 70MHz-nél lassabb Arduino-kat nyugodtan el is lehet felejteni erre a célra: eszméletlenül lassúak. Az ESP8266 esetében, fordításkor 160MHz-re állítva az órajelét, és a TFT_eSPI megjelenítőkönyvtárat használva egészen folyamatos megjelenést kaphatunk. Persze az AMG maximum 10 fps-el tudja az eredményeit továbbítani, és az emberi szem olyan 15fps-től kezdve látja folyamatosnak a mozgást, így nem tökéletes az eredmény, de - szerény véleményem szerint - tűrhető.

ESP lábkiosztás:

Láb cimke Alternatív megnevezés Rá kötött eszköz
TX GPIO1/D10 -
RX GPIO3/D9 -
D1 GPIO5/SCL AMG SCL
D2 GPIO4/SDA AMG SDA
D3 GPIO0
D4 GPIO2 ST7735 DC
GND - DC-DC átalakító OUT-, ST7735 GND, AMG GND
5V - DC-DC átalakító OUT+
RST - ST7735 RES
A0 TOUT Akku+ 100kOhm-on keresztül!
D0 GPIO16/WAKE -
D5 GPIO14 ST7735 SCL/SCK
D6 GPIO12 -
D7 GPIO13 ST7735 SDA/MOSI
D8 GPIO15 ST7735 CS
3V3 - ST7735 VCC, ST7735 BL, AMG VCC

 

3D nyomtató híján egy kész műszerdobozt szereztem be, és a meglévő alkatrészeket igyekeztem optimálisan elhelyezni benne. Felülnézetben látszik maga az AMG, ami egyébként eltávolítható/cserélhető a későbbiekben, mivel egyéb célokra tervezem majd felhasználni. A sorkapocsra érkezik az akku + és -, a + előbb meg van járatva egy kapcsolón keresztül.

hokam_bottom.jpg

A kétoldalas zöld protolapon alul látható az ESP és az 1.44"-os TFT kijelző szépen egymás mellé illesztve. Ami nem látszik, az a TFT kijelző alatt, direktben a protolapra forrasztott DC-DC átalakító, ami az akkumulátor feszültségét 5V-ra alakítja fixen a D1 mini számára.

hokam_top.jpg

A többi eszköz a D1 mini 3V3 lábáról kapja a tápot, ahogy a bekötési rajz is mutatja. Nem igazán találtam megfelelő átalakítót, ami 3.3V kimenetet adna 3.0-4.2V bemenetből, így inkább az 5V step-up átalakítóra szavaztam, bár tisztában vagyok vele, hogy az akkukapacitásra nincs jótékony hatással, hogy így két feszültségátalakító is van a körben, amik veszteségei így összeadódnak.
Plusz funkció még egy 100 kOhmos ellenálláson keresztül az A0-ra kötött akku +. Ez a wifis hordozható hőmérő projektnél már ismertetett módon a D1 mini meglévő feszültségosztó ellenállásait kiegészítve biztosítja a biztonságos mérését az akkufeszültségnek.

Mi hiányzik a működéshez? Hát a működtető program! Mivel ez meglehetősen erőforrás-igényes projekt, és meglehetősen speciális, ezúttal nem az ESPEasy-ből indulok ki, hanem a PJRC fórumon fellelhető forrásból gyomláltam ki a megjelenítésből minden felesleget és a nyomógomb-kezelést. Viszont cserébe beemeltem pár alapvető WiFi funkciót: Hotspotként üzemel a kütyü, amihez csatlakozhatunk "ThermoCam" SSID-re, "12345678" jelszóval is akár.

Az ESP8266-ra készített bináris firmware és a forráskód is az alábbi helyről tölthető le:

https://github.com/enesbcs/ThermalCameraMod

Egy állóképet (BMP formátumú) láthatunk a webes felületen (172.217.28.1), és alapvető hőmérsékleti információkat, illetve lehetőség van OTA frissítésre is.

hokam_gui.jpg

A D1 minire könnyű módszerrel egy USB kábel segítségével küldhetjük fel a firmwaret, akár a nodeMCU-pyflasher, akár esptool segítségével. (flashelés)

Leginkább csak ötleteket akartam adni ezzel a demó projekttel, nem késztermékként gondolok rá. Sok sikert a barkácsoláshoz! :)

A bejegyzés trackback címe:

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

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.

Támogatók:
okosotthon.jpg
allterco.jpg

Utolsó kommentek

  • szenorb: Hello. Bekötöttem 12V-ra , a bemetére egy mozgás érzékelőt kötöttem. Szépen kapcsol a relé a késle... (2023.06.14. 06:48) Shelly okosrelé (Shelly1)
  • Melanoheliophobia: Üdv! Kb. 2 éve vásároltam két ugyanilyen okos izzót. Sajnos az egyik még garancia idő alatt eltávo... (2023.05.03. 16:50) Shelly Vintage okosizzó
  • eNeS: Lehetséges, bár az ESP8266-ot lassan ideje elfelejteni, ha nem helyi hálózatra akarsz vele forgalm... (2023.04.02. 08:43) Tasmota szkriptek
  • eNeS: @tomih: Thonnyban rebootot nyomva nekem se megy az NTP. De mikor lekapcsoltam a Thonnyt és rebooto... (2023.04.02. 08:40) Raspberry Pico és a LAN (W5100S-EVB-Pico)
  • krump_lee: Kedves eNeS! ESP8266 tasmota-val szenvedek, hiemq kapcsolat sehogy nem jön össze, sehol nem talál... (2023.04.02. 08:31) Tasmota szkriptek
  • Utolsó 20

Címkék

433mhz (12) alkatrész (22) alternatív kapcsoló (2) amg8833 (1) analóg (2) android (1) arduinoeasy (5) audio (1) automatizálás (3) bemenet (3) bk7231n (1) ble (1) blitzwolf (4) bluetooth (9) bridge (2) camhi (2) csináld magad (22) dimmer (1) diy (28) do-it-yourself (27) domoticz (11) ds18b20 (1) ebay (3) érintő (2) érintőkapcsoló (7) érzékelő (11) esp-01 (2) esp32 (11) esp8266 (21) espeasy (2) espurna (1) esp projekt (18) Eview7 (1) ewelink (1) feldolgozó (1) felhő (1) fényérzékelő (1) firmware (7) flame detector (1) fogyasztásmérő (5) ftdi (1) füstérzékelő (1) gázérzékelő (1) gpio (1) hang (4) hangjelző (1) hőmérséklet (22) https (1) ikea (1) impulzus relé (1) izzó (2) javascript (1) jelenlétérzékelő (3) kamera (18) keresztkapcsoló (1) kézmozdulat (1) kijelző (3) kimenet (21) konnektor (8) lan (9) lángérzékelő (2) led (3) linux (4) logic level converter (1) lua (1) lux (1) maple mini (2) mcu (3) micropython (1) mikrovezérlő (2) milkv (1) mobil (1) mosfet (1) mozgás (5) mpyeasy (4) mq-2 (2) mqtt (3) működtető rendszer (5) multiroom (1) nedvesség (1) neo (1) neopixel (1) Node-RED (1) nvr (4) nyitás (7) okosház (4) okosizzó (3) okosotthon (8) oled (1) onvif (8) openbeken (1) opencv (1) openwrt (4) orange pi (4) páratartalom (6) php (1) pico (1) pi pico (2) poe (1) programozás (9) projekt (25) proximity olvasó (1) python (2) raspberry (14) raspberry projekt (6) raspbian (1) reed (1) relé (27) rf (2) rgb (6) rock pi (1) rögzítő (2) rp2 (1) rpieasy (1) rtc (1) shelly (24) smartwise (1) solid state relay (1) sonoff (20) SonOTA (1) soros (1) ssl (1) ssr (1) stm32 (4) szenzor (11) szilárdtest relé (1) szintillesztő (2) sziréna (1) szkript (3) szünetmentesítés (4) t1 (1) tasmota (8) távirányító (3) Telegram (1) termékteszt (85) termosztát (2) touch (2) ups (5) usb (7) usb hub (1) valós idejű óra (1) vezérlések (20) vezérlő (5) világítás (5) villanykapcsoló (12) webkamera (1) wiegand (1) wifi (32) ws2812 (1) xiaomi (5) xm (4) xmeye (4) yoosee (1) zigbee (16) zwave (3) Címkefelhő
süti beállítások módosítása