Përmbajtje:

Ora LED duke përdorur neopixel: 4 hapa (me fotografi)
Ora LED duke përdorur neopixel: 4 hapa (me fotografi)

Video: Ora LED duke përdorur neopixel: 4 hapa (me fotografi)

Video: Ora LED duke përdorur neopixel: 4 hapa (me fotografi)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Korrik
Anonim
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel
Ora LED duke përdorur neopixel

Mirësevini në udhëzuesin tim se si të bëni një orë LED duke përdorur 60 Neopixel.

Do të gjeni 3 PDF të bashkangjitur një për segmentet e orës, një tjetër për bazën dhe së fundi një është një model për të ndihmuar në ngjitjen e seksioneve së bashku.

Pra, për ta përfunduar këtë do t'ju duhet sa më poshtë

  • Unaza prej 60 neopixelësh vjen në 4 të katërtat. kërkoni për "ws2812 unazë 60" (12.00 £)
  • Kërko RTC për "modulin DS3231" (2.50 £)
  • Arduino Nano (4 £)
  • Kompensatë 3mm/1/8 ".
  • copa teli. shpresoj se do të kesh pak përreth?
  • 5v njësi e furnizimit me energji USB. Lloji që fëmijët tuaj do të kenë shkatërruar lidhësin.

Më poshtë janë artikujt e mundësuar nga bateria Lipo, por pas testimit, ora konsumoi shumë energji, kështu që bateria u rrëzua në favor të një PSU USB.

  • kërkimi i konvertuesit dc-dc "rrit konvertuesin" (£ 3)
  • Qarku i karikimit kërkimi TP4056 "tp4056" (£ 2)
  • Qelizë e vetme LiPo 1000Mah. kërkoni për "1000mah lipo 3.7" OSE "503450 lipo" (00 8.00)

Numri LiPo është 503450 dhe mund të jetë mirë të dini se kjo do të thotë 50 mm e gjatë 34 mm e gjerë dhe 5.0 e thellë.

Hapi 1: Copat e drurit

Copat e drurit
Copat e drurit
Copat e drurit
Copat e drurit
Copat e drurit
Copat e drurit

Ju duhet të jeni në gjendje të shihni në fotografi që unë kam printuar modelin dhe e kam ngjitur atë edhe kompensatë. Ajo që mund të mos jetë e qartë është se kam prerë 3 seksione njëherësh dhe pjesa e poshtme pritet së pari rreth perimetrit, pastaj një pjesë hiqet (nga mbrapa) pastaj vrima është prerë në dy pjesët e mbetura pastaj një seksion tjetër u hoq duke lënë vetëm pjesën e përparme të mbetur pastaj foleja për telat u pre.

Kur të gjitha copat janë prerë, së pari duhet të kontrolloni se si ato të gjitha përshtaten së bashku, pastaj ngjitini të gjitha. i ndërtova 3 shtresat në krye të një plani të orës për t'u siguruar që gjithçka ishte e saktë rrethore. Gjithashtu sigurohuni që të merrni pjesët e poshtme në orientimin e duhur dhe pjesa e plotë e mesit është montuar me kokë poshtë, kështu që ju bëni xhiro mbi nyjet.

Vrimat në pjesët e përparme lejojnë që nyjet e ngjitura në lagjet të ulen. Dhe pjesa e poshtme lejon që telat të kalojnë.

Seria e fotografive gjithashtu tregon se si baza është bashkuar.

Hapi 2: Instalimi i unazës LED

Instalimi i unazës LED
Instalimi i unazës LED
Instalimi i unazës LED
Instalimi i unazës LED
Instalimi i unazës LED
Instalimi i unazës LED
Instalimi i unazës LED
Instalimi i unazës LED

Nuk ka shumë për të thënë në lidhje me këtë hap, por vetëm në rast se nuk keni përdorur një shirit WS2812LED ato janë inteligjente kështu që secili ka një të dhënë brenda dhe jashtë. Në harqet e 15 LED -ve PCB trajton të gjitha lidhjet, por kur të bashkoheni me seksionet ju duhet të bëni lidhjet e energjisë dhe të dhënat. Ju nuk mund t'i merrni lidhjet gabim sepse ato janë në një rreth megjithatë kur të keni përfunduar rrethin duhet të keni një lidhje që mungon në të dhënat IN/OUT për t'ju lejuar të lidhni telat me të dhënat IN. Aty ku telat lidhen me të dhënat IN do të jetë LED i parë ose siç është numëruar saktë ZERO.

Pyesja veten se si ishte mënyra më e mirë për të rregulluar unazën e LED -ve në unazën e drurit? por në fund vendosa të përdor kordonin e afërt dhe tezgjahin rreth perimetrit duke anashkaluar një LED çdo herë.

Hapi 3: Instalimi i Arduino Nano dhe Power

Instalimi i Arduino Nano dhe Power
Instalimi i Arduino Nano dhe Power
Instalimi i Arduino Nano dhe Power
Instalimi i Arduino Nano dhe Power
Instalimi i Arduino Nano dhe Power
Instalimi i Arduino Nano dhe Power

Fillimisht vendosa të përdor një LiPo në këtë projekt, por kur e provova baterinë e shkarkuar brenda natës. Në fillim mendova se bateria mund të ishte e gabuar, kështu që mata rrymën dhe zbulova se qarku tërhiqte 73mA që do të thotë se në bateri do të ishte më shumë. Në fakt unë mata rrymën në bateri (para konvertuesit të nxitjes) dhe zbulova se ishte mbi 110mA. Pra, ishte e qartë se kjo orë nuk do të punonte me një bateri.

Kështu që në vend të kësaj unë zgjedh të përdor një karikues USB 5V. Unë prirem të kem shumë ngarkues USB të vdekur për shkak të lidhësve që abuzojnë nga dy fëmijë të vegjël.

Pra, për shkak se ne po përdorim WS2812 LED kemi vetëm 3 lidhje me Arduino Nano.

  • Fuqia
  • Toke
  • Të dhënat IN. Portokalli në D2 në Nano

Tjetra kemi RTC kjo ka vetëm 4 tela.

  • Fuqia 5 Volt
  • Toke
  • SCL (Ora I2C) Blu në A5 në Nano
  • SDA (Të dhënat I2C) E verdhë në A4 në Nano

Së fundmi ne kemi nevojë për energji dhe kjo shkon në terminalin e energjisë 5 V në Nano.. Vin është projektuar të ketë një tension më të madh se 5 volt (dmth. 7-12 Volt) dhe tokën.

Hapi 4: Programi

Më pëlqen shumë programimi, thjesht nuk jam shumë i mirë në të.

Problemi 1

Sekondat dhe minutat janë paraqitur saktë si një numër nga 0-59. Megjithatë LED i parë dhe kështu zero është në fund. Kështu që kjo duhej korrigjuar.

void correctPos (int A)

{nëse (A 30) {A = A - 31; }} temp = A; }

Problemi 2

Unë u përpoqa të pastroj të gjitha LED -të para se të shfaqja pozicionin e ri megjithatë kjo bëri që LED -të të ndizen. Kështu që vendosa të ndizni LED -in e ardhshëm dhe pastaj ta fikni atë të mëparshëm. Kjo funksionoi mirë ?? JO, sepse nëse pozicioni i ri ishte zero, ai do të provonte dhe fiket -1. kështu që u trajtua në të njëjtën kohë.

fshirje e pavlefshme Paraprake (int B)

// fshini led -in e mëparshëm, nëse ishte zero atëherë // fikni 59 tjetër thjesht zbritni 1 // dhe fikeni atë. {if (B == 0) {strip.setPixelColor (59, 0, 0, 0); // Të gjitha jashtë} tjetër {strip.setPixelColor (B - 1, 0, 0, 0); // të gjitha jashtë}}

Problemi 3

Të bësh sa më sipër funksionoi vërtet mirë derisa pozicioni i ri i dytë ishte në vendin e minutës së vjetër. Që do të thoshte që minuta që u përditësua pas sekondave e fiki atë! E njëjta gjë për orën/minutën gjithashtu

nëse (sekonda == mins-1)

{strip.setPixelColor (mins-1, 0, 30, 0); }

Problemi 4

Gjërat kanë filluar të duken mirë, kështu që le t'i përziejmë ngjyrat kur bien në të njëjtin pozicion?

nëse (mins == sekonda)

{strip.setPixelColor (mins, 15, 13, 0); // jeshile dhe e kuqe për ta bërë të verdhë. }

Problemi 5

Orari fillon në formatin 24 orë. kështu që kjo ka nevojë të korrigjohet së pari

nëse (orë> 12)

{orë = orë -12; }

Problemi 6

Dhe mos harroni se ka 24 orë në ditë dhe unë kam 60 LED. Lehtë me të vërtetë e kalon atë me 5

orë = orë * 5;

Problemi 7

Duke bërë sa më sipër ne tani kemi orën duke kërcyer 4 LED do të dukej shumë më mirë nëse do të përdorte të gjitha LED dhe do të tregonte saktë fraksionet e një ore? Përsëri ky ishte një rregullim i lehtë, thjesht shtova numrin e minutave origjinal të ndarë me 12 në orë.

orë = orë + (shtoMin/12);

Problemi 8

Kur ora ose minuta e udhëhequr është në fund sekondat zhduken për një sekondë më parë.

orë = nëse (mins == 0)

{if (secs == 59) {strip.setPixelColor (59, 0, 30, 0); // green}} if (orë == 0) {if (secs == 59) {strip.setPixelColor (59, 0, 30, 0); // jeshile}}

Problemi 9

Vendosja e kohës. Vendosa ta mbaj këtë ndërtim shumë të thjeshtë, kështu që nuk përfshiva butona për të rregulluar kohën. Pra, është vetëm një çështje e lidhjes së orës me kompjuterin tuaj dhe ngarkimit të një kohe të re. Thjesht mos komentoni pjesën më poshtë dhe vendosni kohën tuaj të kërkuar, pastaj ngarkoni programin. Sapo të ri-komentoni linjën dhe të dërgoni sërish programin, përndryshe nëse e humbni fuqinë do të përsërisë konfigurimin dhe do të ngarkojë përsëri kohën e vjetër.

// 12 Prill 2020 në orën 11:20 pasdite do të telefononit:

//rtc.adjust(DateTime(2020, 4, 12, 23, 20, 0));

Recommended: