Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47
Ovaj starinski Apollo mikrotalasni detektor sada ima novu sjajnu namjenu kao termalna kamera, pokreće ga Raspberry Pi Zero s Adafruit senzorom toplinske kamere koji mjeri temperature, prikazujući rezultate u stvarnom vremenu na svijetlom 1,3 TFT zaslonu.
Ima unaprijed postavljeni i dinamički način rada - u prvom se boje prikazane na zaslonu temelje na tvrdo kodiranim temperaturnim pragovima, a u drugom se raspon boja može prilagoditi 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 izvornog gumba palca na ručki.
Cijeli sustav pokreće tanka, cilindrična USB baterija skrivena u rukohvatu, koja se može lako napuniti iskakanjem iz konusa nosa i priključivanjem USB kabela.
Samo tri Python skripte kontroliraju logiku izbornika, senzor i integraciju Adafruit.io, a zaslonom upravlja PyGame.
Rad na ovom projektu zaista mi je pomogao da ostanem pozitivna tijekom zaključavanja, a s dodatnim vremenom koje smo imali na raspolaganju djeca i ja smo po kući pronašli mnogo zanimljivih stvari na koje možemo ukazati!
Pogledajte Apollo Pi na djelu u videu YouTubea, u slučaju da ne možete vidjeti ugrađenu verziju iznad, nalazi se na
Pribor
Apollo monitor za mikrovalnu pećnicu
Malina Pi Zero W
Adafruit AMG8833 prekidač toplinske kamere
Adafruit Mini PiTFT 1,3 ekran
Kratki kabeli
3v vibracijski disk
USB banka za napajanje
Korak 1: Rušenje
Prošlog ljeta sam na rabljenoj prodaji uzeo Apollo Monitor zbog njegovog jedinstvenog izgleda, a ne bilo čega drugog - što je jednako dobro kao što su definitivno bili i bolji dani! Unutrašnji krugovi bili su nepotpuni i cijela je stvar bila prekrivena neredom ljepila, što je bio povijesni pokušaj popravljanja.
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 nisam mogao saznati mnogo više o tome. Jedno sam znao, to bi bio idealan dom za termalnu kameru.
Čim sam iskočio iz stožastog "nosa", ostatak se doslovno raspao, a zalijepljeni analogni mjerač i pravokutni gumb lako su se uklonili. Zadržao sam gumb, bio je savršeno funkcionalan i stvarno č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 htio uvjeriti da znam kako će dijelovi ići zajedno, pa sam se odlučio spojiti senzor i zaslon na kabele. Sam senzor je bio u redu, bila su mu potrebna samo četiri kratkospojna kabela za povezivanje s Raspberry Pi.
Zaslon je bio malo kompliciraniji, dijagram iscrtavanja pokazao je da bih trebao spojiti 13 kratkospojnih žica - očito je dizajniran tako da sjedi izravno na vrhu Pi pa sam za to zaista morao biti kriv. Odlučio sam dodati dio ženskog zaglavlja između zaslona i Pi veza kako bih mogao skinuti zaslon i jednostavno ga povezati. Ovo je bila izvrsna ideja i vrlo sam pažljivo slijedio dijagram iscrtavanja kako bih zaglavlje spojio na Pi.
Zatim sam lemio svježe kratkospojne kabele na izvorni gumb kako bi se mogao spojiti na GPIO i koristiti za snimanje toplinskih snimaka. Na kraju sam lemio mali vibrirajući disk izravno na GPIO pinove, kako bih pritisnuo tipke dajući neke haptičke povratne informacije.
Korak 3: Modovi kućišta
Jedna od stvari koja je oživjela Apollo Monitor iz moje kutije za obaviti rad bila je rupa za prikaz na vrhu - to je otprilike bila veličina koja mi je bila potrebna za mali zaslon Adafruit. Grubo. Bilo je potrebno otprilike sat vremena s datotekom da se rupa proširi na pravu veličinu, ali srećom nisam uspio uništiti slučaj.
Također sam odrezao dijelove unutrašnjosti koji su izvorno držali 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. 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 otpakirao, 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 zalemio ga u lijepi četvrtasti gumb sa zasunom, tako da se napajanje moglo kontrolirati bez isključivanja baterije. Ovaj se gumb lijepo uklopio u ono što je izvorno bio poklopac baterije, i bio 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 toplinske slike. Radi s Arduinom i Raspberry Pi -em, 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, pa izgleda kao slika veličine 32x32, uredno!
Postavljanje senzora prilično je jednostavno, ali postoje neki obruči za preskočiti, ovo mi je uspjelo:
Omogućite I2C i SPI na Raspberry Pi (konfiguracija Raspberry Pi> Sučelja)
Instalirajte knjižnicu Blinka CircuitPython:
pip3 instalirajte adafruit-blinka
Zatim instalirajte biblioteku senzora AMG8XX:
sudo pip3 instalirajte adafruit-circuitpython-amg88xx#
Isključite Pi i spojite 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 instalacijska boja
U ovom trenutku moj kôd je izazvao scipy grešku, pa sam ga ponovo instalirao sa:
Sudo Pip3 instalirajte scipy
Tada sam primio pogreš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 zaslon
Bilo je jako dobro pokrenuti senzor, ali sada sam morao imati prikazan na malom ekranu. Zaslon koji sam koristio je Adafruit Mini PiTFT 1,3 240x240 - uglavnom zato što su njegova razlučivost i oblik bili taman za termalnu kameru, također je bio odgovarajuće veličine da stane u kućište i nudio je dvije potrebne tipke povezane s GPIO.
Upute za Adafruit ovdje su nudile dvije mogućnosti: jednostavan i težak način - nakon eksperimentiranja shvatio sam da moram koristiti tvrdi način, jer je senzor zahtijevao izravan pristup u međuspremnik okvira. 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 me osvijestilo 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 bilo moje iskustvo).
Ipak, nakon što je postavljanje dovršeno, pri ponovnom pokretanju maleni zaslon prikazao je minijaturnu verziju uobičajenog procesa pokretanja Pi -a, a kad sam pokrenuo primjer skripte termalne kamere, prozor pygame je prikazao toplinsku sliku 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 lotim dotjerivanja skripti po svom ukusu. Počeo sam stvaranjem skripte izbornika 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 internetu koji bi prikazao lijep animirani efekt izbornika na malom ekranu, koristeći PyGame. Ljepota ove skripte je u tome što animira sve slike u postavljenoj mapi, pa bi bilo lakše kasnije promijeniti animaciju (na primjer, prilagoditi boje animacije kućištu). Postavio sam skriptu izbornika tako da pritiskom na bilo koji od gumba zaustavi animaciju i otvori ili fever.py ili chill.py, skripte za prikaz zaslona senzora. Ovim radom postavio sam skriptu za pokretanje 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 &
… nakon što smo se uvjerili da skripta menu.py ima sljedeće na samom vrhu …
#!/usr/bin/env python3
… a također 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 još uvijek prikazalo lice osobe u zelenoj boji, ali bi zasvijetlilo crveno ako je temperatura bila na ili iznad 37,8 stupnjeva. Na internetu postoji mnogo istraživanja o uzorkovanju tjelesne temperature različitim metodama, ali s obzirom da je varijansa senzora +/- 2,5 stupnjeva, odlučio sam se držati najšire prihvaćenog raspona "groznice" - to je dovoljno jednostavno promijeniti putem ssh na kasniji datum.
Zatim namještam dvije tipke na ekranu da zatvore trenutnu skriptu i otvore menu.py. Također sam htio pronaći način za snimanje i izvoz slike kamere, a nakon što sam pronašao pravu naredbu PyGame
pygame.image.save (lcd, "thermo.jpg")
Postavio sam da se ovo pokreće kada je pritisnuta tipka "palac" - ona koju ste prvobitno koristili za očitanje u mikrovalnoj pećnici. To se pobrinulo za snimanje slike, zatim sam dodao neke retke Pythona kako bi se slika odmah prenijela na Adafruit IO nadzornu ploču nakon snimanja, tako da se može pregledati na drugim uređajima i jednostavno preuzeti. Brzim "spremi kao" gotova je skripta dovršena.
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 gumbe na uređaj i komplicirati navigaciju, pa sam odlučio koristiti klizače na nadzornoj ploči Adafruit.io.
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 upotrijebio dostupan je na GitHubu, da biste ga ponovno upotrijebili, samo trebate preuzeti mapu FeverChill u / pi / mapu na vašem Pi i unijeti svoje vjerodajnice i nazive feedova Adafruit.io u skripte, nakon što se zaslon & senzori su postavljeni.
S obzirom da su skripte dobro radile, došlo je vrijeme da prijeđemo na nešto neurednije!
Korak 8: Završni rad na dodirima
U početku je ovaj projekt trebao brzo odvratiti pozornost od korištenja toplinskog 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, bilo ga je lako rezati i brusiti, ali da bih ga lijepo dokrajčio, htio sam neke od vidljivih ploča ugurati iza oslikanih "maski". To je trajalo, ručno ih je izrezivalo iz 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 zatvaranja UK -a, a imao sam sreću pronaći boje koje sam želio pronaći u obližnjoj trgovini hardvera. Kako se kućište tako lijepo podijelilo na polovice, predložena je dvobojna shema boja, a zatim sam to proširio na "konus nosa" i poklopac senzora. Slikanje je bilo jako zabavno, prvi topli dan u godini, iako je to značilo slikati dok su se ose u šupi miješale i mljele. Nisam prije koristio ljepljivu traku s bojom u spreju, ali zaista sam zadovoljan kako su nastali dvobojni komadi ispali.
Učeći lekcije iz prethodnih gradnji, ostavio sam obojene dijelove da se stvrdnu dobrih tjedan dana 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 samostalno izrađenog modela. Nema jamstava da će se sve uklopiti i upute postoje samo u mojoj glavi, ali to mi je najdraži dio bilo koje gradnje.
Ovaj put je sve prošlo vrlo glatko - uglavnom zato što sam imala dodatno vrijeme potrošiti na male detalje i pobrinuti se da sve bude baš tako. Zaslon sam prije svega vruće zalijepio u kućište, a zatim dodao gumb "snimanje" - to su bili jedini dijelovi spojeni na vrh 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 s nosačem u kućište. Nakon toga je senzor kamere pažljivo zalijepljen u konus nosa, prekidač za napajanje je pričvršćen na 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 dviju polovica. Samo je to zapravo bilo pomalo zgužvano, ali bez zvukova pucketanja, 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 uspjelo prvi put, uspio sam odspojiti zaslon tijekom prvog squishathona, ali s nekoliko strateških zavoja kabela sve je 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 usredotočim (opsjednem?) 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 mentalnu dobrobit ravno i usko. Prvotni plan senzora bio je nešto sasvim drugo, pa sam jako zadovoljan konačnim rezultatom, sporom i zadovoljavajućom gradnjom.
Apollo Pi izgleda sjajno i na polici projekta i definitivno je zabavan i koristan alat koji možete imati oko sebe, ne možemo ga prestati usmjeravati na stvari! U idealnom svijetu to bi bilo nešto veće razlučivosti, a ja moram pronaći neki način da "preokrenem" zaslon kako se trenutno zrcali, 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 nalazi se na web stranici na adresi https://bit.ly/OldTechNewSpec. a ja sam na Twitteru @OldTechNewSpec.
Preporučeni:
Isplativa termalna kamera: 10 koraka
Isplativa 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 redovito fotografiranje s vidljivom svjetlošću. Platforma se sastoji od malog jednokrilnog co
Merlin Pi kamera visoke kvalitete iz 1979.: 7 koraka (sa slikama)
1979 Merlin Pi kamera visoke kvalitete: Ova pokvarena stara Merlin ručna igra sada je taktilna, praktična futrola za Raspberry Pi kameru visoke kvalitete. Izmjenjivi objektiv kamere izviruje iz poklopca baterije na stražnjoj strani, a na prednjoj strani matrica gumba je ponovljena
IR termalna kamera M5Stack koja koristi senzor za snimanje infracrvenog niza AMG8833: 3 koraka
IR termalna kamera M5Stack koja koristi senzor za snimanje infracrvenog niza AMG8833: Kao i mnogi, fascinirali su me termalni fotoaparati, ali oni su uvijek bili izvan mog cjenovnog raspona - do sada !! Dok sam pregledavao web stranicu Hackaday naišao sam na ovu kameru napravljenu pomoću M5Stack ESP32 modul i relativno jeftin
IR termalna kamera: 16 koraka
IR termalna kamera: Jeste li ikada gledali znanstvenofantastični ili akcijski film u kojem 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)
Poboljšana termalna kamera PiEyeR: Pregled Adapruit AMG8833 IR termalna kamera ploča može pružiti daleko-infracrvenu kameru sličnu "FLIR" trgovini koja je približno 1/10 cijene prethodnih jedinica za daljinsko infracrveno snimanje. Naravno, razlučivost i osjetljivost nisu tako hi