Sisällysluettelo:

LEDura - analoginen LED -kello: 12 vaihetta (kuvilla)
LEDura - analoginen LED -kello: 12 vaihetta (kuvilla)

Video: LEDura - analoginen LED -kello: 12 vaihetta (kuvilla)

Video: LEDura - analoginen LED -kello: 12 vaihetta (kuvilla)
Video: Аналоговый диммер для светодиодной ленты 2024, Heinäkuu
Anonim
LEDura - analoginen LED -kello
LEDura - analoginen LED -kello
LEDura - analoginen LED -kello
LEDura - analoginen LED -kello
LEDura - analoginen LED -kello
LEDura - analoginen LED -kello

Tinkercad -projektit »

Pitkän aikaa vain erilaisten projektien tekemisen jälkeen päätin tehdä itse ohjattavan. Ensimmäiseksi opastan sinua prosessissa, jolla voit tehdä oman analogisen kellosi, joka on valmistettu mahtavalla osoitettavalla LED -renkaalla. Sisärengas näyttää tunnit, ulompi rengas minuutit ja sekunnit.

Ajan näyttämisen lisäksi kello voi näyttää myös huoneen lämpötilan ja se voi olla erittäin mukava sisustus huoneessa. Kello tekee myös 15 minuutin välein erikoistehosteita - video näyttää ne kaikki, muista tarkistaa se. Kahden painikkeen ja potentiometrin avulla käyttäjä voi valita eri tilan ja muokattavan värin välillä haluamallaan tavalla. Päivitin sen myös himmentämään LEDit automaattisesti, jos huone pimenee, joten käyttäjää ei häiritä yöllä.

Kello voidaan sijoittaa pöydälle, yöpöydälle tai ripustaa seinälle.

Huomautus: Kuvat eivät ole yhtä hyviä kuin todellinen näkymä suuren kirkkauden vuoksi.

Vaihe 1: Kuinka lukea se?

Kuinka lukea se?
Kuinka lukea se?

Kellossa on 2 rengasta - pienempi tuntien näyttämiseen ja isompi minuutit ja sekunnit. Jotkut LED -valot hehkuvat koko ajan - niin sanottu kompassi, joka ilmaisee kellon pääasennot. Tuntirenkaalla se edustaa kelloa 3, 6, 9 ja 12, kello minuutilla 15, 30, 45 ja 0 minuuttia.

Vaihe 2: Mitä tarvitset

Mitä tarvitset
Mitä tarvitset

Materiaalit:

  • 1x Arduino Nano (voit käyttää mitä tahansa muuta Arduinoa)
  • 1x DS3231 RealTimeClock -moduuli
  • 1x Osoitettava led -rengas - 60 LEDiä
  • 1x Osoitettava led -rengas - 24 LEDiä
  • 2x painiketta (EI - normaalisti auki)
  • 1x 100kOhm potentiometri
  • 1x 5V virtalähde (pystyy tuottamaan 1 ampeerin)
  • 1x Syöttöliitin
  • Jotkut johdot
  • 1x 10kOhm vastus
  • 1x valovastus
  • Esilevy (valinnainen)
  • Riviliittimen johdon liittimet (valinnainen)
  • 25 mm paksu puu, koko vähintään 22 cm x 22 cm
  • 1mm ohut matto PVC -muovikoko 20cmx20xm

Työkalut:

  • Perustyökalut elektroniikan rakentamiseen (juotin, pihdit, ruuvimeisseli jne.)
  • Porakone
  • Kuuma liimapistooli
  • Hiekkapaperia ja hiukan puulakkaa
  • CNC -kone (ehkä jollain ystävällä on se)

Vaihe 3: Elektroniikan komponentit - tausta

Elektroniikan komponentit - Taustaa
Elektroniikan komponentit - Taustaa
Elektroniikan komponentit - Taustaa
Elektroniikan komponentit - Taustaa
Elektroniikan komponentit - Taustaa
Elektroniikan komponentit - Taustaa

DS3231

Voisimme määrittää ajan käyttämällä Arduinosin sisäänrakennettua oskillaattoria ja ajastinta, mutta päätin käyttää omaa reaaliaikaisen kellon (RTC) moduulia, joka voi seurata aikaa, vaikka irrottaisimme kellon sen virtalähteestä. DS3231 -kortissa on akku, joka antaa virtaa, kun moduulia ei ole kytketty virtalähteeseen. Se on myös tarkempi pidemmillä ajanjaksoilla kuin Arduinos -kellolähde.

DS3231 RTC käyttää I2C-liitäntää kommunikoidakseen mikro-ohjaimen kanssa-erittäin helppokäyttöinen ja tarvitsemme vain 2 johtoa kommunikoidaksemme sen kanssa. Moduuli tarjoaa myös lämpötila -anturin, jota käytetään tässä projektissa.

Tärkeää: Jos aiot käyttää ei-ladattavaa akkua RTC-moduulissa, sinun on poistettava juotos 200 ohmin vastuksesta tai 1N4148-diodista. Muuten akku saattaa räjähtää. Lisätietoja löytyy tästä linkistä.

WS2812 LED -rengas

Päätin käyttää 60 LED -rengasta seuratakseni minuutteja ja 24 LED -rengasta tuntikausia. Löydät ne Adafruitista (neoPixel -rengas) tai joistakin halvoista versioista eBayssa, Aliexpressissä tai muissa verkkokaupoissa. Osoitettavien led -nauhojen välillä on suuri monimuotoisuus, ja jos pelaat niiden kanssa ensimmäistä kertaa, suosittelen lukemaan joitain käyttökuvauksia - tässä on joitain hyödyllisiä linkkejä:

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

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

Osoitetussa LED -nauhassa on 3 liitintä: 5V, GND ja DI/DO. Kaksi ensimmäistä on tarkoitettu LED -virtalähteiden syöttämiseen, viimeinen dataan. Ole varovainen liittäessäsi rengasta Arduinoon - tietolinjasi on liitettävä DI (data IN) -nastaan.

Arduino

Käytän Arduino Nanoa, koska se on pieni ja riittävä tähän projektiin. Voit käyttää melkein mitä tahansa muuta Arduinoa, mutta sinun on oltava varovainen liittäessäsi kaiken siihen. Painikkeet ja LED -renkaat voivat olla samoissa nastoissa, mutta I2C -liittimet (RTC -moduulille) voivat vaihdella käyttöympäristöstä toiseen - katso niiden tietolomake.

Vaihe 4: Elektroniikka - virtalähde

Elektroniikka - virtalähde
Elektroniikka - virtalähde

Sekä Arduino että LED -nauha on toimitettava 5 V: n virtalähteellä, jotta tiedämme tarvittavan jännitteen. Koska LED -renkaat soittavat, se vetää melko paljon vahvistimia, emme voi käyttää sitä suoraan Arduinolla, joka kestää enintään 20 mA digitaalilähdössä. Mittauksillani LED -renkaat voivat yhdessä ottaa jopa 500 mA. Siksi ostin sovittimen, joka pystyy syöttämään jopa 1A.

Haluamme käyttää Arduinoa ja LED -valoja samalla virtalähteellä - tässä sinun on oltava varovainen.

Varoitus! Ole erityisen varovainen, kun testaat LED -nauhaa - virtalähdettä EI saa kytkeä Arduinoon, kun Arduino on myös liitetty tietokoneeseen USB -liittimellä (voit vahingoittaa tietokoneen USB -porttia).

Huomautus: Alla olevissa kaavioissa valitsin normaalikytkimen valitakseni, onko Arduino virtalähteenä virtalähteen vai USB -liitännän kautta. Mutta perfboardista näet, että lisäsin nastan otsikon valitaksesi, mistä virtalähteestä Arduino saa virtaa.

Vaihe 5: Elektroniikka - juottaminen

Elektroniikka - juottaminen
Elektroniikka - juottaminen
Elektroniikka - juottaminen
Elektroniikka - juottaminen
Elektroniikka - juottaminen
Elektroniikka - juottaminen
Elektroniikka - juottaminen
Elektroniikka - juottaminen

Kun keräät kaikki osat, on aika juottaa ne yhteen.

Koska halusin saada johdot siistiksi, käytin johtoja varten perfboardia ja jotakin riviliittimen liitintä, joten voin irrottaa ne pistorasiasta muutosten sattuessa. Tämä on valinnaista - voit myös juottaa johdot suoraan Arduinolle.

Vinkki: on helpompaa, jos tulostat kaaviot niin, että sinulla on se edessäsi juottamisen aikana. Ja tarkista kaikki ennen virtalähteen liittämistä.

Vaihe 6: Ohjelmisto - Tausta

Arduino IDE

Aiomme ohjelmoida Arduinon omalla ohjelmistollaan: Arduino IDE. Jos pelaat Arduinolla ensimmäistä kertaa, suosittelen, että tarkistat ohjeet siitä, miten se tehdään. Verkossa on jo paljon opetusohjelmia, joten en mene yksityiskohtiin.

Kirjasto

Päätin käyttää FastLED -kirjastoa suositun Adafruitin sijaan. Siinä on hienoja matemaattisia toimintoja, joilla voit tehdä upeita tehosteita (peukkua kehittäjille!). Löydät kirjaston heidän GitHub -arkistostaan, mutta lisäsin koodini käyttämäni version.zip -tiedoston.

Jos mietit, kuinka lisätä ulkoinen kirjasto Arduino IDE: hen, voit tarkistaa jo tehdyt ohjeet

Kellomoduulissa käytin Arduino-kirjastoa DS3231-reaaliaikaiseen kelloon (RTC) (linkki), jonka voit helposti asentaa Arduino IDE: hen. Kun olet IDE: ssä, napsauta Luonnos → Sisällytä kirjasto → Hallitse kirjastoja… ja suodata sitten haku edellä mainitulla nimellä.

Huomautus: Jostain syystä en voi tällä hetkellä lisätä.zip -tiedostoja. Löydät kirjaston GitHub -arkistostani.

Vaihe 7: Ohjelmisto - koodi

Ohjelmisto - koodi
Ohjelmisto - koodi
Ohjelmisto - koodi
Ohjelmisto - koodi

Rakenne

Sovellus koostuu neljästä tiedostosta:

  • LEDclokc.ino Tämä on tärkein Arduino -sovellus, josta löydät toimintoja koko kellon ohjaamiseen - ne alkavat etuliitteellä CLOCK_.
  • LEDclokc.h tässä ovat nastaliitännän määritelmiä ja joitain kellon kokoonpanoja.
  • ring.cpp ja ring.h tässä on koodini LED -renkaiden ohjaamiseen.

LED -kello. H

Täältä löydät kaikki kellon määritelmät. Alussa on johdotuksen määritelmät. Varmista, että ne ovat samat kuin yhteytesi. Sitten on kellon kokoonpanot - täältä löydät makron useille tiloille, jotka kellolla on.

LEDclock.ino

Kaaviossa pääsilmukka on esitetty. Koodi tarkistaa ensin, onko jotain painiketta painettu. Kytkimien luonteen vuoksi meidän on käytettävä debbouning -menetelmää niiden arvojen lukemiseen (voit lukea lisää tästä linkistä).

Kun painiketta 1 painetaan, muuttuva tila korotetaan yhdellä, jos painiketta 2 painetaan, muuttujan tyyppi nousee. Käytämme näitä muuttujia määrittääksemme, minkä kellotilan haluamme nähdä. Jos molempia painikkeita painetaan samanaikaisesti, toiminto CLOCK_setTime () kutsutaan, jotta voit muuttaa kellonaikaa.

Myöhemmin koodi lukee potentiometrin arvon ja tallentaa sen muuttujaan - tämä muuttujan käyttäjä voi kuitenkin muuttaa kellon värejä, kirkkautta jne.

Sitten on kytkentätapauslausunto. Tässä määritämme, missä tilassa kello on tällä hetkellä, ja kyseisessä tilassa kutsutaan vastaavaa toimintoa, joka asettaa LEDien värit. Voit lisätä omia kellotilaa ja kirjoittaa tai muokata toimintoja uudelleen.

Kuten FastLED -kirjastossa on kuvattu, sinun on kutsuttava toiminto FastLED.show () loppuun, joka muuttaa LEDit sen väriseksi, jonka olemme aiemmin asettaneet.

Löydät paljon yksityiskohtaisempia kuvauksia koodirivien välistä

Koko koodi on liitteenä alla olevissa tiedostoissa.

VINKKI: koko projekti löytyy GitHub -arkistostani. Täällä myös koodi päivitetään, jos lisään siihen muutoksia.

Vaihe 8: Tee kello

Tee kello
Tee kello
Tee kello
Tee kello
Tee kello
Tee kello

Kellokehys

Rakensin kellokehyksen CNC -koneella ja 25 mm paksuisella puulla. Löydät ProgeCADissa piirretyn luonnoksen alla. LED -rengaspaikat ovat hieman suurempia, koska valmistajat antavat vain ulkohalkaisijan mitat - sisäiset voivat vaihdella melko paljon … Kellon takana on paljon tilaa elektroniikalle ja johtimille.

PVC -renkaat

Koska LEDit ovat melko kirkkaita, on hyvä hajauttaa ne jotenkin. Kokeilin ensin läpinäkyvää silikonia, joka hajottaa, mutta se on melko sotkuista ja sitä on vaikea saada sileäksi. Siksi tilasin 20x20 cm palan "maito" PVC -muovia ja leikkasin siihen kaksi rengasta CNC -koneella. Voit pehmentää reunoja hiekkapaperilla, jotta renkaat liukuvat rakoihin.

Sivureiät

Sitten on aika porata reiät painikkeille, potentiometrille ja virtalähteen liittimelle. Piirrä ensin jokainen kohta lyijykynällä ja poraa sitten reikään. Tässä riippuu siitä, millaisia painikkeita sinulla on - käytin painikkeita, joiden pää oli hieman kaareva. Niiden halkaisija on 16 mm, joten käytin samankokoista puuporaa. Sama koskee potentiometriä ja virtaliitintä. Muista poistaa kaikki lyijykynäpiirrokset sen jälkeen.

Vaihe 9: Piirrä puuhun

Piirrä puuhun
Piirrä puuhun
Piirrä puuhun
Piirrä puuhun
Piirrä puuhun
Piirrä puuhun

Päätin piirtää puuhun kellon osoittimia - täällä voit käyttää mielikuvitustasi ja suunnitella oman. Poltin puun juotosraudalla, joka oli lämmitetty maksimilämpötilaan.

Jotta ympyrät olisivat kauniisti pyöreitä, käytin alumiinikappaletta, porasin siihen reiän ja seurasin reiän reunoja juotosraudalla (katso kuvaa). Varmista, että pidät alumiinia tukevasti, jotta se ei luista piirtämisen aikana. Ja ole varovainen, kun teet sen välttääksesi vammoja.

Jos teet piirustuksia ja haluat, että ne on asetettu kauniisti kellopikselien kohdalle, voit käyttää ylläpitotilaa, joka näyttää pikselien sijainnin (siirry lukuun Kokoaminen).

Suojaa puuta

Kun olet tyytyväinen kelloon, on aika hioa se ja suojata se puulakalla. Pehmennin reunoja erittäin pehmeällä hiekkapaperilla (arvo 500). Suosittelen käyttämään läpinäkyvää puulakkaa, joten puun väri ei muutu. Laita harjaan pieni määrä lakkaa ja vedä sitä puun yksivuotisten kasvien suuntaan. Toista se vähintään 2 kertaa.

Vaihe 10: Assamble

Assamble
Assamble
Assamble
Assamble
Assamble
Assamble

Kuusi asettaa painikkeet ja potentiometrin paikoilleen - jos reiät ovat liian suuria, voit kiinnittää ne paikalleen kuumalla liimalla. Aseta sitten rengasliuska aukkoihinsa ja liitä sen johdot Arduinoon. Ennen kuin liität LED -renkaan paikalleen, on hyvä olla varma, että LED -pikselit ovat oikeassa paikassa - keskellä ja linjassa piirustuksen kanssa. Tätä tarkoitusta varten lisäsin ns. Ylläpitotilan, joka näyttää kaikki tärkeät pikselit (0, 5, 10, 15,… minuutin soittoäänellä ja 3, 6, 9 ja 12 tunnin soitolla). Voit siirtyä tähän tilaan painamalla ja pitämällä painettuna molempia painikkeita, ennen kuin liität virtalähteen liittimeen. Voit poistua tästä tilasta painamalla mitä tahansa painiketta.

Kun olet asettanut LED -renkaat kohdalleen, levitä kuumaa liimaa ja pidä niitä kiinni, kun liima kiinteytyy. Ota sitten PVC -renkaat ja uudelleen: levitä kuumaa liimaa LED -valoihin, aseta ne nopeasti ja pidä niitä muutaman sekunnin ajan. Lopuksi, kun olet varma, että kaikki toimii, voit liimata levyn (tai Arduinon) kuumalla liimalla puuhun. Vinkki: älä käytä liimaa. Vain pieni määrä, joten se mahtuu yhteen paikkaan, mutta voit helposti poistaa sen, jos haluat muuttaa jotain myöhemmin.

Aseta nappiparisto pidikkeeseen aivan lopussa.

Vaihe 11: Päivitys - Valovastus

Päivitys - Valovastus
Päivitys - Valovastus
Päivitys - Valovastus
Päivitys - Valovastus
Päivitys - Valovastus
Päivitys - Valovastus

Kellotehosteet ovat erityisen hyviä pimeässä. Mutta tämä voi häiritä käyttäjää yön aikana hänen nukkuessaan. Siksi päätin päivittää kellon automaattisella kirkkauden korjauksella - kun huone pimenee; kello sammuttaa LEDit.

Tätä tarkoitusta varten käytin valoanturia - valokuvavastusta. Sen vastus kasvaa merkittävästi; jopa muutama megaohmia, kun on pimeää, ja siinä on vain muutama sata ohmia, kun siihen paistaa valo. Yhdessä normaalin vastuksen kanssa ne muodostavat jännitteenjakajan. Joten kun valoanturin vastus muuttuu, niin myös Arduinon analogisen nastan jännite (jota voimme mitata).

Ennen minkään piirin juottamista ja kokoamista on viisasta simuloida se ensin, jotta voit nähdä käyttäytymisen ja tehdä korjauksia. Autocad Tinkercadin avulla voit tehdä juuri sen! Lisäsin komponentit, liitin ne ja kirjoitin koodin muutamalla napsautuksella. Simulaatiossa näet, miten LED -valojen kirkkaus muuttuu valokuvavastan arvon mukaan. Se on hyvin yksinkertaista ja suoraviivaista - olet tervetullut pelaamaan piirillä.

Simulaation jälkeen oli aika lisätä ominaisuus kelloon. Porasin reiän kellon keskelle, liimasin valokuvavastuksen, liitin sen kuten piirissä näkyy ja lisäsin muutaman koodirivin. Tiedostossa LEDclock.h sinun on otettava tämä ominaisuus käyttöön ilmoittamalla USE_PHOTO_RESISTOR arvoksi 1. Voit myös muuttaa kellon himmennettävän huoneen kirkkautta muuttamalla CLOCK_PHOTO_TRESHOLD -arvoa.

Vaihe 12: Nauti

Kun kytket virran ensimmäistä kertaa, kello näyttää satunnaista aikaa. Voit asettaa sen painamalla molempia painikkeita samanaikaisesti. Valitse oikea aika kääntämällä nuppia ja vahvista se painamalla mitä tahansa painiketta.

Löysin inspiraatiota eräästä erittäin siististä projektista Internetistä. Jos päätät rakentaa kellon itse, tutustu myös niihin! (NeoClock, Wol Clock, Arduino Colorful Clock) Jos päätät yrittää noudattaa ohjeita, toivon sinun tekevän siitä yhtä nautinnollisen kuin minä.

Jos törmäät ongelmaan valmistusprosessin aikana, voit vapaasti kysyä minulta kysymyksiä kommenteissa - yritän mielelläni vastata siihen!

Suositeltava: