Talaan ng mga Nilalaman:

Infinity Clock - Arduino - WS2813 at DS3231: 5 Mga Hakbang (na may Mga Larawan)
Infinity Clock - Arduino - WS2813 at DS3231: 5 Mga Hakbang (na may Mga Larawan)

Video: Infinity Clock - Arduino - WS2813 at DS3231: 5 Mga Hakbang (na may Mga Larawan)

Video: Infinity Clock - Arduino - WS2813 at DS3231: 5 Mga Hakbang (na may Mga Larawan)
Video: Часы – матрица на Arduino и адресных светодиодах WS2812B. 2024, Hulyo
Anonim
Image
Image
Infinity Clock - Arduino - WS2813 at DS3231
Infinity Clock - Arduino - WS2813 at DS3231

Infinity Clock - Arduino - WS2813 at DS3231

Nais kong bumuo ng isang orasan, at nagustuhan ang ideya ng pagsubok ng aking kamay sa paggawa ng isang infinity na orasan kasama ang isang Arduino. Nais kong itayo ito sa mga karaniwang item, at isulat ang programa mismo.

Ano ang isang Infinity Clock?

Ang epekto ng mirror ng 3D na ilusyon ay ginawa tuwing may dalawang magkaparehong nakasalamin na mga ibabaw na maaaring tumalbog ng isang sinag ng ilaw pabalik-balik ng isang walang katiyakan (teoretikal na walang hanggan) bilang ng mga beses. Ang mga repleksyon ay lilitaw na umuurong sa di kalayuan dahil ang ilaw talaga ay dumadaan sa distansya. Sa pamamagitan ng pagdaragdag ng mga may kulay na LED sa mirror na Infinity sinusubukan naming gayahin ang isang analog na orasan gamit ang pag-urong ng kulay na ilaw bilang mga kamay ng orasan.

Sa itinuturo na ito, lalakad kita sa pamamagitan ng mga hakbang upang likhain ang Infinity Clock at pagkatapos ay suriin ang ilang mga maaaring lagyan ng parameter sa programa.

Hakbang 1: Mga Bahaging Kailangan para sa Proyekto na Ito

Mga Bahaging Kailangan para sa Project na Ito
Mga Bahaging Kailangan para sa Project na Ito

Listahan ng Mga Bahagi:

  1. Arduino Uno $ 6 sa taydaelectronics
  2. Protoshield para sa arduino uno. Maaari kang makakuha ng isa para sa 2.50 sa Amazon dito.
  3. DS3231 plus baterya. maaari kang makakuha ng isa para sa paligid ng 3.00 sa Amazon dito.
  4. WS2813 LED 144 para sa 1 metro. $ 20 sa Amazon dito.
  5. 470 OHM 1 W Carbon film resistor bandang 1 sentimo sa Taydaelectronics.
  6. 1000uf 16V Electrolytic capacitor 9 cents sa Taydaelectronics
  7. 5v power supply- Gumamit ako ng isang lumang charger ng blackberry.
  8. 6in bilog na salamin. humigit-kumulang na $ 5 sa Amazon
  9. 6in Acrylic Disc bandang 10 sa Amazon
  10. 2 - 6 "mga kahoy na burda hoops (yup kanan) $ 2 bawat isa sa amazon
  11. Silver one-way mirror film. Mukhang pinakamura ang Ebay.
  12. Iba't ibang mga wires.
  13. 3/8 "kahoy na parisukat na dowel HomeDepot sa halagang $ 1.27
  14. lumang kahoy na orasan base o iba pang display stand.
  15. 2 maliit na kurbatang zip.

Ang prototype na kalasag ay hindi kinakailangan, ngunit kung nais mo ang paggamit ng Arduino makikita mo itong napaka madaling gamiting sa pagbuo ng mga proyektong ito. Ipagpalit ang prototype na kalasag sa isang breadboard kung kinakailangan.

Maaari mo ring kailanganin ang isang soldering iron.

Inaasahan kong ang proyekto ay nagkakahalaga ng halos $ 40.00

Hakbang 2: I-setup ang PC Mo

I-setup ka PC
I-setup ka PC
I-setup ka PC
I-setup ka PC
I-setup ka PC
I-setup ka PC

Kung ito ang iyong unang proyekto ng arduino:

  1. I-download ang arduino software mula sa arduino.cc
  2. Ikonekta ang Arduino sa PC gamit ang usb cable.
  3. Kapag sinimulan mo ang software kakailanganin mong mag-install ng tatlong mga aklatan:

    • Mag-click sa menu na "Sketch", pagkatapos ay i-click ang "Isama ang Mga Aklatan" pagkatapos ay "Pamahalaan ang Mga Aklatan …"
    • I-install ang dalawang aklatan: FastLED at RTClib. Tingnan ang mga larawan para sa karagdagang detalye.
  4. Kunin ang Arduino scketch mula sa aking github

    • Susuriin ko ang code sa dulo upang mabago mo ito kung kinakailangan.
    • Sa puntong ito i-load ang program na Infinity_Clock_DS3231_WS2813.ino
  5. Pumunta sa Sketch at Mag-upload upang mai-load ang Arduino.
  6. Ang huling seksyon na iyon ng Instructable ay sumasaklaw sa ilan sa mga hindi mai-configure na mga parameter.

Pinakamainam na i-upload ang sketch ngayon, dahil sa sandaling ang panlabas na lakas ay naidagdag na pinakamahusay upang hindi ito ikonekta sa iyong PC.

Hakbang 3: Pag-kable ng Proyekto

Kable ng Proyekto
Kable ng Proyekto
Kable ng Proyekto
Kable ng Proyekto

Kung gumagamit ka ng ProtoType Shield ilagay ito sa Arduino.

Ang mga kable ay ang pinaka-kumplikadong bahagi ng proyekto. Nagsama ako ng mga larawan upang matulungan kang makita ang aking ginawa. Inirerekumenda kong i-double check ang lahat ng mga koneksyon bago paandar.

DS3231 - Modyul ng Oras ng Oras ng Oras

Ilagay ang module ng DS3231 sa breadboard at kumonekta tulad ng nasa larawan.

  • Arduino Ground sa GND
  • Arduino 5V sa VCC
  • Arduino A4 sa SDA
  • Arduino A5 hanggang SCL

Sa larawan ay tinatambad ko ang 5v at Ground upang ang kanilang sariling pagtakbo sa breadboard dahil sa paglaon ay nais naming maglakip ng panlabas na lakas.

Ikabit ang WS2813 LED Strip

  • arduino 5V sa iyong 5V lakas.
  • Ang gitnang dalawang konektor ay kalabisan ng mga pin ng data. pumunta sila sa pin 7

    Tiyaking maglagay ng 470 OHM risistor sa pagitan ng pin7 at dalawang mga lead ng data

  • Arduino Ground sa huling konektor.

Ikabit ang panlabas na 5V power supply (ang pagpapatakbo ng LED strip mula sa lakas ng arduino sa loob ng mahabang panahon ay hindi inirerekomenda).

  • Maglagay ng isang 1000uf electrolytic capacitor sa pagitan ng mga lead.
  • Ikonekta ang lakas at lupa sa Arduino Power (5V) at Ground (GND)

Hindi ko inirerekumenda ang pagkonekta sa panlabas na lakas at USB sa Arduino nang sabay.

Hakbang 4: Buuin ang Infinity Mirror

Buuin ang Infinity Mirror
Buuin ang Infinity Mirror

Mga hakbang upang mabuo ang Infinity Mirror:

  1. Ilapat ang pelikula sa mga Acrylic dics. Gagawa ito ng iyong one way mirror.
  2. Ilagay ang Acrylic disc sa Embroidery hoop. Higpitan ang tornilyo upang hindi ito madulas
  3. Ilagay ang salamin sa ibang Embroiery hoop. Tighen down ang turnilyo.
  4. Gupitin ang parisukat na dowel sa maliliit na seksyon. mga 1/2"
  5. I-loop ang led strip na may mga LED na nakaturo sa loob ng bilog.

    1. Gamitin ang mga kurbatang zip upang mahawakan ang pinangunahan.
    2. Maaaring kailanganin mong i-cut ang isang bingaw sa zip tie.
  6. Ilagay ang loop sa salamin

    1. Gumamit ng mga kahoy na bloke bilang mga spacer
    2. Ipako ang mga bloke sa lugar. Dapat silang maging sapat na ligtas upang mapanatili ang pinangunahan.
  7. Ilagay ang salamin ng Acrylic sa tuktok ng salamin / LEDs at pandikit sa lugar.

Hakbang 5: Ang Code

Ang Code
Ang Code
Ang Code
Ang Code

Gumagamit ang programa ng Real Time Clock library at Fastled library.

Narito ang ilang mga snippet ng code upang ipasadya ang pag-uugali.

  • OFFSET - ay ang overlap. Inaasahan ng progam na ang overlap ay magmula sa LED0. Mayroon akong 3 LED offset.
  • CLOCKSTART - ay kung saan ang tanghali ay nasa relo. Inilalagay ito ng LED 30 mula sa mga koneksyon sa kuryente.

Sinulat ko ang programa upang magamit ang mga kulay ng HTML. Maaari mong makuha ang mga ito mula sa https://htmlcolorcodes.com/ Ipagpalit lamang ang # para sa 0x sa programa.

Maaari mong baguhin ang background para sa am / pm

  • backgroundAM = 0x070707;
  • backgroundPM = 0x646D7E;

Mga LED na Kamay ng orasan:

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

Upang mapansin ito nagdagdag ako ng isang pagpipilian upang magkaroon ng 3 LEDs para sa oras na kamay ngunit pinapayagan kang baguhin ang kulay sa magkabilang panig ng gitnang isa upang mapansin ito.

  • theeledhour = totoo; // maaari mo itong gawing totoo o mali
  • extraHourHand = 0x00001F;

Ang isa pang magandang tampok ay ang RTClib ay makakakita na ang iyong DS3231 ay tinanggal ang baterya at itatakda ang oras sa oras ng pagtipon ng PC. Ito ay isang mahusay na tampok para sa bagong DS3231.

Kung hindi mo nakuha ang sketch sa simula ng dokumento, mahahanap ito sa GitHub

Salamat sa pagbabasa ng Instructable na ito. Tumulong ang aking anak at ito ay isang nakakatuwang proyekto para sa amin. Inaasahan kong isasaalang-alang kami sa paligsahan sa optic.

Inirerekumendang: