Linear Clock Gamit ang Arduino + DS1307 + Neopixel: Muling Paggamit ng Ilang Hardware .: 5 Mga Hakbang
Linear Clock Gamit ang Arduino + DS1307 + Neopixel: Muling Paggamit ng Ilang Hardware .: 5 Mga Hakbang
Anonim
Image
Image

Mula sa mga nakaraang proyekto mayroon akong isang Arduino UNO at isang Neopixel LED strip na natitira, at nais na gumawa ng isang bagay na naiiba. Dahil ang Neopixel strip ay may 60 LED lights, naisip na gamitin ito bilang isang malaking orasan.

Upang ipahiwatig ang Mga Oras, ginagamit ang isang pulang 5-LED na segment (60 LED / 12 na mga segment = 5 LED). Ang Minuto ay ipinapakita sa isang solong berdeng LED, at ang mga segundo gamit ang isang asul na LED.

Nagdagdag ako ng isang DS1307 Real Time Clock board upang mapanatili ang oras kung kailan hindi pinapatakbo ang Arduino.

Ito ang Neopixel 60 LED strip na ginamit: https://www.adafruit.com/product/1138 at ito ang DS1307 board:

Sa una ang LED strip ay pinlano na mabitin sa dingning room wall, ngunit sinabi sa akin ng aking mga anak na babae na ilakip ito sa isang piraso ng kahoy mula sa isang papag, kaya iginuhit nila ang mga numero at nakadikit sa kahoy.

Hakbang 1: Prototype Board

Prototype Board
Prototype Board
Prototype Board
Prototype Board

Narito mayroon kang circuit na ipapatupad, at ang BOM.

Kung hindi mo gagamitin ang DS1307 RTC board, hindi ito gagana. Ang Oras at Minuto ay mai-reset kapag ang Arduino ay hindi pinapatakbo dahil ang board na ito ay walang panloob na RTC.

Ang prototype board ay tumutulong sa pagpapanatili ng RTC DS1307, isang pares ng mga resistors at pindutan sa lugar.

Kailangan ng ilang paghihinang at paglalagay ng kable.

Ang pindutang "H" ay nagdaragdag ng oras kapag naitulak. Ang pindutang "M" ay nagdaragdag ng minuto. Ang mga segundo ay na-reset kapag ang anumang pindutan ay pinindot.

Matapos ang 6 na buwan ng patuloy na pagpapatakbo, nagkaroon ng pagkaantala ng 2 minuto (medyo mabuti, sa palagay ko).

Hakbang 2: Arduino UNO

Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO
Arduino UNO

Gumamit ako ng isang lumang Arduino clone, at ilang mga pin upang ikonekta ang prototype board.

Mahahanap mo ang Arduino code sa:

github.com/Giroair/Linear-Clock-Arduino/bl…

Ikinabit ang Arduino sa piraso ng kahoy gamit ang isang plastik na kurbatang.

Nag-solder ng 3 mga kable sa Neopixel strip (pag-iingat: gumamit ng ilang isolation tape o konektor).

Sa proyektong ito ang Arduino ay pinalakas ng isang karaniwang 5V 1A USB charger.

Impormasyon para sa mga developer: ang Neopixel ay pinalakas mula sa 5V pin ng Arduino UNO sapagkat 7 LED lamang ang naka-on nang sabay-sabay. Kung balak mong i-on ang higit pang mga LED (na magiging perpekto para sa mas kaakit-akit na pagpapakita) isaalang-alang ang pag-power ng Neopixel mula sa isang panlabas na mapagkukunan ng 5V. Sa kasong iyon, ikonekta ang pinagmulang GND sa GND pin ng Arduino board.

Ang pagpapagana ng Arduino na kumokonekta sa panlabas at maaasahang mapagkukunan ng kuryente sa 5V pin ay pagpipilian din.

Hakbang 3: Pag-attach ng LED Strip sa Wood

Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood
Pag-attach ng LED Strip sa Wood

Gumamit ng 3 plastik na kurbatang i-hold ang strip sa lugar. Mag-ingat na huwag masakop ang anumang LED.

Ang ilang mga sheet ay nakadikit sa kahoy, at ipininta ang mga numero.

Ang mga pulang numero ay nagpapahiwatig ng Oras. Ang mga linya ay iginuhit tuwing 5 LED.

Ang mga berdeng numero ay nagpapahiwatig ng Minuto. Tandaan na ang unang LED ay nagpapahiwatig ng unang minuto, at ang huli ay nagpapahiwatig ng ika-60 minuto.

Hakbang 4: Pag-unlad sa Hinaharap

Pag-unlad sa Hinaharap
Pag-unlad sa Hinaharap

Ang ilang mga ideya mula sa proyektong ito:

1.- Mag-ukit ng mga numero sa kahoy gamit ang isang pait, at pintahan at barnisan ito.

2.- Iguhit ang mga numero ng Oras sa isang gilid, at ang mga Minuto na numero sa kabilang panig.

3.- Gumamit ng 2 LED strips pabalik sa likod: isang nakaharap sa kaliwa para sa Mga Oras, at isang nakaharap sa kanan para sa mga minuto.

4.- Eksperimento sa iba't ibang mga segment at kulay: imahinasyon ang limitasyon (pinapayuhan kang gumamit ng isang panlabas na 5V na lakas sa Neopixel strip).

5.- Magpakita ng Oras at Minuto halili.

6.- Hatiin ang LED strip sa mga segment at gumawa ng 7x8 LED matrix upang maipakita ang mga digital na numero at character.

7.- Madilim ang ilaw: gumamit ng isang LDR o photodiode upang awtomatikong malabo ang ilaw.

8.- Kumonekta sa cloud upang makuha ang oras mula sa isang server.

9.- Paganahin ang isang Alarm: ang strip ay kumikislap kapag ang mga tawag sa telepono o mga tweet ay natanggap, o isang alarm ng oras ay itinakda.

10.-…. ipaalam mo lang sa akin!

Hakbang 5: Post-Script: 2 Strips

Iniwan ko ang file na "neopixel_invers_2_strips.ino" sa

Ito ay inilaan upang makontrol ang isang strip upang ipahiwatig ang mga oras na konektado sa pin # 6, at isang pangalawang strip upang ipahiwatig ang minuto / segundo na konektado sa pin # 7.

Ang parehong 5V DC at Ground ng strips ay konektado sa parehong mapagkukunan.

DISCLAIMER: hindi masubukan ito hangga't walang 2 piraso. Kung susubukan mo ito, maging mabait na mag-ulat ng mga bug o kumpirmahing gumagana ito ng maayos.

Salamat.