Мазмуну:
- Жабдуулар
- 1 -кадам: Бузулуу
- 2 -кадам: Кабелдөө
- 3 -кадам: Case Mods
- 4 -кадам: Күч
- 5 -кадам: Жылуулук камерасынын программалык камсыздоосун орнотуу
- 6 -кадам: ЖК экран программалык камсыздоону орнотуу
- 7 -кадам: Code Tweaks
- 8-кадам: Touch-Upsти бүтүрүү
- 9 -кадам: Ассамблея
- 10 -кадам: Температураны текшерүү убактысы
Video: 1979 Аполлон Пи жылуулук камерасы: 10 кадам (Сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:38
Бул винтаждык Apollo микротолкундуу детектору азыр жылтырак камера катары жаңы максаттарга ээ, ал Raspberry Pi Zero менен иштейт, температурасы Adafruit термикалык камера сенсору менен, натыйжаларды реалдуу убакытта 1.3 TFT дисплейинде көрсөтөт.
Алдын ала коюлган жана динамикалык режими бар - биринчиден, экранда көрсөтүлгөн түстөр катуу коддолгон температуранын чектерине негизделген, экинчисинде түс диапазону Adafruit.io панелиндеги температура слайдерлеринин жардамы менен жөнгө салынышы мүмкүн. түзмөк тарабынан жүктөлгөн ар кандай сүрөттөрдү көрсөтөт, алар туткасындагы баштапкы бармак баскычы аркылуу тартылат.
Бүт тутум колго кармалган жука, цилиндр формасындагы USB батарейкасы менен жабдылган, ал мурундун конусун чечип, USB коргошун туташтыруу менен оңой толтурулат.
PyGon тарабынан башкарылган дисплей менен үч Python сценарийлери менюнун логикасын, сенсорун жана Adafruit.io интеграциясын көзөмөлдөйт.
Бул долбоордун үстүндө иштөө мага блокада учурунда позитивдүү болууга жардам берди, жана биздин колубузда кошумча убакыт болгондо, балдар & мен үйдүн айланасында көптөгөн кызыктуу нерселерди таптым!
YouTube видеосундагы Аполлон Пинин аракетин караңыз, эгер сиз анын жогорудагы камтылган версиясын көрө албасаңыз,
Жабдуулар
Аполлон микротолкундуу монитор
Raspberry Pi Zero W
Adafruit AMG8833 Жылуулук Камерасы
Adafruit Mini PiTFT 1.3 Экран
Jumper Cables
3v титирөөчү диск
USB кубат банкы
1 -кадам: Бузулуу
Мен Apollo Monitorду өткөн жайда экинчи колго сатуудан алдым, башка нерсеге караганда уникалдуу көрүнүшү үчүн - бул эң сонун күндөрдү көргөндөй жакшы! Ичиндеги микросхемалар толук эмес болчу жана бүт нерсе желим башаламандык менен капталган, аны оңдоонун тарыхый аракети.
Башында ал микротолкундуу радиациянын бар -жогун текшерүү үчүн колдонулмак, болжол менен анын дизайнын жана микротолкундуу мештердин сейректигин эске алып, кандайдыр бир өнөр жай шартында, бирок мен бул жөнүндө көбүрөөк биле албадым. Мен билген бир нерсе, бул термикалык камера үчүн идеалдуу үй болмок.
Мен конустук "мурдунан" ыргып кетээрим менен, анын калгандары түзмө-түз кулап түштү, аналогдук метр жана тик бурчтуу клавиша оңой эле алынып салынды. Мен баскычты сактап койгом, ал эң функционалдуу жана чындап кызык формада болчу, ошондуктан мен ошол эле тешикке алмаштыруу үчүн күрөшө алмакмын.
2 -кадам: Кабелдөө
Баарын туура келтирүү үчүн корпусту кыркуудан мурун, мен тетиктердин кантип биригерин билгим келди, ошондуктан сенсор менен экранды кабелдештирүүнү чечтим. Сенсор өзү жакшы болчу, аны Raspberry Pi менен туташтыруу үчүн төрт эле секирүүчү кабель керек болчу.
Экран бир аз татаалыраак болчу, пинут диаграммасы мага 13 секирүүчү зымдарды туташтыруу керектигин көрсөттү - албетте, ал түздөн -түз Пи үстүнө отуруу үчүн иштелип чыккан, ошондуктан мен өзүмдү чындап эле күнөөлүүмүн. Мен экранды жана Pi байланыштарынын ортосуна аялдын башын кошууну чечтим, ошондо мен экранды чечип, оңой туташтыра алам. Бул сонун идея экен, мен пинту диаграммасын кылдаттык менен аткардым жана башты Пи менен байланыштырдым.
Кийинчерээк мен жаңы секирүүчү кабелдерди оригиналдуу баскычка коштум, ошондуктан GPIO менен туташып, жылуулук сүрөтүн тартуу үчүн колдонулушу мүмкүн. Акырында, мен кичинекей дирилдеген дискти түздөн -түз GPIO казыктарына туташтырып, баскычты басууга кандайдыр бир хаптик пикир билдирүү үчүн.
3 -кадам: Case Mods
Аполлон Мониторун менин "кылышым" кутусунан тирилткен нерселердин бири үстүндөгү дисплей тешиги болду - бул кичинекей Adafruit экраны үчүн керек болгон өлчөм. Болжол менен. Файл менен тешикти керектүү өлчөмгө чейин кеңейтүү үчүн бир саатка жакын убакыт кетти, бирок мен бактыга жараша иштин жүрүшүндө жок кыла албадым.
Мен ошондой эле башында PP3 батарейкасы бар ички бөлүктөрүн кесип салдым жана айлануучу шайманды колдонуп, батарейкага орун бошотуу үчүн кармагычтын ичиндеги кээ бир бөлүктөрдү кесип алдым.
Акыры мен сенсордун жана заряддоо кабелинин кабелдери "мурундан" башка микросхемаларга кошулуу үчүн чоң тешиктерди бургуладым.
4 -кадам: Күч
Бул долбоор үчүн мен LiPo батареясын жана адаптерди/заряддагычты колдонбоону чечтим, анткени учурда көбүрөөк орун бар болчу. Мен анын ордуна стандарт USB кубат банкын колдонууну чечтим. Мен ичке цилиндр түрүн алгым келип, туткасынын ичине батып кетчү, андыктан Амазонкадан тапкан эң арзан жана ичке бирин издедим. Келгени, анын чырак LED шамы жана жасалма-батарейкасы менен мен тапкан эң ичке болчу, бирок аны кутусунан чыгарганда, анын туткасына батпай турган калыңдыгын түшүндүм. Анан мен анын бөлүнүп кеткенин түшүндүм - үстүнкү бурамасы ачылбаган жана жылаңач батарейка жылып чыгып, туткасынын ичине орнотуу үчүн керектүү 3ммди тыкан сактап калды, натыйжасы кандай болду!
Кийинчерээк мен кыска Micro USB кабелин алып, изоляциянын бир бөлүгүн чечип, позитивдүү кабелди үзүп, кооз төрт бурчтуу ключка коштум, ошондо кубатты батарейканы ажыратпастан эле башкарууга болот. Бул баскыч батарейканын капкагы болгон нерсеге жакшы жабдылган жана корпустун үстүндөгү түпнускага абдан окшош болгон. Эми мен баары туура болорун билгем, баары иштей турган убак келди!
5 -кадам: Жылуулук камерасынын программалык камсыздоосун орнотуу
Жылуулук сенсорунун өзү Adafruit AMG8833IR Thermal Camera Breakout болуп саналат, ал жылуулуктун сүрөтүн түзүү үчүн 8x8 сенсорлорду колдонот. Бул 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 жана түс модулдарын орнотуңуз:
sudo apt-get install -y python-scipy python-pygamesudo pip3 орнотуу түсү
Бул учурда менин кодум ката кетирди, ошондуктан мен аны кайра орноттум:
Sudo Pip3 scipy орнотуу
Андан кийин мен ката алдым: ImportError: libf77blas.so.3: бөлүшүлгөн объект файлын ача албайт: Мындай файл же каталог жок
Бул орнотуу менен чечилди:
sudo apt-get python-dev libatlas-base-dev орнотуу
Андан кийин мисал коду жакшы иштеди, сценарийди Тонниден эмес, консолунан иштетип:
sudo python3 /home/pi/FeverChill/cam.py
Бул сенсордун дисплейин экранда pygame терезесинде көрсөтүүгө шарт түздү жана түс/температура чектерине бир аз өзгөртүү киргизилгенден кийин, менин бетимдин ысык сүрөтү гипнозго айланды.
6 -кадам: ЖК экран программалык камсыздоону орнотуу
Сенсордун иштеши чынында жакшы болчу, бирок азыр кичинекей экранда көрсөтүлүшү керек болчу. Мен колдонгон экран Adafruit Mini PiTFT 1.3 240x240 - негизинен анын токтому жана формасы термикалык камерага туура келгендиктен, ошондой эле анын өлчөмүнө туура келген жана GPIO менен байланышкан эки баскычты сунуш кылган.
Adafruit көрсөтмөлөрү бул жерде эки вариантты сунуштады: Оңой жана Катуу жол - эксперименттен кийин мен кыйын жолду колдонушум керек экенин түшүндүм, анткени сенсор кадрдык буферге түз кирүүнү талап кылган. Кадамдык көрсөтмөлөрдү аткаргандан кийин, мен "Консолдун пайда болушун каалайт белеңиз?" Деген суроого жооп бергенге чейин жакшы болчумун - Мен башында Жокту тандадым, бирок Ооба деп айтышым керек болчу. Бул бир аз кыйналды, анткени мен процессти кайра жасашым керек болчу, бирок мага Пи консолун TFTде көрсөтүүгө орнотулгандан кийин, ал мындан ары HDMI аркылуу столду көрсөтпөй турганын айтты. бул менин тажрыйбам болчу).
Ошентсе да, орнотуу аяктагандан кийин, кичинекей экранды өчүрүп күйгүзүүдө кадимки Pi баштоо процессинин миниатюралык версиясы көрсөтүлдү, мен мисал термикалык камеранын скриптин иштеткенде, pygame терезеси кичинекей экранда жылуулуктун сүрөтүн көрсөттү - абдан канааттандырарлык!
7 -кадам: Code Tweaks
Үлгү коду жакшы иштеди, бирок мен дагы бир аз кылгым келди, андыктан сценарийлерди менин табитиме ылайыкташтырып коюңуз. Мен стартка жүктөлүүчү жана дисплей тактасына бириктирилген эки баскычты жакшы колдоно турган Меню сценарийин түзүүдөн баштадым.
меню.py
Биринчиден, мен PyGame аркылуу кичинекей экранда жакшы анимацияланган меню эффектин көрсөтө турган Интернеттен Python таптым. Бул сценарийдин кооздугу - ал бардык сүрөттөрдү белгиленген папкага жандандырат, андыктан анимацияны кийинки этапта өзгөртүү оңой болмок (мисалы, анимациянын түстөрүн корпуска дал келтирүү). Меню сценарийин баскычтардын бирин басуу анимацияны токтотуп, сенсордун дисплейин көрсөтүү үчүн fever.py же chill.py ачат деп койдум. Бул иштөө менен мен сценарийди стартта иштете баштадым - адатта мен муну/etc/xdg/lxsession/LXDE -pi/autostart менен түзөтөм, бирок бул ыкма Desktop жүктөөсүнө таянгандыктан, бул жолу башка вариант керек болчу.
Ошентип, адегенде мен rc.local файлын түзөттүм …
sudo nano /etc/rc.local
… андан кийин Чыгуу сызыгынын жогору жагына төмөнкүлөр кошулду …
sudo /home/pi/FeverChill/menu.py &
… адегенде menu.py сценарийинин эң үстүңкүсүндө болгондугун камсыз кылгандан кийин …
#!/usr/bin/env python3
… Жана меню.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")
Мен муну "бармак" баскычы басылганда иштетүүгө койдум - сиз башында микротолкундуу окуу үчүн колдончу элем. Бул сүрөттү тартууга кам көрдү, кийин мен Pythonдун кээ бир саптарын коштум, ошондо сүрөт дароо Adafruit IO тактасына жүктөлөт, ошондуктан аны башка түзмөктөрдө көрүп, оңой жүктөп алса болот. Алдын ала коюлган сценарий тез эле "сакта" менен.
chill.py (Динамикалык)
Белгилүү бир температураны издөөнүн ордуна термикалык камера бар, мен динамикалык сценарийдин ийкемдүү болушун кааладым, ошондо түстүн жогорку жана төмөнкү чектери оңой жөнгө салынат. Мен түзмөккө кошумча баскычтарды кошуп, навигацияны татаалдаштыргым келген жок, ошондуктан Adafruit.io тактасында слайдерлерди колдонууну чечтим.
Менде Adafruit кодунун көбү Алдын ала коюлган сценарийде болчу, андыктан кээ бир кошумча саптарды кошуу керек болчу, андыктан панелдин учурдагы сыдырма маанилери ишке киргизилгенде алынат жана дисплейдин демейки абалына коюлат.
Мен колдонгон код GitHubда жеткиликтүү, аны кайра колдонуу үчүн FeverChill папкасын Пиңиздеги / pi / папкасына жүктөп алып, Adafruit.io грамоталарын жана сценарийлерге фамилияңызды киргизиңиз. сенсор орнотулган.
Сценарийлер жакшы иштеп жаткандыктан, башаламан нерсеге өтүү убактысы келди!
8-кадам: Touch-Upsти бүтүрүү
Башында бул долбоор башка нерсеге жылуулук сенсорун колдонуудан тез эле алаксытууга багытталган болчу, бирок учурдагы окуялар менен мен ага барган сайын көбүрөөк тартылып жатканымды жана аны кичинекей кошумча деталдарды сунуп, аны кыйынчылыкка айландырчумун.
Apollo Monitor корпусу менен иштөө абдан жакшы болчу, кесүү жана кумдоо оңой эле, бирок аны жакшы бүтүрүү үчүн, мен көрүнүп турган кээ бир такталарды боёлгон "маскалардын" артына тыгып салгым келди. Булар колго пластиктин калдыктарынан жасалып, кылымдар өттү, бирок бул канааттандырарлык иш болду. Биринчиден, мен экрандын үстүн жаба турган кичинекей кылып жасадым, бирок микросвичкаларды көрүнүктүү кылып койдум. Кийинчерээк мен "бизнес аягына" карасаң жылаңач электрониканы көрбөш үчүн жылуулук сенсоруна бирөө жасадым.
Мен түс схемасын Улуу Британия блокадага кирерден бир нече күн мурун чечтим жана мага жаккан жабдыктар дүкөнүнөн каалаган түстөрдү табуу бактысына ээ болдум. Капчыгай экиге бөлүнгөндө, эки түстүү түс схемасы сунушталды, мен муну "мурун конусуна" жана сенсордун капкагына чейин узарттым. Сүрөт абдан кызыктуу болду, жылдын биринчи жылуу күнү, бирок бул сарайдагы аары козголуп, тегеренип жатканда сүрөт тартууну билдирген. Мен буга чейин спрей боёгу менен боёнуучу лента колдонгон эмесмин, бирок натыйжада эки түстүү бөлүктөр кантип чыкканына абдан кубанычтамын.
Мурунку конструкциялардын сабактарын үйрөнүп, мен боёлгон бөлүктөрдү монтаждоого чейин бир жума катуулап таштадым жана видеону ортого салып баштадым.
9 -кадам: Ассамблея
Мен качан проекттин үстүндө иштеп жатканымда, баардыгы өз алдынча жасалган модель топтому сыяктуу монтажга даярдалган сахнага чыгууну жакшы көрөм. Баары биригет дегенге эч кандай кепилдик жок жана көрсөтмөлөр менин башымда гана бар, бирок бул менин эң жакшы көргөн бөлүгүм.
Бул жолу абдан ийкемдүү өттү - негизинен мен майда -чүйдө нерселерге коротуп, баары ушундай болгонуна ынануу үчүн кошумча убактым бар болчу. Мен экрандын корпусуна биринчи кезекте ысык чаптап койдум, андан кийин "тартуу" баскычын коштум - бул иштин үстүнө туташкан жалгыз бөлүктөр, ошондуктан бул жакшы башталыш эле.
Кийинчерээк мен батарейканын пакетин бир аз ысык желимдеп, корпусуна Pi орнотуп койдум. Андан кийин камеранын сенсорун мурундун конусуна кылдаттык менен чапташты, кубат которгуч батарейканын капкагына бурулду жана бардыгы туташтырылды.
Мен баардык туташуулар үчүн секирүүчү кабелдерди колдондум, бирок өтө этият болуу үчүн, эки бөлүктүн акыркы кысылышында кандайдыр бир кыймыл болгондо, аларды ысык желим менен чаптадым. Чындыгында, бир аз чыйрыккан, бирок эч кандай кыйкырык үнү жок, ошондуктан эки жарым тең тыгыз бириккенде, мен мурундун конусун түрттүм жана болтту туткасынан бекемдедим - бүтүндөй жыйынды бириктирген эки нерсе.
Бул биринчи жолу иштеген жок, мен биринчи сквизон учурунда экранды ажыратууга жетиштим, бирок бир нече стратегиялык кабель ийилүүсү менен баары экинчи жолу бактылуу аяктады. Муну нерселерге көрсөтүү убактысы келди!
10 -кадам: Температураны текшерүү убактысы
Үйдө кошумча убактымдын болушу мага бул долбоордун майда деталдарына адаттагыдан көбүрөөк көңүл бурууга жардам берди, жана бул, албетте, таза бүтүрүү жана монтаждоо учурунда сюрприздерди азыраак кылуу - ошондой эле менин психикалык саламаттыгымды сактоого жардам берүү түз жана тар. Сенсордун баштапкы планы таптакыр башка нерсе болчу, ошондуктан мен акыркы натыйжага абдан ыраазымын, жай темп менен жана канааттандырарлык курулуш.
Аполлон Пи долбоордун текчесинде да сонун көрүнөт жана, албетте, кызыктуу жана пайдалуу курал, биз аны нерселерге көрсөтүүнү токтото албайбыз! Идеалдуу дүйнөдө бул бир аз жогору чечим болмок, жана мен дисплейди чагылдыруу үчүн кандайдыр бир жолду табышым керек, бирок бул кичинекей тамактар.
Окуганыңыз үчүн рахмат жана баарыңыздар аман болуңуздар.
Менин башка Эски Технология, Жаңы Spec долбоорлорумдун баары Instructablesде
Көбүрөөк маалымат https://bit.ly/OldTechNewSpec сайтында. жана мен Twitterде @OldTechNewSpec.
Сунушталууда:
Үнөмдүү жылуулук камерасы: 10 кадам
Үнөмдүү жылуулук камерасы: Мен учкучсуз учуучу аппаратка тиркелүүчү жана жылуулук нурлануусун жана көрүнүп турган жарык менен үзгүлтүксүз фотографияны көрсөтүүчү термографиялык сүрөттөн жасалган аралаштырылган кадрды түз агылтуучу аппаратты иштеп чыктым. Платформа кичинекей бир тактайдан турат
Pi-Powered жылуулук принтер камерасы: 11 кадам (сүрөттөр менен)
Pi-Powered Жылуулук Принтер Камерасы: Сиз эски Polaroid тез камераңызды же эски Gameboy Classicтин ак-кара камерасын сагындыңызбы? Чын эле ностальгияны сезгенде, биз да ошондой кылабыз! Бул Нускамада, биз сизге Raspberry Pi, Pi камерасын колдонуп, кантип тез камераңызды жасоону көрсөтөбүз
AMG8833 Infrared Array Imaging Sensor колдонуп M5Stack IR жылуулук камерасы: 3 кадам
AMG8833 Infrared Array Imaging Sensor колдонуп M5Stack IR жылуулук камерасы: Көпчүлүккө окшоп менде жылуулук камералары бар болчу, бирок алар ар дайым менин баалар диапазонумда эмес болчу - ушул убакка чейин !! ESP32 модулу жана салыштырмалуу арзан
Жылуулук камерасы AMG8833 (Raspberry Pi): 4 кадам
Жылуулук камерасы AMG8833 (Raspberry Pi): Raspberry Pi менен IR камерасын (AMG833) орнотуунун негизги үйрөткүчү
PiEyeR жакшыртылган жылуулук камерасы: 8 кадам (сүрөттөр менен)
Adafruit AMG8833 IR Жылуулук Камерасы тактайы "FLIR жана соода" сыяктуу алыскы инфракызыл иштетүүчү камераны болжол менен 1/10до мурунку IR IR жылуулук иштетүүчү бирдиктеринин баасы менен камсыздай алат. Албетте, чечим жана сезгичтик анча деле жакшы эмес