Мазмұны:

Clockception - Сағаттан жасалған сағатты қалай құруға болады !: 14 қадам (суреттермен)
Clockception - Сағаттан жасалған сағатты қалай құруға болады !: 14 қадам (суреттермен)

Бейне: Clockception - Сағаттан жасалған сағатты қалай құруға болады !: 14 қадам (суреттермен)

Бейне: Clockception - Сағаттан жасалған сағатты қалай құруға болады !: 14 қадам (суреттермен)
Бейне: 🕐Clockception 🕐 : Kinetic wall clock model using SwiftUI. Animation are done by only coding. 2024, Шілде
Anonim
Clockception - сағаттардан жасалған сағатты қалай құруға болады!
Clockception - сағаттардан жасалған сағатты қалай құруға болады!
Clockception - Сағаттардан жасалған сағатты қалай құруға болады!
Clockception - Сағаттардан жасалған сағатты қалай құруға болады!

Бәріне сәлем! Бұл менің 2020 жылы алғаш рет өткізілетін авторлар байқауына ұсынысым! Егер сізге бұл жоба ұнайтын болса, мен сіздің дауысыңызға риза болар едім:) Рахмет!

Бұл нұсқаулық сізге сағаттардан жасалған сағатты құру процесін көрсетеді! Мен оны ақылды түрде «Сағат сезімі» деп атадым. Мен білемін, өте түпнұсқа.

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

Айтпақшы, тапсырыс бойынша жасалған өнер әдетте қымбатқа түседі. Бұл жағдайда финишке байланысты $ 6к - $ 11к.. Егер сіздің мүмкіндігіңіз болса, мен сізге біреуін алуға кеңес берер едім. Бірақ егер сізде мендікіндей 6 мың долларлық бос ақша жоқ болса, онда сіз сәттілікке жетесіз, себебі бүгін мен сізге 200 долларға қарапайым нұсқасын қалай жасау керектігін көрсетемін. 3D принтер!

Ескертпе: «Сіз төлейтін нәрсені аласыз» деген сөз дәл осы жағдайда орындалады, себебі менің дизайн түпнұсқаның синхрондалған күрделі сәттерін жасай алмайды. Бірақ мен әлі де керемет деп ойлаймын, әсіресе сіз мұны жасадыңыз деп айта аласыз!

1 -қадам: Дизайнға шолу

Дизайнды шолу
Дизайнды шолу
Дизайнды шолу
Дизайнды шолу
Дизайнды шолу
Дизайнды шолу
Дизайнды шолу
Дизайнды шолу

Дизайнда бірінші кезекте қозғалыс болды.

Менің ойымша, сағаттың нақты нұсқасы қолды жылжыту үшін индикаторларды жылжыту үшін автомобиль инструменттерінің кластерлерінде қолданылғандай, концентрлі қос білікті қадамдық қозғалтқыштарды қолданады. Біраз зерттей келе, мен бұл жұмысты орындай алатындай көрінетін мотор таптым, бірақ олар өте қымбат болды және өте ұзақ уақытқа созылды (1м +). Жұмысқа бармайды.

Екінші жағынан, сервистер арзан, қол жетімді және бағдарламалау өте оңай. Шешім табылды.

АЖЖ -де біраз уақыттан кейін мен дизайнды ойлап таптым. Жоспарда әр сағаттың қолын екі сервоприводты қозғалтқышпен басқаруға болатын 24 кішкене сағаттар жасау керек еді, сол сағаттарды тақтаға 8х3 торға орнатып, қозғалыстарды басқару үшін кодты жазу керек, осылайша қолдар сандар жасайды. Миссия жоспары аяқталды.

Бұл сұрыптау арқылы мен қолдың орналасуын әр сан үшін олардың орналасуын салыстыруға аудардым.

Бұл Интернетте ClockClock әрекетіндегі суреттер мен бейнелерді іздеуді қамтиды. Мен кейбір сандардың суреттерін таптым, бірақ мен жақсы мөлшерде құрғақ болдым. Біраз көңілсіздіктен кейін жоғарыдан жарық түсіп, мен біреудің ClockClock цифрлық нұсқасын жасаған және барлық позициялардың суреті бар сайтты кездестірдім. Гол!! Manu.ninja сайтындағы Мануэльге несие. Жобамен оның блогтағы жазбасын қараңыз! Өте керемет заттар!

Мен мұны қолдана отырып, уақытты айналдыра отырып, цифрларды құру үшін әр қолмен бір саннан келесіге өту үшін қажет позиция мен қозғалыстарды салыстырдым. (Жарты күндік жұмыс 26 сөзбен қорытылды.. күрсіну..) Кейбір заттарды жасау уақыты келді!

2 -қадам: материалдарға тапсырыс беру

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

3D принтері мен сүзгісі

Егер сізде 3D принтері болмаса, сізге бұл жобаны алу қажет. Бөлшектерді басып шығару қызметі арқылы басып шығаруға болады, бірақ мен бұл бағытты ұсынбаймын, себебі басып шығару қажет бөлшектердің санына байланысты өз принтеріңізді сатып алу үнемді болар. Сонымен қатар, егер сіз өз қолыңызбен сатып алсаңыз, сізде болашақта қалағаныңыздай принтер болады! Егер сізге біреу керек болса, мен Creality by Ender 3 ұсынамын. Бұл мен осы жобада қолданған принтер, мен тек екіншісін алдым. Оларды шамамен 250 долларға сатып алуға болады және баға бойынша өте жақсы басып шығаруға болады.

Ender 3 Creality 3D бойынша -

Мен жеке сағаттар үшін қара және ақ түсті PLA материалын қолдануды шештім, бірақ сіз қалағаныңызша креативті бола аласыз! Мысалы, мен материалды таусылғанда, қалаған сұрды қолдандым. Егер сіз 3D басып шығаруда жаңадан болсаңыз, ABS арқылы PLA пайдалануды ұсынамын, себебі оны басып шығару оңайырақ.

  • (2) HATCHBOX PLA 3D принтер филаменті - ҚАРА -
  • (1) HATCHBOX PLA 3D принтерлік жіп - АҚ -

Бұл жобаға барлығы 1416г материал немесе 470м қажет. Егер сіз сағат корпусының түсі қолдың түсінен өзгеше болғанын қаласаңыз, онда денеге 1176 г, ал қолға 96 г қажет. Қалған компоненттерді екі түсті етіп басып шығаруға болады, бұл үшін 144г қажет.

Электроника

  • (48) SG90 9g микросерво -
  • (3) PCA9685 16 арналы PWM серво -мотор драйвері -
  • (1) DS1302 нақты уақыт модулі -
  • (1) Arduino Nano V3.0 микроконтроллері -
  • (1) 5в 2а тұрақты ток көзі -
  • Әр түрлі секіргіш сымдар -

Құрылыс материалдары

Мен ағаш дүкенінен таба алатын ең арзан ағашты қолдандым (терек) және Варатоннан алынған қызыл ағаштан жасалған дақтармен/полиэтиленмен жүрдім. Тағы да, өзіңіз қалағандай шығармашылықпен айналысыңыз! Үйеңкі? Шие? Таңдау сіздікі!

  • 3 'x 16 «x 3/4» Терек тақтасы - Жергілікті ағаш дүкені
  • Варатхан махоган сатин дақтары мен полиуретан -
  • 320 ұсақ құмды қағаз -
  • 100 орташа құмды қағаз -
  • Бояу щеткасы (немесе оған балама) -
  • (100) #4 3/8 «Филлипс Пан Панельді Металл Бұранда -
  • (96) M2.5 6 мм розеткаға арналған бұрандалар -
  • Супер желім гелі -
  • (Қосымша) көп мақсатты майлағыш -

Құралдар

Егер сізде DIY -дің негізгі құралдары болса (бұрғылау және бұрғылау қондырғылары, бұрағыштар, рулетка және шаршы) болса, сіз оны орнатуыңыз керек. Маған ағаш дүкенінен алған қатты ағашты кесу үшін үстелдің арасы қажет болды, бірақ олар оны дүкенде сіз үшін қиып алуы мүмкін.

Сондай -ақ, мен тақтаның шеттерін дөңгелектеу үшін 1/4 дюймдік радиусты маршрутизаторды қолдануды таңдадым, бірақ бұл қадам міндетті емес. Егер сізде маршрутизатор болмаса немесе оны осы жобадан үзгіңіз келмесе, Бөлінудің алдын алу және сағатты басқаруды жеңілдету үшін өткір жиектерді сәл тегістеңіз.

Мен бұл жобаға 3-1/2 дюймдік аралау машинасын сатып алуым керек еді. Мен Милуоки мұзды қатайтылған шұңқырлы дозермен бірге бардым! Егер сіз бұл атауды айта алмасаңыз, бұл құрал өте жақсы тесіктер жасайды. Егер сіз дәл осы жолмен жүрсеңіз, сізге араның бекітетін адаптері қажет болады.

  • Милуоки 3-1/2-дюймдік мұзды қатайтылған тесікті көрді-https://amzn.to/3eYilJC
  • Милуоки жылдам ауысатын тесік, 1/4 «https://amzn.to/35ac3C5

3 -қадам: бөліктерді басып шығару

Басып шығару бөліктері
Басып шығару бөліктері
Басып шығару бөліктері
Басып шығару бөліктері
Басып шығару бөліктері
Басып шығару бөліктері

Мен бұл қадамды бірінші орынға қойдым, себебі бұл ең ұзақ уақытқа созылуы мүмкін. Мен үшін сағат корпусын басып шығару шамамен 3 сағатты құрады, олардың 24 -і бар (барлығы 72 сағатты, бос уақытты қоспағанда). Мен сатып алған екінші принтер арнайы осы жобаға арналған деп айттым ба? Жақсы болды.

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

Сағат жиындары

  • (24) Сағат денелері
  • (24) минуттық қолдар
  • (24) Сағат тілдері
  • (24) 12T Gear/ Small Hole
  • (24) 12T Gear w/ Big Hole
  • (24) Сақиналар
  • (48) 32T Servo Gear

Әр түрлі

  • (2) тірек жақшалар
  • (1) Clock Body Drill Jig

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

4 -қадам: алдыңғы панельді кесіңіз

Алдыңғы панельді кесіңіз
Алдыңғы панельді кесіңіз
Алдыңғы панельді кесіңіз
Алдыңғы панельді кесіңіз
Алдыңғы панельді кесіңіз
Алдыңғы панельді кесіңіз

Панель аяқталғаннан кейін және сіз бұл телешоуды тамашалауға құмар болсаңыз, 3D басып шығарылған бөліктер мағыналы болуы керек, сағаттарды жинайтын уақыт келді!

Фотосуреттерде мен сағаттардың бір -бірімен қалай үйлесетіні туралы көріністі енгіздім.

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

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

  1. 12Т редукторының кішкене тесікпен минуттық тілге сәйкес келуін тексеріңіз. Ол тығыз болуы керек, бірақ берілісті қосу мүмкін емес. (Кешіріңіз, менде мұндай сурет жоқ)

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

  2. 12Т редукторының үлкен тесікпен сағат тіліне сәйкестігін тексеріңіз. Тығыздығы да тығыз болуы керек.

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

  3. Бекіткіш сақинаның сағат тіліне сәйкес келуін тексеріңіз. Сақина ерінге сағат тіліне сәйкес орналасуы керек. Тығыз болуы керек.

    Егер бөлшектер сәйкес келмесе, сіз сақинаның сырғып кетуі керек болатын сағат тілінің сыртын құмдау үшін ұсақ құмды қағазды (шамамен 320) қолданғыңыз келеді. ЕСКЕРТПЕ: Тегістеу сақинасы орналасқан материалды алып тастау үшін тегістеуді оқшаулауға тырысыңыз

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

    Негізден немесе біліктен қосымша материалды алып тастаңыз. Білік табаны бүкіл айналдыра 90 градус бұрыш жасауы керек

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

    Егер бөлшектер сәйкес келмесе немесе минут айналған кезде фантастика болса, сіз сағат тілінің ортасын бұрғыңыз келеді. Мен үшін бұл №18 бұрғылау ұшымен (0,1695 дюйм) орындалды. ЕСКЕРТПЕ: Сағат тілін бұрғылауға болмайды, бұл жинақталған күйде ойнауға аударылады. біліктің диаметрін сағат тілінде өлшеңіз және диаметрінен үлкен «.005 -.010» бұрғылау ұшын сатып алыңыз

  6. Сағат корпусының ішкі жағына сағат корпусының алдыңғы және артқы жағынан сәйкес келуін тексеріңіз. Бөліктер бір -бірінің ішінде айналуы керек болғандықтан, үйкеліс үйкеліссіз болуы керек.

    • Егер ол алдыңғы жағынан емес, артқы жағынан сәйкес келсе, принтердің құрастыру тақтасында орналасқан дененің бетінде ерін болуы мүмкін. Мұны корпустың білігінің айналасында ұстараны қолдану арқылы жоюға болады.
    • Егер артқы немесе алдыңғы жағынан сәйкес келмесе, сағат тілінің сыртқы білігіне қараңыз. Егер 3D принтерінде бөртпелер немесе бөртпелер болса, оларды тегістеу керек, содан кейін сәйкестігін тексеріңіз.
    • Егер тегістеуден кейін ол әлі де сәйкес келмесе, онда сағат корпусындағы орталық білікті бұрғылау қажет. Мен үшін бұл 21/64 дюймдік бұрғылау ұшымен орындалды. Сағат тілінің білігін өлшеу үшін калибрлер жиынтығын қолданыңыз және айналасында бұрғылау ұшын қолданыңыз «.005 -.010 «диаметрі сағат корпусын бұрғылау үшін үлкенірек.

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

7 -қадам: сағаттарды - желім мен бұранданы жинаңыз

Сағаттарды - желім мен бұранданы жинаңыз
Сағаттарды - желім мен бұранданы жинаңыз

Сіз алдыңғы қадамды өткізіп жібердіңіз деп үміттенемін, бірақ егер олай болмаса, менің жүрегім сізбен.

Барлық бөлшектер бір -біріне сәйкес келсе, желімдеу мен бұрау уақыты келді! яғни сағаттарды жинау.

Ассамблея

  1. Сағат тілін сағат корпусына енгізіп, сақинаны ұстаңыз. Бекіткіш сақинаның ішкі диаметріне (ИД) аз мөлшерде супер желім жағыңыз және оны сағат тілінің артына сырғытыңыз. Сақинаның толық отырғанына көз жеткізіңіз, сондықтан сағат тілінде аударма ойыны болмайды. ЕСКЕРТПЕ: желіммен консервативті болыңыз. Сіз сақинаны орнатқан кезде біліктің жоғарғы жағына кездейсоқ желіммен ұрғыңыз келмейді және желімнің біліктен төмен ағып кетуін және қолды денеге бекітіп алуын қаламайсыз.
  2. Үлкен саңылауы бар 12Т редукторын алыңыз және редуктордың идентификаторына сәл желім жағыңыз.
  3. Берілісті сағат тіліне қарай жылжытыңыз. Сервадағы редуктордың дұрыс туралануы үшін оның толық отырғызылғанына көз жеткізіңіз.
  4. Серво алыңыз, кабельді бекіткішке қарай бағыттаңыз және орнына қойыңыз. ЕСКЕРТПЕ: Серво білікті орталық білікке тікелей қарама -қарсы орнатылуы керек (суретті қараңыз)
  5. Сервоны M2 бұрандалармен орнына бұрап, екінші жағынан қайталаңыз.
  6. Серво біліктерінің екеуін және бірінен соң бірін ұстаңыз, оларды серво біліктеріне сырғытыңыз. ЕСКЕРТПЕ: Бұл редуктордың ішкі жағында тістер жоқ және олар қысымды. Олар редуктордың жоғарғы жағына айналмалы қозғалыста біртіндеп қысым жасау арқылы жақсы орнатылады.
  7. Редукторды орнына қою үшін серво бірге жеткізілген бұранданы қолданыңыз. Екінші жақ үшін қайталаңыз.
  8. Сағат тілінің реттегіші сағат 12 -ге жақын болатындай етіп реттеңіз, оны қолмен ажырату үшін серво берілісіне аздап қысым көрсетіп, қолды бұру қажет.
  9. Сағат тілінің ортасына минуттық қолды орнатыңыз және оны сағат 12 -ге бұрыңыз.
  10. Кішкене саңылауы бар 12T беріліс қорабын алыңыз және редуктордың идентификаторына сәл желім жағыңыз. Берілісті сағат тілінің артқы жағындағы минуттық тілге сырғытыңыз. Редуктордың толық бекітілгеніне көз жеткізіңіз.

Енді сізде 1 жиналған сағат болуы керек! Ву!

Енді қалған 23 үшін.. ЕСКЕРТУ: Шыдамдылық қажет болады.

8 -қадам: сағатты панельге жинаңыз

Сағатты панельге жинау
Сағатты панельге жинау
Сағатты панельге жинау
Сағатты панельге жинау
Сағатты панельге жинау
Сағатты панельге жинау

Сіз жасадыңыз. Барлығы 24 сағат. Жақсы жұмыс.

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

Бекіту тесіктерін бұрғылау

  1. Ағаш панельді қайтадан ұстап, артқы жағын жоғары қаратып бірнеше блокқа орнатыңыз. Алдыңғы бетін сызатпау үшін блоктарды сүлгімен жабыңыз.
  2. Бұрғылауға 1/16 дюймдік битті орнатып, бұранданы бірінші тесікке салыңыз.
  3. Панельдің шетіне параллель болу үшін квадратты (немесе көз алмаңызды) бұраңыз.
  4. Бит ұшын қондырғыдағы тесікке салыңыз да, тесіктерді 1/2 дюймге дейін мұқият бұрғылаңыз. Панельдің алдыңғы жағын бұрғыңыз келмейтіндіктен баяу өтіңіз. Оны орналастыру оңай ұшынан 1/2 дюймге кішкене O-сақина және O-сақина қондырғыға тигенше бұрғылаңыз. Сақина қосымша уақытта жүреді, сондықтан сізге оны реттеу қажет болуы мүмкін, бірақ оны соқыр жасағаннан гөрі жақсы.
  5. Қалған 23 тесік үшін қайталаңыз.
  6. Панельдің артқы жағындағы екі тірек кронштейнді сыртқы шетінен шамамен 1,5 дюймге және төменгі жиегімен қатарға қойыңыз. Сол 1/2 дюйм тереңдікте бұрғылаңыз.

Сағаттарды орнату

  1. Сағат алыңыз да, оны төмен қаратып панельге қойыңыз.
  2. № 4 қаңылтыр металл бұрандалардың 4 -ін пайдаланып, сағатты орнына қойыңыз. Мен мұны жасамау үшін қарапайым бұрағышты қолдандым.
  3. Қалған 23 сағатты қайталаңыз.
  4. Сол бұрандалардың көмегімен екі тірек кронштейнін бекітіңіз.
  5. Сағатты аударыңыз және жұмысыңыздан ләззат алыңыз!

Бұл жерде жақсы демалыңыз, өйткені сіз жарты жолды аяқтадыңыз және сіз оған лайықсыз!

9 -қадам: Барлығын бірге қосыңыз

Бәрін бірге қосу
Бәрін бірге қосу
Бәрін бірге қосу
Бәрін бірге қосу
Бәрін бірге қосу
Бәрін бірге қосу
Бәрін бірге қосу
Бәрін бірге қосу

Электроникаға!

Жұмысты бастамас бұрын біз PWM серво драйверлеріне бірнеше өзгертулер енгізуіміз керек, осылайша біз олардың барлығын тізбектей аламыз.

PWM драйверлері

  1. Егер драйверлер жиналмаса, оларды жинау керек. Егер сіз жиналмағандарын сатып алсаңыз, мен мұны қалай жасау керектігін білемін деп ойлаймын.
  2. Жүргізушілердің екеуінде тақтаны тақтаның бір жағына дәнекерлеңіз. Бұл оларға ромашкамен бірге байлауға мүмкіндік береді. Бір жағын қойыңыз.
  3. Әрі қарай, біз бірегей мекенжайды беру үшін тақтадағы екі контактіні байланыстыруымыз керек. Бұл тақта үшін «A0» контактілері болады. Дәнекерлеуішті және аздап немесе дәнекерлеуішті қолданып, жастықшаларды жалғау үшін дәнекерлеуді сүйреңіз. Басқа жастықшалардың бүтін және көпірсіз болуын қамтамасыз етіңіз.
  4. Ақырында, тақтада сіз қосымша тақырыпты дәнекерлемедіңіз, A1 деп белгіленген екі контактіні байланыстырыңыз.

Жүргізушілер дайын болғанда, барлығын сыммен қосатын уақыт келді. Серво қосылымдары көп, сондықтан ол сәл түкке айналады, бірақ мен оны кез келген серво желісін ұзартпай -ақ сәйкестендіре алдым. Фотосуреттерге қарап, мен оны қалай жасауға болатынын білемін.

Сымдар

  1. Серво сызықтарын әр тақтаға 16 жолды қосуға мүмкіндік беретін тәулік бойымен және айналасында бағыттаңыз. Егер сіз менің маршрутты көшіргіңіз келсе, фотосуретті қараңыз. Егер сіз маршруттауды көшірмесеңіз, әр серво қай тақта мен түйреуішке қосылғанын ескеруіңіз керек. Жоғарыдағы фотосуреттерде мен қолданған атау конвенциясын көрсететін матрица бар. Сол конвенцияны қолданыңыз, сондықтан кодты кейін өзгерту қажет болмайды.
  2. Өткізгіш сымдарды қолдана отырып, үш драйверді бір -біріне тікелей тізбектеңіз. Сызықтар қиылыспайтынына көз жеткізу үшін жұмысыңызды екі рет тексеріңіз. Түйреуіштер драйверлердің оң және сол жағында таңбаланған, ал егер сіз түрлі түсті сымдарды қолдансаңыз, оны айту оңай болуы керек.
  3. Бірнеше секіргіш сымдарды қолдана отырып, Arduino Nano -ны бекітілген суретке сәйкес 1 -ші серво драйверіне бекітіңіз. Мен оларды сол жақ төменгі оң жақ корпусына бағыттадым, сонда мен Arduino -ды жасыра аламын. Бос орын көп, сымдар беріліс қорабына түспеуін екі рет тексеріңіз.
  4. Бірнеше секіргіш сыммен, нақты уақыт сағатын (RTC) Arduino -ға қосылған суретке сәйкес қосыңыз. Мен мұны денеде Arduino көмегімен тәулік бойы жасыра алдым.
  5. Соңында, 5 В қуат көзін бірінші PWM драйверіндегі жасыл бұрандалы терминалдарға қосыңыз.

Сағат қазір өте жақсы көрінуі керек !! Өкінішке орай, ең қиын кезең келді.

10 -қадам: позицияларды калибрлеу

Позицияларды калибрлеу
Позицияларды калибрлеу

Жарайды, мен бұл қадамды жеңілдету үшін сағат жиынын жақсырақ жасау керек екенін білдім.

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

Бұл шаршатады, бірақ мүмкін емес. Мен мұны істеу үшін біраз код жаздым және нәтижелерді сақтау үшін диаграмма жасадым. Код сізге калибрлеп жатқан серво позициясын басқаруға арналған сериялық монитор болса да, позицияны градуспен жіберуге мүмкіндік береді. Қысқаша айтқанда, қандай позиция 12, 3 және т.б. сәйкес келетінін анықтағаннан кейін, сіз диаграммада және формулаларда сағатты іске қосу үшін автоматты түрде негізгі кодты жасайтынын байқайсыз. Болашақта мен конструкцияны кілт механизмі бар етіп жаңарта аламын, бірақ әзірге сізге төмендегі қадамдарды орындау қажет.

Егер сіз әр сағатты әр қолыңыз үшін түйреуіш пен драйвер тақтасымен белгілесеңіз, бұл процесс әлдеқайда жеңіл болады. Бірнеше жабысқақ ноталарды (жақсырақ үш түсте) және қалам алыңыз. Әр түстің 8 нотасын алыңыз және келесі жұптарды жазыңыз. «0-1», «2-3», «4-5» … т.б. Бұл әр сағат үшін минуттық түйреуіштер жұптары болады. Сағатыңызды орнатыңыз және осы жазбаларды алдыңғы сағат корпусының жанындағы тақтаға қойыңыз.

Позицияларды калибрлеу

  1. Егер сізде жоқ болса, Arduino кодтау бағдарламасын жүктеңіз және орнатыңыз.
  2. Келесі сілтеме бойынша «Сағаттың калибрленуі және коды» деп аталатын excel жұмыс кітабын жүктеңіз және ашыңыз және «Калибрлеу кестесі» парағына өтіңіз.
  3. Adafruit-PWM-сервистік-драйвер-кітапханасын төмендегі сілтеме бойынша жүктеп алып, оны Arduino кітапхана қалтасына қойыңыз. Кітапхана қалтасы әдетте компьютерде / Arduino гүлінің құжаттарында болады.
  4. Төменде берілген «Calibrating_the_Pozitions» деп аталатын Arduino эскизін жүктеңіз және ашыңыз.
  5. Негізгі бос циклде ең төменгі жолдың бірінші бағанының сағат тілінің код жолын өзгертіңіз (атау шартына сәйкес C1H). «3» -ті сағат тілімен байланысқан тақтаға, ал «14» -ті қолмен қосылған түйреуіш нөміріне ауыстырыңыз. «board3.setPWM (14, 0, pulse2);»
  6. Сіздің тақтаның наноға орнатылғанына және Arduino бағдарламалық жасақтамасында дұрыс сериялық порт таңдалғанына көз жеткізіңіз. Сериялық мониторды ашып, эскизді жүктеңіз. Сериялық мониторда «Пәрменге дайын» деген жазу болуы керек.
  7. Сервоға «120» жіберіңіз. Сағат тілі сәйкес 120 позицияға дейін болуы керек.
  8. Сервоны қалыпта қалдыру кезінде қолды сағат 12 -ге жақын қаратып алу үшін сізге беріліс торынан секіру қажет болады. Мұны серво берілісін сәйкес сағаттық берілістен ақырын тартып алу және қолды 12 позицияға қарағанша бұру арқылы жасауға болады. ЕСКЕРТПЕ: Бұл керемет болуы қажет емес, тек 12 -ге жақын жерде.
  9. Бұл реттеу аяқталғаннан кейін сервоприводқа «80» жіберіңіз. Қол сағат тілінің бағытымен қозғалуы керек.
  10. Енді сіз «120» мен «80» командаларының арасында ауысуыңыз керек және сағат 12 -ге қандай команда сәйкес келетінін білмейінше 120 санын өзгертуді жалғастыруыңыз керек. Сіз оны алғаннан кейін мұны C1 сағаттық CCW бағанының Excel парағында ескеріңіз.
  11. Содан кейін, сағат мәнінің бағыты бойынша 3 сағаттық позицияның нөмірін алғанша, 12 мәні мен «80» шамасындағы нәрсені ауыстырыңыз. Мұны C1 сағаттық CW бағанындағы кестеде ескеріңіз.
  12. Содан кейін, сағат мәнінің бағыты бойынша 6 сағаттық позиция үшін 3 мәні мен «40» санының айналасындағы нәрсені ауыстырыңыз. Бұл мәнге назар аударыңыз.
  13. Сағат 7.5 позициясы кестеде есептелген, сондықтан бұл туралы алаңдамаңыз.
  14. Өзіңіздің 6 мәніңіз бен «10» шамасындағы нәрсені ауыстырып, бағаны CCW бағытында сағат 9 -да алыңыз.
  15. Редукторлар мінсіз болмағандықтан, енді оны сағат тіліне қарсы бағытта қайталау керек, өйткені мәндер сәл өзгеше болады және әр қол әр түрлі сандар үшін екі жақтан позицияларды ұруы қажет болады.

Енді сізде бір қолды бірінші сағатта калибрлеу керек !!

«Board3.setPWM (14, 0, pulse2)» сандарын өзгертіңіз; C1 минуттық қолының кодын енгізіңіз және процедураны қайталаңыз. Аяқтағаннан кейін қалған 23 жинақ үшін қайталау қажет болады.

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

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

11 -қадам: сандарды калибрлеу

Сандарды калибрлеу
Сандарды калибрлеу

Егер сіз осы уақытқа дейін жетсеңіз, дәл осы жерде сағат тіріледі!

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

Сізге бұл кодты алу, жүктеу және әр нөмірге жақсы түзетулер енгізу қажет.

Сандарды калибрлеу

  1. Төменде берілген «Calibrating_the_N Numbers» эскизін ашыңыз.
  2. Excel жұмыс кітабындағы «Код үшін бұрыштар» парағына өтіңіз.
  3. ЕГЕР ЖӘНЕ ТЕК Егер сіз менікінен өзгеше серво істікшелерін қолдансаңыз, оларды «Серво тақтасы мен түйреуіш тағайындаулары» кестесіне енгізіңіз.
  4. Әйтпесе, қара сызықтан өтіп, бірінші цифрдың кодын көшіріңіз.
  5. Оны төменгі жағындағы Arduino эскизіне қойыңыз.
  6. Сіз енгізген кодта осы жолдың қалың санын «11» етіп өзгертіңіз. «егер (сан == 0) {». Бұл сағатқа «0» жіберу үшін қолданылады.
  7. Негізгі циклде сіз калибрлейтін цифрдың қалың санын өзгертіңіз. «цифр4 (сан);»
  8. Эскизді жүктеп, сериялық мониторды ашыңыз. Сіз «Пәрменге дайын» дегенді көруіңіз керек.
  9. Сандар тек бірізділікпен жұмыс істеуге арналған. 1, 2, 3, т.б. Алға қарай тақтаға «11» жіберіңіз, бірақ егер ол өшірулі болса, ренжімеңіз. Бұл бұрын «2» болған деп болжанған. Басқа цифрлармен 1, 2 және 11 -ге ауысыңыз, енді сіз «0» -ге жақын нәрсені көруіңіз керек.
  10. Енді қолдардағы позицияларды жақсарту үшін бұрыштарды өзгерту қажет болады. Егер сізде әлі де жабысқақ болса, бұл қиын емес сияқты. Айтыңызшы, сіз 0 -ден 1 -ге ауысасыз, бірақ қолыңыздың біреуі ұнамайды. Қолдың тақтасына және түйреуішіне назар аударыңыз және кодты «else if (number == 1) {» астындағы жолдарға жылжытыңыз. Қолдың қозғалатын жолын табыңыз және егер қолыңыздың CW немесе CCW бағытында сәл көбірек қозғалуын қаласаңыз, бит қосыңыз немесе азайтыңыз.
  11. Егер сіз бұл қол жылжитын код жолын көрмесеңіз, себебі бұл нөмірді жасау үшін бұрынғы орнынан жылжудың қажеті жоқ және ол қолмен орнатылған. Бұл жағдайда 0 немесе 2 сандарымен артқа қарай жүріңіз, сол жолды табыңыз және сол жерде өзгертулер енгізіңіз.
  12. Қанағаттанғаннан кейін өзгертілген кодты көшіріп, оны Excel парағындағы түпнұсқадан бірнеше бағанға қойыңыз. МАҢЫЗДЫ: «Егер (саны == 11) {» ҚАЙТА «0» мәніне «11» санын өзгерту қажет. Олай етпесеңіз, кейінгі код дұрыс жұмыс істемейді.
  13. 2, 3 және 4 сандар үшін қайталаңыз. 2-ші және 4-ші цифрлар үшін сіз 0-9, ал 3-ші цифр үшін 0-5 сандарын калибрлейсіз.

Міне бітті! Сізде уақытты көрсету үшін қажет сандарды жасайтын код бар!

12 -қадам: Уақытты орнату

Дерлік жерде! Мен сөз беремін.

DS1302 Real Time Clock (RTC) модулі керемет, себебі ол тәуелсіз аккумуляторға ие және Arduino Nano қуаты болмаса да уақытты сақтайды. Бірақ кез келген басқа сағат сияқты, уақытты белгілеу қажет.

Уақытты орнату

  1. Осы сілтеме бойынша «DS1302» кітапханасын жүктеп алып, оны Arduino кітапхана қалтасына салыңыз.
  2. Arduino ортасын ашып, File/Examples/arduino-ds1302-master/set_clock тармағына өту арқылы «set_clock» мысал эскизін ашыңыз.
  3. Бұл уақытты белгілейтін кодтың биті, бірақ алдымен біз Arduino Nano -дағы 3.3в және ұштық істікшелерден екі секіргіш сымдарды сәйкесінше RTC -дегі VCC және соңғы істікшеге бекітуіміз керек. Бұл сызықтар тек уақытты белгілеу үшін қолданылады. Егер сіз оларды қосулы қалдырсаңыз, Arduino қуатты көрген сайын уақыт қалпына келеді.
  4. Әрі қарай, сағаттың қай жерде қосылғанын айту үшін кодты өзгерту керек. Бұл қалың сандарды «const int kCePin = 5; // Chip Enable» «const int kIoPin = 6; // Input/Output» «const int kSclkPin = 7; // Serial Clock» ішіндегі 5, 6, 7 - 4, 3, 2.
  5. Негізгі циклге өтіңіз және «Time t (2013, 9, 22, 1, 38, 50, Time:: kSunday)» жолын табыңыз; бұл «Уақыт t (Жыл, Ай, Күн, Сағат, Минут, Екінші, Уақыт:: kDayOfTheWeek)» форматында;
  6. Бізге тек уақыт қажет, бірақ барлығын өзгертіңіз және кодты жүктеңіз.
  7. Код сәтті жүктелгенін тексеру үшін сериялық мониторды ашыңыз. Сіз «2013 жылдың 22 қыркүйегі, жексенбі, сағат 01:38:50» форматындағы басып шығаруды көресіз.
  8. Секіргіштерді ажыратыңыз.

13 -қадам: Негізгі кодты жүктеңіз

Image
Image

Сіз жасадыңыз! Сіз жасадыңыз! Тағы бір қадам және жүлде сіздікі.

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

Жоғарыда айтылғандай, сандар бірізділікпен өзгеруі керек. Егер өзгеріс алдында қате сан болса, ол дұрыс жұмыс істемеуі мүмкін. Осылайша, бұл код әр цифрды 0 -ден максимумға дейін цифрлау арқылы инициализациялайды, содан кейін ағымдағы уақыт санына сақтық көшірмесі жасалады. 2-ші цифрда бізге «4» керек деп айтыңыз, бұл цифр 0-1-2-3-4-5-6-7-8-9-0-1-2-3-4 аралығында болады. «4» шын мәнінде көрсетілген.

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

Негізгі кодты жүктеңіз

  1. Arduino бағдарламалық жасақтамасындағы «Clockception_Main_Code» эскизін ашыңыз.
  2. Өзіңіздің жеке кодыңызды Excel парағынан көшіріп, соңында эскизге қойыңыз.
  3. Эскизді жүктеп, жұмысыңыздың жандануын көру үшін отырыңыз.

Егер мен осы нұсқаулықты сипаттайтын жеткілікті жақсы жұмыс жасасам, сіз қазір қазіргі уақытқа қарауыңыз керек! Уақыттың өзгеретініне көз жеткізу үшін бір -екі минутқа отырыңыз.

Дайын болған соң, сағатты үйіне қарай жылжытуға болады!

14 -қадам: Сағаттан ләззат алыңыз

Алғаш рет авторлар сайысы
Алғаш рет авторлар сайысы

Жақсы, бұл барлық адамдар! Сіз шығынның аз бөлігіне ClockClock көшірмесін сәтті құрдыңыз.

Сізге бұл нұсқаулық ұнады деп сенемін! Егер солай болса, мен «Авторлардың алғаш рет» байқауында берген дауысыңызға ризамын.

Егер сізде сұрақтар немесе түсініктемелер болса, хабарласыңыз! Мен кез келген сұрақтарға жауап беруге қуаныштымын:)

Алғаш рет авторлар сайысы
Алғаш рет авторлар сайысы

Алғаш рет авторлар байқауының бас жүлдесі

Ұсынылған: