INHOUDSOPGAWE:

Infinity Clock - Arduino - WS2813 en DS3231: 5 stappe (met foto's)
Infinity Clock - Arduino - WS2813 en DS3231: 5 stappe (met foto's)

Video: Infinity Clock - Arduino - WS2813 en DS3231: 5 stappe (met foto's)

Video: Infinity Clock - Arduino - WS2813 en DS3231: 5 stappe (met foto's)
Video: Infinity CLock 2024, November
Anonim
Image
Image
Infinity Clock - Arduino - WS2813 en DS3231
Infinity Clock - Arduino - WS2813 en DS3231

Infinity Clock - Arduino - WS2813 en DS3231

Ek wou 'n horlosie bou en hou van die idee om 'n oneindige klok met 'n Arduino te probeer maak. Ek wou hê dit moet uit algemene items gebou word en die program self skryf.

Wat is 'n oneindige klok?

Die 3D -illusie -spieël -effek word geproduseer wanneer daar twee parallelle weerkaatsende oppervlaktes is wat 'n ligstraal 'n onbepaalde tyd (teoreties oneindig) kan keer. Dit lyk asof die weerkaatsings in die verte terugtrek omdat die lig eintlik die afstand oorsteek. Deur gekleurde LED's by die Infinity -spieël te voeg, poog ons om 'n analoog horlosie te simuleer deur die teruggekeerde gekleurde lig as klokwysers te gebruik.

In hierdie instruksies lei ek u deur die stappe om die Infinity Clock te skep en kyk dan na 'n paar instelbare parameters in die program.

Stap 1: Onderdele benodig vir hierdie projek

Onderdele benodig vir hierdie projek
Onderdele benodig vir hierdie projek

Onderdele lys:

  1. Arduino Uno $ 6 op taydaelectronics
  2. Protoshield vir arduino uno. U kan een hier vir 2.50 op Amazon kry.
  3. DS3231 plus battery. jy kan een vir ongeveer 3,00 hier op Amazon kry.
  4. WS2813 LED 144 vir 1 meter. $ 20 op Amazon hier.
  5. 470 OHM 1 W Koolstoffilmweerstand ongeveer 1 sent op Taydaelectronics.
  6. 1000uf 16V elektrolitiese kondensator 9 sent op Taydaelectronics
  7. 5v kragtoevoer- ek het 'n ou braambeslaaier gebruik.
  8. 6in ronde spieël. ongeveer $ 5 op Amazon
  9. 6in akriel skyf ongeveer 10 op Amazon
  10. 2 - 6 "hout borduurringe (ja, dit is reg) $ 2 elk op Amazon
  11. Silwer eenrigting spieëlfilm. Ebay blyk die goedkoopste te wees.
  12. Geassorteerde drade.
  13. 3/8 "hout vierkante dowel HomeDepot vir $ 1,27
  14. ou houthorlosiebasis of ander uitstallingsstaander.
  15. 2 klein ritsbande.

Die prototipe skild is nie nodig nie, maar as u daarvan hou om Arduino te gebruik, vind u dit baie handig om hierdie projekte te bou. Verruil die prototipe skild met 'n broodbord indien nodig.

Miskien het u ook 'n soldeerbout nodig.

Ek sou verwag dat die projek ongeveer $ 40,00 sou kos

Stap 2: Stel u rekenaar op

Stel u rekenaar op
Stel u rekenaar op
Stel u rekenaar op
Stel u rekenaar op
Stel u rekenaar op
Stel u rekenaar op

As dit u eerste arduino -projek is:

  1. Laai die arduino -sagteware af van arduino.cc
  2. Koppel die Arduino aan die rekenaar met 'n usb -kabel.
  3. Nadat u die sagteware begin het, moet u drie biblioteke installeer:

    • Klik op die "Skets" -kieslys, klik dan op "Sluit biblioteke in" en dan "Bestuur biblioteke …"
    • Installeer die twee biblioteke: FastLED en RTClib. Sien foto's vir meer besonderhede.
  4. Kry die Arduino scketch van my github

    • Ek sal die kode aan die einde hersien, sodat u dit kan verander soos nodig.
    • Laai op hierdie stadium die program Infinity_Clock_DS3231_WS2813.ino
  5. Gaan na Skets en oplaai om die Arduino te laai.
  6. Die laaste gedeelte van die Instructable dek sommige van die instelbare parameters.

Dit is die beste om die skets nou op te laai, want sodra die eksterne krag bygevoeg is, is dit die beste om dit nie aan u rekenaar te koppel nie.

Stap 3: Bedrading van die projek

Bedrading van die projek
Bedrading van die projek
Bedrading van die projek
Bedrading van die projek

As u die ProtoType Shield gebruik, plaas dit op die Arduino.

Die bedrading is die mees komplekse deel van die projek. Ek het foto's ingesluit om u te help sien wat ek gedoen het. Ek beveel aan dat u alle verbindings nagaan voordat u dit aanskakel.

DS3231 - Real -time klokmodule

Plaas die DS3231 -module in die broodbord en maak verbinding soos op die foto.

  • Arduino Ground na GND
  • Arduino 5V na VCC
  • Arduino A4 tot SDA
  • Arduino A5 na SCL

Op die foto dra ek die 5V en Ground na hul eie baan op die broodbord, want later sal ons eksterne krag wil koppel.

Heg die WS2813 LED -strook aan

  • arduino 5V na u 5V -krag.
  • Die middelste twee verbindings is oortollige datapennetjies. hulle gaan na pen 7

    Maak seker dat u 'n 470 OHM -weerstand tussen die pin7 en twee datakabels plaas

  • Arduino -grond tot by die laaste aansluiting.

Koppel die eksterne 5V -kragtoevoer aan (dit word nie aanbeveel om die LED -strook van die arduino -krag vir 'n lang tydperk uit die arduino -stroom te laat loop nie).

  • Plaas 'n 1000uf elektrolitiese kapasitor tussen die leidings.
  • Koppel krag en grond aan op die Arduino Power (5V) en Ground (GND)

Ek beveel nie aan om die eksterne krag en USB terselfdertyd aan die Arduino te koppel nie.

Stap 4: Bou die Infinity Mirror

Bou die Infinity Mirror
Bou die Infinity Mirror

Stappe om die Infinity Mirror te bou:

  1. Dien die film toe op die akriel -dikte. Dit maak jou eenrigting spieël.
  2. Plaas die akriel skyf in die borduurring. Draai die skroef vas om te voorkom dat dit gly
  3. Plaas die spieël in die ander borduurring. Draai die skroef vas.
  4. Sny die vierkantige stok in klein stukkies. ongeveer 1/2"
  5. Trek die led -strook met die LED's in die sirkel.

    1. Gebruik die ritsbande om die LED vas te hou.
    2. Miskien moet u 'n kerf in die rits vasmaak.
  6. Sit die lus op die spieël

    1. Gebruik houtblokke as afstandhouers
    2. Plak die blokke vas. Hulle moet veilig genoeg wees om die LED in plek te hou.
  7. Sit die akriel spieël bo -op die spieël/LED's en plak dit vas.

Stap 5: Die kode

Die kode
Die kode
Die kode
Die kode

Die program gebruik die Real Time Clock -biblioteek en die Fastled -biblioteek.

Hier is 'n paar kodebrokkies om die gedrag aan te pas.

  • OFFSET - is die oorvleueling. Die program verwag dat die oorvleueling van LED0 af kom. Ek het 'n 3 LED offset.
  • CLOCKSTART - dit is waar die middag op die klok is. LED 30 plaas dit teenoor die elektriese verbindings.

Ek het die program geskryf om HTML -kleure te gebruik. U kan dit by https://htmlcolorcodes.com/ kry, verruil net die # vir 0x in die program.

U kan die agtergrond verander vir am/pm

  • agtergrondAM = 0x070707;
  • backgroundPM = 0x646D7E;

LED -wysers van die klok:

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

Om dit te laat opval, het ek 'n opsie bygevoeg om drie LED's vir 'n uurwyser te hê, maar u kan die kleur aan beide kante van die middelste een verander sodat dit kan uitstaan.

  • theeledhour = waar; // jy kan dit waar of onwaar maak
  • extraHourHand = 0x00001F;

'N Ander goeie kenmerk is dat die RTClib sal opspoor dat u DS3231 die battery laat verwyder het en die tyd op die rekenaarsteltyd sal stel. Dit is 'n goeie kenmerk vir die nuwe DS3231.

As u nie die skets aan die begin van die dokument gekry het nie, kan u dit op GitHub vind

Dankie dat u hierdie instruksies gelees het. My seun het gehelp en dit was 'n prettige projek vir ons. Ek hoop dat ons in die optiese wedstryd oorweeg word.

Aanbeveel: