Kazalo:

Neskončna ura - Arduino - WS2813 in DS3231: 5 korakov (s slikami)
Neskončna ura - Arduino - WS2813 in DS3231: 5 korakov (s slikami)

Video: Neskončna ura - Arduino - WS2813 in DS3231: 5 korakov (s slikami)

Video: Neskončna ura - Arduino - WS2813 in DS3231: 5 korakov (s slikami)
Video: Medenična ura 2024, November
Anonim
Image
Image
Neskončna ura - Arduino - WS2813 in DS3231
Neskončna ura - Arduino - WS2813 in DS3231

Neskončna ura - Arduino - WS2813 in DS3231

Želel sem zgraditi uro in mi je bila všeč ideja, da bi se preizkusil v izdelavi neskončne ure z Arduinom. Želel sem, da bi ga sestavil iz skupnih predmetov in sam napisal program.

Kaj je neskončna ura?

Zrcalni učinek 3D iluzije nastane vsakič, ko sta dve vzporedni odsevni površini, ki lahko odsevata žarek svetlobe naprej in nazaj neomejeno (teoretično neskončno) število krat. Zdi se, da se odsevi umaknejo v daljavo, ker svetloba dejansko prečka razdaljo. Z dodajanjem barvnih LED v ogledalo Infinity poskušamo simulirati analogno uro z uporabo umikajoče se barvne svetlobe kot kazalci ure.

V tem navodilu vas bom popeljal skozi korake za ustvarjanje Neskončne ure in nato pregledal nekatere nastavljive parametre v programu.

1. korak: Deli, potrebni za ta projekt

Deli, potrebni za ta projekt
Deli, potrebni za ta projekt

Seznam delov:

  1. Arduino Uno 6 dolarjev za taydaelectronics
  2. Proto ščit za arduino uno. Na Amazonu ga lahko dobite za 2,50.
  3. DS3231 plus baterija. na Amazonu ga lahko dobite za približno 3.00.
  4. WS2813 LED 144 za 1 meter. 20 dolarjev na Amazon tukaj.
  5. 470 OHM 1 W ogljikov film upor okoli 1 cent na Taydaelectronics.
  6. 1000uf 16V elektrolitski kondenzator 9 centov na Taydaelectronics
  7. 5v napajalnik- Uporabil sem star polnilec za robide.
  8. 6 -palčno okroglo ogledalo. okoli 5 dolarjev na Amazonu
  9. 6 -palčni akrilni disk okoli 10 na Amazon
  10. 2 - 6 -palčni obroči za vezenje na les (ja, tako je) 2 USD vsak na Amazon
  11. Srebrni enosmerni zrcalni film. Ebay je najcenejši.
  12. Različne žice.
  13. 3/8 "leseni kvadratni moznik HomeDepot za 1,27 USD
  14. staro leseno podnožje ure ali drugo stojalo za prikaz.
  15. 2 majhni vezi na zadrgo.

Prototipni ščit ni potreben, če pa želite uporabljati Arduino, se vam bo zdel zelo priročen pri gradnji teh projektov. Po potrebi zamenjajte prototipni ščit s ploščico.

Morda boste potrebovali tudi spajkalnik.

Pričakujem, da bo projekt stal približno 40,00 USD

2. korak: Namestite računalnik

Namestite svoj računalnik
Namestite svoj računalnik
Namestite svoj računalnik
Namestite svoj računalnik
Namestite svoj računalnik
Namestite svoj računalnik

Če je to vaš prvi arduino projekt:

  1. Prenesite programsko opremo arduino s spletnega mesta arduino.cc
  2. Arduino povežite z osebnim računalnikom z USB kablom.
  3. Ko zaženete programsko opremo, boste morali namestiti tri knjižnice:

    • Kliknite meni "Skica", nato "Vključi knjižnice", nato "Upravljanje knjižnic …"
    • Namestite dve knjižnici: FastLED in RTClib. Za več podrobnosti si oglejte slike.
  4. Pridobite skico Arduino iz mojega githuba
    • Na koncu bom pregledal kodo, da jo lahko po potrebi spremenite.
    • Na tej točki naložite program Infinity_Clock_DS3231_WS2813.ino
  5. Pojdite na Sketch in Upload, da naložite Arduino.
  6. Ta zadnji razdelek Instructable zajema nekatere nastavljive parametre.

Najbolje je, da skico naložite zdaj, saj po dodajanju zunanjega napajanja najbolje, da je ne povežete z računalnikom.

3. korak: Ožičenje projekta

Ožičenje projekta
Ožičenje projekta
Ožičenje projekta
Ožičenje projekta

Če uporabljate ščit ProtoType Shield, ga namestite na Arduino.

Ožičenje je najbolj zapleten del projekta. Priložil sem slike, ki vam bodo pomagale videti, kaj sem naredil. Priporočam, da pred vklopom dvakrat preverite vse povezave.

DS3231 - Modul ure v realnem času

Modul DS3231 vstavite v mizo in povežite, kot je na sliki.

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

Na sliki povezujem napetost 5V in Ground z lastnim tekom na plošči, ker bomo kasneje želeli priključiti zunanje napajanje.

Pritrdite LED trak WS2813

  • arduino 5V na vašo 5V moč.
  • Srednja dva priključka sta odvečna podatkovna zatiča. gredo na pin 7

    Med pin 7 in dva podatkovna vodila vstavite upor 470 OHM

  • Arduino Ozemljitev do zadnjega priključka.

Priključite zunanji napajalnik 5V (dolgotrajna uporaba LED traku iz arduino napajanja ni priporočljiva).

  • Med žice postavite elektrolitski kondenzator 1000uf.
  • Napajanje in ozemljitev priključite na napajanje Arduino (5 V) in ozemljitev (GND)

Ne priporočam, da na Arduino hkrati priključite zunanje napajanje in USB.

4. korak: Zgradite ogledalo neskončnosti

Zgradite ogledalo neskončnosti
Zgradite ogledalo neskončnosti

Koraki za izdelavo ogledala Infinity:

  1. Nanesite film na akrilne kocke. Tako bo vaše enosmerno ogledalo.
  2. Akrilno ploščo vstavite v obroč za vezenje. Privijte vijak, da ne zdrsne
  3. Ogledalo vstavite v drugi obroč iz embroieryja. Privijte vijak.
  4. Kvadratni moznik narežite na majhne koščke. približno 1/2"
  5. Privijte LED trak z LED diodami, usmerjenimi v krog.

    1. Z zadrgo pritrdite vodilo na mestu.
    2. Morda boste morali izrezati zarezo v zadrgi.
  6. Postavite zanko na ogledalo

    1. Kot distančnike uporabite lesene bloke
    2. Bloke prilepite na svoje mesto. Morali bi biti dovolj varni, da držijo LED na mestu.
  7. Akrilno ogledalo postavite na ogledalo/LED in ga lepite.

5. korak: Koda

Kodeks
Kodeks
Kodeks
Kodeks

Program uporablja knjižnico ure v realnem času in knjižnico pospeševanja.

Tukaj je nekaj delčkov kode za prilagoditev vedenja.

  • OFFSET - je prekrivanje. Program pričakuje, da bo prekrivanje LED0. Imam 3 LED odmik.
  • URA - je tam, kjer je opoldne na uri. LED 30 je v nasprotju z električnimi priključki.

Program sem napisal za uporabo barv HTML. Dobite jih lahko na spletnem mestu https://htmlcolorcodes.com/ Samo zamenjajte # za 0x v programu.

Ozadje za am/pm lahko spremenite

  • ozadjeAM = 0x070707;
  • ozadjePM = 0x646D7E;

LED kazalci ure:

  • urna ročica = 0x000FFF;
  • min Roka = 0x00CC00;
  • secHand = 0xcc0000;

Da bi izstopal, sem dodal možnost, da imam 3 LED za urno kazalko, vendar vam omogoča, da spremenite barvo na obeh straneh srednje, da bo izstopala.

  • theeledhour = res; // lahko naredite res ali napačno
  • extraHourHand = 0x00001F;

Druga prijetna lastnost je, da bo RTClib odkril, da je bila pri vašem DS3231 odstranjena baterija, in nastavil čas za čas sestavljanja računalnika. To je dobra lastnost za nov DS3231.

Če skice niste dobili na začetku dokumenta, jo lahko najdete na GitHubu

Hvala, ker ste prebrali ta navodila. Sin mi je pomagal in to je bil za nas zabaven projekt. Upam, da nas bodo upoštevali na tekmovanju optike.

Priporočena: