Turinys:

„Corona Clock“: 6 žingsniai (su nuotraukomis)
„Corona Clock“: 6 žingsniai (su nuotraukomis)

Video: „Corona Clock“: 6 žingsniai (su nuotraukomis)

Video: „Corona Clock“: 6 žingsniai (su nuotraukomis)
Video: 50 Cent - Candy Shop (Official Music Video) ft. Olivia 2024, Liepa
Anonim
Image
Image
Koronos laikrodis
Koronos laikrodis
Koronos laikrodis
Koronos laikrodis
Koronos laikrodis
Koronos laikrodis

Kadangi koronavirusas plinta visoje planetoje ir vis daugiau šalių savo piliečius laiko savo namuose, kad sulėtintų virusą, daugelis iš mūsų išgyvena dienas be nieko. Laimei, „Instructables“yra čia, kad padėtų ranką, ir turint omenyje keletą idėjų, „Instructables Clock“konkursas atrodė kaip puikus praleidimo laikas:)

Jei ir jūs kovojate su nuoboduliu namų ūkyje dėl koronaviruso uždarymo, nebijokite, kad „Corona Clock“yra čia, jums garantuotas 2 dienų kūrimo laikas ir begalės valandų žiūrėjimo laiko, skrendančio su jūsų naujuoju „Corona Clock“!

Taigi, laikrodžio idėja buvo, kad ant laikrodžio priekinės plokštelės būtų plieniniai rutuliai, o ne rankos, nukreiptos magnetais, kad rutuliai tarsi stebuklingai judėtų aplink laikrodį. Išorinis rutulys žymi minutes, o vidinis - valandas.

Visus CAD failus sukūriau naudodamas „Autodesk Fusion 360“.

Visa tai užprogramuota naudojant „Arduino“.

Tikiuosi, kad jums patiks šis pamokomas dalykas, o galbūt ir jums tai atrodys kaip puikus spausdinimo/kūrimo iššūkis laisvalaikiu.

Be jokių papildomų pastangų pradėkime kurti !!!

Prekės

ELEKTRONIKA:

  • 2x „TowerPro SG90 Servo“(nuoroda čia)
  • 1x „Arduino Nano“(nuoroda čia)
  • 1x „Arduino Nano Shield“(nuoroda čia)
  • 1x mini USB kabelis (nuoroda čia)
  • 1x 5V USB telefono įkroviklis (nuoroda čia)
  • 1x mygtukų moduliai (nuoroda čia) !!! Įsitikinkite, kad perkate tą patį modelį kaip ir šis !!!
  • Moteriškų ir moteriškų jungiamųjų laidų pakuotė (nuoroda čia)
  • 2x plieniniai rutuliai nuo 10 iki 15 mm skersmens
  • 2x 15 mm skersmens x 3 mm pločio neodimio magnetai (nuoroda čia) Aš nusipirkčiau daugiau nei 2, tik jei juos sulaužytumėte kaip aš:(

PLASTIKA:

Dalys gali būti atspausdintos PLA arba PETG arba ABS.

Norėdami gauti geriausius rezultatus, jums reikės 2 spalvų gijų.

Atminkite, kad 500 g ritės iš kiekvieno pakanka 1 laikrodžiui atspausdinti

3D spausdintuvas:

Reikalinga minimali konstrukcinė platforma: L130mm x W130mm x H75mm

Tinka bet kuris 3D spausdintuvas. Aš asmeniškai atspausdinau dalis ant „Creality Ender 3“, kuris yra nebrangus 3D spausdintuvas, kurio kaina yra mažesnė nei 200 USD. Atspaudai pasirodė puikiai.

Įrankiai:

Jums tereikia 1x mažo kryžminio atsuktuvo:)

1 žingsnis: dalių spausdinimas 3D formatu

Visas dalis galima atsisiųsti iš „Pinshape“(nuoroda čia)

I Kruopščiai suprojektavau visas laikrodžių dalis, kad jas būtų galima atspausdinti 3D, be jokių pagalbinių medžiagų, plaustų ar briaunų, reikalingų spausdinant.

Visos dalys buvo atspausdintos ant „Creality Ender 3“

  • Spausdinimo laikas: apie 20 val
  • Medžiaga: PETG
  • Sluoksnio aukštis: 0,3 mm
  • Užpildas: 15%
  • Purkštuko skersmuo: 0,4 mm

Laikrodžio dalių sąrašas yra toks:

Balta:

  • 1x bazė
  • 1x dangtelis
  • 1x servo laikiklis
  • 1x krumpliaratis
  • 1x servo stovas
  • 1x vidinis ratas
  • 1x išorinis ratas
  • 1x rankos prailginimas
  • 4x kaiščiai
  • 2x mygtukų laikiklis
  • 2x pėdų spaustukai

Raudona:

  • 2x pėdų
  • 1x plokštė

Po apdorojimo:

Jei jums nepasisekė ar neturite labai brangaus spausdintuvo, kai kurias dalis reikės šlifuoti, kai dalys sukasi ir slysta viena nuo kitos

2 žingsnis: įdiekite „Arduino“

„Arduino“diegimas
„Arduino“diegimas

„Corona Clock“veikimui naudojamas „Arduino C ++“programavimas. Norėdami įkelti programas į laikrodį, naudosime „Arduino IDE“

Įdiekite „Arduino IDE“savo kompiuteryje

„Arduino IDE“(nuoroda čia)

Norėdami įsitikinti, kad kodas veikia „Arduino IDE“, atlikite šiuos veiksmus

  • Atsisiųskite norimą „Arduino“kodą žemiau („Corona Clock.ino“)
  • Atidarykite jį „Arduino IDE“
  • Pasirinkite Įrankiai:
  • Pasirinkite lentą:
  • Pasirinkite „Arduino Nano“
  • Pasirinkite Įrankiai:
  • Pasirinkite procesorių:
  • Pasirinkite ATmega328p (seną įkrovos įkėlimo programą)
  • Spustelėkite mygtuką „Patvirtinti“(mygtukas „Tikrinti“) kairiajame viršutiniame „Arduino IDE“kampe

Jei viskas gerai, apačioje turėtumėte gauti pranešimą, kuriame sakoma „Atlikta kompiliacija“. Ir štai dabar jūs atlikote 2 veiksmą !!!

3 žingsnis: Kodas

Pažvelkite į kodą tiems, kurie domisi, greičiausiai turėsite pakoreguoti servo svirties tvirtinimo elementus, kad jie būtų puikiai sukalibruoti, nes skiriasi kiekvieno servo tikslumas.

#įtraukti

Servo myservoPUSHER;

Servo myservoSLIDER;

const int mygtukasMinutes = 4;

int buttonStateMinutes = 0;

int FiveMinuteCounter = 0;

int OneHourCounter = 0;

unsigned long time_now = 0;

negaliojanti sąranka ()

{Serial.begin (9600);

pinMode (buttonMinutes, INPUT);

myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (90); myservoSLIDER.write (90); vėlavimas (5000); myservoPUSHER.detach (); myservoSLIDER.detach (); }

tuštumos kilpa ()

{FiveMinuteCounter = ((milis ()/1000) % (300)); // FiveMinuteCounter = 0 kas 5 minutes

buttonStateMinutes = digitalRead (buttonMinutes);

Serial.print ("FiveMinuteCounter:");

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

// jei paspaudžiamas mygtukas, perkelkite minutės rutulį 5 minutes į priekį

if (buttonStateMinutes == 1)

{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); palaukti5 sekundes (); myservoSLIDER.write (130); palaukti5 sekundes (); myservoPUSHER.write (140); palaukti5 sekundes (); myservoPUSHER.write (90); palaukti5 sekundes (); myservoSLIDER.write (90); palaukti5 sekundes (); myservoPUSHER.detach (); myservoSLIDER.detach (); „OneHourCounter“++; }

// jei praėjo 5 minutės, perkelkite minutės kamuolį 5 minutes į priekį

jei (FiveMinuteCounter == 0)

{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); palaukti5 sekundes (); myservoSLIDER.write (130); palaukti5 sekundes (); myservoPUSHER.write (140); palaukti5 sekundes (); myservoPUSHER.write (90); palaukti5 sekundes (); myservoSLIDER.write (90); palaukti5 sekundes (); myservoPUSHER.detach (); myservoSLIDER.detach (); „OneHourCounter“++; }

// jei minutės kamuolys pajudėjo 12 kartų, perkelkite valandos rutulį 1 valanda į priekį

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

myservoPUSHER.write (65);

palaukti5 sekundes (); myservoSLIDER.write (50); palaukti5 sekundes (); myservoPUSHER.write (130); palaukti5 sekundes (); myservoSLIDER.write (90); palaukti5 sekundes (); myservoPUSHER.write (90); palaukti5 sekundes (); myservoPUSHER.detach (); myservoSLIDER.detach (); „OneHourCounter“= 0; }}

tuščias laukimas5 sekundės ()

{time_now = milis (); o (milis () <laikas_nuo + 500) {// palaukite maždaug. 500 ms}}

4 žingsnis: „Corona Clock“surinkimas

Image
Image

Visi šie veiksmai pavaizduoti aukščiau esančiame surinkimo vaizdo įraše

  1. Įkelkite kodą į „Arduino Nano“
  2. Pritvirtinkite „Arduino Nano“prie „Nano Shield“
  3. Prisukite vieną iš servo prie servo stovo, kaip parodyta vaizdo įraše
  4. Įdėkite „Servo“ir „Servo“stovą į „Servo“laikiklį ir perveskite kabelį per angą, kaip parodyta vaizdo įraše
  5. Prijunkite tą „Servo“prie „Nano“skydo D2 kaiščio
  6. Prijunkite kitą „Servo“prie „Nano“skydo D3 kaiščio
  7. Prisukite kitą servo prie pagrindo, kaip parodyta vaizdo įraše
  8. Prijunkite USB kabelį prie maitinimo šaltinio arba nešiojamojo kompiuterio
  9. Prijunkite kitą USB kabelio galą prie „Arduino Nano“2 sekundėms, kol „Servos“pasieks 90 laipsnių pradinę padėtį
  10. Atjunkite USB kabelį nuo maitinimo šaltinio arba nešiojamojo kompiuterio ir „Nano“skydo
  11. Įdėkite servo ranką į servo ilgintuvą
  12. Prisukite tą servo ranką prie servo, prijungto prie D2 kaiščio 90 laipsnių kampu nuo servo korpuso tiksliai taip, kaip parodyta vaizdo įraše
  13. Prijunkite mygtuką prie GND, V+ ir S kaiščio prie „Nano Shield“D4 kaiščio, naudodami 3 dupontinius kabelius
  14. Įkiškite 4 kaiščius į laikrodžio pagrindą
  15. Įdėkite „Arduino Nano“skydą į pagrindą
  16. Įkiškite mygtuką į pagrindą
  17. Mygtukų laikikliu pritvirtinkite mygtuką vietoje
  18. Įkiškite kojas į atitinkamas lizdas bazėje
  19. Pėdos tvirtinamos spaustukais
  20. Prijunkite USB kabelį prie „Arduino“per likusią pagrindo angą
  21. Įkiškite servo laikiklį į pagrindą per 4 kaiščius Įsitikinkite, kad jį įstatėte teisingai (vaizdo įrašas)
  22. Uždėkite apskritimo kreipiamąjį kaištį prie servo laikiklio
  23. Įdėkite likusią servo ranką į krumpliaratį
  24. Prisukite tą servo ranką prie kitos servo 90 laipsnių kampu į servo korpusą ir servo stovą pastatykite kelionės centre (vaizdo įrašas)
  25. Įdėkite vidinį apskritimą į magneto angą žemyn (6) (kabelio išėjimo anga)
  26. Padėkite išorinį apskritimą į magneto skylę, nukreiptą į viršų (12)
  27. Įdėkite magnetus atsargiai (neodimio magnetai yra stiprūs ir gali sugadinti save ir kitus, jei liečiasi vienas su kitu)
  28. Įdėkite plokštelę į dangtelį, plokštę su dangtelio skylėmis
  29. Uždėkite dangtelį ant viršaus taip, kad skaičius 6 būtų nukreiptas į kabelio išėjimo angą
  30. Plieninius rutulius padėkite ant viršaus, kur jie magnetiškai prilimpa

Ir štai laikrodis turi būti visiškai surinktas ir paruoštas veikti!

5 veiksmas: „Corona Clock“nustatymas

Mintys ir dizaino pasikartojimai
Mintys ir dizaino pasikartojimai

Norint nustatyti laikrodį, išorinis minučių ratas turi prasidėti viršutinėje 12 padėtyje.

Laimei, vidinis valandos ratas gali prasidėti bet kurioje norimoje padėtyje

Tada galite pereiti prie laikrodžio įjungimo, prijungę jį ir naudodami mygtuką, norėdami koreguoti minutes

ir rankiniu būdu pasukti plieninį rutulį, kad būtų galima reguliuoti valandas.

6 žingsnis: mintys ir dizaino pasikartojimai

Tai buvo nuostabus projektas ir visiškai paneigė mano mechaninės inžinerijos sugebėjimus!

Jau kurį laiką turėjau omenyje šią idėją ir iš tikrųjų įgyvendinti šį projektą yra nuostabu. Tai buvo kova, ypač išsiaiškinus laiko nustatymo mechanizmą ir būdą, kaip jį maitinti naudojant pigius 180 laipsnių SG90 servus.

Šiam projektui įgyvendinti man prireikė vos savaitės. Aš įgyvendinau šį projektą mažiausiai 10 projektavimo iteracijų, kai kurios iš jų yra aukščiau esančioje nuotraukoje. Viskas buvo verta, gerai praleistas laikas!

Rekomenduojamas: