Мазмуну:

Bluetooth иштетилген планетарий/оррери: 13 кадам (сүрөттөр менен)
Bluetooth иштетилген планетарий/оррери: 13 кадам (сүрөттөр менен)

Video: Bluetooth иштетилген планетарий/оррери: 13 кадам (сүрөттөр менен)

Video: Bluetooth иштетилген планетарий/оррери: 13 кадам (сүрөттөр менен)
Video: Ulefone Armor Mini 2 - НАДЁЖНАЯ ЗВОНИЛКА / ОБЗОР В ДЕТАЛЯХ 2024, Июль
Anonim
Bluetooth иштетилген планетарий/Orrery
Bluetooth иштетилген планетарий/Orrery

Бул көрсөтмө Түштүк Флорида университетинин Макекурстун долбоорунун талабын аткаруу үчүн түзүлгөн (www.makecourse.com).

Бул менин 3 планета планетарийим/оррери. Бул Makecourse үчүн бир семестрге созулган проект катары башталган, бирок семестрдин аягына чейин, ал абдан баалуу окуу тажрыйбасына айланган. Микроконтроллердин негиздерин үйрөнүп эле тим болбостон, мага C жана C ++, Android платформасы, ширетүү жана электроника боюнча жалпы кызыктуу нерселер жөнүндө да үйрөттү.

Планетарийдин негизги функциясы бул: телефонуңуздагы тиркемени ачыңыз, Планетарийге туташыңыз, датаны тандаңыз, жөнөтүүнү басыңыз жана планетарийдин Меркурий, Венера жана Жерди ошол күнгө салыштырмалуу гелиоцентрдик узундуктарга жылдырганын көрүңүз. Сиз 1 AD/CE чейин жана 5000 AD/CE чейин артка кете аласыз, бирок тактык 100 жыл же андан көп убакыт өткөндө бир аз төмөндөшү мүмкүн.

Бул Нускамада мен планеталарды кантип чогултуу керектигин, аларды кыймылга келтирүүчү тиштүү системаны, бардыгын бириктирүүчү схеманы жана планеталарды башкарган Android жана C ++ (Arduino) кодун түшүндүрөм.

Эгерде сиз кодго өтүүнү кааласаңыз, анда бардыгы GitHubда. Arduino коду бул жерде жана Android коду бул жерде.

1 -кадам: Бөлүктөр жана шаймандар

Физикалык бөлүктөр

  • 1 DC -47P DC Series Heavy Duty Electronics корпусу - $ 9.58
  • 0.08 "(2мм) Акрил/PMMA барагы, жок дегенде 6" x 6 "(15cm x 15cm) - $ 2.97
  • 3 28BYJ -48 Unipolar Stepper Motors - $ 6.24
  • Караңгы планеталарда жаркыроо - $ 8.27 (1 -эскертмени караңыз)
  • Караңгы жылдыздарда жаркыроо - $ 5.95 (Милдеттүү эмес)

Электроника

  • 3 ULN2003 Stepper Motor айдоочулары - $ 2.97
  • 1 Atmel ATMega328 (P) - $ 1.64 (2 эскертүүнү караңыз)
  • 1 HC -05 Bluetooth сериялык модулуна - $ 3.40
  • 1 16MHz кристалл осциллятору - 10 үчүн 0,78 доллар
  • 1 DIP-28 IC розеткасы $ 0.99 үчүн 10
  • 1 даана Stripboard (кадамы = 0,1 ", өлчөмү = 20 сап узундугу 3,5") - 2 үчүн 2,48 доллар
  • 1 Panel Mount DC Supply Jack, Аял (5.5mm OD, 2.1mm ID) - 10 үчүн 1.44 доллар
  • 2 22pF 5V конденсаторлор - $ 3.00 100 үчүн (3 -эскертүүнү караңыз)
  • 2 1.0 μF конденсатор - $ 0.99 50 үчүн
  • 1 10kΩ каршылыгы - 50 үчүн 0,99 доллар

Куралдар

  • Spare Arduino же AVR ISP - Бул сизге ATMega чипин программалоо үчүн керек болот
  • Бурагычтар - Arduinoдон ATMega запасын алып салуу үчүн
  • Мультиметр - же жок дегенде үзгүлтүксүздүк өлчөгүч
  • Hammer - Жасалбаган нерсени оңдоо үчүн The Right Way ™
  • 5/16 ", 7/16" жана 1 3/8 "бургулоочу биттер менен бургулаңыз
  • Чакан снайптар - компоненттерди алып салуу үчүн
  • 22 AWG жез зымы (Улуу баа жана бул жерде көптөгөн варианттар)
  • Solder - Мен розинанын өзөгү менен 60/40 колдоном. Мен ичке (<0.6мм) ширетүүчү иштерди бир топ жеңилдетерин таптым. Сиз чындап эле каалаган жерден ширеткичти таба аласыз, бирок бул мен ийгиликтүү болгон нерсе.
  • Флюс - Мага бул флюс калемдери абдан жагат, бирок ал кислотасы жок болсо, сиз флюстун каалаган түрүн колдоно аласыз.
  • Лайнер/станция - Буларды eBay жана Amazonдо абдан арзан баада ала аласыз, бирок эскертүү: нааразычылык баага тескерисинче өзгөрөт. Менин арзан ($ 25) Stahl SSVT жылытуу үчүн таптакыр түбөлүккө созулат, жылуулук сыйымдуулугу дээрлик жок жана жылытуучу элементтен чыккан 60 Гц үнү угулат. Буга кандай караарымды билбейм.
  • Жардам колу - Бул лейкость үчүн дээрлик керектүү баа жеткис куралдар жана алар планеталарды акрил куймаларына жабыштырууда жардам берет.
  • Эпоксид - Мен пластик үчүн Loctite Epoxy колдондум, ал абдан жакшы иштеген. Мен планетанын бир колун (планетага тиркелген) жаңылыштык менен бетонго түшүргөндө, эпоксид эки бөлүктү бириктирген жок. Бирок, дагы бир жолу, мен аны толук айыктыруу үчүн сунушталган 24 сааттын болжол менен 15ин гана бердим. Ошентип, балким, ал башкача болмок эмес, бирок мен айта албайм. Кандай болбосун, бир нече мүнөттөн ашык убакытка созулган клейди же клейди колдонсоңуз болот, анткени клейди колдонгондон кийин бир аз убакытка чейин жакшы тууралоолорду жасашыңыз керек болот.
  • Тиш чукугучтар - Бул эки бөлүктү аралаштырган аппликатор менен келбесе, сизге эпоксид же 2 бөлүктөн турган чаптама үчүн булар (же бир жолу колдонулуучу аралаштыргыч) керек болот.
  • 3D принтери - Мен муну тиштүү системанын кээ бир бөлүктөрүн басып чыгаруу үчүн колдондум (файлдар камтылган), бирок эгерде бул бөлүктөрдү башка (балким азыраак жалкоо) ыкмалар менен ойлоп чыгарсаңыз, анда бул керек эмес.
  • Лазердик кескич - Мен муну планеталарды кармап турган ачык колдорду жасоо үчүн колдондум. Мурунку пункт сыяктуу эле, эгер сиз бөлүктөрдү башка ыкма менен жасай алсаңыз (алар башка методдор менен оңой эле кесилиши мүмкүн), анда бул керек эмес.

Программалык камсыздоо

  • Сизге Arduino IDE же AVR-GCC менен AVRDude автономдуу версиялары керек болот
  • Android Studio же Eclipse үчүн Android Tools (ал эскирген). Жакында бул ыктыярдуу болушу мүмкүн, анткени мен Play Storeго топтолгон APK жүктөй алам

Жалпы баасы

Бардык тетиктердин (минус инструменттердин) жалпы баасы болжол менен 50 доллар. Бирок, көрсөтүлгөн баалардын көбү ар бири 1ден ашык. Бул долбоор үчүн ар бир нерсенин канча колдонулганын гана эсептесеңиз, натыйжалуу жалпы наркы болжол менен $ 35 түзөт. Эң кымбат нерсе - бул корпус, жалпы наркынын дээрлик үчтөн бир бөлүгү. MAKE курсу үчүн биз кутучаны долбоордун дизайнына киргизишибиз керек болчу, андыктан бул зарылчылык болчу. Бирок, эгер сиз бул проектте чыгымдарды азайтуунун оңой жолун издеп жатсаңыз, анда жергиликтүү чоң куту чекене сатуучусун текшериңиз; алар сиздин типтүү "электроника корпусуна" караганда арзаныраак кутучаларды тандап алышы мүмкүн. Ошондой эле, сиз өзүңүздүн планетаңызды жасай аласыз (жыгач тоголокчолору бир тыйын) жана алдын ала даярдалган пластикти колдонуунун ордуна жылдыздарга боёп койсоңуз болот. Сиз бул долбоорду 25 доллардан азыраак бүтүрө аласыз!

Эскертүүлөр

  1. Сиз каалаган нерсени "планеталар" катары колдоно аласыз. Сиз өзүңүздүн сүрөтүңүздү да тартсаңыз болот!
  2. Мен бул чиптер Arduino R3 жүктөгүчүнө алар айткандай алдын ала жүктөлбөгөндүгүнө ишенем, же кандайдыр бир программалоо катасы болсо керек. Ага карабастан, биз кийинки кадамда жаңы жүктөгүчтү күйгүзөбүз.
  3. Мен резисторлордун жана конденсаторлордун (керамикалык жана электролитикалык) ар кандай пакеттерин/ассортиментин топтоону сунуштаар элем. Бул бир топ арзаныраак, ошондой эле белгилүү бир баалуулуктун келишин күтпөстөн, тез эле долбоорду баштасаңыз болот.

2 -кадам: Gear системасын даярдоо

Gear системасын даярдоо
Gear системасын даярдоо
Gear системасын даярдоо
Gear системасын даярдоо
Gear системасын даярдоо
Gear системасын даярдоо

Негизи, көңдөй мамычалардын баары бири -бирине уя салышат жана тиштерин ар кандай бийиктикте ачышат. Андан кийин ар бир тепкич мотору башка бийиктикке жайгаштырылган, ар бири башка колонканы айдайт. Редуктордун рациону 2: 1, башкача айтканда, ар бир тепкич мотору анын колонкасын жасоодон мурун эки жолу толук айлануусу керек.

Бардык 3D моделдери үчүн мен STL файлдарын (басып чыгаруу үчүн), ошондой эле Inventor бөлүгүн жана монтаждоо файлдарын коштум (андыктан аларды эркин өзгөртө аласыз). Экспорт папкасынан сиз 3 баскычтуу тетиктерди жана калганынын бардыгын 1 басып чыгарышыңыз керек. Бөлүктөргө z огунун октук чечилишинин кереги жок, бирок тегиз керебет маанилүү, ошондуктан тепкичтүү тиштер прессти ыңгайлуу кылат, бирок ушунчалык катуу эмес, аны түшүрүү жана түшүрүү мүмкүн эмес. 10% -15% тегерегинде толтуруу жакшы эле иштеди окшойт.

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

Колдорунда коопсуз болгондон кийин, Меркурий тилкесин (эң узун жана эң ичке) базалык мамыга, андан кийин Венера менен Жерге түшүрүңүз. Степперди тууралаңыз, алар үч чоң тиштин ар бири менен жакшы жупташат жана алар тийиштүү тиштүү жабдуулар менен гана байланышат.

3 -кадам: Лазердик кесүү жана акрил тилкелерин жабыштыруу

Акрил тилкелерин лазер менен кесүү жана жабыштыруу
Акрил тилкелерин лазер менен кесүү жана жабыштыруу
Акрил тилкелерин лазер менен кесүү жана жабыштыруу
Акрил тилкелерин лазер менен кесүү жана жабыштыруу

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

Мектебимдеги DfX лабораториясынын укмуштуудай мейкиндигинин жардамы менен, мен алардын 80W CO2 лазердик кескичин акрил тилкелерин кесүү үчүн колдоно алдым. Бул абдан жөнөкөй процесс болчу. Мен ойлоп табуучунун сүрөтүн pdf форматында экспорттодум, андан кийин Retina Engrave принтер драйверине pdf файлын ачып, "басып чыгардым". Ал жерден мен моделдин өлчөмүн жана бийиктигин жөнгө салдым (TODO), кубаттуулуктун орнотууларын койдум (2% @ 40% кубат иштеди) жана калганын лазер кескичке коё берейин.

Акрил куймаңызды кесип алгандан кийин, балким, аларга жылтыратуу керек болот. Сиз аларды айнек тазалагыч менен (бул жерде "N" менен жазылган химиялык заттардын жоктугун текшериңиз) же самын менен жууп койсоңуз болот.

Бул бүткөндөн кийин, планеталардын ар бирине тилкелерди чапташыңыз керек болот. Мен муну Loctite Epoxy for Plastics менен жасадым. Бул 2 бөлүктөн турган эпокси, болжол менен 5 мүнөттө, негизинен бир сааттан кийин айыгат жана 24 сааттан кийин толук айыгат. Бул эң сонун убакыт графиги болчу, анткени эпоксиден кийин бөлүктөрдүн абалын бир аз тууралашым керек экенин билчүмүн. Ошондой эле, бул атайын акрил субстрат үчүн сунушталган.

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

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

Эпоксид толук айыккандан кийин (мен аны айыктыруу үчүн 15 сааттай убакыт бергем, бирок 24 саат сунушталган) сиз жардамды колуңуздан чыгарып, планетанын мамыларына туура келерин текшере аласыз. Мен колдонгон акрил барактарынын калыңдыгы 2,0 мм болгон, ошондуктан мен планетанын мамыларында бирдей өлчөмдөгү тешиктерди жасадым. Бул өтө тыгыз болчу, бирок, бактыга жараша, бир аз тегиздөө менен мен мамыларды жылдыра алдым.

4 -кадам: Bluetooth модулунун жөндөөлөрүн өзгөртүү үчүн AT буйруктарын колдонуу

Bluetooth буйрутмаларын өзгөртүү үчүн AT буйруктарын колдонуу
Bluetooth буйрутмаларын өзгөртүү үчүн AT буйруктарын колдонуу

Бул кадам бир аз иретсиз көрүнүшү мүмкүн, бирок эгер сиз муну HC-05 bluetooth модулун тактага ширетүүдөн мурун кылсаңыз, бир топ оңой болот.

Сиз HC-05ти алганда, балким, заводдун кээ бир жөндөөлөрүн, мисалы, түзмөктүн аталышын (адатта "HC-05"), сырсөздү (адатта "1234") жана берүү ылдамдыгын (меники 9600 байда программаланган) өзгөрткүңүз келет..

Бул орнотууларды өзгөртүүнүн эң оңой жолу - бул компьютериңиздеги модуль менен түздөн -түз иштөө. Бул үчүн сизге USB -TTL UART конвертери керек. Эгерде сизде бирөө жатса, аны колдонсоңуз болот. Сиз ошондой эле USB эмес Arduino такталары менен келгенди колдоно аласыз (Uno, Mega, Diecimila ж. Б.). ATMega чипи менен Arduino тактасындагы розеткасынын ортосуна кичинекей жалпак баш бурагычты этияттык менен салып, андан кийин жалпак башты башка тараптан салыңыз. Чипти ар тараптан этияттап көтөрүп, бошогонго чейин жана розеткадан сууруп алууга болот.

Эми bluetooth модулу өз ордуна барат. Ардуино компьютериңизден ажыратылганда, Arduino RXти HC-05 RXке жана TX менен TXке туташтырыңыз. HC-05теги Vccти Arduinoдогу 5Vга, ал эми GNDди GNDге туташтырыңыз. Эми HC-05теги State/Key пинин 10k каршылыгы аркылуу Arduino 5V менен туташтырыңыз. Ачкыч пинин бийик тартып алуу, Bluetooth модулунун жөндөөлөрүн өзгөртүү үчүн AT буйруктарын чыгарууга мүмкүндүк берет.

Эми, ардуинону компьютериңизге туташтырып, Arduino IDEден сериялык мониторду же буйрук сабынан TTY же TeraTerm сыяктуу терминалдык эмулятор программасын тартып алыңыз. Бауд ылдамдыгыңызды 38400гө өзгөртүңүз (AT байланыштары үчүн демейки). CRLFти күйгүзүңүз (сериялык монитордо бул "CR жана LF экөө тең", эгер сиз буйрук сабын же башка программаны колдонуп жатсаңыз, муну кантип жасоону карап көрүңүз). Модуль 8 маалымат бит, 1 токтоочу бит, паритеттик бит жана агымдын көзөмөлү менен байланышат (эгер сиз Arduino IDE колдонуп жатсаңыз, бул жөнүндө кабатыр болбоңуз).

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

Түзмөктүн аталышын өзгөртүү үчүн "AT+NAME =", башка түзмөктөр аны менен жупташууга аракет кылып жатканда HC-05дин таралышын каалаган ат кайда.

Сырсөздү өзгөртүү үчүн "AT+PSWD =" териңиз.

Байдын ылдамдыгын өзгөртүү үчүн "AT+UART =" териңиз.

AT буйруктарынын толук тизмеси үчүн, бул маалымат барагын караңыз.

5 -кадам: Райондун дизайнын түзүү

Циркти долбоорлоо
Циркти долбоорлоо

Райондун дизайны абдан жөнөкөй болгон. Arduino Uno тиштүү системасы бар кутуга батпай тургандыктан, мен бардыгын бир тактага салууну чечтим жана Uno такталарында болгон ATMega16U2 usb-to-uart конвертери жок ATMega328ди гана колдонууну чечтим.

Схемада төрт негизги бөлүк бар (ачык микроконтроллерден башка): энергия булагы, кристалл осциллятору, тепкичтүү мотор драйверлери жана bluetooth модулу.

Электр камсыздоо

Электр энергиясы мен eBayден сатып алган 3А 5В электр энергиясынан келет. Бул оң учу бар 5.5мм OD, 2.1мм ID баррели сайгычы менен аяктайт. Ошентип, учу 5В булагына туташат, жана жерге шакек. Электр булагынан келген ызы -чууну басаңдатуу үчүн 1uF ажыратуучу конденсатор бар. 5V менен камсыздоо VCC менен AVCCге туташканына көңүл буруңуз жана жер GND менен AGNDге туташкан.

Crystal Oscillator

Мен 16MHz кристалл осцилляторун жана ATMegaXX8 үй -бүлөсү үчүн маалымат барагына ылайык 2 22 pF конденсаторлорун колдондум. Бул микроконтроллердеги XTAL1 жана XTAL2 төөнөгүчтөрүнө туташкан.

Stepper Motor айдоочулары

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

Bluetooth модулу

HC-05дин TX микроконтроллеринин RX, RX менен TXке туташкан. Бул Bluetooth модулуна алыскы түзмөктөн жөнөтүлгөн нерсе микроконтроллерге жана вице -аятка өтүшү үчүн. KEY пини модулда орнотуулардын кокусунан кайра конфигурацияланышы үчүн ажыратылган бойдон калат.

Эскертүүлөр

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

6 -кадам: Stripboard макетин пландаштыруу

Stripboard макетин пландаштыруу
Stripboard макетин пландаштыруу

Стриптиздин макети да өтө татаал эмес. ATMega ортодо жатат, тепкичтүү мотор драйверлери жана bluetooth модулу алар туташтырылышы керек болгон төөнөгүчтөр менен тизилген. Кристалл осциллятору жана анын конденсаторлору Stepper3 менен HC-05тин ортосунда отурат. Бир ажыратуучу конденсатор электр менен камсыздоо тактага түшөт, ал эми бирөө 1 жана 2 -кадамдардын ортосунда жатат.

X белгиси туташууну үзүү үчүн тайыз тешик жасоо керек болгон жерди белгилейт. Мен 7/64 дюймдук бургучту колдондум жана тешик биттин диаметридей кенен болгонго чейин гана бургуландым. Бул жездин изинин толугу менен бөлүнүшүн камсыздайт, бирок керексиз бургулоодон сактайт жана тактайдын бекем болушун камсыз кылат.

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

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

Soldering
Soldering
Soldering
Soldering
Soldering
Soldering
Soldering
Soldering

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

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

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

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

Калган компоненттерге шилтеме берүү үчүн биринчи IC розеткасына коштум. Розетканын багытын белгилегениңизди текшериңиз! Жарым тегерек чегинүү 10k каршылыкка жакын болушу керек. Ал ширетилгенге чейин ордунда калууну жактырбагандыктан, сиз (албетте, флюсту колдонуңуз) эки карама -каршы бурчтук калайларды калайлап, розетканы астынан кармап, калайларды кайра жылдырсаңыз болот. Эми розетка ордунда калышы керек, андыктан калган казыктарды ширете аласыз.

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

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

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

Чипти розеткага салыңыз, жарым тегерек чектери бир тарапта экенине көзүңүз жетти. Эми дубалдын, андан кийин DC электр уячасынын электр энергиясын сайыңыз. Эгерде тепкичтин айдоочуларынын чырактары күйүп калса, электр энергиясын өчүрүп, бардык туташууларды текшериңиз. Эгерде ATMega (же тактанын кайсы бир бөлүгү, ал тургай электр менен камсыздоо зымы) өтө ысып кетсе, электр энергиясын сууруп, бардык туташууларды текшериңиз.

Эскертүү

Лайк берүү агымы "Сөзмө-сөз сыйкырдуу" деп кайра аталышы керек. Олуттуу, агым нерселерди сыйкырдуу кылат. Каалаган убакта, аны берешендик менен колдонуңуз.

8 -кадам: ATMegaдеги жүктөгүчтү күйгүзүү

ATMegaдеги жүктөгүчтү күйгүзүү
ATMegaдеги жүктөгүчтү күйгүзүү

Мен ATMegasымды алганымда, эмнегедир эч кандай эскиздерди жүктөөгө уруксат бербей коюшту, ошондуктан мен жүктөгүчтү кайра күйгүзүүгө туура келди. Бул абдан оңой процесс. Эгерде сизде чипте Arduino/optiboot жүктөгүч бар экенине ишенсеңиз, бул кадамды өткөрүп жибере аласыз.

Төмөнкү көрсөтмөлөр arduino.cc боюнча окуу куралынан алынды:

  1. ArduinoISP эскизин Arduino тактаңызга жүктөңүз. (Сиз тактаңызга шайкеш келген Tools менюсунан тактаны жана сериялык портту тандап алышыңыз керек)
  2. Оң жактагы диаграммада көрсөтүлгөндөй Arduino тактасын жана микроконтроллерди өткөрүңүз.
  3. Tools> Board менюсунан "Arduino Duemilanove or Nano w/ ATmega328" тандаңыз.(Же "ATmega328 нан панелинде (8 МГц ички саат)", эгерде төмөндө сүрөттөлгөн минималдуу конфигурация колдонулса.)
  4. Run Tools> Burn Bootloader> w/ Arduino катары ISP. Жүктөгүчтү бир гана жолу күйгүзүү керек. Муну кылгандан кийин, Arduino тактасынын 10, 11, 12 жана 13 -казыктарына туташтырылган секирүүчү зымдарды алып салсаңыз болот.

9 -кадам: Arduino эскизи

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

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

10 -кадам: Arduino эскизин жүктөө

Arduino эскизин жүктөө
Arduino эскизин жүктөө

Төмөнкүлөр негизинен arduino.cc сайтынан ArduinoToBreadboardдон көчүрүлөт:

Сиздин ATmega328pде Arduino жүктөгүч бар болгондон кийин, Arduino тактасындагы USB-сериялык конверторду (FTDI чип) колдонуу менен ага программаларды жүктөй аласыз. Бул үчүн, сиз Arduino тактасынан микроконтроллерди алып саласыз, ошондо FTDI чипи микробапкадагы микроконтроллер менен сүйлөшө алат. Жогорудагы диаграмма RX жана TX линияларын Arduino тактасынан ATmega'ге кантип туташтырууну көрсөтөт. Микроконтроллерди программалоо үчүн Tools> Board менюсунан "Arduino Duemilanove or Nano w/ ATmega328" тандаңыз. Анан адаттагыдай эле жүктөңүз.

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

11 -кадам: Android App Code

Жөн эле Arduino коду сыяктуу эле, менин Android кодум бул жерде. Дагы, бул өзү документтештирилген, бирок бул жерде кыскача сереп.

Бул колдонуучудан датаны алат жана ошол күнү Меркурий, Венера жана Жер кайда/болгонун эсептейт. Муну жөнөкөйлөтүү үчүн түн ортосу болжолдонот, бирок, балким, мен жакында колдоо көрсөтөм. Бул эсептөөлөрдү AstroLib аттуу укмуштуудай Java китепканасынын жардамы менен жасайт, ал мен колдонгондон да көптү кыла алат. Бул координаттарга ээ болгондон кийин, ал планеталардын ар бири үчүн bluetoooth модулуна жөн гана узундукту (адатта, планетардык орбиталар жөнүндө ойлонгон "позицияны") жөнөтөт. Бул абдан жөнөкөй!

Эгерде сиз долбоорду өзүңүз түзгүңүз келсе, адегенде телефонуңузду иштеп чыгуучу режимине коюшуңуз керек. Бул боюнча көрсөтмөлөр телефонуңуздун өндүрүүчүсүнө, түзмөктүн моделине, эгер сиз ыңгайлаштырылган режимди иштетип жатсаңыз, көз каранды болушу мүмкүн; бирок, адатта, Жөндөөлөргө баруу -> Телефон жөнүндө жана "Build Number" баскычын 7 жолу басуу менен жасаш керек. Сиз иштеп чыгуучу режимин иштеттиңиз деп тост билдирмесин алышыңыз керек. Эми Орнотуулар -> Иштеп чыгуучунун параметрлерине өтүп, USB мүчүлүштүктөрдү оңдоону күйгүзүңүз. Эми заряд + маалымат USB кабели аркылуу телефонуңузду компьютериңизге туташтырыңыз.

Эми GitHubдан долбоорду жүктөп алыңыз же клондоштуруңуз. Жергиликтүү деңгээлде болгондон кийин, аны Android Studioдо ачып, Run дегенди басыңыз (жогорку панелдеги жашыл ойнотуу баскычы). Тизмеден телефонуңузду тандап, ОК басыңыз. Телефонуңузда, сиз туташкан компьютерге ишенесизби деп сурайт. "Ооба" дегенди басыңыз (же эгер бул сиздин компьютериңиз болсо, "бул компьютерге дайыма ишениңиз"). Колдонмо түзүлүп, телефонуңузга орнотулуп, ачылышы керек.

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

Колдонмону колдонуу абдан жөнөкөй.

  1. Эгерде сиз HC -05ти телефонуңуз менен буга чейин жупташтыра элек болсоңуз, муну Орнотуулар -> Bluetooth бөлүмүнөн аткарыңыз.
  2. Жогорку оң бурчтагы параметрлер менюсунан "туташуу" баскычын басыңыз.
  3. Тизмеден түзмөгүңүздү тандаңыз
  4. Бир нече секунддан кийин, сиз туташкандыгы жөнүндө билдирүү алышыңыз керек. Болбосо, планетарий күйүп жатканын эмес, күйүп турганын текшериңиз.
  5. Күндү тандаңыз. Айды, күндү жана жылды айкалыштыргычтарды өйдө -ылдый жылдырыңыз жана жебе баскычтарын колдонуп, бир убакта 100 жылга артка же алдыга секириңиз.
  6. Жөнөтүүнү басыңыз!

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

13 -кадам: Акыркы эскертүүлөр

Менин биринчи материалдык долбоорум болгондуктан, көп нерсени үйрөндүм десем жаңылышпайм. Чынында, ал мага кодду оңдоп -түзөөдөн баштап, ширетүүгө, долбоорду пландаштырууга, видеону монтаждоого, 3D моделдөөгө, микроконтроллерлерге, … Муну уланта алам.

Мааниси, эгер сиз USFке (Go Bulls!) Барсаңыз жана мындай нерселерге кызыксаңыз, MAKE курсун алыңыз. Эгерде сиздин мектеп окшош нерсени сунуштаса, кабыл алыңыз. Эгерде сиз мектепте болбосоңуз же окшош классыңыз жок болсо, анда бир нерсе жасаңыз! Чынын айтканда, бул эң оор кадам. Идеяларды алуу кыйын. Бирок сизде идея болгондон кийин аны менен чуркаңыз. "Ой, бул келесоо" же "оо менин убактым жок" деп айтпаңыз. Жөн гана бул идеяны укмуш кыла турган нерсени ойлонуп, аны аткарыңыз.

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

Бул Нускамалык сизге жакты деп ишенем!

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