Indholdsfortegnelse:

Omkostningseffektivt termisk kamera: 10 trin
Omkostningseffektivt termisk kamera: 10 trin

Video: Omkostningseffektivt termisk kamera: 10 trin

Video: Omkostningseffektivt termisk kamera: 10 trin
Video: Отдых в Болгарии: от А до Я. Лучшие курорты Болгарии. ТОП 14 🇧🇬 2024, November
Anonim
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
Omkostningseffektivt termisk kamera
  • Jeg har udviklet en enhed, der kan fastgøres til en drone og kan live-stream en blandet ramme lavet af det termografiske billede, der viser termisk stråling og regelmæssig fotografering med synligt lys.
  • Platformen består af en lille single-boardet computer, en termisk kamerasensor og et almindeligt kameramodul.
  • Dette projekt har til formål at undersøge mulighederne for en billig termisk billedplatform til påvisning af skader i solcellepanel, der er karakteriseret ved varmesignaturer.

Forbrugsvarer

  • Raspberry Pi 3B+
  • Panasonic AMG8833 gitterøje
  • Pi kamera V2
  • Bærbar computer med VNC viewer

Trin 1: PCB -udvikling

PCB -udvikling
PCB -udvikling
PCB -udvikling
PCB -udvikling
PCB -udvikling
PCB -udvikling
  • Printkortet til Panasonic grid-eye sensor kan designes ved hjælp af Auto-desk EAGLE.
  • . Brd -filen er udviklet i lighed med Adafruit AMG8833 -modulet med små ændringer
  • Derefter kan printet udskrives med printkortfabrikanter, og jeg brugte pcbway.com, hvor min første ordre var helt gratis.
  • Jeg fandt ud af, at PCB -lodning var helt anderledes end lodning, jeg kendte, da det involverede overflademonterede enheder, så jeg gik til en anden PCB -producent og fik mit PCB loddet med sensoren.

Trin 2: Softwareudvikling

  • Koden er skrevet i Thonny, et python Integreret udviklingsmiljø.
  • Proceduren bag projektet var at forbinde pi -kameraet og installere tilhørende software.
  • Det næste trin var at forbinde den termiske sensor til at rette GPIO -ben og installere Adafruit -biblioteket til brug af sensoren.
  • Adafruit bibliotek indeholdt script til læsning af sensoren og kortlægning af temperaturerne til farver, men bevægelige billeder, det skabte, kunne ikke implementeres
  • Derfor blev koden omskrevet til et format, der understøtter billedbehandling, hovedsageligt til sammensmeltning af to rammer sammen.

Trin 3: Læsning af sensorerne

  • For at indsamle data fra det termiske kamera blev ADAFRUIT -biblioteket brugt, hvilket gør det muligt let at frigive sensorerne med kommando readpixels (), hvilket genererer et array, der indeholder temperaturforhold i grader Celsius målt fra sensorer adskilte elementer.
  • For Pi -kameraet genererer funktionskommandoen picamera.capture () et billede med et angivet outputfilformat
  • For at passe til hurtig behandling blev en lavere opløsning indstillet til 500 x 500 pixels

Trin 4: Opsætning af termisk sensor

  • For det første skal vi installere Adafruit -biblioteket og python -pakker
  • Åbn kommandoprompten og kør: sudo apt-get update, som opdaterer dig Pi
  • Udfør derefter kommandoen: sudo apt-get install -y build-essential python-pip python-dev python-smbus git
  • Kør derefter: git -klon https://github.com/adafruit/Adafruit_Python_GPIO…. Som vil downloade Adafruit -pakken til din Raspberry Pi
  • Flyt inde i biblioteket: cd Adafruit_Python_GPIO
  • Og installer setup ved at køre kommandoen: sudo python setup.py install
  • Installer nu scipy og pygame: sudo apt-get install -y python-scipy python-pygame
  • Endelig installer farvebiblioteket ved at udstede kommandoen: sudo pip install color Adafruit_AMG88xx

Trin 5: Aktivering af I2C -grænseflade

  • Udfør kommandoen: sudo raspi-config
  • Klik på Avancerede indstillinger, vælg I2C, aktiver derefter det og vælg Afslut
  • Genstart Pi for at aktivere I2C med succes
  • Sørg for, at du også har aktiveret kamera- og VNC -grænseflader

Trin 6: Tilslutning af sensor og kamera

  • Du bør kun slutte 4 stifter AMG8833 til Pi og forlade IR -stiften.
  • 5V forsyning og jord kan tilsluttes GPIO ben 1 og 6
  • SDA og SCL er forbundet til pin 4 og 5 i Pi.
  • Log ind på hindbær med ssh
  • køre: sudo i2cdetect -y 1
  • Du skulle se "69" på den 9. kolonne, hvis ikke der er et problem med at tilslutte sensoren til Pi.
  • Tilslut til sidst pi -kameraet v2 til kamerasporet i hindbær pi

Trin 7: Varmekortlægning

  • Udfør kommandoen: git -klon
  • Gå ind i biblioteket Adafruit_AMG88xx_python/eksempler
  • udfør kommandoen: sudo python thermal_cam.py
  • Jeg har vedhæftet koden til varmekortlægning AMG8833 herunder.

Trin 8: Billedbehandling

  • Temperaturkortlægning

    1. For at visualisere de termiske data kortlægges temperaturværdierne til en farvegradient, der spænder fra blå til rød med alle andre farver imellem
    2. Når sensoren startes, kortlægges den laveste temperatur til 0 (blå) og den højeste temperatur til 1023 (rød)
    3. Alle andre temperaturer imellem tildeles korrelerede værdier inden for intervallet
    4. Sensorudgangen er 1 x 64 array, som ændres til en matrix.
  • Interpolation

    1. Opløsningen på den termiske sensor er temmelig lav, 8 x 8 pixels, så kubisk interpolation bruges til at øge opløsningen til 32 x 32, hvilket resulterer i matrix 16 gange større
    2. Interpolering virker ved at konstruere nye datapunkter mellem et sæt kendte punkter, men nøjagtigheden falder.
  • Tal til billeder

    1. Tal fra 0 til 1023 i 32 x 32 matrix konverteres til decimalkode i RGB -farvemodellen.
    2. Fra decimalkoden er det let at generere billedet med en funktion fra SciPy -biblioteket
  • Ændring af størrelse med anti-aliasing

    1. For at ændre størrelsen på 32 x 32 billede til 500 x 500 for at matche Pi -kameraets opløsning, bruges PIL (Python Image Library).
    2. Det har et anti-aliasing-filter, der udglatter kanterne mellem pixels, når det forstørres
  • Gennemsigtig billedoverlejring

    1. Det digitale billede og varmebilledet blandes derefter til et sidste billede og tilføjer dem med 50% gennemsigtighed hver.
    2. Når billeder fra to sensorer med en parallel afstand mellem dem smelter sammen, overlapper de ikke fuldstændigt
    3. Endelig vises minimums- og maksimumstemperaturmål ved AMG8833 med overlejret tekst på displayet

Trin 9: Kode- og PCB -filer

Jeg har vedhæftet testen og den endelige kode til projektet herunder

Trin 10: Konklusion

  • Således er der bygget et termisk kamera med Raspberry Pi og AMG8833.
  • Den sidste video er blevet integreret i dette indlæg
  • Det kan observeres, at temperaturen ændrer sig øjeblikkeligt, da jeg får lighter i nærheden af opsætningen, og flammen på lighter er blevet nøjagtigt registreret af sensoren.
  • Derfor kan dette projekt videreudvikles til feberdetektion hos mennesker, der kommer ind i et værelse, hvilket vil være meget nyttigt i denne COVID19 -krise.

Anbefalede: