Kazalo:
- Korak: Lesni kosi
- Korak: Ožičenje LED obroča
- 3. korak: Ožičenje Arduino Nano in Power
- 4. korak: Program
Video: LED ura z uporabo neopikslov: 4 koraki (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Dobrodošli v mojih navodilih, kako narediti LED uro z uporabo 60 neopikslov.
Našli boste 3 priložene datoteke PDF, ki je ena za segmente ure, druga je za podlago in nazadnje je ena predloga za pomoč pri lepljenju odsekov.
Za dokončanje tega boste potrebovali naslednje
- Prstan s 60 neopiksli je na voljo v 4 četrtinah. poišči "ws2812 ring 60" (12,00 €)
- RTC iskanje za "modul DS3231" (2,50 GBP)
- Arduino Nano (4 £)
- 3 mm/1/8 "vezane plošče.
- kosov žice. upam, da boš imel kaj zraven?
- Napajalna enota USB 5v. Vrsta, na kateri bodo vaši otroci uničili priključek.
Spodaj so elementi, ki se napajajo z baterijo Lipo, vendar je ura po testiranju porabila preveč energije, zato je baterija padla v prid napajalniku USB.
- iskalnik pretvornika dc-dc "ojačevalnik" (3 £)
- Polnilni krog TP4056 iskanje "tp4056" (£ 2)
- LiPo 1000Mah enocelična. poiščite "1000mah lipo 3.7" ALI "503450 lipo" (8,00 GBP)
Številka LiPo je 503450 in morda bi bilo dobro vedeti, da to pomeni 50 mm dolgo 34 mm široko in 5,0 globoko.
Korak: Lesni kosi
Na slikah bi morali videti, da sem natisnila dizajn in nanj pritrdila tudi vezane plošče. Kar morda ni očitno, sem izrezal 3 odseke hkrati in spodnji del najprej izrežem po obodu, nato se odstrani en odsek (od zadaj), nato pa se v preostalih dveh odsekih izreže luknja, nato pa še en odsek odstranili, pri čemer je ostal le sprednji del, nato pa je bila reza za žice odrezana.
Ko so vsi kosi izrezani, morate najprej preveriti, kako se vsi prilegajo, nato pa vse zlepiti. na vrhu načrta ure sem zgradil 3 plasti, da sem prepričan, da je vse pravilno okroglo. Poskrbite tudi, da bodo spodnji deli pravilno usmerjeni, celotna srednja rezina pa je nameščena na glavo, tako da boste prekrižali sklepe.
Luknje v sprednjih delih omogočajo, da se spajkani spoji v četrtinah namestijo, spodnji del pa omogoča prehod žic.
Serija slik prikazuje tudi, kako je osnova sestavljena.
Korak: Ožičenje LED obroča
O tem koraku ni veliko za povedati, toda v primeru, da niste uporabili traku WS2812LED, so inteligentni, tako da ima vsak podatke in vhod. V lokih 15 LED diod PCB upravlja vse povezave, ko pa se pridružite odsekom, morate narediti napajalne povezave in podatke. Povezave ne morete dobiti napačno, ker so v krogu, vendar pa morate po zaključku kroga manjkati ena povezava na podatkih IN/OUT, da lahko povežete žice s podatki IN. Kjer se žice povežejo s podatki, bo prva LED ali če je pravilno oštevilčena nič.
Spraševal sem se, kako je najboljši način pritrditi obroč LED na leseni obroč? a na koncu sem se odločil, da bom uporabil grozečo vrvico in statvo po obodu ter vsakič preskočil LED.
3. korak: Ožičenje Arduino Nano in Power
Sprva sem se odločil, da bom pri tem projektu uporabil LiPo, a ko sem ga preizkusil, se mi je baterija čez noč izpraznila. Sprva sem mislil, da je baterija morda izpraznjena, zato sem izmeril tok in odkril, da vezje črpa 73 mA, kar pomeni, da bo pri bateriji več. Pravzaprav sem izmeril tok v bateriji (pred ojačevalnim pretvornikom) in ugotovil, da je več kot 110 mA. Tako je bilo očitno, da ta ura ne bo delovala na baterijo.
Zato se raje odločim za uporabo 5V polnilnika USB. Ponavadi imam polno mrtvih polnilnikov USB, ker konektorji zlorabljajo dva majhna otroka.
Ker uporabljamo LED WS2812, imamo le 3 povezave z Arduino Nano.
- Moč
- Tla
- Podatki IN. Oranžno do D2 na Nano
Nato imamo RTC, ki ima samo 4 žice.
- Napajanje 5 voltov
- Tla
- SCL (ura I2C) modra do A5 na Nano
- SDA (podatki I2C) rumena do A4 na Nano
Nazadnje potrebujemo napajanje in to gre za napajalni priključek 5 V na Nano.. Vin je zasnovan tako, da ima napetost večjo od 5 voltov (to je 7-12 voltov) in ozemljitev.
4. korak: Program
Zelo uživam v programiranju, samo nisem ravno dober v tem.
Problem 1
Sekunde in minute so pravilno predstavljene kot številke od 0-59. Vendar je prva LED in torej nič na dnu. Zato je bilo treba to popraviti.
void correctPos (int A)
{če (A 30) {A = A - 31; }} temp = A; }
Problem 2
Pred prikazom novega položaja sem poskušal počistiti vse LED diode, vendar je zaradi tega LED utripal. Zato sem se odločil, da vklopim naslednjo LED in nato izklopim prejšnjo. To je dobro delovalo ?? NOPE, ker bi, če bi bil nov položaj nič, poskusil izklopiti -1. tako da je bilo to obravnavano hkrati.
void deletePrevious (int B)
// izbrišemo prejšnjo led, če je bila nič, potem // izklopi 59 drugače pa le odštej 1 // in to izklopi. {if (B == 0) {strip.setPixelColor (59, 0, 0, 0); // Vse izklopljeno} else {strip.setPixelColor (B - 1, 0, 0, 0); // vse izklopljeno}}
Problem 3
Navedeno je delovalo zelo dobro, dokler ni bila nova druga pozicija na mestu stare minute. Kar je pomenilo, da ga je minuta, ki je bila posodobljena po sekundah, izklopljena! Enako za uro/minuto
če (sekunde == min-1)
{strip.setPixelColor (min-1, 0, 30, 0); }
Problem 4
Stvari začenjajo izgledati dobro, zato zmešajmo barve, ko padejo v isti položaj?
če (min == s)
{strip.setPixelColor (min, 15, 13, 0); // zeleno in rdeče, da postane rumeno. }
Problem 5
Ure se začnejo v 24 -urnem formatu. zato je treba to najprej popraviti
če (ure> 12)
{ure = ure -12; }
Problem 6
In ne pozabimo, da je 24 ur na dan in imam 60 LED. Enostavno, zares, do 5
ure = ure * 5;
Problem 7
Ko smo naredili zgoraj, imamo zdaj uro za preskakovanje 4 LED, bi bilo videti veliko bolje, če bi uporabil vse LED in pravilno prikazal delce ure? Spet je bilo to enostavno popraviti, samo uram sem dodal prvotno število minut, deljeno z 12.
ure = ure + (addMin/12);
Problem 8
Ko je ura ali minuta na dnu, sekunde prej za eno sekundo izginejo.
ure = če (min == 0)
{if (secs == 59) {strip.setPixelColor (59, 0, 30, 0); // zeleno}} if (ure == 0) {if (secs == 59) {strip.setPixelColor (59, 0, 30, 0); // zeleno}}
Problem 9
Nastavitev časa. Odločil sem se, da bom zgradil zelo preprosto, zato nisem vključeval gumbov za nastavitev časa. Gre torej le za povezavo ure z računalnikom in nalaganje novega časa. Preprosto razkomentirajte spodnji razdelek in nastavite potreben čas ter nato naložite program. Ko enkrat pravilno komentirate vrstico in znova pošljete program, v nasprotnem primeru bo znova zagnala nastavitev in znova naložila stari čas.
// 12. aprila 2020 ob 23.20 bi poklicali:
//rtc.adjust(DateTime(2020, 4, 12, 23, 20, 0));
Priporočena:
Digitalna ura omrežnega časa z uporabo ESP8266: 4 koraki (s slikami)
Digitalna ura omrežnega časa z uporabo ESP8266: Naučimo se izdelati ljubko majhno digitalno uro, ki komunicira s strežniki NTP in prikazuje omrežni ali internetni čas. WeMos D1 mini uporabljamo za povezavo z omrežjem WiFi, pridobivanje časa NTP in njegovo prikazovanje na modulu OLED
Ura za upokojitev / štetje navzgor / ura Dn: 4 koraki (s slikami)
Ura za upokojitev / Odštevanje / Ura Dn: Nekaj teh 8-palčnih LED matričnih zaslonov 8x8 sem imel v predalu in razmišljal, kaj bi z njimi. Navdihnjen z drugimi navodili sem dobil idejo, da bi sestavil zaslon za odštevanje/navzgor za odštevanje do prihodnjega datuma/časa in če je ciljni čas p
ESP 8266 Nodemcu Ws 2812 LED MOOD svetilka na osnovi neopikslov, ki jo nadzira lokalni spletni strežnik: 6 korakov
ESP 8266 Nodemcu Ws 2812 LED MOOD svetilka na osnovi neopikslov, ki jo nadzira lokalni spletni strežnik: ESP 8266 Nodemcu Ws 2812 svetilka LED MOOD na osnovi neopikslov, nadzorovana s spletnim strežnikom
ESP 8266 Nodemcu Ws 2812 LED MOOD svetilka na osnovi neopikslov, nadzorovana s spletnim strežnikom: 6 korakov
ESP 8266 Nodemcu Ws 2812 LED MOOD svetilka na osnovi neopikslov, nadzorovana s spletnim strežnikom: V tem projektu bomo iz nodemcu & neopixel in ki ga lahko upravlja kateri koli brskalnik z lokalnim spletnim strežnikom
Binarna ura z uporabo neopikslov: 6 korakov (s slikami)
Binarna ura z uporabo neopikslov: Pozdravljeni, rad imam vse, kar je povezano z LED, in jih rad tudi uporabljam na različne zanimive načine. Da, vem, da je bila binarna ura tukaj večkrat izvedena in vsaka je odličen primer, kako ustvarite svojo uro. Resnično mi je všeč