Talaan ng mga Nilalaman:

1979 Apollo Pi Thermal Camera: 10 Hakbang (na may Mga Larawan)
1979 Apollo Pi Thermal Camera: 10 Hakbang (na may Mga Larawan)

Video: 1979 Apollo Pi Thermal Camera: 10 Hakbang (na may Mga Larawan)

Video: 1979 Apollo Pi Thermal Camera: 10 Hakbang (na may Mga Larawan)
Video: Book 10 - The Hunchback of Notre Dame Audiobook by Victor Hugo (Chs 1-7) 2024, Disyembre
Anonim
Image
Image
1979 Apollo Pi Thermal Camera
1979 Apollo Pi Thermal Camera
1979 Apollo Pi Thermal Camera
1979 Apollo Pi Thermal Camera

Ang vintage Apollo microwave detector na ito ay mayroon na ngayong isang makintab na bagong layunin bilang isang thermal camera, pinalakas ng isang Raspberry Pi Zero na may sensor ng Adafruit thermal camera na kumukuha ng temperatura, ipinapakita ang mga resulta sa real-time sa isang maliwanag na display na TFT na 1.3.

Mayroon itong isang Preset at isang Dynamic mode - sa una ang mga kulay na ipinapakita sa screen ay batay sa mga hard-code na mga threshold ng temperatura, at sa pangalawa ang hanay ng kulay ay maaaring ayusin gamit ang mga slider ng temperatura sa isang dashboard ng Adafruit.io. Agad din na dashboard ipinapakita ang anumang mga snapshot na na-upload ng aparato, na nakunan gamit ang orihinal na pindutan ng hinlalaki sa mahigpit na pagkakahawak.

Ang buong sistema ay pinapatakbo ng isang manipis, silindro na USB baterya pack na nakatago sa mahigpit na pagkakahawak ng kamay, na maaaring madaling muling ma-recharge sa pamamagitan ng pag-pop off sa kono ng ilong at pag-plug sa isang USB lead.

Tatlong mga script ng Python lamang ang nagkokontrol sa menu na lohika, sensor at pagsasama ng Adafruit.io, kasama ang display na hinawakan ng PyGame.

Ang pagtatrabaho sa proyektong ito ay talagang nakatulong sa akin na positibo sa panahon ng lockdown, at sa sobrang oras sa aming mga kamay ang mga bata at nakita ko ang maraming mga kagiliw-giliw na bagay sa paligid ng bahay upang ituro ito!

Tingnan ang Apollo Pi sa pagkilos sa video sa YouTube, kung sakaling hindi mo makita ang naka-embed na bersyon sa itaas ay nasa

Mga gamit

Apollo Micartz Monitor

Raspberry Pi Zero W

Adafruit AMG8833 Thermal Camera Breakout

Adafruit Mini PiTFT 1.3 Screen

Mga Jumper Cables

3v Vibrating Disc

USB power bank

Hakbang 1: Luha

Luha
Luha
Luha
Luha
Luha
Luha

Kinuha ko ang Apollo Monitor sa isang pangalawang pagbebenta noong nakaraang tag-init, para sa natatanging hitsura nito kaysa sa anupaman - na kung saan ay tiyak na nakikita nito ang mas mahusay na mga araw! Ang mga circuit sa loob ay hindi kumpleto at ang buong bagay ay natakpan ng gulo ng pandikit, isang pagsubok sa kasaysayan na ayusin ito.

Ito ay orihinal na ginamit upang suriin ang pagkakaroon ng radiation ng Microwave, marahil sa ilang uri ng pang-industriya na setting na ibinigay ang disenyo nito at ang pambihira ng mga oven ng microwave sa oras na iyon, kahit na hindi ko malalaman ang tungkol dito. Isang bagay na alam ko, gagawin nito ang perpektong tahanan para sa isang thermal camera.

Sa sandaling lumabas ako ng korteng "ilong" ang natitirang bahagi nito ay literal na nahulog, at ang nakadikit-sa analogue meter at parihabang pindutan ay madaling tinanggal. Iningatan ko ang pindutan kahit na, ito ay perpektong pagganap at isang talagang kakaibang hugis, kaya't nagsumikap akong magkasya sa isang kapalit sa parehong butas.

Hakbang 2: Mga kable

Kable
Kable
Kable
Kable

Bago gupitin ang kaso upang gawing magkasya ang lahat una kong nais na tiyakin na alam ko kung paano magkakasama ang mga bahagi, kaya't itinakda ko ang paglalagay ng kable sa sensor at screen. Ang sensor mismo ay mabuti, apat na mga jumper cable lamang ang kinakailangan upang ikonekta ito hanggang sa Raspberry Pi.

Ang screen ay medyo mas kumplikado, ipinakita ng diagram ng pinout na kailangan kong ikonekta ang 13 na mga jumper wires - malinaw naman na idinisenyo ito upang umupo nang direkta sa tuktok ng isang Pi kaya't ako lang ang may kasalanan talaga. Napagpasyahan kong idagdag sa isang piraso ng babaeng header sa pagitan ng screen at ng mga koneksyon sa Pi, upang maalis ko ang screen at madali itong ikonekta. Ito ay isang mahusay na ideya, at sinunod ko ang diagram ng pinout nang maingat upang ma-wire ang header sa Pi.

Susunod ay naghinang ako ng ilang mga sariwang jumper cable sa orihinal na pindutan, upang maikonekta ito sa GPIO at magamit upang makuha ang mga thermal snapshot ng imahe. Panghuli ay naghinang ako ng isang maliit na vibrating disc nang direkta sa mga pin ng GPIO, upang magbigay ng ilang feedback na haptic sa mga pagpindot sa pindutan.

Hakbang 3: Mga Mode ng Kaso

Mga Kaso ng Mod
Mga Kaso ng Mod
Mga Kaso ng Mod
Mga Kaso ng Mod

Isa sa mga bagay na binuhay muli ang Apollo Monitor mula sa aking "to do" na kahon ay ang butas ng pagpapakita sa tuktok - ito ang humigit-kumulang sa laki na kailangan ko para sa maliit na screen ng Adafruit. Magaspang. Tumagal ng isang oras o higit pa sa isang file upang mapalawak ang butas sa tamang sukat lamang, ngunit salamat na hindi ko nasira ang kaso sa proseso.

Tinadtad ko rin ang mga bahagi ng loob na orihinal na nagtataglay ng isang baterya ng PP3, at gupitin ang ilang mga bulkhead sa loob ng mahigpit na pagkakahawak upang magkaroon ng puwang para sa baterya pack, gamit ang isang umiinog na tool.

Sa wakas ay nag-drill ako ng ilang malalaking butas upang ang mga kable para sa sensor at singilin ang cable ay maaaring magawa mula sa "ilong" upang sumali sa natitirang mga circuit.

Hakbang 4: Lakas

Lakas
Lakas
Lakas
Lakas
Lakas
Lakas
Lakas
Lakas

Para sa proyektong ito nagpasya ako laban sa paggamit ng isang baterya ng LiPo at adapter / charger, dahil maraming lugar sa kaso. Nagpasya ako sa halip na gumamit ng isang karaniwang USB power bank. Nais kong makakuha ng isang manipis na silindro, upang magkasya sa loob ng hawakan, kaya't hinanap ang pinakamura at pinakamayat na isa na mahahanap ko sa Amazon. Ang dumating, kasama ang cheesy LED torch at istilo ng faux-baterya ang pinakapayat na maaari kong makita, ngunit sa pag-unbox ay natanto ko na ito ay masyadong makapal upang magkasya sa hawakan. Pagkatapos ay napagtanto ko na naghiwalay ito - ang tuktok na unscrewed at ang hubad na baterya sa loob ay nadulas, maayos na nai-save sa akin ang 3mm na kailangan ko upang magkasya ito sa loob ng hawakan, kung ano ang isang resulta!

Sumunod ay kumuha ako ng isang maikling Micro USB cable, hinubaran ang ilan sa pagkakabukod, na-snip ang positibong cable at na-solder sa isang kaibig-ibig na square latching button, upang makontrol ang lakas nang hindi kinakailangang i-unplug ang baterya pack. Ang pindutang ito ay naayos nang maayos sa kung ano ang orihinal na takip ng baterya, at isang malapit na laban para sa orihinal na nasa tuktok ng kaso. Ngayon na alam ko na ang lahat ay magkakasya oras na upang gumana ang lahat!

Hakbang 5: Pag-setup ng Thermal Camera Software

Pag-setup ng Thermal Camera Software
Pag-setup ng Thermal Camera Software

Ang thermal sensor mismo ay isang Adafruit AMG8833IR Thermal Camera Breakout, na gumagamit ng isang 8x8 na hanay ng mga sensor upang likhain ang imahe ng init. Gumagana ito kasama ng Arduino at Raspberry Pi, ngunit ang pinakamalaking bentahe ng paggamit ng isang Pi ay ang software ay maaaring gumamit ng scipy python module upang maisagawa ang bicubic interpolation sa nakuha na data, ginagawa itong isang 32x32 na imahe, maayos!

Ang pagse-set up ng sensor ay medyo prangka, ngunit may ilang mga hoops upang tumalon sa pamamagitan ng, ito ay kung ano ang gumagana para sa akin:

Paganahin ang I2C at SPI sa Raspberry Pi (Pag-configure ng Raspberry Pi> Mga Interface)

I-install ang Blinka CircuitPython library:

pip3 i-install ang adafruit-blinka

Susunod na i-install ang AMG8XX sensor library:

sudo pip3 i-install ang adafruit-circuitpython-amg88xx #

Patayin ang Pi, at ikonekta ang sensor - 4 na mga wire lamang ang nagpapasalamat!

Susunod na i-install ang scipy, pygame at mga module ng kulay:

sudo apt-get install -y python-scipy python-pygamesudo pip3 i-install ang kulay

Sa puntong ito ang aking code ay nagtapon ng isang scipy error, kaya't muling na-install ko ito sa:

Ang Sudo Pip3 ay mag-install ng scipy

Pagkatapos natanggap ko ang error: ImportError: libf77blas.so.3: hindi mabubuksan ang nakabahaging file ng object: Walang ganoong file o direktoryo

Nalutas ito sa pamamagitan ng pag-install:

sudo apt-get install python-dev libatlas-base-dev

Mula noon ang halimbawa ng code ay gumana nang maayos, pinapatakbo ang script mula sa console sa halip na mula kay Thonny:

sudo python3 /home/pi/FeverChill/cam.py

Ginawa itong ipakita ng sensor sa screen sa isang pygame window, at pagkatapos ng ilang mga pag-aayos sa mga threshold ng kulay / temperatura ay na-hypnotize ako ng isang imahe ng init ng aking mukha.

Hakbang 6: Pag-set up ng LCD Screen Software

Pag-set up ng LCD Screen Software
Pag-set up ng LCD Screen Software
Pag-set up ng LCD Screen Software
Pag-set up ng LCD Screen Software

Talagang napakahusay na gumana ang sensor, ngunit kailangan ko itong ipakita sa maliit na screen. Ang ginamit kong screen ay isang Adafruit Mini PiTFT 1.3 240x240 - pangunahin dahil ang resolusyon at hugis nito ay tama para sa thermal camera, ito rin ang tamang sukat upang magkasya sa kaso at inalok ang dalawang mga pindutang nakakonekta sa GPIO na kailangan ko.

Ang mga tagubilin ng Adafruit ay nag-aalok ng dalawang mga pagpipilian dito: isang Madali at isang Hard paraan - pagkatapos ng pag-eksperimento napagtanto kong kailangan kong gamitin ang Hard way, dahil ang sensor ay nangangailangan ng direktang pag-access sa framebuffer. Kasunod sa mga sunud-sunod na tagubilin ayos lang ako hanggang sa maabot ko ang katanungang "Nais mo bang lumitaw ang console" - Una kong pinili Hindi, ngunit dapat ay sinabi kong Oo. Ito ay isang bit ng sakit dahil nangangahulugan ito na kailangan kong gawin ulit ang proseso, ngunit alam ko na sa sandaling ang Pi ay nakatakda upang ipakita ang console sa TFT hindi na nito ipapakita ang desktop sa pamamagitan ng HDMI (hindi bababa sa iyon ang aking karanasan).

Gayunpaman, sa sandaling nakumpleto ang pag-set up, sa pag-reboot ng maliit na screen ay ipinapakita ang isang maliit na bersyon ng karaniwang proseso ng pagsisimula ng Pi, at nang patakbuhin ko ang halimbawa ng thermal camera script ang pygame window ay ipinakita ang imahe ng init sa maliit na screen - napaka-kasiya-siya!

Hakbang 7: Mga Pagbabago ng Code

Mga Code Tweaks
Mga Code Tweaks
Mga Code Tweaks
Mga Code Tweaks

Ang sample code ay gumana nang maayos, ngunit nais kong gawin ito ng kaunti pa, kaya't itinakda ang tungkol sa pag-aayos ng mga script sa aking gusto. Nagsimula ako sa pamamagitan ng paglikha ng isang script ng Menu na mai-load sa pagsisimula at mahusay na paggamit ng dalawang mga pindutan na isinama sa display board.

menu.py

Una nakita ko ang ilang Python sa online na magpapakita ng isang magandang epekto sa animated na menu sa maliit na screen, gamit ang PyGame. Ang kagandahan ng script na ito ay na-animate nito ang lahat ng mga imahe sa isang itinakdang folder, kaya madali itong baguhin ang animasyon sa isang susunod na yugto (halimbawa upang maitugma ang mga kulay ng animasyon sa kaso). Itinakda ko ang menu script upang ang pagpindot sa alinman sa mga pindutan ay titigil sa animasyon at buksan ang alinman sa fever.py o chill.py, ang mga script upang ipakita ang pagpapakita ng sensor. Sa pagtatrabaho na ito itinakda ko ang script upang tumakbo sa pagsisimula - karaniwang ginagawa ko ito sa pamamagitan ng pag-edit / etc / xdg / lxsession / LXDE-pi / autostart, ngunit dahil ang pamamaraang ito ay umaasa sa pag-load sa Desktop kailangan ko ng ibang pagpipilian sa oras na ito.

Kaya unang na-edit ko ang rc.local file…

sudo nano /etc/rc.local

… Pagkatapos ay idinagdag sa sumusunod sa itaas lamang ng linya ng Exit …

sudo /home/pi/FeverChill/menu.py &

… Na unang natiyak na ang menu.py script ay may mga sumusunod sa tuktok…

#! / usr / bin / env python3

… At pagkatapos din magtakda ng menu.py bilang isang maipapatupad na script sa pamamagitan ng pagta-type:

chmod + x /home/pi/FeverChill/menu.py

papasok sa terminal.

fever.py (Preset)

Para sa Preset na script Una kong itinakda ang kulay / mga threshold ng temperatura, itinatakda ang mas mababang isa (asul) hanggang 16 at ang itaas (pula) hanggang 37.8. Ipapakita pa rin sa teoretikal na ito ang mukha ng isang tao na berde, ngunit mamula-pula ang pula kung ang temperatura ay nasa o higit sa 37.8 degree. Mayroong maraming pagsasaliksik sa online tungkol sa pag-sample ng temperatura ng katawan sa pamamagitan ng iba't ibang mga pamamaraan, ngunit sa pagkakaiba-iba ng sensor na +/- 2.5 degree napagpasyahan kong manatili lamang sa pinaka-tinatanggap na saklaw ng "lagnat" - sapat itong madaling mabago sa pamamagitan ng ssh sa ibang araw.

Susunod na itinakda ko ang dalawang mga pindutan ng screen upang isara ang kasalukuyang script at buksan ang menu.py. Nais ko ring maghanap ng isang paraan upang makuha at ma-export ang imahe ng camera, at natagpuan ang tamang utos ng PyGame

pygame.image.save (lcd, "thermal.jpg")

Itinakda ko ito upang tumakbo nang ang pindutang "hinlalaki" ay pinindot - ang orihinal na ginamit mo upang kumuha ng pagbabasa ng microwave. Pinangangalagaan ang pagkuha ng imahe, kasunod ay idinagdag ko sa ilang linya ng Python upang ang imahe ay mai-upload kaagad sa isang dashboard ng Adafruit IO kapag nakuha, upang makita ito sa iba pang mga aparato at madaling mai-download. Sa isang mabilis na "i-save bilang" na ang script ng Preset ay nakumpleto.

chill.py (Dynamic)

Mayroong higit pa sa isang thermal camera kaysa sa paghahanap para sa mga tiyak na temperatura, at nais kong maging kakayahang umangkop ang Dynamic script, upang ang pang-itaas at mas mababang mga threshold ng kulay ay madaling maiakma. Hindi ko nais na magdagdag ng mga karagdagang pindutan sa aparato at gawing kumplikado ang pag-navigate, kaya't nagpasyang gumamit ng mga slider sa isang dashboard ng Adafruit.io.

Mayroon na akong dami ng code ng Adafruit sa script na Preset, kaya kailangang idagdag sa ilang mga karagdagang linya, upang ang kasalukuyang mga halaga ng slider mula sa dashboard ay makuha sa paglulunsad at itatakda bilang mga default na display.

Ang ginamit kong code ay magagamit sa GitHub, upang magamit muli ito kailangan mo lamang i-download ang folder ng FeverChill sa / pi / folder sa iyong Pi at ipasok ang iyong mga kredensyal ng Adafruit.io at feed name sa mga script, sa sandaling ang iyong display at naka-set up ang sensor

Sa mga script na gumagana nang maayos oras na upang lumipat sa isang bagay na mas magulo!

Hakbang 8: Pagtatapos ng Mga Touch-Up

Tinatapos ang Mga Touch-Up
Tinatapos ang Mga Touch-Up
Tinatapos ang Mga Touch-Up
Tinatapos ang Mga Touch-Up
Tinatapos ang Mga Touch-Up
Tinatapos ang Mga Touch-Up

Orihinal na ang proyektong ito ay sinadya upang maging isang mabilis na paggambala mula sa paggamit ng thermal sensor para sa iba pa, ngunit sa mga kasalukuyang kaganapan nahanap ko ang aking sarili na lalong nahuhugot dito, at ang maliliit na dagdag na mga detalye na maiuunat ito at gawin itong isang hamon.

Ang kaso ng Apollo Monitor ay medyo maganda upang gumana, madaling i-cut at buhangin, ngunit upang tapusin ito ng mabuti nais kong i-tuck ang ilan sa mga nakikitang circuit board sa likod ng pininturahang "mask". Ito ay tumagal ng edad, inukit ang mga ito mula sa mga piraso ng basurang plastik sa pamamagitan ng kamay, ngunit ito ay kasiya-siyang trabaho. Una gumawa ako ng isang maliit na magtatakip sa screen board ngunit iwanang nakikita ang mga microswitch. Susunod na ginawa ko ang isa para sa thermal sensor, upang hindi mo makita ang mga hubad na electronics kung tiningnan mo ang "katapusan ng negosyo".

Nagpasya ako sa scheme ng kulay ng ilang araw bago ang UK ay pumasok sa lockdown, at pinalad na makita ang mga kulay na gusto ko sa kalapit na tindahan ng hardware. Tulad ng paghati ng kaso nang napakaganda sa kalahati, isang pakay ng kulay ng dalawang tono ang iminungkahi, at pagkatapos ay pinahaba ko ito sa "ilong na kono" at takip ng sensor. Ang pagpipinta ay napakasaya, ang unang mainit na araw ng taon, kahit na nangangahulugan iyon ng pagpipinta habang ang mga wasps sa malaglag ay gumalaw at nagpapaikut-ikot. Hindi pa ako gumagamit ng masking tape na may spray na pintura dati ngunit natutuwa ako sa kung paano lumabas ang mga nagresultang mga piraso ng dalawang tono.

Ang pag-aaral ng mga aralin ng nakaraang pagbuo ay iniwan ko ang mga pininturahang bahagi upang patigasin para sa isang magandang linggo bago subukan ang pagpupulong, at nagsimulang pagsamahin ang video pansamantala.

Hakbang 9: Assembly

Assembly
Assembly
Assembly
Assembly
Assembly
Assembly

Tuwing nagtatrabaho ako sa isang proyekto na gusto kong umakyat sa entablado kung saan ang lahat ay inilalagay na handa na para sa pagpupulong tulad ng isang kagamitang modelo ng kit. Walang mga garantiya na magkakasama ang lahat at ang mga tagubilin ay umiiral lamang sa aking ulo, ngunit ito ang aking paboritong bahagi ng anumang pagbuo.

Ang oras na ito sa paligid nito ay napakahusay - karamihan ay dahil mayroon akong labis na oras na gugulin sa maliliit na detalye at tiyakin na ang lahat ay ganito. Mainit kong nakadikit ang screen sa kaso una sa lahat, pagkatapos ay idinagdag ang pindutang "makuha" - ito lamang ang mga bahagi na nakakonekta sa tuktok ng kaso kaya't ito ay isang madaling madaling pagsisimula.

Susunod ay bahagyang ininit ko ang pack ng baterya sa mahigpit na pagkakahawak, at nilagyan ang Pi ng bracket nito sa kaso. Matapos nito ang sensor ng camera ay maingat na nakadikit sa kono ng ilong, ang switch ng kuryente ay na-screw sa takip ng baterya at ang lahat ay nakakonekta.

Gumamit ako ng mga jumper cables para sa lahat ng mga koneksyon ngunit upang maging maingat lamang na idinikit ko ang mga ito sa lugar, sa kaso ng anumang paggalaw sa huling squish-sama ng dalawang halves. Ito ay lamang na sa katunayan, isang maliit na squish, ngunit walang mga tunog ng pag-crack, kaya't nang magkakasabay ang dalawang halves ay pinagsama ko ang ilong na kono at sinigurado ang bolt sa hawakan - ang dalawang bagay lamang na pinagsama ang buong pagpupulong..

Hindi ito gumana sa unang pagkakataon, nagawa kong idiskonekta ang screen sa panahon ng unang squishathon, ngunit may ilang madiskarteng cable bends natapos ang lahat nang masaya sa pangalawang pagkakataon. Oras upang ituro ito sa mga bagay!

Hakbang 10: Mga Oras ng Pagsubok ng Temperatura

Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura
Mga Oras ng Pagsubok ng Temperatura

Ang pagkakaroon ng labis na oras sa bahay ay talagang nakatulong sa akin na ituon ang (obsess?) Higit sa karaniwan sa mga maliliit na detalye ng proyektong ito, at tiyak na ginawa para sa isang mas malinis na pagtatapos at mas kaunting mga sorpresa sa oras ng pagpupulong - pati na rin ang pagtulong na mapanatili ang aking kagalingang pangkaisipan ang tuwid at makitid. Ang orihinal na plano para sa sensor ay isang bagay na ganap na naiiba, kaya't labis akong nasiyahan sa huling resulta, isang mabagal at kasiya-siyang pagbuo.

Ang Apollo Pi ay mukhang mahusay din sa istante ng proyekto at tiyak na isang masaya at kapaki-pakinabang na tool na mayroon, hindi namin mapigilan ang pagturo nito sa mga bagay-bagay! Sa isang mainam na mundo magiging bahagyang mas mataas ang resolusyon, at kailangan kong makahanap ng ilang paraan ng "pag-flip" ng display habang ito ay nasasalamin sa ngayon, ngunit ang mga ito ay maliit na niggles.

Salamat sa pagbabasa at manatiling ligtas sa lahat.

Ang aking iba pang mga proyekto ng Old Tech, New Spec ay nasa Instructable lamang sa

Ang higit pang mga detalye ay nasa website sa https://bit.ly/OldTechNewSpec. at nasa Twitter ako @OldTechNewSpec.

Inirerekumendang: