INHOUDSOPGAWE:
- Voorrade
- Stap 1: 3D -druk van die onderdele
- Stap 2: Installeer Arduino
- Stap 3: Die kode
- Stap 4: Monteer die Corona -klok
- Stap 5: Stel die Corona -klok in
- Stap 6: Gedagtes en ontwerp -iterasies
Video: Die Corona -klok: 6 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Namate die koronavirus oor die planeet versprei en meer en meer lande hul burgers beperk tot hul eie huise om die virus te vertraag, gaan baie van ons deur dae sonder om iets te doen. Gelukkig is Instructables hier om 'n handjie by te sit, en met 'n paar idees in gedagte het die Instructables Clock -wedstryd na die perfekte tyd gelyk:)
As u ook sukkel met verveling in die huishouding as gevolg van die inperking van die Coronavirus, moet u nie vrees dat die Corona -klok hier is nie, met 'n gewaarborgde 2 dae se bou -tyd plus eindelose ure kyk -tyd wat verbygaan met u nuwe Corona -klok!
Die idee agter die horlosie was dus om staalbolletjies op die voorkant van die horlosie te plaas in plaas van die hande wat met magnete gelei word, sodat die balle deur magie om die klok beweeg. Die buitenste bal verteenwoordig die minute en die binneste bal verteenwoordig die ure.
Ek het al die CAD -lêers ontwerp met Autodesk Fusion 360.
Die hele ding is geprogrammeer met behulp van 'n Arduino.
Ek hoop dat u hierdie instruksies geniet, en miskien vind u dit ook die perfekte Print/Build -uitdaging in u vrye tyd.
Sonder meer, laat ons bou !!!
Voorrade
ELEKTRONIES:
- 2x TowerPro SG90 Servo's (skakel hier)
- 1x Arduino Nano (skakel hier)
- 1x Arduino Nano Shield (skakel hier)
- 1x Mini USB -kabel (skakel hier)
- 1x 5V USB -selfoonlaaier (skakel hier)
- 1x knoppiesmodules (skakel hier) !!! Maak seker dat u dieselfde model as hierdie een koop !!!
- Pak vroulike tot vroulike trui (skakel hier)
- 2x staalballe tussen 10 en 15 mm in deursnee
- 2x 15 mm deursnee x 3 mm breed Neodymium magnete (skakel hier) Ek sou meer as 2 koop as jy dit breek soos ek gedoen het:(
PLASTIEK:
Die onderdele kan in PLA of PETG of ABS gedruk word.
Om die beste resultate te kry, benodig u 2 kleurfilamente.
Let daarop dat 'n spoel van 500 g elk meer as genoeg is om 1 horlosie te druk
3D PRINTER:
Minimum bouplatform benodig: L130mm x B130mm x H75mm
Enige 3D -drukker sal dit doen. Ek het die onderdele persoonlik op die Creality Ender 3 gedruk, 'n goedkoop 3D -drukker onder 200 $. Die afdrukke het perfek uitgedraai.
Gereedskap:
1x Klein kruiskopskroewedraaier is al wat u nodig het:)
Stap 1: 3D -druk van die onderdele
Al die onderdele kan op Pinshape afgelaai word (skakel hier)
Ek het alle dele van die horlosies noukeurig ontwerp om 3D -gedruk te word sonder dat materiaal, vlotte of randjies benodig word tydens die druk.
Al die onderdele is toetsgedruk op die Creality Ender 3
- Druk tyd: ongeveer 20 uur
- Materiaal: PETG
- Laaghoogte: 0,3 mm
- Aanvulling: 15%
- Spuitstuk deursnee: 0,4 mm
Die onderdele lys vir die klok is soos volg:
Wit:
- 1x basis
- 1x deksel
- 1x servohouer
- 1x tandwiel
- 1x servorek
- 1x binnekring
- 1x buitekring
- 1x armuitbreiding
- 4x penne
- 2x knoppiehouer
- 2x voetknipsels
Rooi:
- 2x voete
- 1x bord
Na-verwerking:
Tensy u baie geluk het of 'n baie duur drukker het, sal sommige onderdele geskuur moet word waar die dele draai en tussen mekaar gly.
Stap 2: Installeer Arduino
Die Corona Clock gebruik Arduino C ++ programmering om te funksioneer. Om programme na die klok te laai, gebruik ons Arduino IDE
Installeer Arduino IDE op u rekenaar
Arduino IDE (skakel hier)
Om te verseker dat die kode in Arduino IDE werk, volg die volgende stappe
- Laai die gewenste Arduino -kode hieronder af (Corona Clock.ino)
- Maak dit oop in Arduino IDE
- Kies gereedskap:
- Kies raad:
- Kies Arduino Nano
- Kies gereedskap:
- Kies verwerker:
- Kies ATmega328p (ou selflaaiprogram)
- Klik op die Verify -knoppie (Merk -knoppie) in die linker boonste hoek van Arduino IDE
As alles goed gaan, moet u onderaan 'n boodskap kry wat sê Klaar opstel. En dit is dit dat u nou stap 2 voltooi het !!!
Stap 3: Die kode
Kyk na die kode vir diegene wat belangstel, u sal waarskynlik die servo -armaanpassings moet aanpas om dit perfek te kalibreer, aangesien elke servos se presisie verskil.
#insluit
Servo myservoPUSHER;
Servo myservoSLIDER;
const int buttonMinutes = 4;
int buttonStateMinutes = 0;
int FiveMinuteCounter = 0;
int OneHourCounter = 0;
ongetekende lang time_now = 0;
leemte opstelling ()
{Serial.begin (9600);
pinMode (buttonMinutes, INPUT);
myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (90); myservoSLIDER.write (90); vertraging (5000); myservoPUSHER.detach (); myservoSLIDER.detach (); }
leemte lus ()
{FiveMinuteCounter = ((millis ()/1000) % (300)); // FiveMinuteCounter = 0 elke 5 minute
buttonStateMinutes = digitalRead (buttonMinutes);
Serial.print ("FiveMinuteCounter:");
Serial.print (FiveMinuteCounter); Serial.print ("OneHourCounter:"); Serial.print (OneHourCounter); Serial.print ("buttonStateMinutes:"); Serial.println (buttonStateMinutes);
// as die knoppie ingedruk word, beweeg die minuutbal 5 minute vorentoe
as (buttonStateMinutes == 1)
{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); wag5 sekondes (); myservoSLIDER.write (130); wag5 sekondes (); myservoPUSHER.write (140); wag5 sekondes (); myservoPUSHER.write (90); wag5 sekondes (); myservoSLIDER.write (90); wag5 sekondes (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter ++; }
// as 5 minute verby is, skuif minuutbal 5 minute vorentoe
as (FiveMinuteCounter == 0)
{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); wag5 sekondes (); myservoSLIDER.write (130); wag5 sekondes (); myservoPUSHER.write (140); wag5 sekondes (); myservoPUSHER.write (90); wag5 sekondes (); myservoSLIDER.write (90); wag5 sekondes (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter ++; }
// as minuutbal 12 keer beweeg het, beweeg uurbal 1 uur vorentoe
as (OneHourCounter> = 12) {myservoPUSHER.attach (2); myservoSLIDER.attach (3);
myservoPUSHER.write (65);
wag5 sekondes (); myservoSLIDER.write (50); wag5 sekondes (); myservoPUSHER.write (130); wag5 sekondes (); myservoSLIDER.write (90); wag5 sekondes (); myservoPUSHER.write (90); wag5 sekondes (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter = 0; }}
nietig wag5 sekondes ()
{time_now = millis (); terwyl (millis () <time_now + 500) {// ongeveer wag 500 ms}}
Stap 4: Monteer die Corona -klok
Al die volgende stappe word in die Assembley -video hierbo uitgebeeld
- Laai die kode op na die Arduino Nano
- Bevestig die Arduino Nano aan die Nano -skild
- Skroef een van die servo's aan die servorak vas soos in die video getoon
- Plaas die Servo- en Servo -rek in die Servo -houer en voer die kabel deur die gleuf soos op die video aangedui
- Koppel die servo aan pin D2 van die Nano -skild
- Koppel die ander servo aan pen D3 van die Nano -skild
- Skroef die ander servo aan die basis vas soos in die video getoon
- Sluit die USB -kabel aan op die netstroom of skootrekenaar
- Koppel die ander kant van die USB -kabel vir 2 sekondes aan die Arduino Nano totdat die servo's hul 90 grade tuisposisie bereik
- Ontkoppel die USB -kabel van die netstroom of die skootrekenaar en die Nano -skild
- Plaas 'n Servo -arm in die Servo -verlengstuk
- Skroef die servo -arm vas aan die servo wat vasgemaak is aan pen D2 in 'n hoek van 90 grade met die servo -liggaam presies soos op die video
- Verbind die knoppie met die GND-, V +- en S -pen met die D4 -pen van die Nano Shield met 3 dupont -kabels
- Plaas die 4 penne in die basis van die horlosie
- Plaas die Arduino Nano -skild in die basis
- Plaas die knoppie in die basis
- Bevestig die knoppie met die knoppiehouer
- Plaas die voete in hul onderskeie gleuwe in die basis
- Bevestig die voete op hul plek met die voetklemme
- Steek die USB -kabel in die Arduino deur die oorblywende gat in die basis
- Plaas die servohouer in die basis oor die 4 penne. Maak seker dat u dit op die regte manier installeer (video)
- Sit die sirkelgidspen op die servohouer vas
- Plaas die oorblywende Servo -arm in die tandwiel
- Skroef die servo -arm vas aan die ander servo in 'n hoek van 90 grade teenoor die servo -liggaam en met die servorak in die middel van die reis (video)
- Plaas die binnekring op sy plek met die magneetgat na onder (6) (kabeluitgang)
- Plaas die buitenste sirkel op sy plek met die magneetgat na bo (12)
- Steek die magnete versigtig in (Neodymium -magnete is sterk en kan hulself en ander beskadig as dit met mekaar in aanraking kom)
- Plaas die bord op die deksel, met die deksel op die deksel
- Plaas die deksel bo -op met nommer 6 in die rigting van die kabeluitgang
- Plaas die staalballe bo -op die plek waar dit magneties vassteek
En dit is dat die klok volledig gemonteer en gereed is om te funksioneer!
Stap 5: Stel die Corona -klok in
Om die klok te stel, moet die buitenste minuut sirkel in die boonste 12 posisie begin.
gelukkig kan die innerlike uur sirkel begin in die posisie wat u wil
U kan dan die klok aanskakel deur dit aan te sluit en die knoppie te gebruik om die minute aan te pas
en draai die staalbal handmatig om die ure aan te pas.
Stap 6: Gedagtes en ontwerp -iterasies
Dit was 'n wonderlike projek en het my meganiese ingenieursvermoëns ten volle uitgedaag!
Ek het hierdie idee al 'n rukkie in gedagte gehad en om hierdie projek werklik tot lewe te bring, is ongelooflik. Dit was 'n stryd, veral om die tydsmeganisme uit te vind en 'n manier om goedkoop 180 grade SG90 servo's te gebruik om dit aan te dryf.
Dit het my net minder as 'n week geneem om hierdie projek te voltooi. Ek het deur ten minste 10 ontwerp -iterasies gegaan om hierdie projek te voltooi, waarvan sommige op die foto hierbo is. Dit was alles die moeite werd, tyd bestee!
Aanbeveel:
Konfigurasie van die AVR -mikrobeheerder. Skep en laai die LED -knipperprogram in die flitsgeheue van die mikrokontroleerder op: 5 stappe
Konfigurasie van die AVR -mikrobeheerder. Skep en laai die LED -knipperprogram in die flitsgeheue van die mikrokontroleerder: In hierdie geval sal ons 'n eenvoudige program in C -kode skep en dit in die geheue van die mikrokontroleerder verbrand. Ons sal ons eie program skryf en die hex -lêer saamstel, met behulp van die Atmel Studio as die geïntegreerde ontwikkelingsplatform. Ons sal die sekering van twee instel
Hoe om die temperatuur van die bierfermentasie en die swaartekrag van u slimfoon te beheer: 4 stappe (met foto's)
Hoe om die temperatuur van die bierfermentasie en -gravitasie vanaf u slimfoon te beheer: as bier fermenteer, moet u die erns en temperatuur daarvan daagliks monitor. Dit is maklik om te vergeet om dit te doen, en as u weg is, is dit onmoontlik. Na 'n bietjie gegoogle het ek verskeie oplossings gevind vir outomatiese swaartekragmonitering (een, twee, drie). Een van die
Hoe om die veiligheid van die meeste blokkeerders aan die kant van die bediener te omseil: 3 stappe
Hoe om die veiligheid van die meeste webblokkers op die bediener te verlig: dit is my eerste instruksie, so hou my in gedagte: Ok, ek sal u vertel hoe u die webblokkers wat ek in skole gebruik het, kan omseil. Al wat u nodig het, is 'n flash drive en 'n paar sagteware aflaai
Hoe om probleme op te los met die afstandsbediening van die Pionner -stuurwiel - Verhoog die IR -sein en herstel die klein slot: 14 stappe
Hoe om probleme op te los met die afstandsbediening van die stuurwiel van Pionner - Verhoog die IR -sein en herstel die klein slot.: Hierdie afstandsbediening is baie mooi en gerieflik, maar soms werk dit nie behoorlik nie. projek is nie 'n voorbeeld van doeltreffendheid nie. Ek kom uit Brasilië en het hierdie wenk op Amaz gekry
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: 9 stappe (met foto's)
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: die middelste voetsteunhysers moet goed onder die sitplek geberg word en laer om te ontplooi. 'N Meganisme vir die onafhanklike werking van die opberging en ontplooiing van voetsteun is nie ingesluit by rolstoele op die mark nie, en PWC -gebruikers het die behoefte uitgespreek