INHOUDSOPGAWE:

LED -klok met Neopixels: 4 stappe (met foto's)
LED -klok met Neopixels: 4 stappe (met foto's)

Video: LED -klok met Neopixels: 4 stappe (met foto's)

Video: LED -klok met Neopixels: 4 stappe (met foto's)
Video: ОРХИДЕИ В ПУСТОЙ ВАЗЕ - ЛАЙФХАКИ, ТОНКОСТИ И ОШИБКИ СОДЕРЖАНИЯ, ПЕРЕВОДА И ЩАДЯЩЕЙ АДАПТАЦИИ В ОС! 2024, Julie
Anonim
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels
LED -klok met behulp van Neopixels

Welkom by my instruksies oor hoe om 'n LED -horlosie met 60 Neopixels te maak.

U vind 3 PDF's wat hierby aangeheg is, een vir die segmente van die horlosie, 'n ander vir die basis, en laastens is dit 'n sjabloon om die gedeeltes aan mekaar te plak.

Om dit te voltooi, benodig u die volgende

  • Ring van 60 neopixels kom in vier kwarte voor. soek na "ws2812 ring 60" (£ 12,00)
  • RTC soek na "DS3231 module" (£ 2,50)
  • Arduino Nano (£ 4)
  • 3 mm/1/8 "laaghout.
  • stukke draad. hopelik het u 'n paar in die omgewing?
  • 5v USB -kragbron. Die tipe waarop u kinders die aansluiting vernietig het.

Hieronder is die items wat deur die Lipo -battery aangedryf word, maar na die toets het die klok te veel krag verbruik, sodat die battery laat val het ten gunste van 'n netvoeding.

  • DC-DC converter soek "boost converter" (£ 3)
  • Laaikring TP4056 soek "tp4056" (£ 2)
  • LiPo 1000Mah enkelsel. soek na "1000mah lipo 3,7" OF "503450 lipo" (£ 8,00)

Die LiPo -nommer is 503450 en dit kan aangenaam wees om te weet dat dit 50 mm lank 34 mm breed en 5,0 diep beteken.

Stap 1: The Wood Bits

Die Wood Bits
Die Wood Bits
Die Wood Bits
Die Wood Bits
Die Wood Bits
Die Wood Bits

U moet op die foto's kan sien dat ek die ontwerp afgedruk het en ook die laaghout vasgesteek het. Wat miskien nie duidelik is nie, is dat ek 3 afdelings gelyktydig uitgesny het en die onderste gedeelte eers om die omtrek uitgesny is, dan word een gedeelte verwyder (van agter), dan is die gat in die oorblywende twee afdelings, dan nog 'n gedeelte, uitgesny verwyder en net die voorste bietjie oorbly, dan is die gleuf vir die drade gesny.

As al die stukkies uitgesny is, moet u eers kyk hoe dit bymekaar pas en dit dan almal plak. ek het die 3 lae bo -op 'n plan van die klok opgebou om seker te maak dat alles korrek sirkelvormig is. Maak ook seker dat u die onderste stukke in die regte rigting kry en dat die hele middelste sny onderstebo gemonteer is sodat u oor die gewrigte kan draai.

Die gate in die voorste gedeeltes laat die gesoldeerde verbindings in die kwartiere toe om in te sit en die onderste gedeelte laat die drade deur.

Die reeks foto's wys ook hoe die basis saamgevoeg is.

Stap 2: Bedrading van die LED -ring

Bedrading van die LED -ring
Bedrading van die LED -ring
Bedrading van die LED -ring
Bedrading van die LED -ring
Bedrading van die LED -ring
Bedrading van die LED -ring
Bedrading van die LED -ring
Bedrading van die LED -ring

Daar is nie veel te sê oor hierdie stap nie, maar as u nie 'n strook WS2812LED's gebruik het nie, is hulle intelligent, sodat elkeen 'n gegewens in en uit het. In die boë van 15 LED's hanteer die PCB alle verbindings, maar as u by die gedeeltes aansluit, moet u die kragverbindings en die data maak. U kan die verbindings nie verkeerd verstaan nie, want dit is in 'n sirkel, maar as u die sirkel voltooi het, moet u een skakel ontbreek op die data IN/OUT, sodat u die drade met die data IN kan verbind. Waar die drade met die data verbind word, sal IN die eerste LED wees of as dit korrek genommer is NUL.

Ek het gewonder hoe was die beste manier om die ring van LED's aan die houtring vas te maak? maar op die ou end het ek besluit om 'n dreigende koord en 'n weefskerm om die omtrek te gebruik, elke keer dat ek 'n LED oorskiet.

Stap 3: Bedrading van die Arduino Nano en Power

Bedrading van die Arduino Nano en Power
Bedrading van die Arduino Nano en Power
Bedrading van die Arduino Nano en Power
Bedrading van die Arduino Nano en Power
Bedrading van die Arduino Nano en Power
Bedrading van die Arduino Nano en Power

Ek het aanvanklik besluit om 'n LiPo op hierdie projek te gebruik, maar toe ek dit probeer, het die battery oornag leeg geraak. Eers het ek gedink dat die battery dalk dof was, so ek het die stroom gemeet en ontdek dat die stroombaan 73mA trek, wat beteken dat dit by die battery meer gaan wees. Eintlik het ek die stroom by die battery gemeet (voor die boost -omskakelaar) en ontdek dat dit meer as 110mA is. Dit was dus duidelik dat hierdie horlosie nie op 'n battery sou werk nie.

Dus kies ek eerder 'n 5V USB -laaier. Ek is geneig om baie dooie USB -laaiers byderhand te hê omdat die verbindings deur twee klein kinders misbruik word.

Omdat ons WS2812 LED's gebruik, het ons slegs 3 verbindings met die Arduino Nano.

  • Krag
  • Grond
  • Data IN. Oranje tot D2 op Nano

Vervolgens het ons die RTC, dit het slegs 4 drade.

  • Krag 5 volt
  • Grond
  • SCL (I2C Clock) Blou tot A5 op Nano
  • SDA (I2C -data) Geel tot A4 op Nano

Laastens het ons krag nodig, en dit gaan na die 5 V-aansluiting op die Nano.

Stap 4: Die program

Ek geniet dit baie om te programmeer, ek is net nie goed daarmee nie.

Probleem 1

Die sekondes en minute word korrek aangebied as 'n getal van 0-59. Die eerste LED en dus die nul is egter onderaan. Dit moes dus reggestel word.

void correctPos (int A)

{as (A 30) {A = A - 31; }} temp = A; }

Probleem 2

Ek het probeer om al die LED's skoon te maak voordat ek die nuwe posisie vertoon, maar dit het veroorsaak dat die LED's knip. Daarom het ek besluit om die volgende LED aan te skakel en dan die vorige uit te skakel. Dit het net goed gewerk ?? NOPE, want as die nuwe posisie nul was, sou dit probeer om -1 uit te skakel. dus is dit terselfdertyd hanteer.

nietige verwydering Vorige (int B)

// verwyder die vorige led, as dit nul was, // skakel 59 af, trek net 1 af en skakel dit af. {if (B == 0) {strip.setPixelColor (59, 0, 0, 0); // Alles af} anders {strip.setPixelColor (B - 1, 0, 0, 0); // alles af}}

Probleem 3

Om bogenoemde te doen, werk baie goed totdat die nuwe tweede posisie in die plek van die ou minuut was. Dit beteken dat die minuut wat na die sekondes bygewerk is, dit uitskakel! Dieselfde geld ook vir die uur/minuut

as (sekondes == minute-1)

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

Probleem 4

Dinge begin goed lyk, so laat ons die kleure meng as hulle in dieselfde posisie val?

as (minute == sekondes)

{strip.setPixelColor (min., 15, 13, 0); // groen en rooi om geel te maak. }

Probleem 5

Die ure begin as 'n 24 -uur -formaat. dus moet dit eers reggestel word

as (ure> 12)

{ure = ure -12; }

Probleem 6

En laat ons nie vergeet dat daar 24 uur per dag is nie en ek het 60 LED's. Maklik keer dit regtig met 5

ure = ure * 5;

Probleem 7

Nadat ons die bogenoemde gedoen het, het ons nou die uur met 4 LED's, dit sou baie beter lyk as dit al die LED's gebruik en 'n breuk van 'n uur korrek toon? Dit was weereens 'n maklike oplossing; ek het net die oorspronklike aantal minute gedeel deur 12 by die ure gevoeg.

ure = ure + (addMin/12);

Probleem 8

As die uur of minuut gelei is, verdwyn die sekondes voor 'n sekonde voor.

ure = as (minute == 0)

{if (secs == 59) {strip.setPixelColor (59, 0, 30, 0); // green}} if (hours == 0) {if (secs == 59) {strip.setPixelColor (59, 0, 30, 0); // groen}}

Probleem 9

Stel die tyd in. Ek het besluit om hierdie konstruksie baie eenvoudig te hou, so ek het nie knoppies bevat om die tyd aan te pas nie. Dit is dus net 'n kwessie om die klok aan te sluit op u rekenaar en 'n nuwe tyd te laai. Los die gedeelte hieronder op en stel die vereiste tyd in, laai dan die program. Sodra u die korrekte antwoord korrek gemaak het, lewer u 'n opmerking oor die reël en stuur die program weer, anders sal u die opstelling herlaai en die ou tyd weer laai as u krag verloor.

// 12 April 2020 om 23:20 bel u:

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

Aanbeveel: