Sisällysluettelo:

Ääretön kello - Arduino - WS2813 ja DS3231: 5 vaihetta (kuvilla)
Ääretön kello - Arduino - WS2813 ja DS3231: 5 vaihetta (kuvilla)

Video: Ääretön kello - Arduino - WS2813 ja DS3231: 5 vaihetta (kuvilla)

Video: Ääretön kello - Arduino - WS2813 ja DS3231: 5 vaihetta (kuvilla)
Video: Infinity Mirror LED Clock - An Open sourc #computer #ambient #arduinoboard #arduino #time 2024, Heinäkuu
Anonim
Image
Image
Ääretön kello - Arduino - WS2813 ja DS3231
Ääretön kello - Arduino - WS2813 ja DS3231

Ääretön kello - Arduino - WS2813 ja DS3231

Halusin rakentaa kellon ja pidin ajatuksesta kokeilla käsiäni äärettömyyskellon tekemiseksi Arduinon kanssa. Halusin, että se rakentaa sen tavallisista kohteista ja kirjoittaa ohjelman itse.

Mikä on ääretön kello?

3D -harhapeiliefekti syntyy aina, kun on kaksi rinnakkaista heijastavaa pintaa, jotka voivat pomppia valonsäteen edestakaisin määrittelemättömän (teoreettisesti loputtoman) määrän kertoja. Heijastukset näyttävät laskeutuvan kaukaisuuteen, koska valo todella kulkee matkan. Lisäämällä värillisiä LED -valoja Infinity -peiliin yritämme simuloida analogista kelloa käyttämällä väistyvää värillistä valoa kellon osoittimina.

Tässä ohjeessa opastan sinua Infinity Clockin luomisen vaiheissa ja tarkastelen sitten joitain ohjelmoitavia parametreja.

Vaihe 1: Tähän projektiin tarvittavat osat

Tähän projektiin tarvittavat osat
Tähän projektiin tarvittavat osat

Osaluettelo:

  1. Arduino Uno 6 dollaria taydaelectronicsissa
  2. Protoshield Arduino Unolle. Voit ostaa sellaisen hintaan 2,50 Amazonista täältä.
  3. DS3231 plus akku. voit saada sellaisen noin 3,00: lla Amazonista täältä.
  4. WS2813 LED 144 1 metrille. 20 dollaria Amazonissa täällä.
  5. 470 OHM 1 W Hiilikalvovastus noin 1 sentti Taydaelectronicsissa.
  6. 1000uf 16V elektrolyyttikondensaattori 9 senttiä Taydaelectronicsista
  7. 5V virtalähde- Käytin vanhaa karhunvatukkalaturia.
  8. 6 tuuman pyöreä peili. noin 5 dollaria Amazonissa
  9. 6 tuuman akryylilevy noin 10 Amazonissa
  10. 2-6 "puukirjontakehykset (joo oikein) 2 dollaria kukin amazonissa
  11. Hopea yksisuuntainen peilikalvo. Ebay taitaa olla halvin.
  12. Erilaisia johtoja.
  13. 3/8 "puinen neliömäinen HomeDepot -tappi 1,27 dollaria
  14. vanha puinen kellokanta tai muu näyttöjalusta.
  15. 2 pientä vetoketjua.

Prototyyppisuojaa ei tarvita, mutta jos pidät Arduinon käytöstä, se on erittäin kätevä näiden projektien rakentamisessa. Vaihda prototyyppisuojus tarvittaessa leipälautaan.

Saatat tarvita myös juotosraudan.

Odotin projektin maksavan noin 40,00 dollaria

Vaihe 2: Asenna tietokoneesi

Asenna tietokone
Asenna tietokone
Asenna tietokone
Asenna tietokone
Asenna tietokone
Asenna tietokone

Jos tämä on ensimmäinen arduino -projektisi:

  1. Lataa arduino -ohjelmisto osoitteesta arduino.cc
  2. Liitä Arduino tietokoneeseen USB -kaapelilla.
  3. Kun käynnistät ohjelmiston, sinun on asennettava kolme kirjastoa:

    • Napsauta "Luonnos" -valikkoa ja sitten "Sisällytä kirjastot" ja sitten "Hallitse kirjastoja …"
    • Asenna kaksi kirjastoa: FastLED ja RTClib. Katso kuvat tarkemmin.
  4. Hanki Arduino -setti githubistani

    • Tarkistan koodin lopussa, jotta voit muokata sitä tarvittaessa.
    • Lataa tässä vaiheessa ohjelma Infinity_Clock_DS3231_WS2813.ino
  5. Siirry Luonnos ja lataa ladataksesi Arduino.
  6. Instructable -ohjelman viimeinen osa kattaa joitain konfiguroitavia parametreja.

On parasta ladata luonnos nyt, koska kun ulkoinen virtalähde on lisätty, on parasta olla yhdistämättä sitä tietokoneeseen.

Vaihe 3: Projektin kytkentä

Projektin johdotus
Projektin johdotus
Projektin johdotus
Projektin johdotus

Jos käytät ProtoType Shieldiä, aseta se Arduinolle.

Johdotus on hankkeen monimutkaisin osa. Lisäsin kuvia, joiden avulla voit nähdä, mitä tein. Suosittelen tarkistamaan kaikki liitännät ennen virran kytkemistä.

DS3231 - Reaaliaikainen kellomoduuli

Aseta DS3231 -moduuli leipälevyyn ja liitä kuten kuvassa.

  • Arduinon maasta GND: hen
  • Arduino 5V - VCC
  • Arduino A4 - SDA
  • Arduino A5 - SCL

Kuvassa kytken 5v ja maadoitukset omaan lenkkilevyyn, koska myöhemmin haluamme liittää ulkoisen virran.

Kiinnitä WS2813 LED -nauha

  • arduino 5V virtalähteeseesi.
  • Kaksi keskimmäistä liitintä ovat tarpeettomia datanappeja. ne menevät nastaan 7

    Varmista, että laitat 470 OHM: n vastuksen nastan 7 ja kahden datajohdon väliin

  • Arduino Maadoita viimeiseen liittimeen.

Liitä ulkoinen 5 V: n virtalähde (LED -nauhan käyttämistä pitkään arduino -virtalähteestä ei suositella).

  • Laita 1000uf elektrolyyttikondensaattori johtojen väliin.
  • Liitä virta ja maa Arduino Power (5V) ja Ground (GND)

En suosittele ulkoisen virran ja USB: n liittämistä Arduinoon samanaikaisesti.

Vaihe 4: Rakenna ääretön peili

Rakenna Infinity Mirror
Rakenna Infinity Mirror

Infinity Mirrorin rakentamisen vaiheet:

  1. Levitä kalvo akryylipinnoille. Tämä tekee yksisuuntaisesta peilistä.
  2. Aseta akryylilevy kirjontakehykseen. Kiristä ruuvi alas, jotta se ei luista
  3. Aseta peili toiseen Embroiery -kehään. Kiristä ruuvi.
  4. Leikkaa neliönmuotoinen tappi pieniksi paloiksi. noin 1/2"
  5. Kierrä led -nauhaa niin, että LEDit osoittavat ympyrän sisään.

    1. Pidä led paikallaan vetoketjuilla.
    2. Sinun on ehkä leikattava lovi vetoketjuun.
  6. Aseta silmukka peilin päälle

    1. Käytä välikappaleina puupalikoita
    2. Liimaa lohkot paikoilleen. Niiden tulee olla riittävän turvallisia pitämään ledit paikallaan.
  7. Aseta akryylipeili peilin/LEDien päälle ja liimaa paikalleen.

Vaihe 5: Koodi

Koodi
Koodi
Koodi
Koodi

Ohjelma käyttää Real Time Clock -kirjastoa ja Fastled -kirjastoa.

Tässä on joitain koodinpätkiä käyttäytymisen mukauttamiseen.

  • OFFSET - on päällekkäisyys. Ohjelma odottaa päällekkäisyyttä LED0: sta. Minulla on 3 LED -offset.
  • CLOCKSTART - on kellon keskipäivä. LED 30 asettaa sen vastakkain sähköliitäntöjen kanssa.

Kirjoitin ohjelman käyttämään HTML -värejä. Voit saada ne osoitteesta https://htmlcolorcodes.com/ Vaihda vain # ohjelmaan 0x.

Voit muuttaa taustan klo am/pm

  • backgroundAM = 0x070707;
  • taustaPM = 0x646D7E;

LED -kellot:

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

Jotta se erottuisi, lisäsin vaihtoehdon saada 3 LED -valoa tunnille, mutta voit vaihtaa väriä keskimmäisen molemmin puolin, jotta se erottuu.

  • theeledhour = totta; // voit tehdä siitä totta tai valhetta
  • extraHourHand = 0x00001F;

Toinen mukava ominaisuus on, että RTClib havaitsee, että DS3231 on poistettu akusta, ja asettaa ajan PC: n kääntämisajalle. Se on hyvä ominaisuus uudelle DS3231: lle.

Jos et saanut luonnosta asiakirjan alussa, se löytyy GitHubista

Kiitos, että luit tämän ohjeen. Poikani auttoi ja se oli hauska projekti meille. Toivon, että meidät otetaan huomioon optikilpailussa.

Suositeltava: