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, Novembar
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 dugo vremena samo pravljenja raznih projekata, odlučio sam da napravim instrukcije za sebe. Za prvu ću vas provesti kroz proces izrade vlastitog analognog sata izrađenog sa sjajnim adresabilnim LED prstenom. Unutrašnji prsten prikazuje sate, vanjski prsten prikazuje minute i sekunde.

Osim što prikazuje vrijeme, sat može prikazati 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, provjerite to. Uz pomoć 2 tipke 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 noću.

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

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

Korak 1: Kako to pročitati?

Kako to pročitati?
Kako to pročitati?

Sat ima 2 prstena - manji za prikaz sati i 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: Šta će vam trebati

Šta će vam trebati
Šta ć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 dugmad (NE - normalno otvorena)
  • 1x 100kOhm potenciometar
  • 1x 5V napajanje (može isporučiti 1 Amp)
  • 1x priključak za napajanje
  • Neke žice
  • 1x 10kOhm otpornik
  • 1x fotootpornik
  • Prefboard (opcionalno)
  • Priključci žice priključnog bloka (opcionalno)
  • Drvo debljine 25 mm, dimenzija najmanje 22 cm x 22 cm
  • 1 mm tanka podloga od PVC plastike veličine 20cmx20xm

Alati:

  • Osnovni alati za građevinsku elektroniku (lemilica, kliješta, odvijač, …)
  • Bušilica
  • Pištolj za vruće ljepilo
  • Brusni papir i malo laka za drvo
  • CNC mašina (možda je 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 tajmera, 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đe je precizniji za duže vremenske periode 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 vam baterija mogla eksplodirati. Više informacija možete pronaći na ovom linku.

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 igrate s njima, preporučujem vam da pročitate neke opise upotrebe - evo nekoliko korisnih veza:

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

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

Adresibilna LED traka ima 3 konektora: 5V, GND i DI/DO. Prva dva su za napajanje LED dioda, posljednji za podatke. Budite oprezni pri povezivanju prstena na Arduino - vaša podatkovna linija mora biti spojena 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 na njega. Dugmad i LED prstenovi mogu biti na istim pinovima, ali I2C konektori (za RTC modul) mogu se razlikovati od platforme do platforme - pogledajte njihov tehnički list.

Korak 4: Elektronika - napajanje

Elektronika - Napajanje
Elektronika - Napajanje

Arduino i LED traka moraju imati oba izvora napajanja od 5V kako bismo znali koji napon je potreban. Budući da LED zvoni, on crpi dosta pojačala, ne možemo ga napajati izravno s Arduinom, koji može izdržati maksimalno 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.

Sa 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 priključen na Arduino, ako je Arduino također povezan s računarom putem USB konektora (možete oštetiti USB priključak računara).

Napomena: U donjim shemama koristio sam normalni prekidač za odabir da li se Arduino napaja putem napajanja ili putem USB konektora. Ali na perfboard -u možete vidjeti da sam dodao pin zaglavlje za odabir iz kojeg izvora napajanja Arduino se napaja.

Korak 5: Elektronika - lemljenje

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

Kad sakupite sve dijelove, vrijeme je da ih zalemite.

Budući da sam želio urediti ožičenje, koristio 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 odštampate sheme tako da ih imate ispred sebe tokom 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 kako to učiniti. Na webu već ima dosta vodiča pa neću ići u detalje.

Biblioteka

Odlučio sam koristiti FastLED biblioteku umjesto popularnog Adafruit -a. Ima neke uredne matematičke funkcije pomoću kojih možete napraviti odlične efekte (palac do programera!). Biblioteku možete pronaći u njihovom GitHub spremištu, ali sam dodao.zip datoteku verzije koju koristim u svom kodu.

Ako se pitate, kako dodati vanjsku biblioteku u Arduino IDE, možete provjeriti neka već napravljena uputstva

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

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

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 kontrolu cijelog sata - 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 kontrolu LED prstenova.

LEDclock.h

Ovdje ćete pronaći sve definicije sata. U početku postoje definicije ožičenja. Uvjerite se da su iste kao i vaše veze. Zatim postoje konfiguracije sata - ovdje možete pronaći makro za broj načina rada koje sat ima.

LEDclock.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 linku).

Kada se pritisne dugme 1, varijabilni režim se povećava za 1, ako se pritisne dugme 2, tip varijable se podiže. Koristimo ove varijable da odredimo koji način rada sata želimo vidjeti. Ako se oba tastera pritisnu 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 boje 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 ponovo pisati ili mijenjati funkcije.

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

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

Cijeli kôd nalazi se ispod 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 bilo kakve 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 - unutrašnji 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 isprobao prozirni silikon, koji odlično 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 koristiti brusni papir za omekšavanje rubova tako da prstenovi klize u utorima.

Bočne rupe

Tada je vrijeme za bušenje rupa za dugmad, potenciometar i priključak za napajanje. Prvo nacrtajte svaku poziciju olovkom, a zatim izbušite rupu. Ovdje ovisi koju vrstu tipki imate - išao sam s tipkama 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 obriš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 drvetu - 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 pratio rubove rupe (pogledajte sliku). Pazite da aluminij čvrsto držite kako ne bi klizio tijekom crtanja. Budite oprezni dok to radite kako biste spriječili ozljede.

Ako crtate crteže i želite da budu lijepo poravnati sa 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. Na četkicu nanesite malu količinu laka i povucite je u smjeru jednogodišnjih drva. Ponovite to najmanje 2 puta.

Korak 10: Sastavite

Assamble
Assamble
Assamble
Assamble
Assamble
Assamble

Jele stavljaju dugmad i potenciometar na svoje položaje - ako su vam rupe prevelike, možete ih upotrijebiti vrućim ljepilom da ih popravite. Zatim umetnite prstenastu traku u otvore 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 sa crtežom. U tu svrhu dodao sam 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 zvonu). U ovaj način rada možete ući pritiskom i držanjem oba gumba, prije nego što priključite napajanje na konektor. Iz ovog načina rada možete izaći pritiskom na bilo koje dugme.

Kad poravnate LED prstenove, nanesite malo vrućeg ljepila i držite ih dok ljepilo ne postane čvrsto. Zatim uzmite svoje PVC prstenove i ponovo: nanesite malo vrućeg ljepila na LED diode, brzo ih postavite i držite ih nekoliko sekundi. Na kraju, kada 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 može držati na jednom mjestu, ali možete je lako ukloniti ako želite nešto kasnije promijeniti.

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

Korak 11: Nadogradnja - fotootpornik

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

Efekti sata su posebno lijepi u mraku. Ali to može ometati korisnika tokom noći, dok spava. Zato sam odlučio nadograditi sat sa funkcijom automatske korekcije svjetline - kada se prostorija smrači; sat isključuje LED diode.

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

Prije lemljenja i sastavljanja bilo kojeg strujnog kruga, pametno ga je prvo simulirati kako biste mogli vidjeti ponašanje i izvršiti ispravke. Uz pomoć Autocad Tinkercada možete učiniti upravo to! Sa 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 - dobrodošli ste da se igrate sa krugom.

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

Korak 12: Uživajte

Kada ga uključite prvi put, sat će pokazati neko nasumično vrijeme. Možete ga postaviti pritiskom na oba dugmeta istovremeno. Okrenite dugme za odabir pravog vremena i potvrdite ga pritiskom na bilo koje dugme.

Inspiraciju sam pronašao u nekom vrlo urednom projektu na internetu. Ako odlučite sami izgraditi 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 nevolju u procesu stvaranja, slobodno mi postavite bilo koje pitanje u komentarima - rado ću vam odgovoriti!

Preporučuje se: