Cuprins:

Ceasul Corona: 6 pași (cu imagini)
Ceasul Corona: 6 pași (cu imagini)
Anonim
Image
Image
Ceasul Corona
Ceasul Corona
Ceasul Corona
Ceasul Corona
Ceasul Corona
Ceasul Corona

Pe măsură ce Coronavirusul se răspândește pe planetă și din ce în ce mai multe țări își închid cetățenii la propriile case pentru a încetini virusul, mulți dintre noi rămân prin zile fără să facă nimic. Din fericire, Instructables este aici pentru a da o mână de ajutor și având în vedere câteva idei, concursul Instructables Clock părea timpul de trecere perfect:)

Dacă și tu te lupți cu plictiseala în gospodărie din cauza închiderii cu Coronavirus, nu te teme că Corona Clock este aici pentru tine, cu o durată de construire garantată de 2 zile, plus ore nesfârșite de timp de vizionare care zboară cu noul tău Corona Clock!

Deci, ideea din spatele ceasului a fost să aibă bile de oțel pe fața ceasului în loc de mâini ghidate cu magneți, astfel încât bilele să se miște ca prin magie în jurul ceasului. Mingea exterioară reprezintă minutele, iar cea interioară reprezintă orele.

Am proiectat toate fișierele CAD folosind Autodesk Fusion 360.

Întregul lucru este programat folosind un Arduino.

Sper să vă bucurați de acest lucru instructiv și poate și dvs. veți găsi că este provocarea perfectă Print / Build în timpul liber.

Fără alte întrebări, să obținem clădirea !!!

Provizii

ELECTRONICĂ:

  • 2 servere TowerPro SG90 (link aici)
  • 1x Arduino Nano (link aici)
  • 1x Arduino Nano Shield (link aici)
  • 1x cablu Mini USB (link aici)
  • 1x încărcător de telefon USB 5V (link aici)
  • 1x Module cu butoane (link aici) !!! Asigurați-vă că cumpărați același model ca acesta !!!
  • Pachet de fire jumper la femelă (link aici)
  • 2 bile de oțel cu diametrul de 10 și 15 mm
  • 2x 15mm diametru x 3 mm lățime Magneți de neodim (link aici) Aș cumpăra mai mult de 2 doar în cazul în care le spargeți așa cum am făcut:(

PLASTICE:

Piesele pot fi tipărite în PLA sau PETG sau ABS.

Veți avea nevoie de 2 filamente de culoare pentru a obține cele mai bune rezultate.

Vă rugăm să rețineți că o bobină de 500g din fiecare este mai mult decât suficientă pentru a imprima 1 ceas

IMPRIMANTĂ 3D:

Este necesară o platformă minimă de construcție: L130mm x W130mm x H75mm

Orice imprimantă 3D o va face. Am imprimat personal piesele pe Creality Ender 3, care este o imprimantă 3D cu cost redus sub 200 $ Imprimările au ieșit perfect.

Instrumente:

1x șurubelniță cu cap încrucișat este tot ce ai nevoie:)

Pasul 1: Imprimarea 3D a pieselor

Toate piesele sunt disponibile pentru descărcare pe Pinshape (link aici)

Am proiectat meticulos toate piesele ceasurilor pentru a fi imprimate 3D, fără materiale de sprijin, plute sau margini necesare în timpul imprimării.

Toate părțile au fost testate tipărite pe Creality Ender 3

  • Timp de imprimare: Aproximativ 20 de ore
  • Material: PETG
  • Înălțimea stratului: 0,3 mm
  • Umplere: 15%
  • Diametrul duzei: 0,4 mm

Lista pieselor pentru ceas este următoarea:

Alb:

  • 1x bază
  • 1x capac
  • 1x Suport servo
  • 1x Cog
  • 1x Servo Rack
  • 1x cerc interior
  • 1x cerc exterior
  • 1x extensie braț
  • 4x pini
  • 2x Suport buton
  • 2 cleme pentru picioare

Roșu:

  • 2x Picioare
  • 1x farfurie

Post procesare:

Cu excepția cazului în care sunteți foarte norocoși sau aveți o imprimantă foarte scumpă, unele dintre piese vor avea nevoie de șlefuire în cazul în care piesele se rotesc și alunecă între ele

Pasul 2: Instalarea Arduino

Instalarea Arduino
Instalarea Arduino

Ceasul Corona folosește programarea Arduino C ++ pentru a funcționa. Pentru a încărca programe pe ceas vom folosi Arduino IDE

Instalați Arduino IDE pe computer

Arduino IDE (link aici)

Pentru a vă asigura că codul funcționează în Arduino IDE, urmați pașii următori

  • Descărcați codul Arduino dorit mai jos (Corona Clock.ino)
  • Deschideți-l în Arduino IDE
  • Selectați Instrumente:
  • Selectați tabloul:
  • Selectați Arduino Nano
  • Selectați Instrumente:
  • Selectați procesor:
  • Selectați ATmega328p (bootloader vechi)
  • Faceți clic pe butonul Verificare (butonul Tick) din colțul din stânga sus al Arduino IDE

Dacă totul merge bine, ar trebui să primiți un mesaj în partea de jos care să scrie Efectuarea compilării. Și asta e, acum ai finalizat Pasul 2 !!!

Pasul 3: Codul

Iată o privire asupra codului pentru cei dintre voi interesați, cel mai probabil va trebui să modificați mișcările brațelor servo pentru a le calibra perfect, deoarece fiecare servoză de precizie variază.

#include

Servo miservoPUSHER;

Servo myservoSLIDER;

const int buttonMinutes = 4;

int buttonStateMinutes = 0;

int FiveMinuteCounter = 0;

int OneHourCounter = 0;

unsigned long time_now = 0;

configurare nulă ()

{Serial.begin (9600);

pinMode (buttonMinutes, INPUT);

myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (90); myservoSLIDER.write (90); întârziere (5000); myservoPUSHER.detach (); myservoSLIDER.detach (); }

bucla nulă ()

{FiveMinuteCounter = ((milis () / 1000)% (300)); // FiveMinuteCounter = 0 la fiecare 5 minute

buttonStateMinutes = digitalRead (buttonMinutes);

Serial.print ("FiveMinuteCounter:");

Serial.print (FiveMinuteCounter); Serial.print ("OneHourCounter:"); Serial.print (OneHourCounter); Serial.print ("buttonStateMinutes:"); Serial.println (buttonStateMinutes);

// dacă butonul apăsat mișcă mingea cu 5 minute înainte

if (buttonStateMinutes == 1)

{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); wait5seconds (); myservoSLIDER.write (130); wait5seconds (); myservoPUSHER.write (140); wait5seconds (); myservoPUSHER.write (90); wait5seconds (); myservoSLIDER.write (90); wait5seconds (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter ++; }

// dacă au trecut 5 minute mișcă mingea de minute cu 5 minute înainte

if (FiveMinuteCounter == 0)

{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); wait5seconds (); myservoSLIDER.write (130); wait5seconds (); myservoPUSHER.write (140); wait5seconds (); myservoPUSHER.write (90); wait5seconds (); myservoSLIDER.write (90); wait5seconds (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter ++; }

// dacă mingea de minute s-a deplasat de 12 ori mutați ora cu 1 oră înainte

if (OneHourCounter> = 12) {myservoPUSHER.attach (2); myservoSLIDER.attach (3);

myservoPUSHER.write (65);

wait5seconds (); myservoSLIDER.write (50); wait5seconds (); myservoPUSHER.write (130); wait5seconds (); myservoSLIDER.write (90); wait5seconds (); myservoPUSHER.write (90); wait5seconds (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter = 0; }}

void wait5seconds ()

{time_now = millis (); while (milis () <time_now + 500) {// așteptați aprox. 500 ms}}

Pasul 4: Asamblarea ceasului Corona

Image
Image

Toți pașii următori sunt descriși în videoclipul Assembley de mai sus

  1. Încărcați codul pe Arduino Nano
  2. Fixați Arduino Nano la Nano Shield
  3. Înșurubați unul dintre Servo-uri pe rack-ul Servo așa cum se arată în videoclip
  4. Așezați Servo-ul și rack-ul Servo în suportul Servo și treceți cablul prin slot, așa cum se arată în videoclip
  5. Conectați acel Servo la pinul D2 al ecranului Nano
  6. Conectați celălalt Servo la pinul D3 al ecranului Nano
  7. Înșurubați celălalt Servo la bază așa cum se arată în videoclip
  8. Conectați cablul USB la rețeaua de alimentare sau la laptop
  9. Conectați celălalt capăt al cablului USB la Arduino Nano timp de 2 secunde până când Servo-urile ajung la poziția de acasă de 90 de grade
  10. Deconectați cablul USB de la rețea sau laptop și ecranul Nano
  11. Așezați un braț Servo în extensia Servo
  12. Înșurubați brațul Servo pe Servo conectat la pinul D2 la un unghi de 90 de grade față de corpul servo exact așa cum se arată în videoclip
  13. Conectați butonul la pinul GND, V + și S la pinul D4 al Nano Shield cu 3 cabluri dupont
  14. Introduceți cei 4 pini în baza ceasului
  15. Așezați scutul Arduino Nano pe bază
  16. Introduceți butonul spre bază
  17. Fixați butonul în poziție cu suportul butonului
  18. Introduceți picioarele în sloturile respective din bază
  19. Fixați picioarele în poziție cu clemele pentru picioare
  20. Conectați cablul USB la Arduino prin orificiul rămas în bază
  21. Introduceți suportul pentru servon în bază pe cei 4 pini. Asigurați-vă că îl instalați corect (Video)
  22. Introduceți știftul de ghidare Circle pe suportul Servo
  23. Așezați brațul Servo rămas în roata dințată
  24. Înșurubați brațul Servo pe celălalt Servo la un unghi de 90 de grade față de corpul servo și cu rackul servo poziționat în centrul de deplasare (video)
  25. Poziționați cercul interior în locul orificiului magnetului orientat în jos (6) (orificiul de ieșire a cablului)
  26. Poziționați cercul exterior în locul orificiului magnetului cu fața în sus (12)
  27. Introduceți magneții cu precauție (magneții din neodim sunt puternici și pot provoca daune lor înșiși și celorlalți dacă sunt puși în contact unul cu celălalt)
  28. Așezați placa în capac, placa aliniată cu găurile capacului
  29. Așezați capacul deasupra cu numărul 6 orientat spre orificiul de ieșire a cablului
  30. Așezați bilele de oțel pe partea superioară acolo unde se lipesc magnetic

Și asta este, ceasul ar trebui să fie complet asamblat și gata să funcționeze!

Pasul 5: Setarea ceasului Corona

Gânduri și iterații de proiectare
Gânduri și iterații de proiectare

Pentru a seta ceasul, cercul minut exterior trebuie să înceapă în poziția superioară 12.

din fericire, cercul orar interior poate începe în orice poziție doriți

Puteți continua să porniți ceasul conectându-l și folosind butonul pentru a regla minutele

și rotirea manuală a mingii de oțel pentru reglarea orelor.

Pasul 6: Gânduri și iterații de proiectare

Acesta a fost un proiect minunat și mi-a provocat pe deplin abilitățile de inginerie mecanică!

Aveam în minte această idee de ceva vreme și a dus la viață acest proiect este uimitor. A fost o luptă, în special găsirea mecanismului de sincronizare și a unui mod de a folosi servere SG90 ieftine de 180 de grade pentru a-l alimenta.

Mi-a luat puțin mai puțin de o săptămână să realizez acest proiect. Am parcurs cel puțin 10 iterații de proiectare pentru a realiza acest proiect, dintre care unele sunt în fotografia de mai sus. A meritat totul, timpul bine petrecut!

Recomandat: