Sommario:
- Passaggio 1: strumenti e materiali
- Passaggio 2: incollare insieme il telaio in legno
- Passaggio 3: tagliare il telaio utilizzando la maschera di taglio circolare
- Passaggio 4: stampa e assembla ingranaggi
- Passaggio 5: "Incolla" le sezioni insieme
- Passaggio 6: tagliare i rilievi nella cornice
- Passaggio 7: spazio di taglio per i sensori ad effetto Hall
- Passaggio 8: incollare l'anello esterno
- Passaggio 9: tagliare le viti di regolazione del sensore ad effetto Hall
- Passaggio 10: incollare gli anelli sul pannello rigido
- Passaggio 11: incollare il disco interno
- Passaggio 12: attaccare l'impiallacciatura
- Passaggio 13: tagliare l'impiallacciatura
- Passaggio 14: tagliare l'impiallacciatura
- Passaggio 15: incollare l'impiallacciatura
- Passaggio 16: carteggiare e rifinire
- Passaggio 17: installare l'alimentazione
- Passaggio 18: assemblare l'elettronica
- Passaggio 19: saldare e collegare l'elettronica
- Passaggio 20: piastra posteriore
- Passaggio 21: codice Arduino
- Passaggio 22: file STL
- Passaggio 23: file Solidworks
- Passaggio 24: Conclusione
Video: Affascinante orologio da parete magnetico: 24 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Gli orologi meccanici mi hanno sempre affascinato. Il modo in cui tutti gli ingranaggi interni, le molle e gli scappamenti lavorano insieme per ottenere un orologio costantemente affidabile è sempre sembrato fuori dalla portata delle mie limitate capacità. Per fortuna l'elettronica moderna e le parti stampate in 3D possono colmare il divario per creare qualcosa di semplice che non si basa su piccole parti metalliche precise.
Questo orologio da parete minimalista nasconde una coppia di corone dentate stampate in 3D azionate da motori passo-passo economici che ruotano i magneti dietro una classica impiallacciatura di noce.
Inizialmente ispirato da STORY Clock, volevo un orologio che indicasse l'ora del giorno utilizzando solo cuscinetti a sfera rispetto alla lettura digitale e cuscinetti a sfera a movimento lento utilizzati dal loro prodotto.
Passaggio 1: strumenti e materiali
Materiali:
- 13 x 13 x 2 pollici. Compensato/truciolare (ho incollato insieme 3 pezzi di legno di scarto)
- Pannello rigido 13 x 13 pollici
- Arduino Nano
- Orologio in tempo reale
- Motori passo-passo e driver
- Sensori ad effetto Hall
- Magneti
- Cavo di alimentazione
- Adattatore per corrente alternata
- Spina
- Viti a macchina assortite
- Viti per legno assortite
- Parti stampate in 3D (ultimo passaggio)
- Impiallacciatura (12 x 12 pollici - faccia, striscia lunga 40 pollici)
- Lacca spray
- Vernice spray nera
Utensili:
- stampante 3d
- Bussola
- Coltello X-acto
- Colla
- Morsetti
- Maschera per il taglio del cerchio
- Seghetto alternativo
- Levigatrice a disco
- Morsetto a cricchetto
- Scalpello
- Governate
- Levigatrice
- Trapani
- cacciaviti
- Saldatore
- Pistola per colla a caldo
Passaggio 2: incollare insieme il telaio in legno
Incolla insieme tre pezzi di legno che formeranno la cornice dell'orologio. Ho usato pannelli di particelle di recupero da un vecchio telaio del letto.
Passaggio 3: tagliare il telaio utilizzando la maschera di taglio circolare
Segna il centro della tavola e monta su una maschera di taglio circolare. Taglia cinque cerchi con i seguenti diametri:
- 12 pollici
- 11 1/4 pollici
- 9 1/4 pollici
- 7 1/4 pollici
- 5 3/8 pollici
Passaggio 4: stampa e assembla ingranaggi
Le corone dentate sono suddivise in segmenti in modo che possano essere stampate su una piccola stampante e unite insieme. Tutte le parti sono state stampate in ABS per facilitare il processo di fusione mostrato nel passaggio successivo. Carteggiare tutti i bordi e le superfici delle parti.
Stampa le seguenti quantità di parti trovate nel passaggio 22:
- 1 - Magnete del segmento dell'ingranaggio della corona dell'ora
- 6 - Segmento ingranaggio della corona delle ore di base
- Montaggio passo-passo del segmento dell'anello di ritegno di 1 ora
- Segmento dell'anello di ritenuta delle 6 ore di base
- Supporto per sensore ad effetto Hall 1 ora
- 1 - Magnete del segmento dell'ingranaggio dell'anello minuto
- 7 - Segmento della corona dentata dei minuti di base
- 1 - Montaggio stepper del segmento dell'anello di ritegno di 1 minuto
- Segmento dell'anello di ritenuta di 6 minuti di base
- Supporto per sensore ad effetto Hall da 1 minuto
- 2 - Ingranaggio cilindrico
- 1 - Supporto per elettronica
Passaggio 5: "Incolla" le sezioni insieme
In una bottiglia di vetro con dell'acetone, dissolvi il vecchio materiale di supporto delle stampe fallite, ecc. Dipingi la miscela di acetone su ciascuna cucitura per fondere insieme i pezzi. Una volta indurito, carteggia ogni cucitura piatta.
Passaggio 6: tagliare i rilievi nella cornice
Posizionare le corone dentate e gli anelli di sicurezza nel telaio e ritagliare i rilievi per i motori passo-passo. Ho misurato e tagliato l'anello interno troppo grande, quindi l'ho spessorato a misura usando un bordo in acero che avevo in giro per il negozio.
Passaggio 7: spazio di taglio per i sensori ad effetto Hall
Praticare un foro passante attraverso l'anello interno per il sensore ad effetto hall dei minuti e uno slot per il sensore ad effetto hall delle ore. Ho usato uno scalpello, una lima e una piccola sega a mano per tagliare questi spazi.
Passaggio 8: incollare l'anello esterno
Incolla e fissa con nastro adesivo l'anello esterno delle dimensioni dell'anello di ritenzione dei minuti.
Passaggio 9: tagliare le viti di regolazione del sensore ad effetto Hall
Tagliare le viti della macchina con un seghetto in modo che siano appena più lunghe dello spessore dell'anello di ritegno e del supporto del sensore ad effetto hall. Tagliare una fessura nelle filettature in modo che possa essere regolata dall'estremità filettata con un cacciavite piatto.
Passaggio 10: incollare gli anelli sul pannello rigido
Taglia un cerchio di faesite appena più grande dell'anello esterno. Incolla l'anello esterno e interno sulla superficie del pannello rigido. Utilizzare l'anello di ritenzione dei minuti e la corona dentata per posizionare l'anello interno. Fai più attenzione di me a non incollare l'anello interno al contrario. L'immagine due mostra una nuova fessura per il sensore ad effetto hall minuto.
Usa una levigatrice a disco per tagliare il pannello rigido fino alle dimensioni dell'anello esterno.
Passaggio 11: incollare il disco interno
Incollare il disco interno in posizione utilizzando l'anello di ritegno delle ore e la corona dentata per posizionare il disco interno.
Passaggio 12: attaccare l'impiallacciatura
Taglia una striscia di impiallacciatura più larga dell'orologio è profonda e abbastanza lunga da avvolgere l'orologio (3,14 * diametro dell'orologio, restituirà la lunghezza necessaria. Aggiungi un pollice per essere sicuro di averne abbastanza). Asciugare l'impiallacciatura per tagliato a misura. Applicare abbondante colla sull'impiallacciatura e fissarla in posizione con un morsetto a cinghia. Lasciare asciugare un paio d'ore per garantire l'adesione.
Passaggio 13: tagliare l'impiallacciatura
Usando uno scalpello affilato, taglia l'impiallacciatura in eccesso dalla parte anteriore e posteriore dell'orologio.
Passaggio 14: tagliare l'impiallacciatura
La mia impiallacciatura aveva delle crepe. Per renderlo più facile da lavorare, ho applicato del nastro adesivo per tenerlo insieme. Usando un coltello x-acto in una bussola, taglia l'impiallacciatura appena più grande del quadrante dell'orologio.
Passaggio 15: incollare l'impiallacciatura
Usa gli anelli tagliati per distribuire la pressione sul quadrante dell'orologio. Applicare abbondante colla sul lato non nastro dell'impiallacciatura. Orientare la grana verticalmente sul quadrante dell'orologio e applicare molti morsetti serrandoli un po' alla volta. Ciò assicurerà che l'impiallacciatura non si sposti e eserciti una pressione uniforme sul viso.
Ho usato un paio di assi piatte sul lato anteriore dell'orologio e alcuni calamite sul retro.
Passaggio 16: carteggiare e rifinire
Usando la carta vetrata, rimuovere con cura l'impiallacciatura in eccesso dal quadrante dell'orologio e carteggiare a partire da una grana 220 fino a una grana 600.
Applicare da 10 a 20 mani di vernice. In questo modo si formerà la superficie lungo la quale scorrerà il cuscinetto a sfere. Inevitabilmente a causa della polvere e di altre particelle nell'aria, penso che appariranno delle linee lungo il percorso di ciascun cuscinetto a sfere. L'applicazione di più mani di finitura dovrebbe ritardare il più a lungo possibile. Faciliterà anche le future rifiniture. Aggiornerò questo passaggio se appaiono delle linee sul mio orologio.
Passaggio 17: installare l'alimentazione
Usando una punta da trapano da 27/64 pollici, praticare un foro nella parte inferiore dell'orologio e avvitare la spina di alimentazione in posizione.
Passaggio 18: assemblare l'elettronica
Collega i driver stepper e l'orologio in tempo reale alla scheda elettronica. Avevo bisogno di trovare un modo per fissare Arduino in modo che venissero praticati dei fori e ritagliata una fessura per una fascetta. Queste funzionalità sono state aggiunte al file trovato nel passaggio 22.
Passaggio 19: saldare e collegare l'elettronica
Seguendo lo schema a blocchi, saldare tutti i componenti insieme. Incolla a caldo gli anelli in posizione e fissa anche i fili vaganti con la colla a caldo.
Passaggio 20: piastra posteriore
Crea la piastra posteriore tagliando un altro cerchio di 1/2 pollice più grande del quadrante dell'orologio e un anello con il diametro interno uguale a quello del retro dell'orologio. Incolla l'anello e il cerchio insieme con alcuni morsetti a molla.
Una volta asciutto, traccia una linea di 1/8 di pollice più grande dell'anello interno e taglia a misura usando la sega a nastro o la levigatrice a disco.
Tagliare una fessura lunga 1 pollice e larga 1/4 di pollice nella parte superiore della parte posteriore utilizzando un router o punte da trapano. Svasare quattro fori per fissare il retro nella cornice dell'orologio.
Applicare vernice spray nera e fissarla all'orologio una volta asciutto.
Passaggio 21: codice Arduino
Il codice arduino è commentato nel miglior modo possibile. Tieni presente che non sono un programmatore, ho un'esperienza arduino minima (sii gentile). Il codice viene eseguito controllando continuamente per vedere se l'ora corrente corrisponde al "Reset Time". Poiché non riuscivo a pensare a un modo per tradurre l'ora corrente in passaggi, si corregge solo una volta al giorno (mezzanotte per impostazione predefinita). A mezzanotte gli ingranaggi ruotano nella posizione di mezzanotte, quindi aspettano fino alle 00:01 per passare a quell'ora e poi continuano da lì. Allo stato attuale, l'orologio perde solo circa 5 secondi in un periodo di 24 ore.
Avrai bisogno delle librerie Stepper e RTClib installate.
So che il codice può essere ottimizzato da qualcuno con più esperienza di me. Se sei all'altezza della sfida, ricrea questo progetto per te stesso e condividi le tue conoscenze.
#includere
#include "RTClib.h" RTC_DS1307 rtc; #define oneRotation 2038 // il numero di passi in un giro del motore passo-passo 28BYJ-48 Stepper hourHand(oneRotation, 3, 5, 4, 6); Stepper minuteHand(oneRotation, 7, 9, 8, 10); #define hourStopSensor 12 #define minuteStopSensor 11 int endStep = 0; // Tempo per la velocità dell'orologio. int setDelay1 = 168; int setDelay2 = 166; int setDelay3 = 5; // Ora corrente con cui fare matematica. ora flottante = 0; float mn = 0; float sc = 0; // Imposta l'ora del giorno per reimpostare l'orologio (formato 24 ore). int resetOra = 0; int resetMinuto = 0; // Variabili per impostare l'ora corretta all'avvio e al ripristino. float setTimeStepHour = 0; float setTimeStepMinute = 0; float handDelay = 0; float oraTest = 0; float minuteTest = 0; void setup() { Serial.begin(115200); // Imposta l'orologio in tempo reale e ripristina i sensori dell'effetto hall. pinMode(hourStopSensor, INPUT_PULLUP); pinMode(minuteStopSensor, INPUT_PULLUP); rtc.begin(); // Rimuovi il commento dalla riga sottostante per impostare l'ora. // rtc.adjust(DateTime(2020, 2, 19, 23, 40, 30)); // rtc.adjust(DateTime(F(_DATE_), F(_TIME_))); // Imposta la velocità massima dei motori passo-passo. hourHand.setSpeed(15); minuteHand.setSpeed(15); // Loop fino a quando la lancetta dei minuti e delle ore non sono a mezzogiorno while (digitalRead(hourStopSensor) == LOW || digitalRead(minuteStopSensor) == LOW) { if (digitalRead(hourStopSensor) == LOW) { hourHand.step(2); } else { ritardo (3); } if (digitalRead(minuteStopSensor) == LOW) { minuteHand.step(3); } else { ritardo(4); } } while (digitalRead(hourStopSensor) != LOW || digitalRead(minuteStopSensor) != LOW) { if (digitalRead(hourStopSensor) != LOW) { hourHand.step(2); } else { ritardo (3); } if (digitalRead(minuteStopSensor) != LOW) { minuteHand.step(3); } else { ritardo(4); } } // Ottieni l'ora corrente DateTime now = rtc.now(); ora = ora.ora(); mn = ora.minuto(); sc = ora.secondo(); // Passa al formato 12 ore if (hr >= 12) { hr = hr - 12; } // Guarda quale mano deve percorrere ulteriormente la faccia e usa quella distanza // per regolare il tempo impostato di conseguenza. oraTest = ora / 12; minuteTest = mn / 60; if (hourTest > minuteTest) { handDelay = hourTest; } else { handDelay = minuteTest; } // Imposta l'ora corrente setTimeStepHour = (hr * 498) + (mn * 8.3) + ((sc + (handDelay * 36)) *.1383); // Imposta i minuti correnti setTimeStepMinute = (mn * 114) + ((sc + (handDelay * 45)) * 1.9); // Verifica quale mano avrà bisogno di più passaggi e impostalo sul conteggio dei passi più lungo per il ciclo for. if (setTimeStepHour > setTimeStepMinute) { endStep = setTimeStepHour; } else { endStep = setTimeStepMinute; } for (int i = 0; i <= endStep; i++) { if (i < setTimeStepHour) { hourHand.step(2); } else { ritardo (3); } if (i < setTimeStepMinute) { minuteHand.step(3); } else { ritardo(4); } } // Imposta l'orologio in esecuzione RPM hourHand.setSpeed(1); minuteHand.setSpeed(1); } void loop() { // Avvia il ciclo di esecuzione dell'orologio. for (int i = 0; i < 22; i++) { minuteHand.step(1); ritardo(setRitardo1); // Verifica il tempo di ripristino, se pronto per essere ripristinato, interrompi. if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { break; } } ritardo(setDelay3); for (int i = 0; i < 38; i++) { hourHand.step(1); ritardo(setRitardo1); // Verifica il tempo di ripristino, se pronto per essere ripristinato, interrompi. if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { break; } for (int i = 0; i <20; i++) { minuteHand.step(1); ritardo(setDelay2); // Verifica il tempo di ripristino, se pronto per essere ripristinato, interrompi. if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { break; } } } // Reimposta l'orologio all'ora di azzeramento if (rtc.now().hour() == resetHour && rtc.now().minute() == resetMinute) { // Modifica la velocità dell'orologio hourHand.setSpeed(10); minuteHand.setSpeed(10); // Loop fino a quando la lancetta dei minuti e delle ore raggiunge mezzogiorno. while (digitalRead(hourStopSensor) == LOW || digitalRead(minuteStopSensor) == LOW) { if (digitalRead(hourStopSensor) == LOW) { hourHand.step(2); } else { ritardo (3); } if (digitalRead(minuteStopSensor) == LOW) { minuteHand.step(3); } else { ritardo(4); } } while (digitalRead(hourStopSensor) != LOW || digitalRead(minuteStopSensor) != LOW) { if (digitalRead(hourStopSensor) != LOW) { hourHand.step(2); } else { ritardo (3); } if (digitalRead(minuteStopSensor) != LOW) { minuteHand.step(3); } else { ritardo(4); } } // Attendi qui finché non è trascorso il tempo di ripristino. while (rtc.now().minute() == resetMinute) { delay(1000); } // Ottieni l'ora corrente DateTime now = rtc.now(); ora = ora.ora(); mn = ora.minuto(); sc = ora.secondo(); // Passa al formato 12 ore if (hr>= 12) { hr = hr - 12; } // Guarda quale mano deve percorrere ulteriormente la faccia e usa quella distanza // per regolare il tempo impostato di conseguenza. oraTest = ora / 12; minuteTest = mn / 60; if (hourTest > minuteTest) { handDelay = hourTest; } else { handDelay = minuteTest; } // Imposta l'ora corrente setTimeStepHour = (hr * 498) + (mn * 8.3) + ((sc + (handDelay * 36)) *.1383); // Imposta i minuti correnti setTimeStepMinute = (mn * 114) + ((sc + (handDelay * 45)) * 1.9); // Verifica quale mano avrà bisogno di più passaggi e impostalo sul conteggio dei passi più lungo per il ciclo for. if (setTimeStepHour > setTimeStepMinute) { endStep = setTimeStepHour; } else { endStep = setTimeStepMinute; } for (int i = 0; i <= endStep; i++) { if (i < setTimeStepHour) { hourHand.step(2); } else { ritardo (3); } if (i < setTimeStepMinute) { minuteHand.step(3); } else { ritardo(4); } } hourHand.setSpeed(1); minuteHand.setSpeed(1); } }
Passaggio 22: file STL
Sarà necessario stampare le seguenti quantità di file:
- 1 - Magnete del segmento dell'ingranaggio della corona dell'ora
- 6 - Segmento ingranaggio della corona delle ore di base
- Montaggio passo-passo del segmento dell'anello di ritegno di 1 ora
- Segmento dell'anello di ritenuta delle 6 ore di base
- Supporto per sensore ad effetto Hall da 1 ora
- 1 - Magnete del segmento dell'ingranaggio dell'anello minuto
- 7 - Segmento della corona dentata dei minuti di base
- 1 - Montaggio stepper del segmento dell'anello di ritegno di 1 minuto
- Segmento della suoneria di mantenimento di 6 minuti di base
- Supporto per sensore ad effetto Hall da 1 minuto
- 2 - Ingranaggio cilindrico
- 1 - Supporto per elettronica
Passaggio 23: file Solidworks
Questi sono i file Solidworks originali utilizzati per creare gli STL trovati nel passaggio precedente. Sentiti libero di modificare e cambiare i miei file come meglio credi.
Passaggio 24: Conclusione
Questo orologio si è rivelato migliore di quanto mi aspettassi. Avendo una minima esperienza con Arduino, sono contento di come è venuto fuori e di quanto sia accurato. Sembra fantastico e funziona proprio come speravo.
Consigliato:
Orologio da parete esplosivo fai-da-te con illuminazione di movimento: 20 passaggi (con immagini)
Orologio da parete esplosivo fai-da-te con illuminazione di movimento: in questo tutorial / video ti mostrerò passo dopo passo come realizzare un orologio da parete dall'aspetto creativo e unico con un sistema di illuminazione del movimento integrato. Questa idea di design dell'orologio piuttosto unica è orientata a rendere l'orologio più interattivo . Quando cammino
Orologio da parete a LED ambientale: 11 passaggi (con immagini)
Orologio da parete a LED ambientale: Recentemente ho visto molte persone costruire enormi matrici di LED che sembrano assolutamente belle, ma consistevano in un codice complicato o in parti costose o in entrambi. Così ho pensato di costruire la mia matrice LED composta da parti molto economiche e molto
Affascinante display a ferrofluido: controllato silenziosamente da elettromagneti: 10 passaggi (con immagini)
Affascinante display a ferrofluido: controllato silenziosamente da elettromagneti: Dichiarazione di non responsabilità: questo Instructable non fornirà un modo semplice per costruire un grande display a ferrofluido come il nostro "Fetch". Quel progetto è così grande e costoso che chiunque voglia costruire qualcosa di simile avrà quasi sicuramente dif
Orologio da parete a colori: 7 passaggi (con immagini)
Orologio da parete a colori: questa volta ti presento un orologio analogico da parete a colori per il design dei bambini utilizzando strisce LED. Le basi dell'orologio sono utilizzare tre strisce LED e colori diversi per mostrare l'ora: nella striscia LED rotonda, il colore verde è usato per mostrare le ore, th
Orologio da parete a matrice di LED RGB O-R-A e altro **aggiornato a luglio 2019**: 6 passaggi (con immagini)
Orologio da parete Matrix Led RGB O-R-A e altro **aggiornato a luglio 2019**: Ciao. Eccomi con un nuovo progetto chiamato O-R-AI è un orologio da parete a matrice di LED RGB che visualizza: ora: minuti temperatura umidità icona condizioni meteorologiche attuali eventi di Google Calendar e notifiche di promemoria di 1 ora in un momento specifico che mostra: