Sadržaj:

LEDura - analogni LED sat: 12 koraka (sa slikama)
LEDura - analogni LED sat: 12 koraka (sa slikama)

Video: LEDura - analogni LED sat: 12 koraka (sa slikama)

Video: LEDura - analogni LED sat: 12 koraka (sa slikama)
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Srpanj
Anonim
LEDura - analogni LED sat
LEDura - analogni LED sat
LEDura - analogni LED sat
LEDura - analogni LED sat
LEDura - analogni LED sat
LEDura - analogni LED sat

Tinkercad projekti »

Nakon dugog vremena samo od izrade raznih projekata, odlučio sam napraviti instrukcije za sebe. Za prvu ću vas provesti kroz proces izrade vlastitog analognog sata izrađenog od sjajnog adresabilnog LED prstena. Unutarnji prsten prikazuje sate, vanjski prsten prikazuje minute i sekunde.

Osim što prikazuje vrijeme, sat može pokazivati i sobnu temperaturu i može biti vrlo lijep ukras u prostoriji. Svakih 15 minuta sat stvara i neke posebne efekte - video ih prikazuje sve, svakako provjerite. Uz pomoć 2 gumba i potenciometra, korisnik može birati između različitih načina rada i mijenjati boje prema vlastitoj želji. Također sam ga nadogradio za automatsko zatamnjivanje LED dioda ako soba zamrači, tako da korisnika neće ometati tijekom noći.

Sat se može postaviti na stol, krevet ili objesiti o zid.

Napomena: Slike nisu toliko dobre kao prikaz u stvarnosti zbog velike svjetline.

Korak 1: Kako ga čitati?

Kako ga čitati?
Kako ga čitati?

Sat ima 2 zvona - manji za prikaz sati, a veći za prikaz minuta i sekundi. Neke LED diode svijetle cijelo vrijeme - takozvani kompas koji pokazuje glavne položaje sata. Na satnom zvonu predstavlja 3, 6, 9 i 12'o sat, na minutnom zvonu 15, 30, 45 i 0 minuta.

Korak 2: Što će vam trebati

Što će vam trebati
Što će vam trebati

Materijali:

  • 1x Arduino Nano (možete koristiti i bilo koji drugi Arduino)
  • 1x DS3231 RealTimeClock modul
  • 1x adresibilni LED prsten - 60 LED dioda
  • 1x adresibilni LED prsten - 24 LED diode
  • 2x tipke (NE - normalno otvoreno)
  • 1x potenciometar od 100 kOhm
  • 1x 5V napajanje (može isporučiti 1 Amp)
  • 1x priključak za napajanje
  • Neke žice
  • 1x 10kOhm otpornik
  • 1x fotootpornik
  • Prefboard (izborno)
  • Priključci žice priključnog bloka (opcionalno)
  • Drvo debljine 25 mm, dimenzija najmanje 22 cm x 22 cm
  • 1 mm tanka prostirka od PVC plastike veličine 20cmx20xm

Alati:

  • Osnovni alati za građevinsku elektroniku (lemilica, kliješta, odvijač, …)
  • Stroj za bušenje
  • Pištolj za vruće ljepilo
  • Brusni papir i malo laka za drvo
  • CNC stroj (možda ga ima neki prijatelj)

Korak 3: Elektroničke komponente - Pozadina

Komponente elektronike - pozadina
Komponente elektronike - pozadina
Komponente elektronike - pozadina
Komponente elektronike - pozadina
Komponente elektronike - pozadina
Komponente elektronike - pozadina

DS3231

Mogli smo odrediti vrijeme pomoću Arduinos ugrađenog oscilatora i mjerača vremena, ali odlučio sam koristiti namjenski modul sata u realnom vremenu (RTC), koji može pratiti vrijeme čak i ako sat odvojimo od izvora napajanja. DS3231 ploča ima bateriju koja daje napajanje kada modul nije spojen na napajanje. Također je precizniji u duljim vremenskim razdobljima od izvora sata Arduinos.

DS3231 RTC koristi I2C sučelje za komunikaciju s mikrokontrolerom-vrlo jednostavno za upotrebu i potrebne su nam samo 2 žice za komunikaciju s njim. Modul također nudi temperaturni senzor, koji će se koristiti u ovom projektu.

Važno: Ako planirate koristiti bateriju koja se ne može puniti za RTC modul, trebate odlemiti 200 ohmski otpornik ili 1N4148 diodu. U suprotnom bi se baterija mogla isprazniti. Više informacija možete pronaći na ovoj poveznici.

WS2812 LED prsten

Odlučio sam upotrijebiti 60 LED prsten za praćenje minuta i 24 LED prsten satima. Možete ih pronaći na Adafruit -u (neoPixel prsten) ili nekim jeftinim verzijama na eBayu, Aliexpressu ili drugim web trgovinama. Postoji velika raznolikost među adresabilnim LED trakama i ako vam je prvi put da se poigravate s njima, preporučujem vam da pročitate neke opise uporabe - evo nekoliko korisnih veza:

https://www.tweaking4all.com/hardware/arduino/adr…

https://randomnerdtutorials.com/guide-for-ws2812b…

Adresibilna LED traka ima 3 priključka: 5V, GND i DI/DO. Prva dva služe za napajanje LED dioda, posljednja za podatke. Budite oprezni pri povezivanju prstena na Arduino - vaš podatkovni vod mora biti spojen na DI (data IN) pin.

Arduino

Koristim Arduino Nano jer je mali i dovoljan za ovaj projekt. Možete koristiti gotovo bilo koji drugi Arduino, ali tada morate biti oprezni dok sve povezujete s njim. Gumbi i LED prstenovi mogu biti na istim pinovima, ali I2C konektori (za RTC modul) mogu se razlikovati od platforme do platforme - provjerite njihov podatkovni list.

Korak 4: Elektronika - napajanje

Elektronika - Napajanje
Elektronika - Napajanje

Arduino i LED traka moraju biti opskrbljeni sa 5V izvorom napajanja kako bismo znali koji je napon potreban. Budući da LED zvoni, on crpi dosta pojačala, ne možemo ga napajati izravno s Arduinom, koji može izdržati max 20 mA na svom digitalnom izlazu. Prema mojim mjerenjima, LED prstenovi mogu zajedno povući do 500 mA. Zato sam kupio adapter koji može napajati do 1A.

S istim napajanjem želimo napajati Arduino i LED diode - ovdje morate biti oprezni.

Upozorenje! Budite posebno oprezni pri testiranju LED trake - adapter za napajanje NE smije biti spojen na Arduino, ako je Arduino također spojen na računalo putem USB priključka (možete oštetiti USB priključak računala).

Napomena: U donjim shemama koristio sam normalni prekidač za odabir hoće li se Arduino napajati putem napajanja ili putem USB priključka. Ali na perfboard -u možete vidjeti da sam dodao pin zaglavlje za odabir izvora napajanja Arduino.

Korak 5: Elektronika - lemljenje

Elektronika - lemljenje
Elektronika - lemljenje
Elektronika - lemljenje
Elektronika - lemljenje
Elektronika - lemljenje
Elektronika - lemljenje
Elektronika - lemljenje
Elektronika - lemljenje

Kad skupite sve dijelove, vrijeme je da ih zalemite.

Budući da sam želio ožičenje učiniti urednim, upotrijebio sam perfboard i neki priključni blok za žice, tako da ih mogu isključiti u slučaju izmjena. Ovo nije obavezno - žice možete i lemiti izravno na Arduino.

Savjet: lakše je ako ispisujete sheme tako da ih imate ispred sebe tijekom lemljenja. I sve provjerite prije spajanja na napajanje.

Korak 6: Softver - Pozadina

Arduino IDE

Programirat ćemo Arduino s njegovim namjenskim softverom: Arduino IDE. Ako se prvi put igrate s Arduinom, preporučujem vam da provjerite neke upute o tome kako to učiniti. Na webu već ima dosta vodiča pa neću ići u detalje.

Knjižnica

Odlučio sam koristiti FastLED knjižnicu umjesto popularnog Adafruta. Ima neke uredne matematičke funkcije s kojima možete napraviti velike efekte (palac do programera!). Knjižnicu možete pronaći u njihovom spremištu GitHub, ali dodao sam.zip datoteku verzije koju koristim u svom kodu.

Ako se pitate, kako dodati vanjsku knjižnicu u Arduino IDE, možete provjeriti neke već napravljene upute

Za modul sata koristio sam Arduino knjižnicu za DS3231 sat u stvarnom vremenu (RTC) (veza), koji možete jednostavno instalirati u Arduino IDE. Kad ste u IDE -u, kliknite na Sketch → Include library → Manage libraries …, a zatim filtrirajte svoje pretraživanje s gornjim imenom.

Napomena: Iz nekog razloga trenutno ne mogu dodati.zip datoteke. Biblioteku možete pronaći u mojem spremištu GitHub.

Korak 7: Softver - kod

Softver - kod
Softver - kod
Softver - kod
Softver - kod

Struktura

Aplikacija je sastavljena od 4 datoteke:

  • LEDclokc.ino Ovo je glavna Arduino aplikacija u kojoj možete pronaći funkcije za upravljanje cijelim satom - one počinju s prefiksom CLOCK_.
  • LEDclokc.h ovdje definira pin vezu i neke konfiguracije sata.
  • ring.cpp i ring.h evo mog koda za upravljanje LED prstenovima.

LEDsat.h

Ovdje ćete pronaći sve definicije sata. U početku postoje definicije ožičenja. Provjerite jesu li iste kao i vaše veze. Zatim postoje konfiguracije sata - ovdje možete pronaći makronaredbu za broj načina rada sata.

LED sat.ino

Na dijagramu je prikazana glavna petlja. Kod prvo provjerava je li pritisnuto bilo koje dugme. Zbog prirode prekidača, moramo koristiti metodu debbouncing za čitanje njihovih vrijednosti (više o tome možete pročitati na poveznici).

Kada se pritisne tipka 1, varijabilni način rada se povećava za 1, ako se pritisne tipka 2, podiže se tip varijable. Pomoću ovih varijabli određujemo koji način rada sata želimo vidjeti. Ako su oba gumba pritisnuta istovremeno, poziva se funkcija CLOCK_setTime () tako da možete promijeniti vrijeme sata.

Kasniji kôd očitava vrijednost potenciometra i pohranjuje je u varijablu - s kojom korisnik može promijeniti boju sata, svjetlinu itd.

Zatim postoji naredba switch-case. Ovdje određujemo u kojem se načinu rada trenutno nalazi sat, te se tim načinom poziva odgovarajuća funkcija koja postavlja boje LED dioda. Možete dodati vlastite načine rada sata i ponovno pisati ili mijenjati funkcije.

Kao što je opisano u FastLED knjižnici, morate pozvati funkciju FastLED.show () na kraju, koja LED diode pretvara u boju na koju smo ih prethodno postavili.

Između linija koda možete pronaći mnogo detaljnije opise

Cijeli kôd dolje je priložen u donjim datotekama.

SAVJET: cijeli projekt možete pronaći na mom GitHub spremištu. Ovdje će se kôd također ažurirati ako mu dodam neke promjene.

Korak 8: Postavite sat

Napravite sat
Napravite sat
Napravite sat
Napravite sat
Napravite sat
Napravite sat

Okvir sata

Okvir sata sagradio sam pomoću CNC stroja i drva debljine 25 mm. Skicu nacrtanu u ProgeCAD -u možete pronaći ispod. Utori za LED prsten su malo veći, jer proizvođači nude samo mjerenja vanjskog promjera - unutarnji može dosta varirati … U stražnjem dijelu sata ima puno prostora za elektroniku i žice.

PVC prstenovi

Budući da su LED diode prilično svijetle, dobro ih je nekako raspršiti. Prvo sam pokušao s prozirnim silikonom, koji se raspršuje, ali prilično je neuredan i teško ga je izravnati. Zato sam naručio komad “mliječne” PVC plastike dimenzija 20x20 cm i izrezao u njega dva prstena CNC strojem. Možete upotrijebiti brusni papir za omekšavanje rubova tako da prstenovi klize u utorima.

Bočne rupe

Tada je vrijeme za bušenje rupa za gumbe, potenciometar i priključak za napajanje. Prvo olovkom nacrtajte svaki položaj, a zatim izbušite rupu. Ovdje ovisi koju vrstu gumba imate - išao sam s gumbima s blago zakrivljenom glavom. Imaju promjer 16 mm pa sam upotrijebio bušilicu za drvo te veličine. Isto vrijedi i za potenciometar i priključak za napajanje. Nakon toga obavezno izbrišite sve crteže olovkom.

Korak 9: Nacrtajte u šumi

Crtaj u šumi
Crtaj u šumi
Crtaj u šumi
Crtaj u šumi
Crtaj u šumi
Crtaj u šumi

Odlučio sam nacrtati neke pokazivače na sat u drvu - ovdje možete upotrijebiti maštu i sami dizajnirati. Spalio sam drvo lemilicom, zagrijano na maksimalnu temperaturu.

Da bi krugovi bili lijepo okrugli, upotrijebio sam komad aluminija, izbušio rupu u njemu i lemilicom slijedio rubove rupe (pogledajte sliku). Pazite da aluminij čvrsto držite kako ne bi skliznuo tijekom crtanja. Budite oprezni dok to radite kako biste spriječili ozljede.

Ako izrađujete crteže i želite da budu lijepo poravnati s pikselima sata, možete koristiti "Način održavanja" koji će vam pokazati gdje će se pikseli nalaziti (idite na poglavlje Sastavi).

Zaštitite drvo

Kad ste zadovoljni satom, vrijeme je da ga izbrusite i zaštitite lakom za drvo. Koristio sam vrlo meki brusni papir (vrijednost 500) za omekšavanje rubova. Preporučujem vam da koristite prozirni lak za drvo kako se boja drveta ne bi promijenila. Stavite malu količinu laka na četku i povucite je u smjeru jednogodišnjih vrsta u drvu. Ponovite to najmanje 2 puta.

Korak 10: Sastavite

Asamble
Asamble
Asamble
Asamble
Asamble
Asamble

Jele stavljaju gumbe i potenciometar na njihova mjesta - ako su vam rupe prevelike, možete ih upotrijebiti vrućim ljepilom kako biste ih učvrstili. Zatim umetnite prstenastu traku u njene utore i spojite njene žice s Arduinom. Prije nego što zalijepite LED prsten na njegovo mjesto, dobro je biti siguran da su LED pikseli na pravom mjestu - centrirani i poravnati s crtežom. U tu sam svrhu dodao takozvani način održavanja koji će prikazati sve važne piksele (0, 5, 10, 15,… na minutnom zvonu i 3, 6, 9 i 12 na satnom zvonjenju). U ovaj način rada možete ući pritiskom i držanjem obje tipke, prije nego što priključite napajanje na konektor. Iz ovog načina rada možete izaći pritiskom na bilo koji gumb.

Kad poravnate LED prstenove, nanesite malo vrućeg ljepila i držite ih dok ljepilo ne postane čvrsto. Zatim uzmite svoje PVC prstenove i opet: nanesite malo vrućeg ljepila na LED diode, brzo ih postavite i držite nekoliko sekundi. Na kraju, kad ste sigurni da sve funkcionira, možete vruće zalijepiti ploču (ili Arduino) na drvo. Savjet: ne nanosite na puno ljepila. Samo mala količina tako da se drži na jednom mjestu, ali možete je jednostavno ukloniti ako želite nešto kasnije promijeniti.

Na samom kraju umetnite dugmastu bateriju u njezin držač.

Korak 11: Nadogradnja - fotootpornik

Nadogradnja - fotootpornik
Nadogradnja - fotootpornik
Nadogradnja - fotootpornik
Nadogradnja - fotootpornik
Nadogradnja - fotootpornik
Nadogradnja - fotootpornik

Efekti sata posebno su lijepi u mraku. No, to može ometati korisnika tijekom noći, dok spava. Zato sam odlučio nadograditi sat sa značajkom automatske korekcije svjetline - kad se soba smrači; sat isključuje LED diode.

U tu sam svrhu upotrijebio svjetlosni senzor - foto otpornik. Njegov će otpor značajno porasti; do nekoliko mega ohma kad je mrak i imat će samo nekoliko stotina ohma kad na njemu svijetli svjetlo. Zajedno s normalnim otpornikom tvore razdjelnik napona. Pa kad se promijeni otpor svjetlosnog senzora, mijenja se i napon na Arduino analognom pinu (koji možemo mjeriti).

Prije lemljenja i sastavljanja bilo kojeg sklopa, pametno ga je prvo simulirati, tako da možete vidjeti ponašanje i izvršiti ispravke. Uz pomoć Autocada Tinkercada možete učiniti upravo to! U samo nekoliko klikova dodao sam komponente, spojio ih i napisao kod. U simulaciji možete vidjeti kako se svjetlina LED dioda mijenja prema vrijednosti foto otpornika. Vrlo je jednostavno i jasno - možete se igrati s krugom.

Nakon simulacije došlo je vrijeme za dodavanje značajke u sat. Izbušio sam rupu u sredini sata, zalijepio foto otpornik, spojio ga kao što se može vidjeti na krugu i dodao nekoliko redaka koda. U datoteci LEDclock.h morate omogućiti ovu značajku tako što ćete USE_PHOTO_RESISTOR proglasiti kao 1. Također možete promijeniti pri kojoj će svjetlini prostorije sat zatamniti LED diode promjenom vrijednosti CLOCK_PHOTO_TRESHOLD.

Korak 12: Uživajte

Kad ćete ga uključiti prvi put, sat će pokazati neko slučajno vrijeme. Možete ga postaviti pritiskom na oba gumba istovremeno. Okrenite gumb za odabir pravog vremena i potvrdite ga pritiskom na bilo koju tipku.

Inspiraciju sam pronašao u nekom vrlo urednom projektu na internetu. Odlučite li sami izraditi sat, provjerite i njih! (NeoClock, Wol Clock, Arduino Colorful Clock) Ako ikada odlučite pokušati slijediti upute, nadam se da će vam biti ugodno kao i meni.

Ako naiđete na bilo kakvu poteškoću u procesu izrade, slobodno mi postavite bilo koje pitanje u komentarima - rado ću vam odgovoriti!

Preporučeni: