Inhoudsopgave:

De coronaklok: 6 stappen (met afbeeldingen)
De coronaklok: 6 stappen (met afbeeldingen)

Video: De coronaklok: 6 stappen (met afbeeldingen)

Video: De coronaklok: 6 stappen (met afbeeldingen)
Video: Vlog cykelsemester Mälaren runt lördag 8 maj 2024, November
Anonim
Image
Image
De coronaklok
De coronaklok
De coronaklok
De coronaklok
De coronaklok
De coronaklok

Terwijl het Coronavirus zich over de planeet verspreidt en steeds meer landen hun burgers opsluiten in hun eigen huis om het virus te vertragen, blijven velen van ons dagen achter zonder iets te doen. Gelukkig is Instructables hier om een handje te helpen en met een paar ideeën in gedachten leek de Instructables Clock-wedstrijd het perfecte tijdverdrijf:)

Als jij ook worstelt met verveling in het huishouden vanwege de opsluiting van het Coronavirus, wees dan niet bang dat de Corona Clock er voor jou is, met een gegarandeerde bouwtijd van 2 dagen plus eindeloze uren kijktijd met je nieuwe Corona Clock!

Het idee achter de klok was dus om stalen ballen op de voorplaat van de klok te hebben in plaats van wijzers die met magneten werden geleid, zodat de ballen als bij toverslag rond de klok bewogen. De buitenste bal vertegenwoordigt de minuten en de binnenste bal vertegenwoordigt de uren.

Ik heb alle CAD-bestanden ontworpen met Autodesk Fusion 360.

Het geheel is geprogrammeerd met behulp van een Arduino.

Ik hoop dat je deze instructable leuk vindt en misschien vind jij het ook de perfecte Print/Build-uitdaging in je vrije tijd.

Laten we zonder verder oponthoud gaan bouwen!!!

Benodigdheden

ELEKTRONICA:

  • 2x TowerPro SG90 servo's (link hier)
  • 1x Arduino Nano (link hier)
  • 1x Arduino Nano-schild (link hier)
  • 1x mini-USB-kabel (link hier)
  • 1x 5V USB-telefoonoplader (link hier)
  • 1x Knop Modules (Link Hier) !!!Zorg ervoor dat je hetzelfde model koopt als dit!!!
  • Pak van vrouwelijke naar vrouwelijke jumperdraden (link hier)
  • 2x Stalen kogels tussen 10 en 15 mm diameter
  • 2x 15 mm diameter x 3 mm breedte Neodymium-magneten (link hier) Ik zou er meer dan 2 kopen voor het geval je ze breekt zoals ik deed:(

KUNSTSTOFFEN:

De onderdelen kunnen bedrukt worden in PLA of PETG of ABS.

Voor het beste resultaat heb je 2 kleuren filamenten nodig.

Let op: een spoel van 500 g van elk is meer dan genoeg om 1 klok af te drukken

3D-PRINTER:

Minimaal vereist bouwplatform: L130mm x B130mm x H75mm

Elke 3D-printer zal het doen. Ik heb persoonlijk de onderdelen afgedrukt op de Creality Ender 3, een goedkope 3D-printer van minder dan $ 200. De afdrukken zijn perfect gelukt.

Gereedschap:

1x Kleine kruiskopschroevendraaier is alles wat je nodig hebt:)

Stap 1: 3D-printen van de onderdelen

Alle onderdelen zijn beschikbaar om te downloaden op Pinshape (link hier)

Ik heb zorgvuldig alle onderdelen van de klok ontworpen om 3D-geprint te worden zonder enige ondersteunende materialen, vlotten of randen die nodig zijn tijdens het printen.

Alle onderdelen zijn getest op de Creality Ender 3

  • Afdruktijd: ongeveer 20 uur
  • Materiaal: PETG
  • Laaghoogte: 0,3 mm
  • Invulling: 15%
  • Pijpdiameter: 0.4mm

De onderdelenlijst voor de klok is als volgt:

Wit:

  • 1x basis
  • 1x Deksel
  • 1x servohouder
  • 1x tandwiel
  • 1x servorek
  • 1x Binnenste cirkel
  • 1x Buitenste cirkel
  • 1x armverlenging
  • 4x pinnen
  • 2x knophouder
  • 2x Voetenclips

Rood:

  • 2x Voeten
  • 1x plaat

Nabewerking:

Tenzij je veel geluk hebt of een erg dure printer hebt, moeten sommige onderdelen worden geschuurd waarbij de onderdelen draaien en tussen elkaar schuiven

Stap 2: Arduino installeren

Arduino installeren
Arduino installeren

De Corona Clock gebruikt Arduino C++-programmering om te kunnen functioneren. Om programma's naar de klok te uploaden, gebruiken we Arduino IDE

Installeer Arduino IDE op uw computer

Arduino IDE (link hier)

Om ervoor te zorgen dat de code in Arduino IDE werkt, volgt u de volgende stappen:

  • Download hieronder de gewenste Arduino Code (Corona Clock.ino)
  • Open het in Arduino IDE
  • Selecteer Gereedschap:
  • Selecteer bord:
  • Selecteer Arduino Nano
  • Selecteer Gereedschap:
  • Selecteer verwerker:
  • Selecteer ATmega328p (oude bootloader)
  • Klik op de knop Verifiëren (vinkje) in de linkerbovenhoek van Arduino IDE

Als alles goed gaat, zou je onderaan een bericht moeten krijgen met de tekst Klaar met compileren. En dat is het, je hebt nu stap 2 voltooid !!!

Stap 3: De code

Hier is een blik op de code voor degenen onder u die geïnteresseerd zijn, u zult hoogstwaarschijnlijk de bewegingen van de servo-armen moeten aanpassen om ze perfect te kalibreren, aangezien de precisie van elke servo varieert.

#erbij betrekken

Servo myservoPUSHER;

Servo myservoSLIDER;

const int buttonMinuten = 4;

int buttonStateMinuten = 0;

int VijfMinuteCounter = 0;

int OneHourCounter = 0;

unsigned long time_now = 0;

ongeldige setup()

{ Serieel.begin (9600);

pinMode (knop Minuten, INPUT);

mijnservoPUSHER.attach(2); myservoSLIDER.attach(3); myservoPUSHER.write(90); myservoSLIDER.write(90); vertraging (5000); mijnservoPUSHER.detach(); myservoSLIDER.detach(); }

lege lus()

{ FiveMinuteCounter = ((millis()/1000) % (300)); // FiveMinuteCounter = 0 elke 5 minuten

buttonStateMinutes = digitalRead (buttonMinutes);

Serial.print ("VijfMinuteCounter: ");

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

// als de knop wordt ingedrukt, beweeg de minuutbal 5 minuten vooruit

if (buttonStateMinuten == 1)

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

// als er 5 minuten zijn verstreken, verplaatst u de minuutbal 5 minuten vooruit

if (vijfminutenteller == 0)

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

// als de minuutbal 12 keer is verplaatst, verplaatst u de uurbal 1 uur vooruit

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

mijnservoPUSHER.write(65);

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

ongeldig wachten5seconds()

{ time_now = millis(); while(millis() <time_now + 500) {//wacht ongeveer. 500 ms } }

Stap 4: De coronaklok monteren

Image
Image

Alle volgende stappen worden afgebeeld in de montagevideo hierboven:

  1. Upload de code naar de Arduino Nano
  2. Bevestig de Arduino Nano aan het Nano Shield
  3. Schroef een van de servo's op het servo-rek zoals weergegeven in de video
  4. Plaats de servo en servo rack in de servo houder en leid de kabel door de gleuf zoals getoond op de video
  5. Sluit die servo aan op pin D2 van het Nano-schild
  6. Sluit de andere servo aan op pin D3 van het Nano-schild
  7. Schroef de andere servo op de basis zoals getoond in de video
  8. Steek de USB-kabel in het stopcontact of de laptop
  9. Sluit het andere uiteinde van de USB-kabel aan op de Arduino Nano gedurende 2 seconden totdat de servo's hun startpositie van 90 graden bereiken
  10. Koppel de USB-kabel los van het lichtnet of de laptop en het Nano-schild
  11. Plaats een servo-arm in de servo-extensie
  12. Schroef die servo-arm op de servo die is aangesloten op pin D2 in een hoek van 90 graden met het servolichaam, precies zoals op de video wordt getoond
  13. Verbind de knop met de GND-, V+- en S-pin met de D4-pin van het Nano Shield met 3 dupont-kabels
  14. Steek de 4 pinnen in de basis van de klok
  15. Plaats het Arduino Nano-schild in de basis
  16. Steek de knop in de basis
  17. Zet de knoop vast met de knoophouder
  18. Steek de voeten in hun respectievelijke sleuven in de basis
  19. Zet de voeten op hun plaats met de voetclips
  20. Steek de USB-kabel in de Arduino via het resterende gat in de basis
  21. Steek de servohouder in de basis over de 4 pinnen Zorg ervoor dat u deze op de juiste manier installeert (video)
  22. Schuif de cirkelgeleidepen op de servohouder
  23. Plaats de resterende servo-arm in het tandwiel
  24. Schroef die servo-arm op de andere servo in een hoek van 90 graden ten opzichte van het servolichaam en met het servorek in het midden van de reis (video)
  25. Plaats de binnenste cirkel op zijn plaats magneetgat naar beneden gericht (6) (kabeluitgangsgat)
  26. Plaats de buitenste cirkel op zijn plaats magneetgat naar boven gericht (12)
  27. Plaats de magneten voorzichtig (Neodymium-magneten zijn sterk en kunnen schade aan zichzelf en anderen veroorzaken als ze met elkaar in contact komen)
  28. Plaats de plaat in het deksel en de plaat is uitgelijnd met de gaten in het deksel
  29. Plaats het deksel over de bovenkant met nummer 6 naar het kabeluitgangsgat gericht
  30. Plaats de stalen kogels op de bovenkant waar ze magnetisch op hun plaats blijven zitten

En dat is het, de klok moet volledig worden gemonteerd en klaar zijn om te functioneren!

Stap 5: De coronaklok instellen

Gedachten en ontwerpiteraties
Gedachten en ontwerpiteraties

Om de klok in te stellen moet de buitenste minutencirkel in de bovenste 12-positie beginnen.

gelukkig kan de binnenste uurcirkel beginnen in welke positie je maar wilt

U kunt vervolgens doorgaan met het inschakelen van de klok door hem in het stopcontact te steken en de knop te gebruiken om de minuten aan te passen

en handmatig draaien van de stalen kogel voor het aanpassen van de uren.

Stap 6: Gedachten en ontwerpiteraties

Dit was een geweldig project en daagde mijn mechanische technische vaardigheden ten volle uit!

Ik had dit idee al een tijdje in mijn hoofd en om dit project daadwerkelijk tot leven te brengen is geweldig. Het was een worsteling, vooral om het timingmechanisme uit te zoeken en een manier om goedkope 180 graden SG90-servo's te gebruiken om het aan te drijven.

Het heeft me iets minder dan een week gekost om dit project te voltooien. Ik heb minstens 10 ontwerpiteraties doorlopen om dit project te voltooien, waarvan sommige op de bovenstaande foto staan. Het was het allemaal waard, de tijd goed besteed!

Aanbevolen: