Nebrangi termo kamera: 10 žingsnių
Nebrangi termo kamera: 10 žingsnių
Anonim
Nebrangi termo kamera
Nebrangi termo kamera
Nebrangi termo kamera
Nebrangi termo kamera
Nebrangi termo kamera
Nebrangi termo kamera
Nebrangi termo kamera
Nebrangi termo kamera
  • Aš sukūriau įrenginį, kurį galima prijungti prie bepiločio orlaivio ir kuris gali tiesiogiai transliuoti mišrų kadrą, pagamintą iš termografinio vaizdo, rodančio šiluminę spinduliuotę ir įprastą fotografiją su matoma šviesa.
  • Platformą sudaro nedidelis vieno kompiuterio kompiuteris, šiluminės kameros jutiklis ir įprastas kameros modulis.
  • Šiuo projektu siekiama išnagrinėti pigių terminio vaizdo platformos galimybes aptikti saulės skydo, kuriam būdingi šilumos ženklai, pažeidimus.

Prekės

  • Raspberry Pi 3B+
  • „Panasonic AMG8833“tinklelis-akis
  • „Pi“kamera V2
  • Nešiojamasis kompiuteris su VNC peržiūros priemone

1 žingsnis: PCB kūrimas

PCB kūrimas
PCB kūrimas
PCB kūrimas
PCB kūrimas
PCB kūrimas
PCB kūrimas
  • „Panasonic“tinklelio akių jutiklio PCB plokštė gali būti sukurta naudojant „Auto-desk EAGLE“.
  • . Brd failas yra sukurtas panašiai kaip „Adafruit AMG8833“modulis su nedideliais pakeitimais
  • Tada PCB galima atspausdinti su PCB gamintojais, o aš naudoju pcbway.com, kur pirmasis mano užsakymas buvo visiškai nemokamas.
  • Radau, kad PCB litavimas visiškai skiriasi nuo man žinomo litavimo, nes tai susiję su ant paviršiaus sumontuotais įtaisais, todėl nuėjau pas kitą PCB gamintoją ir PCB buvo prilituotas prie jutiklio.

2 veiksmas: programinės įrangos kūrimas

  • Kodas parašytas „Thonny“, „python Integrated Development Environment“.
  • Projekto procedūra buvo prijungti pi kamerą ir įdiegti susijusią programinę įrangą.
  • Kitas žingsnis buvo prijungti terminį jutiklį prie tinkamų GPIO kaiščių ir įdiegti „Adafruit“biblioteką, kad būtų galima naudoti jutiklį.
  • „Adafruit“bibliotekoje buvo scenarijus, skirtas skaityti jutiklį ir susieti temperatūrą su spalvomis, tačiau jo sukurtų judančių vaizdų nepavyko įgyvendinti
  • Todėl kodas buvo perrašytas į formatą, palaikantį vaizdo apdorojimą, daugiausia siekiant sujungti du kadrus.

3 žingsnis: skaitykite jutiklius

  • Rinkti duomenis iš šiluminių kamerų buvo panaudota ADAFRUIT biblioteka, leidžianti lengvai atkurti jutiklius su komandomis readpixels (), sukuriant masyvą, kuriame yra temperatūrų pagal Celsijų laipsnis, išmatuotas iš atskirų jutiklių elementų.
  • Naudojant „Pi“fotoaparatą, funkcija „picamera.capture“() sukuria vaizdą su nurodytu išvesties failo formatu
  • Siekiant užtikrinti greitą apdorojimą, mažesnė skiriamoji geba buvo nustatyta 500 x 500 pikselių

4 žingsnis: Šilumos jutiklio nustatymas

  • Pirmiausia turime įdiegti „Adafruit“biblioteką ir „python“paketus
  • Atidarykite komandų eilutę ir paleiskite: sudo apt-get update, kuri atnaujins jus Pi
  • Tada paleiskite komandą: sudo apt-get install -y build-essential python-pip python-dev python-smbus git
  • Tada paleiskite: git clone https://github.com/adafruit/Adafruit_Python_GPIO…. Kuris atsisiųs „Adafruit“paketą į jūsų „Raspberry Pi“
  • Eikite į katalogą: cd Adafruit_Python_GPIO
  • Ir įdiekite sąranką vykdydami komandą: sudo python setup.py install
  • Dabar įdiekite „Scipy“ir „Pygame“: sudo apt-get install -y python-scipy python-pygame
  • Galiausiai įdiekite spalvų biblioteką išleisdami komandą: sudo pip install color Adafruit_AMG88xx

5 veiksmas: įgalinkite „I2C“sąsają

  • Išduokite komandą: sudo raspi-config
  • Spustelėkite Išplėstinės parinktys ir pasirinkite I2C, tada įjunkite ją ir pasirinkite Baigti
  • Iš naujo paleiskite „Pi“, kad sėkmingai įjungtumėte „I2C“
  • Įsitikinkite, kad taip pat įgalinote fotoaparato ir VNC sąsajas

6 žingsnis: Jutiklio ir fotoaparato prijungimas

  • Prie „Pi“turėtumėte prijungti tik 4 AMG8833 kaiščius ir palikti IR kaištį.
  • 5V maitinimą ir įžeminimą galima prijungti prie 1 ir 6 GPIO kaiščių
  • SDA ir SCL yra prijungti prie Pi ir 4 kaiščių.
  • Prisijunkite prie aviečių naudodami ssh
  • paleiskite: sudo i2cdetect -y 1
  • 9 -ajame stulpelyje turėtumėte pamatyti „69“, jei ne, nėra jokių problemų prijungiant jutiklį prie „Pi“.
  • Galiausiai prijunkite „pi“kamerą v2 prie „Raspberry pi“esančio fotoaparato lizdo

7 žingsnis: šilumos kartografavimas

  • Išduokite komandą: git clone
  • Perkelkite į katalogą Adafruit_AMG88xx_python/example
  • išduoti komandą: sudo python thermal_cam.py
  • Žemiau pridėjau šilumos kartografavimo kodą AMG8833.

8 žingsnis: vaizdo apdorojimas

  • Temperatūros atvaizdavimas

    1. Norint vizualizuoti šiluminius duomenis, temperatūros vertės suskirstytos į spalvų gradientą, pradedant nuo mėlynos iki raudonos, o tarp visų kitų spalvų
    2. Įjungus jutiklį, žemiausia temperatūra priskiriama 0 (mėlyna), o aukščiausia - 1023 (raudona)
    3. Visoms kitoms tarpinėms temperatūroms priskiriamos koreliacijos vertės intervale
    4. Jutiklio išvestis yra 1 x 64 masyvas, kurio dydis pakeistas į matricą.
  • Interpoliacija
    1. Šiluminio jutiklio skiriamoji geba yra gana maža, 8 x 8 pikselių, todėl kubinė interpoliacija naudojama norint padidinti skiriamąją gebą iki 32 x 32, todėl matrica yra 16 kartų didesnė
    2. Interpoliacija sukuria naujus duomenų taškus tarp žinomų taškų, tačiau tikslumas mažėja.
  • Skaičiai į vaizdus

    1. Skaičiai nuo 0 iki 1023 32 x 32 matricoje konvertuojami į dešimtainį kodą RGB spalvų modelyje.
    2. Iš dešimtainio kodo lengva sukurti vaizdą naudojant funkciją iš „SciPy“bibliotekos
  • Keičiamas dydis naudojant anti-aliasing

    1. Norėdami pakeisti 32 x 32 vaizdo dydį iki 500 x 500, kad atitiktų Pi fotoaparato skiriamąją gebą, naudojama PIL (Python Image Library).
    2. Jame yra anti-aliasing filtras, kuris padidindamas išlygins kraštus tarp pikselių
  • Skaidri vaizdo perdanga
    1. Tada skaitmeninis vaizdas ir šilumos vaizdas sumaišomi į vieną galutinį vaizdą, pridedant juos su 50% skaidrumu.
    2. Sujungus vaizdus iš dviejų jutiklių, kurių atstumas yra lygiagretus, jie visiškai nesutaps
    3. Galiausiai rodomos AMG8833 minimalios ir maksimalios temperatūros matavimai su persidengiančiu tekstu

9 veiksmas: kodo ir PCB failai

Žemiau pridėjau bandymo ir galutinį projekto kodą

10 žingsnis: Išvada

  • Taigi buvo sukurta šiluminė kamera su „Raspberry Pi“ir AMG8833.
  • Paskutinis vaizdo įrašas buvo įterptas į šį įrašą
  • Galima pastebėti, kad temperatūra pasikeičia akimirksniu, kai žiebtuvėlis priartėja prie sąrankos ir jutiklis tiksliai aptinka žiebtuvėlio liepsną.
  • Taigi šis projektas gali būti toliau plėtojamas siekiant nustatyti karščiavimą žmonėms, patenkantiems į kambarį, o tai bus labai naudinga šioje COVID19 krizėje.