Sadržaj:
- Supplies
- Korak 1: Rušenje
- Korak 2: Ožičenje
- Korak 3: Modovi kućišta
- Korak 4: Napajanje
- Korak 5: Postavljanje softvera za termalnu kameru
- Korak 6: Postavljanje softvera za LCD ekran
- Korak 7: Podešavanje koda
- Korak 8: Završni rad na dodirima
- Korak 9: Montaža
- Korak 10: Vremena ispitivanja temperature
Video: 1979. Apollo Pi termalna kamera: 10 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Ovaj starinski Apollo mikrotalasni detektor sada ima novu sjajnu svrhu kao termalna kamera, koju pokreće Raspberry Pi Zero sa senzorom Adafruit termalne kamere koji mjeri temperature, prikazujući rezultate u stvarnom vremenu na svijetlom 1,3 TFT ekranu.
Ima unaprijed postavljeni i dinamički način rada - u prvom se boje prikazane na ekranu temelje na tvrdo kodiranim temperaturnim pragovima, a u drugom se raspon boja može podesiti pomoću klizača za temperaturu na nadzornoj ploči Adafruit.io. Nadzorna ploča također odmah prikazuje sve snimke koje je uređaj prenio, a snimljene su pomoću originalnog dugmeta palca na dršci.
Čitav sistem pokreće tanka, cilindrična USB baterija skrivena u rukohvatu, koja se može lako napuniti iskakanjem iz konusa nosa i priključivanjem USB kabla.
Samo tri Python skripte kontroliraju logiku izbornika, senzor i Adafruit.io integraciju, a zaslonom upravlja PyGame.
Rad na ovom projektu zaista mi je pomogao da ostanem pozitivna tokom zaključavanja, a s dodatnim vremenom koje smo imali na raspolaganju djeca i ja smo pronašli mnogo zanimljivih stvari po kući na koje možemo ukazati!
Pogledajte Apollo Pi na djelu u YouTube videu, u slučaju da ne možete vidjeti ugrađenu verziju iznad, na
Supplies
Apollo mikrotalasni monitor
Raspberry Pi Zero W
Adafruit AMG8833 Thermal Camera Breakout
Adafruit Mini PiTFT ekran od 1,3"
Džemper kablovi
3v vibracijski disk
USB banka za napajanje
Korak 1: Rušenje
Uzeo sam Apollo Monitor na rabljenoj prodaji prošlog ljeta, zbog njegovog jedinstvenog izgleda, a ne bilo čega drugog - što je jednako dobro kao što su definitivno bili i bolji dani! Unutrašnji krugovi nisu bili potpuni i cijela je stvar bila prekrivena neredom ljepila, što je historijski pokušaj da se popravi.
Prvotno bi se koristio za provjeru prisutnosti mikrovalnog zračenja, vjerojatno u nekoj vrsti industrijskog okruženja s obzirom na njegov dizajn i rijetkost mikrovalnih pećnica u to vrijeme, iako o tome nisam mogao saznati više. Jedna stvar koju sam znao, bila bi idealan dom za termalnu kameru.
Čim sam iskočio iz konusnog "nosa", ostatak se doslovno raspao, a zalijepljeni analogni mjerač i pravokutno dugme lako su uklonjeni. Zadržao sam gumb, bio je savršeno funkcionalan i zaista čudnog oblika, pa bih se mučio s ugradnjom zamjene u istu rupu.
Korak 2: Ožičenje
Prije podrezivanja kućišta kako bi sve stalo, prvo sam se želio uvjeriti da znam kako će dijelovi ići zajedno, pa sam se odlučio za povezivanje senzora i zaslona. Sam senzor je bio u redu, bila su mu potrebna samo četiri kratkospojna kabela za povezivanje s Raspberry Pi.
Ekran je bio malo kompliciraniji, dijagram iscrtavanja je pokazao da bih trebao spojiti 13 kratkospojnih žica - očito je dizajniran da sjedi direktno na Pi -u pa sam za to zaista morao biti kriv. Odlučio sam dodati dio ženskog zaglavlja između ekrana i Pi veza kako bih mogao skinuti ekran i lako ga povezati. Ovo je bila odlična ideja i vrlo sam pažljivo slijedio dijagram iscrtavanja kako bih povezao zaglavlje do Pi.
Zatim sam zalemio nekoliko svježih kratkospojnih kabela na originalno dugme, tako da se moglo spojiti na GPIO i koristiti za snimanje toplinskih snimaka slike. Na kraju sam lemio mali vibrirajući disk izravno na GPIO pinove, kako bih pružio neke haptičke povratne informacije pritiscima tipki.
Korak 3: Modovi kućišta
Jedna od stvari koja je oživjela Apollo Monitor iz moje kutije "to do" bila je rupa za prikaz na vrhu - ovo je otprilike bila veličina koja mi je bila potrebna za mali ekran Adafruit. Grubo. Bilo je potrebno otprilike sat vremena sa datotekom da se rupa proširi na pravu veličinu, ali sam na sreću uspio u tom procesu ne uništiti slučaj.
Također sam odrezao dijelove unutrašnjosti koje su izvorno držale bateriju PP3, te pomoću rotacijskog alata izrezao neke pregrade unutar držača kako bih napravio mjesta za bateriju.
Na kraju sam izbušio neke velike rupe kako bi se kabeli za senzor i kabel za punjenje mogli probiti iz "nosa" kako bi se spojili s ostalim krugovima.
Korak 4: Napajanje
Za ovaj projekt odlučio sam se ne koristiti LiPo bateriju i adapter/punjač, jer je u kućištu bilo više mjesta. Odlučio sam umjesto toga koristiti standardnu USB bateriju za napajanje. Htio sam nabaviti tanki cilindrični, koji će stati u ručku, pa sam tražio najjeftiniji i najtanji koji sam mogao pronaći na Amazonu. Onaj koji je stigao, sa svojom sirastom LED svjetiljkom i stilom od umjetne baterije, bio je najtanji koji sam mogao pronaći, ali kad sam ga raspakirao, shvatio sam da je još uvijek previše gust da stane u ručku. Tada sam shvatio da se raspao - gornji dio je odvrnut, a gola baterija iznutra je kliznula, što mi je uredno uštedjelo 3 mm koja su mi bila potrebna za ugradnju u ručku, kakav rezultat!
Zatim sam uzeo kratki mikro USB kabel, skinuo dio izolacije, odrezao pozitivni kabel i lemio ga u lijepu kvadratnu tipku za zatvaranje, tako da se napajanje moglo kontrolirati bez isključivanja baterije. Ovo dugme se lijepo uklopilo u ono što je prvobitno bilo poklopac baterije, i bilo je prilično blizu originalnom na vrhu kućišta. Sad kad sam znao da će sve odgovarati, došlo je vrijeme da sve uspije!
Korak 5: Postavljanje softvera za termalnu kameru
Sam toplinski senzor je Adafruit AMG8833IR Thermal Camera Breakout, koji koristi 8x8 niz senzora za stvaranje slike topline. Radi s Arduinom i Raspberry Pi -om, ali najveća prednost korištenja Pi -a je ta što softver može koristiti scipy python modul za izvođenje bikubične interpolacije na snimljenim podacima, čineći da izgleda kao slika 32x32, uredno!
Postavljanje senzora je prilično jednostavno, ali postoje neki obruči za preskakanje, ovo mi je uspjelo:
Omogućite I2C i SPI na Raspberry Pi (Raspberry Pi konfiguracija> Sučelja)
Instalirajte Blinka CircuitPython biblioteku:
pip3 instalirajte adafruit-blinka
Zatim instalirajte biblioteku senzora AMG8XX:
sudo pip3 instalirajte adafruit-circuitpython-amg88xx#
Isključite Pi i povežite senzor - samo 4 žice na sreću!
Zatim instalirajte scipy, pygame i module u boji:
sudo apt-get install -y python-scipy python-pygamesudo pip3 boja za instaliranje
U ovom trenutku moj kôd je izazvao scipy grešku, pa sam ga ponovo instalirao sa:
Sudo Pip3 install scipy
Tada sam dobio grešku: ImportError: libf77blas.so.3: ne mogu otvoriti datoteku dijeljenih objekata: Nema takve datoteke ili direktorija
To je riješeno instaliranjem:
sudo apt-get install python-dev libatlas-base-dev
Od tada je primjer koda dobro funkcionirao, izvršavajući skriptu s konzole, a ne iz Thonnyja:
sudo python3 /home/pi/FeverChill/cam.py
Zbog toga se zaslon senzora pojavio na ekranu u prozoru igre, a nakon nekoliko prilagodbi pragova boje/temperature bio sam hipnotiziran toplinskom slikom svog lica.
Korak 6: Postavljanje softvera za LCD ekran
Bilo je zaista dobro pokrenuti senzor, ali sada mi je trebalo da ga prikažem na malom ekranu. Ekran koji sam koristio je Adafruit Mini PiTFT 1.3 240x240 - uglavnom zato što su njegova rezolucija i oblik bili taman za termalnu kameru, a takođe je bio i odgovarajuće veličine da stane u kućište i nudio je dva tastera povezana sa GPIO koja su mi bila potrebna.
Upute za Adafruit ovdje su nudile dvije mogućnosti: lak i težak način - nakon eksperimentiranja shvatio sam da moram koristiti tvrdi način, jer je senzor zahtijevao direktan pristup framebufferu. Slijedeći upute korak po korak, bio sam u redu sve dok nisam pogodio pitanje "Želite li da se konzola pojavi" - u početku sam odabrao Ne, ali sam trebao reći Da. Ovo je bilo pomalo bolno jer je značilo da moram ponoviti postupak, ali učinilo me svjesnim da nakon što je Pi postavljen za prikaz konzole na TFT-u, više neće prikazivati radnu površinu putem HDMI-a (barem to je moje iskustvo).
Ipak, nakon što je postavljanje završeno, pri ponovnom pokretanju maleni ekran je prikazao minijaturnu verziju uobičajenog procesa pokretanja Pi -a, a kada sam pokrenuo primjer skripte termalne kamere, prozor pygame je prikazao sliku topline na malom ekranu - vrlo zadovoljavajuće!
Korak 7: Podešavanje koda
Uzorak koda je dobro funkcionirao, ali htio sam da učini malo više, pa se bavim dotjerivanjem skripti po svom ukusu. Počeo sam stvaranjem skripte menija koja bi se učitala pri pokretanju i dobro iskoristila dva gumba integrirana u ploču zaslona.
menu.py
Prvo sam našao neki Python na mreži koji bi prikazao lijep efekat animiranog menija na malom ekranu, koristeći PyGame. Ljepota ove skripte je u tome što animira sve slike u postavljenoj mapi, pa bi bilo lakše promijeniti animaciju u kasnijoj fazi (na primjer usklađivanje boja animacije s kućištem). Postavio sam skriptu menija tako da pritiskom na bilo koji od tastera zaustavi animaciju i otvori ili fever.py ili chill.py, skripte za prikaz ekrana senzora. Ovim radom postavio sam skriptu da se pokreće pri pokretanju - obično to radim uređivanjem/etc/xdg/lxsession/LXDE -pi/autostart, ali kako se ova metoda oslanja na učitavanje radne površine, ovaj put mi je bila potrebna druga opcija.
Dakle, prvo sam uredio datoteku rc.local …
sudo nano /etc/rc.local
… Zatim dodano u nastavku odmah iznad izlazne linije…
sudo /home/pi/FeverChill/menu.py &
… prvo se pobrinuvši da skripta menu.py ima sljedeće na samom vrhu …
#!/usr/bin/env python3
… I nakon postavljanja menu.py kao izvršne skripte upisivanjem:
chmod +x /home/pi/FeverChill/menu.py
u terminal.
fever.py (Unaprijed postavljeno)
Za unaprijed postavljenu skriptu prvo sam postavio pragove boje / temperature, postavljajući donji (plavi) na 16, a gornji (crveni) na 37,8. To bi teoretski i dalje prikazalo lice osobe u zelenoj boji, ali bi zasvijetlilo crveno ako je temperatura bila na ili iznad 37,8 stepeni. Na internetu postoji mnogo istraživanja o uzorkovanju tjelesne temperature različitim metodama, ali s obzirom na to da je varijansa senzora +/- 2,5 stupnjeva, odlučio sam se samo držati najšire prihvaćenog raspona "groznice" - to je dovoljno jednostavno promijeniti putem ssh -a na kasniji datum.
Zatim postavljam dva ekranska dugmeta da zatvore trenutnu skriptu i otvorim menu.py. Takođe sam hteo da pronađem način za snimanje i izvoz slike sa kamere, a nakon što sam pronašao pravu komandu PyGame
pygame.image.save (lcd, "thermo.jpg")
Ovo sam postavio da se pokreće kada je pritisnuto dugme "palac" - ono koje ste prvobitno koristili za očitavanje u mikrotalasnoj. To se pobrinulo za snimanje slike, zatim sam dodao nekoliko redova Pythona kako bi se slika odmah prenijela na Adafruit IO nadzornu ploču nakon snimanja, tako da se može vidjeti na drugim uređajima i lako preuzeti. Brzim "spremi kao" završena je unaprijed postavljena skripta.
chill.py (dinamički)
Termalna kamera ima više od traženja određenih temperatura, a želio sam da dinamička skripta bude fleksibilna, tako da se gornji i donji prag boje mogu lako prilagoditi. Nisam želio dodati dodatne tipke na uređaj i komplicirati navigaciju, pa sam odlučio koristiti klizače na Adafruit.io nadzornoj ploči.
Već sam imao većinu Adafruit koda u unaprijed postavljenoj skripti, pa sam morao dodati neke dodatne retke kako bi se trenutne vrijednosti klizača s nadzorne ploče dohvatile pri pokretanju i postavile kao zadane postavke prikaza.
Kôd koji sam koristio dostupan je na GitHub-u, da biste ga ponovo koristili, samo trebate preuzeti mapu FeverChill u / pi / mapu na vašem Pi i unijeti svoje vjerodajnice i nazive feedova u skripte, nakon što se prikaže & senzor je postavljen.
S obzirom da su skripte dobro radile, došlo je vrijeme da pređemo na nešto neurednije!
Korak 8: Završni rad na dodirima
U početku je ovaj projekt trebao brzo odvratiti pažnju od korištenja termalnog senzora za nešto drugo, ali s trenutnim događajima sve sam više bio uvučen u njega i sitne dodatne detalje koji bi ga rastegli i učinili većim izazovom.
S kućištem Apollo monitora bilo je prilično lijepo raditi, lako ga je rezati i brusiti, ali da ga lijepo dovršim, htio sam staviti neke od vidljivih ploča iza naslikanih "maski". To je trajalo, ručno ih je klesalo od komada otpadne plastike, ali posao je bio zadovoljavajući. Prvo sam napravio mali koji bi pokrio ploču ekrana, ali ostavio mikroprekidače vidljivim. Zatim sam napravio jedan za toplinski senzor, kako ne biste vidjeli golu elektroniku ako pogledate "poslovni kraj".
Odlučio sam se za shemu boja nekoliko dana prije nego što je Velika Britanija ušla u karantin, i imao sam sreću pronaći boje koje sam želio u obližnjoj trgovini željeza. Kako se kućište tako lijepo podijelilo na polovice, predložena je dvobojna shema boja, a zatim sam je proširio na "konus nosa" i poklopac senzora. Slikanje je bilo jako zabavno, prvog toplog dana u godini, iako je to značilo slikati dok su se ose u šupi miješale i mljele. Ranije nisam koristio maskirnu traku sa sprejom, ali sam zaista zadovoljan kako su nastali dvobojni komadi ispali.
Učeći lekcije iz prethodnih konstrukcija, ostavio sam obojene dijelove da se stvrdnu dobru sedmicu prije pokušaja sastavljanja, te sam u međuvremenu počeo sastavljati video.
Korak 9: Montaža
Kad god radim na projektu, volim doći u fazu u kojoj je sve spremno za sastavljanje, poput kompleta modela koji sam izrađujem. Nema garancija da će se sve uklopiti i upute postoje samo u mojoj glavi, ali to je moj omiljeni dio bilo koje gradnje.
Ovoga puta sve je prošlo glatko - uglavnom zato što sam imala dodatno vrijeme potrošiti na sitne detalje i uvjeriti se da je sve tako. Prije svega sam vruće zalijepio ekran u kućište, a zatim dodao dugme "snimanje" - to su bili jedini dijelovi povezani s vrhom kućišta, tako da je to bio lijep jednostavan početak.
Zatim sam lagano vruće zalijepio bateriju u držač i postavio Pi sa držačem u kućište. Nakon toga je senzor kamere pažljivo zalijepljen u konus nosa, prekidač za napajanje je pričvršćen za poklopac baterije i sve je spojeno.
Koristio sam kratkospojne kabele za sve spojeve, ali samo da budem posebno oprezan, vruće sam ih zalijepio na mjesto, u slučaju bilo kakvog pomicanja tijekom posljednjeg zgnječenja zajedno dvije polovice. Samo je to u stvari bilo pomalo zgužvano, ali bez zvukova pucanja, pa sam jednom kad su se dvije polovice čvrsto spojile gurnuo konus nosa i pričvrstio vijak kroz ručku - jedine dvije stvari koje drže cijeli sklop na okupu.
Nije funkcioniralo prvi put, uspio sam odspojiti ekran tijekom prvog squishathona, ali s nekoliko strateških zavoja kabela sve se sretno završilo drugi put. Vrijeme je da to usmjerite na stvari!
Korak 10: Vremena ispitivanja temperature
Dodatno vrijeme kod kuće zaista mi je pomoglo da se više nego obično fokusiram (opsednem?) Na male detalje ovog projekta, a to je definitivno učinilo čistiji završetak i manje iznenađenja u vrijeme sastavljanja - kao i što mi je pomoglo da održim mentalno zdravlje ravno i usko. Prvotni plan senzora bio je nešto sasvim drugo, pa sam jako zadovoljan krajnjim rezultatom, sporom i zadovoljavajućom konstrukcijom.
Apollo Pi odlično izgleda i na polici projekta i definitivno je zabavan i koristan alat koji možete imati oko sebe, ne možemo prestati ukazivati na stvari! U idealnom svijetu to bi bilo nešto veće rezolucije, a ja moram pronaći neki način da "prelistam" ekran jer je trenutno preslikan, ali to su male sitnice.
Hvala svima na čitanju i čuvajte se svima.
Moji drugi projekti Old Tech, New Spec svi su na Instructables na
Više detalja je na web stranici na https://bit.ly/OldTechNewSpec. i ja sam na Twitteru @OldTechNewSpec.
Preporučuje se:
Ekonomična termalna kamera: 10 koraka
Ekonomična termalna kamera: Razvio sam uređaj koji se može pričvrstiti na bespilotnu letjelicu i može uživo prenositi mješoviti okvir napravljen od termografske slike koja prikazuje toplinsko zračenje i redovnu fotografiju s vidljivim svjetlom. Platforma se sastoji od male jednokrevetne ko
M5Stack IC termalna kamera pomoću senzora za snimanje infracrvenog niza AMG8833: 3 koraka
M5Stack IC termalna kamera koja koristi senzor za snimanje infracrvenog niza AMG8833: Kao i mnogi, fascinirali su me termalni fotoaparati, ali oni su uvijek bili izvan mog raspona cijena - do sada !! Dok sam pregledavao web stranicu Hackaday naišao sam na ovu kameru napravljenu pomoću M5Stack ESP32 modul i relativno jeftin
Termalna kamera AMG8833 (Raspberry Pi): 4 koraka
Termalna kamera AMG8833 (Raspberry Pi): Osnovni vodič o postavljanju IC kamere (AMG833) s Raspberry Pi
IR termalna kamera: 16 koraka
IR termalna kamera: Jeste li ikada gledali znanstvenofantastični ili akcijski film, gdje se likovi useljavaju u mračnu prostoriju i uključuju svoj “ termalni vid ”? Ili ste ikada igrali Metroid Prime i sjećate li se termalnog vizira koji je glavni lik dobio? Pa
Poboljšana termalna kamera PiEyeR: 8 koraka (sa slikama)
PiEyeR poboljšana termalna kamera: Pregled Adapruit AMG8833 IR termalna kamera ploča može pružiti daleko-infracrvenu kameru za snimanje sličnu "FLIR" trgovini koja je približno 1/10 cijene prethodnih jedinica za daljinsko infracrveno snimanje. Naravno, rezolucija i osjetljivost nisu tako visoke