Мазмұны:

1979 жыл Apollo Pi жылу камерасы: 10 қадам (суреттермен)
1979 жыл Apollo Pi жылу камерасы: 10 қадам (суреттермен)

Бейне: 1979 жыл Apollo Pi жылу камерасы: 10 қадам (суреттермен)

Бейне: 1979 жыл Apollo Pi жылу камерасы: 10 қадам (суреттермен)
Бейне: Д/ф «Алма-Ата» (реж. В.Татенко), 1979 г. 2024, Шілде
Anonim
Image
Image
1979 ж. Аполлон Пи жылу камерасы
1979 ж. Аполлон Пи жылу камерасы
1979 ж. Аполлон Пи жылу камерасы
1979 ж. Аполлон Пи жылу камерасы

Винтажды Apollo микротолқынды детекторы енді Raspberry Pi Zero температурасымен Adafruit термокамерасының сенсорымен жұмыс істейтін термиялық камера ретінде жарқыраған жаңа мақсатқа ие, нәтижелерді нақты 1.3 «TFT дисплейінде көрсетеді.

Алдын ала орнатылған және динамикалық режимі бар - біріншісінде экранда көрсетілген түстер қатаң кодталған температуралық шектерге негізделген, ал екіншісінде түс ауқымын Adafruit.io бақылау тақтасындағы температура сырғытпалары арқылы реттеуге болады. құрылғы жүктеген кез келген суреттерді көрсетеді, олар тұтқаның бас бармағының көмегімен түсіріледі.

Бүкіл жүйе жұқа, цилиндрлік USB батареялар жиынтығымен жұмыс істейді, оны мұрын конусын шығарып, USB сымын қосу арқылы оңай зарядтауға болады.

PyGon сценарийлері меню логикасын, сенсорды және Adafruit.io интеграциясын басқарады, дисплейде PyGame жұмыс істейді.

Бұл жобада жұмыс істеу мені құлыптау кезінде позитивті ұстауға көмектесті, ал қосымша уақытты балалар мен үйден көптеген қызықты нәрселерді таптым!

YouTube бейнесіндегі Apollo Pi әрекетін қараңыз, егер сіз оның жоғарыдағы ендірілген нұсқасын көре алмасаңыз,

Жабдықтар

Аполлон микротолқынды мониторы

Raspberry Pi Zero W

Adafruit AMG8833 жылу камерасының үзілуі

Adafruit Mini PiTFT 1.3 дюймдік экран

Өтпелі кабельдер

3в дірілдейтін диск

USB қуат банкі

1 -қадам: бұзылу

Жұлып алу
Жұлып алу
Жұлып алу
Жұлып алу
Жұлып алу
Жұлып алу

Мен өткен жазда Apollo мониторын екінші сатылымда алдым, ол басқалардан гөрі ерекше келбеті үшін - бұл жақсы күндерді көргендей жақсы! Ішіндегі схемалар толық емес болды және бәрі желіммен жабылды, оны жөндеудің тарихи әрекеті.

Ол бастапқыда микротолқынды радиацияның болуын тексеру үшін қолданылған болар, мүмкін оның дизайны мен микротолқынды пештердің сирек кездесетінін ескере отырып, қандай да бір өндірістік жағдайда. Мен білетін бір нәрсе, бұл жылу камерасы үшін тамаша үй болады.

Мен конус тәрізді «мұрынды» жұлып алғаннан кейін, оның қалған бөлігі шынымен құлап кетті, ал аналогты өлшеуіш пен тікбұрышты түймені жабыстыру оңай алынып тасталды. Мен түймені сақтап қалдым, ол өте функционалды және шын мәнінде біртүрлі формада болды, сондықтан мен оны сол тесікке ауыстыруға тырысатын едім.

2 -қадам: Сымдарды жалғау

Сымдар
Сымдар
Сымдар
Сымдар

Корпусты реттеуге кіріспес бұрын, мен алдымен бөлшектердің бір -бірімен қалай үйлесетінін білгім келді, сондықтан сенсор мен экранды қосуды шештім. Сенсордың өзі жақсы болды, оны Raspberry Pi -ге қосу үшін тек төрт өтпелі кабель қажет болды.

Экран сәл күрделірек болды, түйін диаграммасы маған 13 секіргіш сым қосу керек екенін көрсетті - ол тікелей Пидің үстіне отыруға арналған, сондықтан мен өзімді кінәлауым керек еді. Мен экран мен Pi қосылымдарының арасына әйел тақырыбын қосуды шештім, сонда экранды алып тастап, оны оңай қосуға болады. Бұл керемет идея болды, мен тақырыпты Pi -ге жеткізу үшін түйін диаграммасын өте мұқият орындадым.

Содан кейін мен жаңа қосқыш кабельдерді түпнұсқалық түймеге дәнекерледім, сондықтан ол GPIO -ға қосылып, жылулық суреттерді түсіру үшін қолданылды. Ақырында мен кішкене дірілдейтін дискіні түйменің басылуына біршама әсер ету үшін GPIO түйреуіштеріне дәнекерледім.

3 -қадам: Case режимдері

Іс режимдері
Іс режимдері
Іс режимдері
Іс режимдері

Аполлон мониторын менің «істеу» қорабынан қайта тірілткен нәрселердің бірі жоғарғы жағындағы дисплей саңылауы болды - бұл маған кішкентай Adafruit экраны үшін қажет өлшем. Шамамен. Шұңқырды қажетті мөлшерге дейін кеңейту үшін файлмен бір сағатқа жуық уақыт қажет болды, бірақ мен, шүкір, істі бұл процесте жоймадым.

Мен сондай -ақ бастапқыда PP3 батареясы бар ішкі бөліктерді кесіп тастадым және айналмалы құралды қолдана отырып, батарея жинағына орын босату үшін тұтқаның ішіндегі кейбір қалқаларды кесіп алдым.

Ақырында мен сенсор мен зарядтау кабелінің кабельдері «мұрыннан» қалған тізбектерге қосылу үшін бірнеше үлкен тесіктер бұрғыладым.

4 -қадам: қуат

Қуат
Қуат
Қуат
Қуат
Қуат
Қуат
Қуат
Қуат

Бұл жоба үшін мен LiPo аккумуляторы мен адаптер/зарядтағышты пайдаланбауға шешім қабылдадым, себебі корпуста көбірек орын болды. Мен стандартты USB қуат банкісін қолдануды шештім. Мен жұқа цилиндр тәрізді, тұтқаның ішіне сәйкес келетінін алғым келді, сондықтан мен Amazon -да таба алатын ең арзан және жұқа табылды. Светодиодты шамы мен жалған аккумуляторлы сәндеуімен келген адам мен тапқан ең жұқа болды, бірақ оны қораптан шығарғанда оның тұтқаға сыймайтындай қалың екенін түсіндім. Содан кейін мен оның бөлініп кеткенін түсіндім - жоғарғы жағы бұралмаған және жалаңаш аккумулятор сырғып кетті, бұл мені тұтқаға бекітуге қажетті 3мм ұқыпты үнемдеді, нәтиже!

Содан кейін мен қысқа Micro USB кабелін алдым, оқшаулаудың бір бөлігін алып тастадым, оң кабельді алып тастадым және қуатты аккумуляторлық қораптан ажыратпай -ақ басқаруға болатындай етіп төртбұрышты бекіту түймесіне дәнекерледім. Бұл түйме бастапқыда батарея қақпағына жақсы сәйкес келді және корпустың жоғарғы жағындағы түпнұсқаға өте жақсы сәйкес келді. Енді мен бәріне сәйкес келетінін білдім, осының бәрін іске қосу уақыты келді!

5 -қадам: Термиялық камераның бағдарламалық жасақтамасын орнату

Жылу камерасының бағдарламалық жасақтамасын орнату
Жылу камерасының бағдарламалық жасақтамасын орнату

Жылулық сенсордың өзі жылу бейнесін жасау үшін 8х8 датчиктер жиынтығын қолданатын Adafruit AMG8833IR термокамерасының үзілуі болып табылады. Ол Arduino және Raspberry Pi -мен жұмыс істейді, бірақ Pi -ді қолданудың ең үлкен артықшылығы - бұл бағдарламалық қамтамасыз ету скифті питон модулін түсірілген мәліметтерге бикубикалық интерполяцияны орындау үшін қолдана алады, бұл оны 32х32 кескінге ұқыпты етеді!

Сенсорды орнату өте қарапайым, бірақ бірнеше шеңберлер бар, бұл мен үшін жұмыс істеді:

Raspberry Pi -де I2C және SPI қосу (Raspberry Pi конфигурациясы> интерфейстер)

Blinka CircuitPython кітапханасын орнатыңыз:

pip3 adafruit-blinka орнатыңыз

Содан кейін AMG8XX сенсорлық кітапханасын орнатыңыз:

sudo pip3 adafruit-circuitpython-amg88xx# орнатыңыз

Пиді өшіріп, сенсорды қосыңыз - тек 4 сым!

Содан кейін scipy, pygame және color модульдерін орнатыңыз:

sudo apt-get install -y python-scipy python-pygamesudo pip3 орнату түсі

Бұл кезде менің кодым қате жіберді, сондықтан мен оны қайта орнаттым:

Sudo Pip3 scipy орнатыңыз

Содан кейін мен қатені алдым: ImportError: libf77blas.so.3: ортақ нысан файлын аша алмайды: мұндай файл немесе каталог жоқ

Бұл орнату арқылы шешілді:

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

Содан бері мысал коды жақсы жұмыс істеді, сценарийді Тонни емес, консольден іске қосады:

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

Бұл сенсорлық дисплейді экранда пигам ойынында көрсетуге мүмкіндік берді, ал түс/температура шектеріне бірнеше рет түзетулер енгізгеннен кейін менің бетімнің ыстық бейнесі гипнозға айналды.

6 -қадам: СКД экрандық бағдарламалық қамтамасыз етуді орнату

СКД экранды бағдарламалық қамтамасыз етуді орнату
СКД экранды бағдарламалық қамтамасыз етуді орнату
СКД экранды бағдарламалық қамтамасыз етуді орнату
СКД экранды бағдарламалық қамтамасыз етуді орнату

Сенсорды іске қосу өте жақсы болды, бірақ қазір оны кішкене экранда көрсету керек болды. Мен қолданған экран - Adafruit Mini PiTFT 1,3 дюймдік 240x240 - негізінен оның ажыратымдылығы мен формасы термиялық камераға сәйкес келетіндіктен, ол корпусқа сәйкес келетін өлшемде болды және маған GPIO қосылған екі түймені ұсынды.

Adafruit нұсқаулары мұнда екі нұсқаны ұсынды: Оңай және Қиын әдіс - тәжірибеден кейін мен қиын жолды қолдану керектігін түсіндім, себебі сенсор жақтау буферіне тікелей қол жеткізуді қажет етеді. Қадамдық нұсқаулардан кейін мен «консоль пайда болғанын қалайсыз ба?» Деген сұраққа жауап бергенше жақсы болдым - мен бастапқыда Жоқ деп таңдадым, бірақ Иә деп айтуым керек еді. Бұл азап болды, өйткені бұл процесті қайта жасауым керек еді, бірақ бұл маған консольді TFT-де көрсетуге орнатылғаннан кейін жұмыс үстелін HDMI арқылы көрсетпейтінін айтты (кем дегенде) бұл менің тәжірибем болды).

Қалай болғанда да, орнату аяқталғаннан кейін, кішкене экранды қайта жүктегенде, әдеттегі Pi іске қосу процесінің миниатюралық нұсқасы пайда болды, мен мысал ретінде термиялық камераның сценарийін іске қосқанда, pygame терезесі кішкентай экранда қызу бейнесін көрсетті - өте қанағаттанарлық!

7 -қадам: кодты түзету

Code Tweaks
Code Tweaks
Code Tweaks
Code Tweaks

Үлгі коды жақсы жұмыс істеді, бірақ мен оны аздап жасағым келді, сондықтан сценарийлерді менің талғамыма қарай реттеуге кірісіңіз. Мен Меню сценарийін құрудан бастадым, ол жүктеу кезінде жүктеледі және дисплей тақтасына кірістірілген екі түймені жақсы пайдаланады.

menu.py

Біріншіден, мен PyGame көмегімен шағын экранда жақсы анимациялық мәзір әсерін көрсететін интернеттен Python таптым. Бұл сценарийдің ерекшелігі - ол барлық қалталардағы суреттерді жандандырады, сондықтан анимацияны кейінірек өзгерту оңай болар еді (мысалы, анимация түстерін регистрге сәйкестендіру). Мен мәзір сценарийін түймешіктердің біреуін басу анимацияны тоқтатып, сенсордың дисплейін көрсететін сценарийлерді ate.py немесе chill.py ашатын етіп қойдым. Бұл жұмыс кезінде мен сценарийді іске қосуды орнаттым - әдетте мен/etc/xdg/lxsession/LXDE -pi/autostart өңдеу арқылы жасаймын, бірақ бұл әдіс жұмыс үстелі жүктелуіне байланысты маған бұл жолы басқа нұсқа қажет болды.

Мен алдымен rc.local файлын өңдедім …

sudo nano /etc/rc.local

… содан кейін Шығу жолының дәл үстінде келесіге қосылды …

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

… алдымен menu.py сценарийінің жоғарғы жағында келесідей болуын қамтамасыз етті …

#!/usr/bin/env python3

… Сонымен қатар menu.py файлын орындалатын сценарий ретінде орнатқаннан кейін:

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

терминалға.

fever.py (алдын ала орнатылған)

Алдын ала орнатылған сценарий үшін мен алдымен түс / температура шектерін қойдым, төменгісін (көк) 16 -ға, ал жоғарғы (қызыл) 37,8 -ге қойдым. Бұл теориялық түрде адамның беті жасыл түспен көрінеді, бірақ егер температура 37,8 градустан жоғары болса, қызыл түспен жанып тұрады. Дене температурасын әр түрлі әдістермен алу туралы Интернетте көптеген зерттеулер бар, бірақ сенсордың дисперсиясы +/- 2,5 градус болғанда, мен ең кең таралған «қызба» диапазонында болуды шештім - бұл ssh арқылы өзгертуге оңай. кейінірек.

Содан кейін мен экранның екі түймесін ағымдағы сценарийді жауып, menu.py ашатын етіп қойдым. Мен сондай -ақ камераның кескінін түсіру мен экспорттаудың жолын тапқым келді және дұрыс PyGame пәрменін таптым

pygame.image.save (LCD, «termal.jpg»)

Мен мұны «бас бармақ» батырмасы басылған кезде іске қосатынмын - бұл сіз бұрын микротолқынды пешті оқу үшін қолданған болатын. Бұл суретті түсіруге қамқорлық жасады, содан кейін мен суретті Adafruit IO бақылау тақтасына түсіргеннен кейін оны басқа құрылғыларда қарап, оңай жүктеп алу үшін Python -ның кейбір жолдарына қостым. Алдын ала орнатылған сценарий тез «қалай сақталса» аяқталды.

chill.py (Динамикалық)

Белгілі бір температураны іздеуден гөрі термиялық камера бар, мен динамикалық сценарийдің түсінің жоғарғы және төменгі шектерін оңай реттеуге болатындай икемді болғанын қаладым. Мен құрылғыға қосымша түймелер қосуды және шарлауды қиындатқым келмеді, сондықтан Adafruit.io бақылау тақтасында жүгірткілерді пайдалануды таңдадым.

Менде Adafruit кодының негізгі бөлігі алдын ала орнатылған сценарийде болды, сондықтан бақылау тақтасындағы жүгірткінің ағымдағы мәндері іске қосылған кезде шығарылады және дисплейдің әдепкі мәні ретінде орнатылады.

Мен қолданған код GitHub-да бар, оны қайта пайдалану үшін сізге FeverChill қалтасын Pi ішіндегі / pi / қалтасына жүктеп алып, Adafruit.io тіркелгі деректері мен фид атауын сценарийлерге енгізу қажет, дисплейде & сенсор орнатылған.

Сценарийлер жақсы жұмыс істегенде, бір нәрсеге ауысатын кез келді!

8-қадам: Түртуді аяқтау

Түртуді аяқтау
Түртуді аяқтау
Түртуді аяқтау
Түртуді аяқтау
Түртуді аяқтау
Түртуді аяқтау

Бастапқыда бұл жоба жылуды сенсорды басқа нәрсеге пайдаланудан тез алшақтатуға арналған еді, бірақ ағымдағы оқиғаларға байланысты мен оны одан сайын қызықтыра бастадым, әрі оны кеңейтіп, қиындататын қосымша бөлшектер.

Apollo Monitor корпусымен жұмыс істеу өте жақсы болды, оны кесу және тегістеу оңай болды, бірақ оны жақсы аяқтау үшін мен көрінетін схемаларды боялған «маскалардың» артына тығып алғым келді. Бұл қолмен пластмассаның қалдықтарынан оларды жасайтын, бірақ бұл қанағаттандырарлық жұмыс болды. Алдымен мен экран тақтасын жасыратын, бірақ микросхемаларды көрінбейтін кішкене жасадым. Содан кейін мен «сенсорлық ұшты» төмен қарасаң, жалаңаш электрониканы көрмеу үшін жылу сенсорына арналған қондырғы жасадым.

Мен түс схемасын Ұлыбритания құлыптан бір -екі күн бұрын шештім, мен жақын орналасқан аппараттық дүкеннен өзіме қажет түстерді табу бақытына ие болдым. Іс өте жақсы екіге бөлінген кезде екі түсті түс схемасы ұсынылды, содан кейін мен оны «мұрын конусы» мен сенсор қақпағына дейін создым. Кескіндеме өте қызықты болды, жылдың бірінші жылы күні, дегенмен бұл сарайдағы аралар қозғалып, ұсақталып жатқанда бояуды білдірді. Мен бұрын бүріккіш бояумен бояу таспасын қолданған емеспін, бірақ нәтижесінде алынған екі тонды бөліктер қалай шыққанына өте ризамын.

Алдыңғы конструкциялардың сабақтарын біле отырып, мен боялған бөлшектерді монтаждау алдында бір апта бойы қатайту үшін қалдырдым, ал бейнені осы уақытқа дейін жинай бастадым.

9 -қадам: құрастыру

Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея

Мен жобада жұмыс істегенде, мен өз қолыммен жасалған модельдер жиынтығы сияқты құрастыруға дайындалған сахнаға шыққанды ұнатамын. Барлығы бір -біріне сәйкес келетініне ешқандай кепілдік жоқ және нұсқаулар тек менің басымда бар, бірақ бұл кез келген құрылыстың сүйікті бөлігі.

Бұл жолы өте жақсы өтті - көбінесе менде ұсақ -түйектерге уақыт бөлуге және бәрі дәл осылай болғанына көз жеткізу үшін. Мен алдымен экранды корпусқа желіммен жапсырдым, содан кейін «түсіру» түймесін қостым - бұл корпустың жоғарғы жағына жалғанған жалғыз бөлшектер, бұл жақсы бастама болды.

Содан кейін мен аккумуляторлық батареяны ыстықтай желімдеп, корпусына Pi кронштейнін орнаттым. Осыдан кейін камера сенсоры мұрын конусына мұқият жабыстырылды, қуат қосқышы батарея қақпағына бекітілді және бәрі қосылды.

Мен қосылымдардың барлығында қосқыш кабельдерді қолдандым, бірақ өте мұқият болу үшін, мен екі бөліктің соңғы түйісуі кезінде қозғалыс болған жағдайда, оларды ыстық желіммен жапсырдым. Бұл жай ғана сықырлауық болды, бірақ ешқандай дыбыс естілмеді, сондықтан екі жартысы бір -біріне тығыз орналасқаннан кейін мен мұрын конусын итеріп, болтты тұтқадан бекітіп қойдым - бұл бүкіл жинақты біріктіретін жалғыз нәрсе.

Бұл бірінші рет жұмыс істемеді, мен бірінші сквизон кезінде экранды ажыратып алдым, бірақ бірнеше стратегиялық кабельдің иілуімен бәрі екінші рет бақытты аяқталды. Нақты нәрсеге назар аударатын уақыт келді!

10 -қадам: Температураны тексеру уақыты

Температураны тексеру уақыты
Температураны тексеру уақыты
Температураны тексеру уақыты
Температураны тексеру уақыты
Температураны тексеру уақыты
Температураны тексеру уақыты
Температураны тексеру уақыты
Температураны тексеру уақыты

Үйде қосымша уақыттың болуы маған бұл жобаның ұсақ -түйектеріне әдеттегіден көбірек көңіл бөлуге (обсессивтілікке) көмектесті, және бұл, әрине, таза аяқтауға және құрастыру уақытында тосын сыйларды азайтуға, сонымен қатар менің психикалық денсаулығымды сақтауға көмектесті. тікелей және тар. Сенсордың бастапқы жоспары мүлде басқаша болды, сондықтан мен ақырғы нәтижеге, баяу және қанағаттанарлық құрылымға өте ризамын.

Аполлон Пи жоба сөресінде де өте жақсы көрінеді және бұл, әрине, қызықты әрі пайдалы құрал, біз оны заттарға нұсқауды тоқтата алмаймыз! Идеал әлемде бұл ажыратымдылық сәл жоғары болар еді, мен дисплейді «айналдырудың» қандай да бір әдісін табуым керек, ол дәл қазір бейнеленген, бірақ бұл ұсақ -түйек.

Оқығаныңыз үшін рахмет және барлығына қауіпсіз болыңыз.

Менің басқа ескі технологиялар мен жаңа техникалық жобаларымның бәрі Instructables -те

Қосымша мәліметтер https://bit.ly/OldTechNewSpec сайтында орналасқан. мен Twitter -де @OldTechNewSpec.

Ұсынылған: