Мазмуну:

Raspberry Pi Planet Finder: 14 кадам (Сүрөттөр менен)
Raspberry Pi Planet Finder: 14 кадам (Сүрөттөр менен)

Video: Raspberry Pi Planet Finder: 14 кадам (Сүрөттөр менен)

Video: Raspberry Pi Planet Finder: 14 кадам (Сүрөттөр менен)
Video: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, Ноябрь
Anonim
Image
Image
Сизге эмне керек
Сизге эмне керек

Менин шаарымдагы Илим борборунун сыртында чоң металл конструкциясы бар, ал планеталардын асманда болгонун көрсөтүп, бура алат. Мен анын иштегенин эч качан көргөн эмесмин, бирок менин колум жетпес башка дүйнөлөрдүн чындыгында менин кичинекейиме байланыштуу экенин билүү сыйкырдуу болот деп ойлочумун.

Жакында бул өлгөн көргөзмөнүн жанынан өтүп бара жатып, "мен муну жасай алам" деп ойлогом жана ушундай кылдым!

Бул планета табуучуну кантип жасоо керектиги боюнча көрсөтмө (Айды камтыйт), ошондо сиз да мейкиндиктен корккондо кайда карап көрүүнү билесиз.

1 -кадам: Сизге эмне керек

Сизге эмне керек
Сизге эмне керек

1 x Raspberry Pi (Wi -Fi үчүн 3 же андан жогору версия)

1 х LCD экран (16 x 2) (ушундай)

2 х драйверлери бар моторлор (28-BYJ48) (ушул сыяктуу)

3 x баскычтар (бул сыяктуу)

2 х фланец бириктиргичтери (ушул сыяктуу)

1 x баскыч компасы (ушундай)

8 x M3 болт жана гайкалар

Корпус жана телескоп үчүн 3D басылган бөлүктөр

2 -кадам: Планеталык координаттар

Планетардык координаттар
Планетардык координаттар

Астрономиялык объектилер асманда кайда экенин сүрөттөөнүн бир нече ар кандай жолдору бар.

Биз үчүн колдонуунун эң мааниси жогорудагы сүрөттө көрсөтүлгөн Горизонталдык Координаттар Системасы. Бул сүрөт бул жерде шилтеме коюлган Wikipedia баракчасынан алынган:

en.wikipedia.org/wiki/Horizontal_coordinat…

Горизонталдык координаттар системасы сизге Түндүктөн (Азимуттан) жана горизонттон (Бийиктиктен) бир бурч берет, андыктан бул дүйнөнүн кайсы жеринен издеп жатканыңызга жараша айырмаланат. Ошентип, биздин планетаны табуучубуз жайгашууну эске алышы керек жана шилтеме болуу үчүн Түндүктү табуунун кандайдыр бир жолуна ээ болушу керек.

Убакыт жана жайгашуу менен өзгөргөн бийиктикти жана Азимутту эсептеп көрүүнүн ордуна, биз бул маалыматты NASAдан издөө үчүн Raspberry Pi бортундагы wifi байланышын колдонобуз. Алар мындай нерселерди көзөмөлдөп турушат, андыктан бизге кереги жок;)

3 -кадам: Планета маалыматтарына жетүү

Биз маалыматтарды NASAнын реактивдүү кыймыл лабораториясынан (JPL) алып жатабыз -

Бул маалыматка жетүү үчүн, биз астрономиялык веб формаларды жана маалымат базаларын сурап билүү үчүн инструменттердин жыйындысы болгон AstroQuery деп аталган китепкананы колдонобуз. Бул китепкана үчүн документтер бул жерде:

Эгерде бул сиздин биринчи Raspberry Pi долбооруңуз болсо, анда бул орнотуу көрсөтмөсүнө баштаңыз:

Эгер сиз Raspberry Pi түзмөгүңүздө Raspbian колдонуп жатсаңыз (эгер сиз жогорудагы көрсөтмөнү аткарсаңыз), анда сизде python3 орнотулган, эң акыркы версиясы орнотулганын текшериңиз (мен 3.7.3 версиясын колдонуп жатам). Биз муну пип алуу үчүн колдонушубуз керек. Терминалды ачып, төмөнкүлөрдү териңиз:

sudo apt install python3-pip

Андан кийин астрогериянын жакшыртылган версиясын орнотуу үчүн пипти колдонсок болот.

pip3 install --pre -astroquery жаңыртуу

Бул долбоордун калган бөлүгүн улантуудан мурун, бардык туура көз карандылыктар туура орнотулганын текшерүү үчүн бул маалыматка жөнөкөй Python скрипти менен кирүүгө аракет кылыңыз.

astroquery.jplhorizons дан Горизонтторду импорттоо

mars = Horizons (id = 499, location = '000', epochs = None, id_type = 'majorbody') eph = mars.ephemerides () print (eph)

Бул сизге Марстын жайгашкан жеринин чоо -жайын көрсөтүшү керек!

Сиз бул маалыматтын бул сайттын тирүү планетанын позицияларын издөө үчүн туура экендигин текшере аласыз:

Бул суроону бир аз талкалоо үчүн, id - JPLдин маалыматында Марс менен байланышкан номер, доорлор - бул биз каалаган маалыматты (азыр эч ким билдирбейт) жана id_type Күн системасынын негизги органдарын сурап жатат. Учурда бул жер Улуу Британияга коюлган, анткени '000' Гринвичтеги обсерваториянын жайгашуу коду. Башка жерлерди бул жерден тапса болот:

Мүчүлүштүктөрдү оңдоо:

Эгер сиз ката тапсаңыз: 'keyring.util.escape' аттуу модуль жок

терминалда төмөнкү буйрукту колдонуп көрүңүз:

pip3 орнотуу -keyrings.alt жаңыртуу

4 -кадам: Код

Бул кадамга ушул долбоордо колдонулган толук питон скрипти тиркелет.

Жайгашкан жериңиз үчүн туура маалыматтарды табуу үчүн getPlanetInfo функциясына өтүңүз жана мурунку кадамдагы обсерваториялардын тизмесин колдонуу менен жайгашкан жерди өзгөртүңүз.

def getPlanetInfo (планета):

obj = Horizons (id = planet, location = '000', epochs = None, id_type = 'majorbody') eph = obj.ephemerides () eph кайтуу

5 -кадам: Аппаратты туташтыруу

Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу

Нан тактасы менен секирүүчү зымдарды колдонуу менен, эки тепкичтүү моторду, ЖК экранды жана үч баскычты жогорудагы схемада көрсөтүлгөндөй туташтырыңыз.

Сиздин Raspberry Piңизде казыктардын кайсы номери бар экенин билүү үчүн терминалга барып териңиз

кадап чыгып

Бул сизге GPIO номерлери жана тактай номерлери менен толукталган сүрөттү көрсөтүшү керек. Биз такта номерлерин коддо кайсы казыктар колдонулганын аныктоо үчүн колдонобуз, андыктан мен сандарды кашаанын ичинде көрсөтөм.

Райондук диаграммага жардам катары бул жерде ар бир бөлүккө туташтырылган казыктар бар:

Биринчи кадам мотору - 7, 11, 13, 15

2 -тепкич мотору - 40, 38, 36, 32

Баскыч 1 - 33

Баскыч2 - 37

Баскыч3 - 35

ЖК экран - 26, 24, 22, 18, 16, 12

Мунун баары туташканда, python скриптин иштетиңиз

python3 planetFinder.py

жана сиз экрандын орнотуу текстин көрүшүңүз керек жана баскычтар тепкич моторлорун жылдырышы керек.

6 -кадам: Дизайн

Дизайн
Дизайн
Дизайн
Дизайн
Дизайн
Дизайн

Корпус 3D форматында оңой басып чыгарылган. Ал өзүнчө бөлүктөргө бөлүнөт, андан кийин электроника ордуна бекитилгенден кийин жабыштырылат.

Тешиктер мен колдонгон баскычтар жана M3 болттор үчүн өлчөмдүү.

Мен телескопту бөлүктөргө бастырып, өтө көп структуралык түзүлүшкө жол бербөө үчүн кийинчерээк чаптап койдум.

STL файлдары бул кадамга тиркелет.

7 -кадам: Басылмаларды текшерүү

Басылмаларды текшерүү
Басылмаларды текшерүү
Басылмаларды текшерүү
Басылмаларды текшерүү
Басылмаларды текшерүү
Басылмаларды текшерүү
Басылмаларды текшерүү
Басылмаларды текшерүү

Баары басылып чыккандан кийин, жабыштыруудан мурун бардыгы бири -бирине тыгыз дал келерин текшериңиз.

Кнопкаларды ордуна коюп, экранды жана тепкич моторлорун M3 болттору менен бекемдеп, бардыгын жакшы кыймылдатыңыз. Кийинки кадамга чейин, бардык четтери түшүп калган файлдарды кайра бөлүп алыңыз.

8 -кадам: Stepper моторун кеңейтүү

Stepper моторун кеңейтүү
Stepper моторун кеңейтүү
Stepper моторун кеңейтүү
Stepper моторун кеңейтүү
Stepper моторун кеңейтүү
Stepper моторун кеңейтүү

Телескоптун бийиктик бурчун башкара турган тепкич мотору негизги корпустун үстүндө отурат жана айлануу үчүн зымдардын бошоңдугуна муктаж. Зымдарды степпер менен айдоочунун тактайынын ортосуна кесип, ортосунда жаңы узундуктагы зымды ширетүү менен узартуу керек.

Мен жаңы зымды тирөөчү мунарага жипти колдонуп жибергем, анткени мен колдонгон зым абдан катуу жана тыгылып калган. Качан гана ал моторго ширетилиши мүмкүн, башка учунда керектүү нерселерди кайра туташтыруу үчүн кайсы түс туташып турганын көзөмөлдөңүз. Зымдарга жылуулукту азайтууну кошууну унутпаңыз!

Пайда болгондон кийин, баары иштеп жаткандыгын текшерүү үчүн питон скриптин иштетип, андан кийин зымдарды трубадан ылдый түртүп, тепкич мотору турганга чейин. Андан кийин корпустун арткы жагына жабыштырылганга чейин, M3 болттору жана гайкалары бар тепкич мотор корпусуна тиркелиши мүмкүн.

9 -кадам: Тоо баскычтары жана ЖК экран

Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран
Тоо баскычтары жана ЖК экран

Түймөлөрдү салыңыз жана гайкаларды бекемдөө үчүн, аларды ширетүүдөн мурун ордуна коюңуз. Мен тыкандык үчүн алардын ортосунда өтүүчү жалпы жер зымын колдонууну жакшы көрөм.

ЖК экранды M3 болттор жана гайкалар менен коргоңуз. ЖК бул этапта мен да ширетилген анын казыктарынын бирине потенциометрди каалайт.

Кодду кайра сынап көрүңүз! Баарын жабыштыруудан мурун баары иштей турганын текшериңиз, анткени бул этапта оңдоо оңой.

10 -кадам: фланецтерди кошуу

Фланецтерди кошуу
Фланецтерди кошуу
Фланецтерди кошуу
Фланецтерди кошуу
Фланецтерди кошуу
Фланецтерди кошуу
Фланецтерди кошуу
Фланецтерди кошуу

3D басып чыгарылган бөлүктөрдү тепкич моторлоруна туташтыруу үчүн, биз 5 мм фланец муфтасын колдонуп жатабыз, ал тепкич моторунун аягына туура келет жана кичинекей бурамалар менен кармалып турат.

Бир фланец айлануучу мунаранын түбүнө, экинчиси телескопко жабыштырылган.

Телескопту айлануучу мунаранын үстүндөгү моторго тиркөө жөнөкөй, анткени аны кармап турган кичинекей бурамаларга жетүү үчүн көп орун бар. Башка фланецти бекитүү кыйыныраак, бирок негизги корпус менен айлануучу мунаранын түбүнүн ортосунда кичинекей аллен ачкычын орнотуу жана бураманы бекемдөө үчүн боштук жетиштүү.

Кайра сыноо!

Эми баары акыркы абалында болгондой иштеши керек. Эгер андай болбосо, азыр мүчүлүштүктөрдү оңдоонун жана байланыштардын коопсуздугун текшерүүнүн убактысы келди. Ачык зымдар бири -бирине тийбей турганын текшериңиз, электр лента менен тегеренип, көйгөй жаратышы мүмкүн болгон жерлерди жамаңыз.

11 -кадам: Стартта иштетүү

Планетаны тапкысы келген сайын кодду кол менен иштетүүнүн ордуна, биз муну өзүнчө көргөзмө катары иштетүүнү каалайбыз, андыктан аны Raspberry Pi күйгүзүлгөн сайын кодубузду иштетүү үчүн орнотобуз.

Терминалга териңиз

crontab -e

Ачылган файлда файлдын аягына төмөнкүлөрдү кошуңуз, андан кийин жаңы сап.

@reboot python3 /home/pi/PlanetFinder/planetFinder.py &

Менин кодум PlanetFinder деп аталган папкада сакталган, ошондуктан /home/pi/PlanetFinder/planetFinder.py менин файлымдын жайгашкан жери. Эгер сиздики башка жерде сакталса, бул жерде аны алмаштырууну унутпаңыз.

& Аягында маанилүү, анткени код фондо иштей берет, андыктан жүктөөдө болгон башка процесстерди кармабайт.

12 -кадам: Бардыгын бириктиргиле

Бардыгын бирге чаптаңыз!
Бардыгын бирге чаптаңыз!
Бардыгын бирге чаптаңыз!
Бардыгын бирге чаптаңыз!

Буга чейин жабыштырылбаган нерсенин бардыгын азыр оңдоо керек.

Акырында, кичинекей компасты айлануучу базанын ортосуна кошуңуз.

13 -кадам: Колдонуу

Колдонуу
Колдонуу

Planet Finder күйгүзүлгөндө, ал колдонуучуну вертикалдуу огун тууралоого үндөйт. Жогору жана ылдый баскычтарды басуу телескопту жылдырат, аны оңго карап, тегиз кылууга аракет кылыңыз, андан кийин ok баскычын басыңыз (асты).

Андан кийин колдонуучудан айланууну тууралоо, баскычтарды колдонуу менен телескоп кичинекей компаска ылайык түндүктү көрсөткөнгө чейин айланат, андан кийин OK басылат.

Эми планеталар аркылуу өйдө/ылдый баскычтарын колдонуп, ок баскычы менен тапкыңыз келгенди тандай аласыз. Ал планетанын бийиктиги менен азимутун көрсөтөт, андан кийин бир нече секунда бою аны көрсөтүп, түндүктү караганга чейин бурулат.

14 -кадам: Бүттү

Бүттү
Бүттү

Баары бүттү!

Планеталардын кайда экенин билүүдөн ырахат алыңыз:)

Space Challenge
Space Challenge
Space Challenge
Space Challenge

Космостук Чакырыкта биринчи сыйлык

Сунушталууда: