Obsah:

Očarujúce magnetické nástenné hodiny: 24 krokov (s obrázkami)
Očarujúce magnetické nástenné hodiny: 24 krokov (s obrázkami)

Video: Očarujúce magnetické nástenné hodiny: 24 krokov (s obrázkami)

Video: Očarujúce magnetické nástenné hodiny: 24 krokov (s obrázkami)
Video: Часть 1. Аудиокнига Эдгара Райса Берроуза «Принцесса Марса» (гл. 01–10) 2024, November
Anonim
Očarujúce magnetické nástenné hodiny
Očarujúce magnetické nástenné hodiny
Očarujúce magnetické nástenné hodiny
Očarujúce magnetické nástenné hodiny

Mechanické hodiny ma vždy fascinovali. Spôsob, akým všetky vnútorné prevody, pružiny a únikové dráhy spolupracujú tak, aby vyústili do konštantnej spoľahlivej hodinky, sa vždy zdal mimo dosahu mojej obmedzenej sady schopností. Našťastie moderná elektronika a 3D tlačené diely môžu preklenúť priepasť a vytvoriť niečo jednoduché, čo sa nespolieha na malé presné kovové diely.

Tieto minimalistické nástenné hodiny skrývajú dvojicu 3D tlačených prstencových prevodov poháňaných lacnými krokovými motormi, ktoré otáčajú magnetmi za klasickou orechovou dyhou.

Pôvodne som sa inšpiroval hodinami STORY Clock a chcel som časový údaj, ktorý by indikoval dennú dobu iba pomocou guličkových ložísk a digitálneho odčítania a pomaly sa pohybujúcich guľkových ložísk, ktoré ich výrobok používa.

Obrázok
Obrázok

Krok 1: Nástroje a materiály

Nástroje a materiály
Nástroje a materiály
Nástroje a materiály
Nástroje a materiály
Nástroje a materiály
Nástroje a materiály
Nástroje a materiály
Nástroje a materiály

Materiály:

  • 13 x 13 x 2 palcov preglejka/drievotrieska (zlepil som 3 kusy šrotu)
  • 13 x 13 palcov sololit
  • Arduino Nano
  • Hodiny v reálnom čase
  • Krokové motory a ovládače
  • Senzory s Hallovým efektom
  • Magnety
  • Napájací kábel
  • AC adaptér
  • Zástrčka
  • Rôzne strojové skrutky
  • Rôzne skrutky do dreva
  • 3D tlačené diely (posledný krok)
  • Dyha (12 x 12 palcov - tvár, 40 palcov dlhý pás)
  • Nastriekajte lak
  • Čierna farba v spreji

Náradie:

  • 3D tlačiareň
  • Kompas
  • Nôž X-acto
  • Lepidlo
  • Svorky
  • Prípravok na rezanie kruhu
  • Hack Saw
  • Kotúčová brúska
  • Račňová svorka
  • Sekáč
  • Vládca
  • Sander
  • Vŕtačky
  • Skrutkovače
  • Spájkovačka
  • Horúca lepiaca pištoľ

Krok 2: Zlepte drevený rám

Zlepte drevený rám
Zlepte drevený rám
Zlepte drevený rám
Zlepte drevený rám
Zlepte drevený rám
Zlepte drevený rám
Zlepte drevený rám
Zlepte drevený rám

Zlepte dohromady tri kusy dreva, ktoré vytvoria rám hodín. Použil som regenerovanú drevotriesku zo starého rámu postele.

Krok 3: Vyrežte rám pomocou prípravku na rezanie kruhu

Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu
Vyrežte rám pomocou prípravku na rezanie kruhu

Označte stred dosky a namontujte ju na kruhový rezací prípravok. Vystrihnite päť kruhov s nasledujúcimi priemermi:

  • 12 palcov
  • 11 1/4 palcov
  • 9 1/4 palca
  • 7 1/4 palcov
  • 5 3/8 palcov

Krok 4: Vytlačte a zostavte prevody

Vytlačte a zostavte prevody
Vytlačte a zostavte prevody
Vytlačte a zostavte prevody
Vytlačte a zostavte prevody

Ozubené kolesá sú rozdelené na segmenty, aby ich bolo možné vytlačiť na malej tlačiarni a zacvaknúť k sebe. Všetky diely boli vytlačené v ABS, aby sa uľahčilo tavenie znázornené v nasledujúcom kroku. Brúste všetky hrany a povrchy dielov.

Vytlačte nasledujúce množstvá dielov nájdené v kroku 22:

  • Segmentový magnet s hodinovým prstencom
  • 6 - Základný segment hodinového ozubeného kolieska
  • Kroková montáž segmentového upevňovacieho krúžku na 1 hodinu
  • 6 - hodinový segment poistného krúžku, základný
  • Držiak snímača 1 -hodinového Hallovho efektu
  • 1 -minútový prstencový segmentový magnetový magnet
  • 7 - Základný segment ozubeného kolieska na minúty
  • 1 - minútový upevňovací prvok segmentu upevňovacieho krúžku
  • 6 - segment segmentu poistného krúžku na minútu základný
  • 1 - držiak senzora s minútovým Hallovým efektom
  • 2 - čelné ozubené koleso
  • 1 - Držiak elektroniky

Krok 5: Sekcie „zlepte“dohromady

Obrázok
Obrázok
Obrázok
Obrázok
Obrázok
Obrázok

V sklenenej fľaši s trochou acetónu rozpustite neúspešné výtlačky starého nosného materiálu atď. Na každý šev natrite zmes acetónu, aby sa kúsky spojili. Po vytvrdnutí každý šev prebrúste.

Krok 6: Vyrežte reliéfy v ráme

Vystrihnite reliéfy v ráme
Vystrihnite reliéfy v ráme
Vystrihnite reliéfy v ráme
Vystrihnite reliéfy v ráme
Vystrihnite reliéfy v ráme
Vystrihnite reliéfy v ráme

Umiestnite kruhové prevody a prídržné krúžky do rámu a vyrežte reliéfy pre krokové motory. Zmeral som a narezal vnútorný krúžok príliš veľký, takže som ho upravil na veľkosť pomocou nejakého pásku z javorového okraja, ktorý som mal okolo obchodu.

Krok 7: Vyrovnaná vzdialenosť pre snímače s Hallovým efektom

Vôľa rezu pre snímače s Hallovým efektom
Vôľa rezu pre snímače s Hallovým efektom
Vôľa rezu pre snímače s Hallovým efektom
Vôľa rezu pre snímače s Hallovým efektom
Vôľa rezu pre snímače s Hallovým efektom
Vôľa rezu pre snímače s Hallovým efektom

Prostredníctvom vnútorného prstenca vyrežte voľný priestor pre snímač minútových halových efektov a slot pre snímač hodinových halových efektov. Na rezanie týchto vôd som použil dláto, pilník a malú ručnú pílu.

Krok 8: Prilepte vonkajší krúžok

Vonkajší krúžok lepidla
Vonkajší krúžok lepidla

Prilepte a zalepte vonkajší krúžok veľkosťou minútového zadržiavacieho krúžku.

Krok 9: Vyrežte skrutky nastavenia senzora s Hallovým efektom

Nastavovacie skrutky snímača s Hallovým efektom
Nastavovacie skrutky snímača s Hallovým efektom

Strojové skrutky odrežte pílkou, aby boli len dlhšie ako hrúbka poistného krúžku a držiaka senzora Hallovho efektu. Do závitov vyrežte drážku, aby sa dala plochým skrutkovačom nastaviť od konca so závitom.

Krok 10: Prilepte krúžky na sololit

Lepiace krúžky na sololit
Lepiace krúžky na sololit
Lepiace krúžky na sololit
Lepiace krúžky na sololit
Lepiace krúžky na sololit
Lepiace krúžky na sololit

Vystrihnite kruh z tvrdej lepenky, ktorý je väčší ako vonkajší krúžok. Prilepte vonkajší a vnútorný krúžok na tvár sololitu. Na umiestnenie vnútorného krúžku použite minútový poistný krúžok a ozubené koliesko. Venujte väčšiu pozornosť tomu, aby som nelepil vnútorný krúžok dozadu. Obrázok dva ukazuje nový výrez pre snímač minútového Hallovho efektu.

Pomocou kotúčovej brúsky orezajte sololitovú dosku podľa veľkosti vonkajšieho krúžku.

Krok 11: Prilepte vnútorný disk

Lepiaci vnútorný kotúč
Lepiaci vnútorný kotúč
Lepiaci vnútorný kotúč
Lepiaci vnútorný kotúč

Prilepte vnútorný kotúč na miesto pomocou hodinového poistného krúžku a ozubeného kolesa na umiestnenie vnútorného disku.

Krok 12: Pripojte dyhu

Pripojte dyhu
Pripojte dyhu
Pripojte dyhu
Pripojte dyhu
Pripojte dyhu
Pripojte dyhu
Pripojte dyhu
Pripojte dyhu

Odstrihnite pás dyhy širší, než sú hodiny hlboké a dostatočne dlhé, aby sa hodili okolo hodín (priemer hodiniek 3,14 *, vráti potrebnú dĺžku. Pridajte palec, aby ste sa presvedčili, že máte dosť.) Dyhu nasaďte nasucho skrátiť na dĺžku. Naneste dostatočné množstvo lepidla na dyhu a upnite na mieste pomocou pásovej svorky. Nechajte niekoľko hodín zaschnúť, aby bola zaistená priľnavosť.

Krok 13: Orežte dyhu

Orezajte dyhu
Orezajte dyhu

Ostrým sekáčom orežte prebytočnú dyhu z prednej a zadnej časti hodín.

Krok 14: Odstrihnite dyhu

Rezaná dyha
Rezaná dyha
Rezaná dyha
Rezaná dyha

Moja dyha mala nejaké praskliny. Aby sa mi s ním ľahšie pracovalo, naniesol som maliarsku pásku, aby držala pokope. Pomocou noža x-acto v kompase odrežte dyhu o niečo väčšiu, ako je tvár hodín.

Krok 15: Lepiaca dyha

Lepiaca dyha
Lepiaca dyha
Lepiaca dyha
Lepiaca dyha

Odrezanými krúžkami rozložte tlak na ciferník hodín. Na nelepivú stranu dyhy naneste dostatočné množstvo lepidla. Orientujte zrno zvisle na ciferník a naneste mnoho svoriek, pričom každú po troche utiahnite. Tým sa zabezpečí, že sa dyha neposunie a bude mať rovnomerný tlak na tvár.

Použil som pár plochých dosiek na lícnu stranu hodín a niekoľko tesnení na zadnú stranu.

Krok 16: Piesok a dokončenie

Piesok a povrchová úprava
Piesok a povrchová úprava
Piesok a povrchová úprava
Piesok a povrchová úprava

Brúsnym papierom opatrne odstráňte prebytočnú dyhu z čelnej strany hodín a brúste od 220 do 600.

Naneste 10 až 20 vrstiev laku. Tým sa vybuduje povrch, po ktorom bude guľkové ložisko jazdiť. Nevyhnutne kvôli prachu a iným časticiam vo vzduchu si myslím, že pozdĺž dráhy každého guľkového ložiska sa objavia čiary. Nanášanie ďalších vrstiev povrchovej úpravy by to malo oddialiť tak dlho, ako je to možné. Tiež uľahčí budúce dolakovanie. Tento krok aktualizujem, ak sa na mojich hodinách niekedy zobrazia riadky.

Krok 17: Nainštalujte napájanie

Nainštalujte Power
Nainštalujte Power
Nainštalujte Power
Nainštalujte Power

Vrtákom 27/64 palcov vyvŕtajte otvor v spodnej časti hodín a zaskrutkujte napájaciu zástrčku na miesto.

Krok 18: Zostavte elektroniku

Zostavte elektroniku
Zostavte elektroniku
Zostavte elektroniku
Zostavte elektroniku
Zostavte elektroniku
Zostavte elektroniku
Zostavte elektroniku
Zostavte elektroniku

Pripojte krokové ovládače a hodiny v reálnom čase k elektronickej doske. Potreboval som nájsť spôsob, ako zaistiť Arduino, aby boli vyvŕtané otvory a vyrezaná štrbina na zapínanie na zips. Tieto funkcie boli pridané do súboru uvedeného v kroku 22.

Krok 19: Spájkujte a pripojte elektroniku

Spájkujte a pripájajte elektroniku
Spájkujte a pripájajte elektroniku
Spájkujte a pripájajte elektroniku
Spájkujte a pripájajte elektroniku
Spájkujte a pripájajte elektroniku
Spájkujte a pripájajte elektroniku

Podľa blokovej schémy spájajte všetky súčasti dohromady. Kruhy zalepte za tepla a zaistite všetky zablúdené drôty tiež horúcim lepidlom.

Obrázok
Obrázok

Krok 20: Zadná doska

Zadná doska
Zadná doska
Zadná doska
Zadná doska
Zadná doska
Zadná doska

Vytvorte zadnú dosku tak, že odrežete ďalší kruh o 1/2 palca väčší ako predná časť hodín a prsteň s vnútorným priemerom rovnaký ako zadná časť hodín. Prilepte krúžok a kruh spolu s niekoľkými pružinovými svorkami.

Po zaschnutí napíšte líniu o 1/8 palca väčšiu ako vnútorný krúžok a pomocou pásovej píly alebo kotúčovej brúsky upravte veľkosť.

V hornej časti chrbta pomocou frézy alebo vŕtačky vyrežte otvor 1 palec dlhý 1/4 palca široký. Zahĺbte štyri otvory, aby ste zaistili zadnú stranu v ráme hodín.

Po zaschnutí naneste čiernu farbu v spreji a pripevnite k hodinám.

Krok 21: Kód Arduino

Arduino kód je komentovaný čo najlepšie. Majte na pamäti, že nie som programátor, mám minimálne skúsenosti s arduino (buďte láskaví). Kód priebežne kontroluje, či sa aktuálny čas zhoduje s „Reset Time“. Pretože som nedokázal nájsť spôsob, ako preložiť aktuálny čas na kroky, opravuje sa to iba raz denne (štandardne o polnoci). O polnoci sa ozubené koleso otočí do polnočnej polohy, potom počkajte, kým sa 00:01 presunie na požadovaný čas, a potom pokračuje odtiaľ. V súčasnej dobe hodiny strácajú iba asi 5 sekúnd v priebehu 24 hodín.

Budete potrebovať nainštalované knižnice Stepper a RTClib.

Viem, že kód môže optimalizovať niekto, kto má viac skúseností ako ja. Ak túto výzvu zvládnete, vytvorte si pre seba tento projekt a podeľte sa o svoje znalosti.

#zahrnúť

#include "RTClib.h" RTC_DS1307 rtc; #define oneRotation 2038 // počet krokov v jednej otáčke krokového motora 28BYJ-48 Stepper hourHand (oneRotation, 3, 5, 4, 6); Kroková minúta ručná (oneRotation, 7, 9, 8, 10); #define hourStopSensor 12 #define minuteStopSensor 11 int endStep = 0; // Časovo obmedzený čas. int setDelay1 = 168; int setDelay2 = 166; int setDelay3 = 5; // Aktuálny čas na matematiku. float hr = 0; float mn = 0; float sc = 0; // Nastavte denný čas na resetovanie hodín (24 -hodinový formát). int resetHour = 0; int resetMinute = 0; // Premenné na nastavenie správneho času pri štarte a resetovaní. float setTimeStepHour = 0; float setTimeStepMinute = 0; float handDelay = 0; float hourTest = 0; float minútaTest = 0; void setup () {Serial.begin (115200); // Nastavte hodiny v reálnom čase a resetujte senzory Hallovho efektu. pinMode (hourStopSensor, INPUT_PULLUP); pinMode (minuteStopSensor, INPUT_PULLUP); rtc.begin (); // Nastavením času odkomentujte riadok nižšie. // rtc.adjust (DateTime (2020, 2, 19, 23, 40, 30)); // rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_)))); // Nastavte maximálnu rýchlosť krokových motorov. hourHand.setSpeed (15); minútaHand.setSpeed (15); // Slučka, kým minúta a hodinová ručička nie sú na poludnie while (digitalRead (hourStopSensor) == LOW || digitalRead (minuteStopSensor) == LOW) {if (digitalRead (hourStopSensor) == LOW) {hourHand.step (2); } else {zdržanie (3); } if (digitalRead (minuteStopSensor) == LOW) {minuteHand.step (3); } else {zdržanie (4); }} while (digitalRead (hourStopSensor)! = LOW || digitalRead (minuteStopSensor)! = LOW) {if (digitalRead (hourStopSensor)! = LOW) {hourHand.step (2); } else {zdržanie (3); } if (digitalRead (minuteStopSensor)! = LOW) {minuteHand.step (3); } else {zdržanie (4); }} // Zistiť aktuálny čas DateTime now = rtc.now (); hr = now.hour (); mn = now.minute (); sc = now.second (); // Zmeniť na 12 -hodinový formát if (hr> = 12) {hr = hr - 12; } // Zistite, ktorá ruka musí ďalej cestovať po tvári, a pomocou tejto vzdialenosti // podľa toho upravte nastavený čas. hodinaTest = hod / 12; minútaTest = mn / 60; if (hourTest> minuteTest) {handDelay = hourTest; } else {handDelay = minuteTest; } // Nastaviť aktuálnu hodinu setTimeStepHour = (hr * 498) + (mn * 8,3) + ((sc + (handDelay * 36)) *.1383); // Nastavenie aktuálnej minúty setTimeStepMinute = (mn * 114) + ((sc + (handDelay * 45)) * 1,9); // Otestujte, ktorá ruka bude potrebovať viac krokov, a nastavte ju na najdlhší počet krokov pre cyklus for. if (setTimeStepHour> setTimeStepMinute) {endStep = setTimeStepHour; } else {endStep = setTimeStepMinute; } for (int i = 0; i <= endStep; i ++) {if (i <setTimeStepHour) {hourHand.step (2); } else {zdržanie (3); } if (i <setTimeStepMinute) {minuteHand.step (3); } else {zdržanie (4); }} // Nastaviť hodiny tak, aby bežali RPM hourHand.setSpeed (1); minútaHand.setSpeed (1); } void loop () {// Spustenie cyklu bežiaceho na hodinách. pre (int i = 0; i <22; i ++) {minuteHand.step (1); oneskorenie (setDelay1); // Otestujte čas resetovania, ak je pripravený na reset, prerušte. if (rtc.now (). hour () == resetHour && rtc.now (). minute () == resetMinute) {break; }} oneskorenie (setDelay3); pre (int i = 0; i <38; i ++) {hourHand.step (1); oneskorenie (setDelay1); // Otestujte čas resetovania, ak je pripravený na reset, prerušte. if (rtc.now (). hour () == resetHour && rtc.now (). minute () == resetMinute) {break; } for (int i = 0; i <20; i ++) {minuteHand.step (1); oneskorenie (setDelay2); // Otestujte čas resetovania, ak je pripravený na reset, prerušte. if (rtc.now (). hour () == resetHour && rtc.now (). minute () == resetMinute) {break; }}} // Reset hodín v čase resetovania, ak (rtc.now (). Hodina () == resetHour && rtc.now (). Minute () == resetMinute) {// Zmena rýchlosti hodín hourHand.setSpeed (10); minútaHand.setSpeed (10); // Slučka opakujte do minúty a hodiny, aby sa dosiahlo poludnie. while (digitalRead (hourStopSensor) == LOW || digitalRead (minuteStopSensor) == LOW) {if (digitalRead (hourStopSensor) == LOW) {hourHand.step (2); } else {zdržanie (3); } if (digitalRead (minuteStopSensor) == LOW) {minuteHand.step (3); } else {zdržanie (4); }} while (digitalRead (hourStopSensor)! = LOW || digitalRead (minuteStopSensor)! = LOW) {if (digitalRead (hourStopSensor)! = LOW) {hourHand.step (2); } else {zdržanie (3); } if (digitalRead (minuteStopSensor)! = LOW) {minuteHand.step (3); } else {zdržanie (4); }} // Počkajte tu, kým neprejde čas resetovania. while (rtc.now (). minúta () == resetMinute) {oneskorenie (1000); } // Zistiť aktuálny čas DateTime now = rtc.now (); hr = now.hour (); mn = now.minute (); sc = now.second (); // Zmeniť na 12 -hodinový formát if (hr> = 12) {hr = hr - 12; } // Pozrite sa, ktorá ruka musí ďalej cestovať po tvári, a pomocou tejto vzdialenosti // podľa toho upravte nastavený čas. hodinaTest = hod / 12; minútaTest = mn / 60; if (hourTest> minuteTest) {handDelay = hourTest; } else {handDelay = minuteTest; } // Nastaviť aktuálnu hodinu setTimeStepHour = (hr * 498) + (mn * 8,3) + ((sc + (handDelay * 36)) *.1383); // Nastavenie aktuálnej minúty setTimeStepMinute = (mn * 114) + ((sc + (handDelay * 45)) * 1,9); // Otestujte, ktorá ruka bude potrebovať viac krokov, a nastavte ju na najdlhší počet krokov pre cyklus for. if (setTimeStepHour> setTimeStepMinute) {endStep = setTimeStepHour; } else {endStep = setTimeStepMinute; } for (int i = 0; i <= endStep; i ++) {if (i <setTimeStepHour) {hourHand.step (2); } else {zdržanie (3); } if (i <setTimeStepMinute) {minuteHand.step (3); } else {zdržanie (4); }} hourHand.setSpeed (1); minútaHand.setSpeed (1); }}

Krok 22: Súbory STL

Budete musieť vytlačiť nasledujúce množstvá súborov:

  • Segmentový magnet s hodinovým prstencom
  • 6 - Základný segment hodinového ozubeného kolieska
  • Kroková montáž segmentového upevňovacieho krúžku na 1 hodinu
  • 6 - hodinový segment poistného krúžku, základný
  • Držiak snímača 1 -hodinového Hallovho efektu
  • 1 -minútový prstencový segmentový magnetový magnet
  • 7 - Základný segment ozubeného kolesa s minútovým ozubením
  • 1 - minútový upevňovací prvok segmentového upevňovacieho krúžku
  • 6 - segment segmentu zadržiavacieho krúžku na minúty
  • 1 - Držiak senzora s minútovým Hallovým efektom
  • 2 - čelné ozubené koleso
  • 1 - Držiak elektroniky

Krok 23: Súbory Solidworks

Toto sú pôvodné súbory Solidworks použité na vytvorenie STL nájdených v predchádzajúcom kroku. Moje súbory môžete upravovať a meniť podľa vlastného uváženia.

Krok 24: Záver

Tieto hodiny dopadli lepšie, ako som očakával. S minimálnymi skúsenosťami s Arduinom som rád, že to dopadlo a aké je to presné. Vyzerá to skvele a funguje to tak, ako som dúfal.

Odporúča: