Indholdsfortegnelse:

Infinity Clock - Arduino - WS2813 og DS3231: 5 trin (med billeder)
Infinity Clock - Arduino - WS2813 og DS3231: 5 trin (med billeder)

Video: Infinity Clock - Arduino - WS2813 og DS3231: 5 trin (med billeder)

Video: Infinity Clock - Arduino - WS2813 og DS3231: 5 trin (med billeder)
Video: Arduino WS2812 ring - 60 Clock with 3D printed panel&base, assemble and demo show of prototype. 2024, November
Anonim
Image
Image
Infinity Clock - Arduino - WS2813 og DS3231
Infinity Clock - Arduino - WS2813 og DS3231

Infinity Clock - Arduino - WS2813 og DS3231

Jeg ville bygge et ur og kunne godt lide tanken om at prøve min hånd på at lave et uendeligt ur med en Arduino. Jeg ville have det til at bygge det ud af almindelige emner og skrive programmet selv.

Hvad er et uendeligt ur?

3D -illusionens spejleffekt frembringes, når der er to parallelle reflekterende overflader, der kan sprænge en lysstråle frem og tilbage et ubestemt (teoretisk uendeligt) antal gange. Refleksionerne ser ud til at trække sig tilbage i afstanden, fordi lyset faktisk krydser afstanden. Ved at tilføje farvede lysdioder til Infinity -spejlet forsøger vi at simulere et analogt ur ved hjælp af det tilbagegående farvede lys som urvisere.

I denne instruktive vil jeg guide dig gennem trinene til at oprette Infinity Clock og derefter gennemgå nogle afstembare parametre i programmet.

Trin 1: Nødvendige dele til dette projekt

Nødvendige dele til dette projekt
Nødvendige dele til dette projekt

Liste over dele:

  1. Arduino Uno $ 6 på taydaelectronics
  2. Protoshield til arduino uno. Du kan få en til 2,50 på Amazon her.
  3. DS3231 plus batteri. du kan få en til omkring 3,00 på Amazon her.
  4. WS2813 LED 144 til 1 meter. $ 20 på Amazon her.
  5. 470 OHM 1 W Carbonfilmmodstand omkring 1 cent på Taydaelectronics.
  6. 1000uf 16V elektrolytisk kondensator 9 cent på Taydaelectronics
  7. 5v strømforsyning- Jeg brugte en gammel blackberry oplader.
  8. 6in rundt spejl. omkring $ 5 på Amazon
  9. 6in akrylskive omkring 10 på Amazon
  10. 2 - 6 "broderier til træ (yup det er rigtigt) $ 2 hver på Amazon
  11. Sølv envejs spejlfilm. Ebay ser ud til at være billigst.
  12. Assorterede ledninger.
  13. 3/8 "træ firkantet dyvel HomeDepot til $ 1,27
  14. gammel træurbase eller andet displaystativ.
  15. 2 små lynlåse.

Prototypeskjoldet er ikke påkrævet, men hvis du kan lide at bruge Arduino, vil du finde det meget praktisk at bygge disse projekter. Skift om nødvendigt prototypeskjoldet med et brødbræt.

Du har muligvis også brug for et loddejern.

Jeg ville forvente, at projektet ville koste omkring $ 40,00

Trin 2: Konfigurer din pc

Opsæt din pc
Opsæt din pc
Opsæt din pc
Opsæt din pc
Opsæt din pc
Opsæt din pc

Hvis dette er dit første arduino -projekt:

  1. Download arduino -softwaren fra arduino.cc
  2. Tilslut Arduino til pc'en med usb -kabel.
  3. Når du har startet softwaren, skal du installere tre biblioteker:

    • Klik på menuen "Skitse", klik derefter på "Inkluder biblioteker" og derefter "Administrer biblioteker …"
    • Installer de to biblioteker: FastLED og RTClib. Se billeder for flere detaljer.
  4. Få Arduino scketch fra min github

    • Jeg vil gennemgå koden i slutningen, så du kan ændre den efter behov.
    • På dette tidspunkt skal du indlæse programmet Infinity_Clock_DS3231_WS2813.ino
  5. Gå til Skitse og upload for at indlæse Arduino.
  6. Det sidste afsnit af Instructable dækker nogle af de konfigurerbare parametre.

Det er bedst at uploade skitsen nu, for når den eksterne strøm er tilføjet, er det bedst at ikke tilslutte den til din pc.

Trin 3: Tilslutning af projektet

Tilslutning af projektet
Tilslutning af projektet
Tilslutning af projektet
Tilslutning af projektet

Hvis du bruger ProtoType Shield, skal du lægge det på Arduino.

Ledningerne er den mest komplekse del af projektet. Jeg inkluderede billeder for at hjælpe dig med at se, hvad jeg gjorde. Jeg anbefaler, at du dobbelttjekker alle forbindelser, før du tænder.

DS3231 - Modul i realtid

Sæt DS3231 -modulet i brødbrættet og tilslut som på billedet.

  • Arduino Ground til GND
  • Arduino 5V til VCC
  • Arduino A4 til SDA
  • Arduino A5 til SCL

På billedet tilslutter jeg 5v og jorden til deres eget løb på brødbrættet, fordi vi senere vil tilslutte ekstern strøm.

Fastgør WS2813 LED Strip

  • arduino 5V til din 5V effekt.
  • De to midterste stik er redundante datapinde. de går til pin 7

    Sørg for at sætte en 470 OHM -modstand mellem pin7 og to datakabler

  • Arduino jord til det sidste stik.

Tilslut den eksterne 5V strømforsyning (kørsel af LED -båndet fra arduino -strømmen i lange perioder anbefales ikke).

  • Sæt en 1000uf elektrolytkondensator mellem ledningerne.
  • Tilslut strøm og jord til Arduino Power (5V) og Ground (GND)

Jeg anbefaler ikke at tilslutte den eksterne strøm og USB til Arduino på samme tid.

Trin 4: Byg Infinity Mirror

Byg Infinity Mirror
Byg Infinity Mirror

Trin til at bygge Infinity Mirror:

  1. Påfør filmen på akrylfilmene. Dette vil gøre dit envejsspejl.
  2. Læg akrylskiven i broderirammen. Spænd skruen, så den ikke glider
  3. Sæt spejlet i den anden broderiramme. Stram skruen.
  4. Skær den firkantede dyvel i små sektioner. omkring 1/2"
  5. Sløjf led -strimlen med LED'erne pegende inde i cirklen.

    1. Brug lynlåsbåndene til at holde LED'en på plads.
    2. Du skal muligvis klippe et hak i lynlåsen.
  6. Sæt løkken på spejlet

    1. Brug træklodser som afstandsstykker
    2. Lim klodserne på plads. De skal være sikre nok til at holde LED'en på plads.
  7. Sæt akrylspejlet oven på spejlet/lysdioderne og lim på plads.

Trin 5: Koden

Koden
Koden
Koden
Koden

Programmet bruger Real Time Clock -biblioteket og Fastled -biblioteket.

Her er nogle kodestykker til at tilpasse adfærden.

  • OFFSET - er overlapningen. Programmet forventer, at overlapningen kommer fra LED0. Jeg har en 3 LED offset.
  • CLOCKSTART - er, hvor middagstid er på uret. LED 30 sætter den modsat af de elektriske forbindelser.

Jeg skrev programmet til at bruge HTML -farver. Du kan få dem fra https://htmlcolorcodes.com/ Skift bare # for 0x i programmet.

Du kan ændre baggrunden for am/pm

  • baggrundAM = 0x070707;
  • baggrundPM = 0x646D7E;

LED -hænder på uret:

  • timeHand = 0x000FFF;
  • minHand = 0x00CC00;
  • secHand = 0xcc0000;

For at få det til at skille mig ud tilføjede jeg en mulighed for at have 3 lysdioder i timevis, men giver dig mulighed for at ændre farven på begge sider af den midterste for at få den til at skille sig ud.

  • theeledhour = sand; // du kan gøre det sandt eller falsk
  • extraHourHand = 0x00001F;

En anden god funktion er, at RTClib registrerer, at din DS3231 har fået fjernet batteriet og indstiller tiden til pc -kompileringstiden. Det er en god funktion til nye DS3231.

Hvis du ikke fik skitsen i begyndelsen af dokumentet, kan den findes på GitHub

Tak fordi du læste denne Instructable. Min søn hjalp, og det var et sjovt projekt for os. Jeg håber, at vi bliver overvejet i den optiske konkurrence.

Anbefalede: