Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Prieš kelerius metus pradėjau kurti savo pirmąjį „Word“laikrodį, įkvėptą turimų gražių instrukcijų. Dabar, kai sukūriau aštuonis „Word“laikrodžius, kuriuos kiekvieną kartą stengiuosi tobulinti, manau, kad laikas pasidalinti savo patirtimi!
Mano patirties pranašumas yra tas, kad naujausia „Word Clock“versija iš tikrųjų yra gana paprasta: jei turite visus komponentus, turėtumėte sugebėti jį sukurti per vieną dieną.
Pirma, „Word Clock“vidus
Dabartinėje mano versijoje naudojama RGB šviesos diodų juostelė: tai yra LED juostelė, kurioje kiekvieną „lemputę“sudaro raudona, žalia ir mėlyna lemputės. Sujungus tris spalvas, galima sukurti (beveik) kiekvieną spalvą. RGB LED juostelę valdo vienas įėjimas (man vis dar šiek tiek magijos). Taigi, prijungę vieną laidą, galite valdyti visus šviesos diodus juostelėje!
Už kiekvienos raidės „Word Clock“priekyje (žr. Šį žingsnį vėliau) slepiasi vienas RGB šviesos diodų juostos indikatorius. Taigi, kai įjungiamas vienas šviesos diodas, jis turėtų uždegti vieną raidę. Norėdami tai padaryti, aš panaudojau lazerinį pjaustytuvą, kad iškirpčiau medinės lentos tinklelį. Kituose „Instructables“tinkleliai buvo pagaminti naudojant putplasčio juosteles, kurios sudedamos į tinklelį. Aš taip pat bandžiau, bet man tai nepavyko. Tačiau savo pirmojoje versijoje aš padariau tinklelį iš plonų medinių juostelių, kurias suklijavau. Tai puikiai veikia, tačiau sukurti reikia daug laiko!
„Word Clock“smegenys yra „Arduino Nano“. Šis mažas kompiuteris gali valdyti RGB LED juostą. Internete galite rasti be galo daug programų, su kuriomis galima susipainioti, visai smagu!
Kad išvengtumėte daug litavimo (tai užima daug laiko ir yra gana amatas), aš naudoju „Arduino Nano“terminalo adapterį. Viskas, ką daro terminalo adapteris, leidžia mums prijungti laidus prie „Arduino“naudojant varžtus.
Žinoma, bet kokio laikrodžio paskirtis, be to, kad yra gražus, yra rodyti laiką. Mano „Word“laikrodyje realiojo laiko laikrodžio modulis (RTC) stebi laiką. Šio modulio idėja yra ta, kad nustačius teisingą laiką, jis nuolat tiksės (kol išsikraus baterija). Aš dirbu su DS3231 RTC, kuris yra gana pigus ir daug palaikymo yra internete.
Dabar „Word Clock“vidus yra aiškus, mes einame į išorę
Iš patirties žinau, kad svarbu pradėti savo projektą iš patogios bazės. Todėl beveik visus savo „Word“laikrodžius kuriu naudodamas IKEA RIBBA rėmelį. To pranašumas yra tas, kad jūs pradedate nuo rėmo, kurio visi kampai yra gražiai 90 laipsnių, o išorės apdaila yra vientisa. Žinoma, jei norite, galite sukurti savo rėmą, bet aš laikyčiausi RIBBA rėmo.
„Word Clock“veidą lemia raidės, per kurias šviesa rodo laiką. Radau du būdus, kaip sukurti šį veidą:
- Spausdinimas ant skaidrios folijos. Ant folijos galite atsispausdinti raidžių negatyvą. Šviesą sukelia juodas rašalas. Šios parinkties trūkumas yra tas, kad rašalas turi būti pakankamai tankus, kad būtų neskaidrus. Galimas sprendimas yra atspausdinti veidą du kartus ir sukrauti juos vienas ant kito.
- Pjaustymo lazeriu popierius. Jei galite naudoti lazerinį pjaustytuvą, galite iškirpti raides iš popieriaus. Jei popierius pakankamai storas, šviesa nepraeis. Tačiau turėtumėte naudoti šabloną „trafaretas“. Tokie šriftai neturi artimų ratų. Taigi, pavyzdžiui, „o“nebus tik popieriaus skylė, bet iš tikrųjų „o“.
Ką veikia „Word Clock“?
Žinoma, „Word Clock“turėtų nurodyti laiką. Be to, kadangi mes naudojame RGB šviesos diodų juostą, galite apšviesti bet kokią (beveik) bet kokios spalvos raidę! Programuodami „Arduino Nano“galite nustatyti atskirų RGB lempučių spalvą. Jei norite pakeisti šviesos diodų spalvas realiuoju laiku, galite pridėti mygtuką, kuris tai padarys už jus. Tačiau kadangi dabar noriu, kad viskas būtų paprasta, tai nėra įtraukta į šią instrukciją.
Neseniai sukūriau „Word Clock“, kuris naudoja „Bluetooth“, kad nustatytų spalvas ir laiką. Jei rasiu laiko, paskelbsiu atnaujinimą apie tai!
1 žingsnis: Surinkite medžiagas ir įrangą
Reikalingos medžiagos:
- RGB lemputė, 5 voltai, 60 šviesos diodų metrui, atskirai adresuojama. Jums reikia maždaug 3 metrų LED juostos. Pavyzdžiui, tai padarys: RGB LED juosta. „IP“reiškia atsparumo vandeniui laipsnį. Kadangi ne mūsų naudojami komponentai yra atsparūs vandeniui, „ip30“versija yra tinkama. Kaina: 4 eurai už metrą, taigi 12 eurų.
- „Arduino Nano“: „Arduino Nano“. Atkreipkite dėmesį, kad patogu naudoti tik „Arduino“, kurio smeigtukai jau yra prilituoti prie „Arduino“. Kaina: 3 eurai.
- „Arduino Nano“terminalo adapteris. Naudodami terminalo adapterį sutaupysite daug laiko! Jie yra gana pigūs: Terminalo adapterisKaina: 1 euras.
- RTC DS3231: RTC DS3231. Galite naudoti kitą RTC, tačiau šis pasirodė puikiai veikiantis! Kaina: 1 euras.
- RIBBA rėmas: RIBBA rėmas (23x23cm), juodas arba baltas. Kaina: 6 eurai.
- Veidui jums reikia:
- Skaidri folija, tinkanti spausdinti (kreipkitės į vietinę spaustuvę!)
- Kartonas, tinkantis pjaustyti lazeriu (kreipkitės į lazerinį pjaustytuvą!)
Kaina: 5 eurai.
- jungiamieji laidai, skirti prijungti komponentus. Aš tikrai nežinau, kiek mums reikia, bet jie yra pigūs ir plačiai prieinami: jungiamieji laidai. Patogu turėti laidus vyrišku-vyrišku, vyrišku-moterišku ir moterišku-moterišku, tačiau tai darys ir vyriški-vyriški laidai (šiek tiek papildomai lituojant). Kaina: 3 eurai.
- Maitinimo šaltinis. RGB LED juostelė naudoja 5V. Svarbu neviršyti šios įtampos, nes RGB šviesos diodų juostos lengvai sugadinamos. Kiekvienas šviesos diodas naudoja 20-60 mA. Kadangi mes naudojame 169 šviesos diodus, srovė, reikalinga šviesos diodams maitinti, yra gana didelė. Todėl rekomenduoju naudoti bent 2000 mA maitinimo šaltinį, pavyzdžiui: Maitinimo šaltinį. Kaina: 5 eurai.
- Vienas 400-500 omų rezistorius. Kaina: nereikšminga.
- Vienas 1000 uF kondensatorius. Kaina: nereikšminga.
- Vienas lentos prototipas, pavyzdžiui: „Protoboard“. Kaina: 1 euras.
- Medžio gabalas (lenta), suformuojantis laikrodžio nugarėlę. Kaina: 2 eurai.
- Medinė maždaug 3x2 cm juostelė, skirta „Word Clock“galinei pusei pritvirtinti prie rėmo. Kaina: 1 euras.
- Du vieliniai veržlės (prijungti prie 5 laidų), galima įsigyti vietinėje „pasidaryk pats“parduotuvėje. Kaina: 2 eurai.
Bendra kaina: apie 40 eurų.
Reikalinga įranga:
- Pieštukas- litavimo stotis- nuėmimo įrankis- atsuktuvai- žirklės- dvipusė juosta (komponentams pritvirtinti)- pjūklas (pjauti lentą „Word Clock“užpakalinėje dalyje)- audinio gabalas (kad nesubraižytų RIBBA) kadras dirbant)
2 žingsnis: apžvalga
Dabar turime visas medžiagas, malonu turėti bendrą „Word Clock“idėjos apžvalgą.
„Word Clock“veidą sudaro raidės (atspausdintos ant skaidrios folijos arba iškirptos lazeriu iš kartono). Už kiekvienos raidės slepiasi vienas RGB šviesos diodų juostos šviesos diodas. Kadangi RIBBA rėmo matmenys yra 23x23 cm, o mes naudojame RGB šviesos diodų juostą, kurią sudaro 60 šviesos diodų vienam metrui (taigi 100 cm/60 ledų = 1,67 cm vienam LED), mes galime sutalpinti 23 cm/1,67 = 13,8 šviesos diodus vienoje eilėje. Kadangi 0,8 šviesos diodas gali būti šiek tiek nepatogus, mes laikomės 13 lempučių kiekvienoje eilutėje. Kadangi RIBBA rėmas yra kvadratinis, mes (vėliau) sukursime 13x13 šviesos diodų „matricą“.
Paprasčiau tariant, „Word Clock“susideda iš mažo laikrodžio (RTC DS3231), kuris nusistovėjęs nuolat tiksi. Šis mažas laikrodis perduoda laiką mažam kompiuteriui („Arduino Nano“). Mažas kompiuteris žino, kurie šviesos diodai turėtų įsijungti tam tikrą laiką. Taigi, mažas kompiuteris siunčia signalą per duomenų laidą į RGB šviesos diodų juostą ir įjungia šviesos diodus.
Tai skamba gana paprastai, ar ne ?!:)
3 žingsnis: „Word“laikrodžio veidas
Mes naudosime 13 šviesos diodų vienoje eilėje ir 13 eilučių, o tai sudaro 13x13 LED matricą.
RGB LED juostos pjovimas
Iškirpkite 13 RGB šviesos diodų juostos, kurių ilgis yra 13 LED. Turite iškirpti RGB LED juostą trijų varinių ovalų viduryje.
Surinkite 13 RGB LED juostų
Mes priklijuojame 13 LED juostų prie medinės lentos, kuri yra įtraukta į RIBBA rėmą. Prie lentos yra priklijuotas kabliukas, kurį galima lengvai nuimti atsuktuvu. Naudodami tinklelį (ankstesnį veiksmą), galite lengvai pažymėti kiekvieno lemputės padėtį lentoje. Dauguma RGB LED juostelių turi lipnią nugarą, todėl galite lengvai priklijuoti juos prie lentos. Svarbu atkreipti dėmesį į RGB šviesos diodų juostos kryptį. Rodyklės ant RGB LED juostos rodo srovės tekėjimo kryptį. Kadangi norime prijungti 13 RGB LED juostų, turime sukurti nenutrūkstamą srovės tekėjimo kelią. Neseniai IKEA nukirto vieną lentos kampą, kad būtų lengviau ištraukti plokštę iš rėmo. Patogu naudoti šį supjaustytą kampą, kad laidai būtų iš vienos plokštės pusės į kitą. Kitaip tariant, įsitikinkite, kad pirmasis šviesos diodas yra išpjautame kampe.
Lituoti 13 RGB LED juostų
Dabar 13 RGB LED juostų yra įstrigę ant plokštės, mes galime jas sujungti naudodami lituoklį. Pirmiausia ant kiekvienos vario ovalo pusės išpilstykite šiek tiek litavimo. Antra, nupjaukite trumpiklio laidų juostą iš vieno galo. Vėlgi, ant nuplėšto vielos galo išpilkite šiek tiek litavimo. Dabar, nuimtas vielos galas, palieskite vario ovalą ir naudokite lydmetalį, lydykite lydmetalį ir prijunkite juos. Prijunkite vienos RGB LED juostos GND prie kitos RGB LED juostos GND. Tą patį padarykite su 5 V ir duomenų laidais.
LED matricos užbaigimas
Lituokite jungiamąjį laidą prie kiekvieno iš trijų varinių ovalų pirmojo RGB šviesos diodų matricos šviesos diodo. Kaip minėta, patogu pirmą lemputę išdėstyti išpjautame lentos kampe, kad galėtumėte lengvai patekti į tris plokštės puses.
6 žingsnis: Elektronika
Dabar mes baigėme savo LED matricą ir galime pradėti jungti komponentus.
Komponentus („Arduino Nano“gnybtų adapteryje, RTC DS3231, vielos veržles) priklijuosime prie plokštės, ant kurios padarėme savo LED matricą, galo. Norėdami pritvirtinti komponentus, galite naudoti dvipusę juostą.
RGB LED juostelė
Pirmiausia įdėkite „Arduino Nano“į terminalo adapterį. Gnybtų adapterį patogu įdėti į plokštės vidurį, nes prie terminalo adapterio reikia prijungti nemažai laidų. Prijunkite RGB LED juostos duomenų laidą (vidurinį laidą) prie vieno iš „Arduino Nano“skaitmeninių prievadų (dažniausiai naudoju D6 prievadą). Norėdami apsaugoti RGB LED juostą nuo įtampos šuolių, tarp duomenų laido ir „Arduino“galite įdėti 400–500 omų rezistorių.
RTC DS3231
Antra, priklijuokite RTC DS3231 kažkur prie plokštės. Šiam moduliui reikia keturių jungčių: vieno įžeminimo, vieno 5 V, vieno SCL ir vieno SDA. Mes nenaudojame SQW ir 32K prievado. Norėdami prijungti prie RTC DS3231 kaiščių, galite naudoti moterišką laidą. Prijunkite SCL prie penktojo analoginio „Arduino Nano“prievado (A5). Prijunkite SDA prie ketvirto analogiško „Arduino Nano“prievado (A4).
7 žingsnis: maitinimo šaltinis
Kokį maitinimo šaltinį naudoti?
Įtampa Galite maitinti „Arduino Nano“naudodami platų įtampą. „Vin“prievadas gali valdyti 7–12 V įtampą, 5 V prievadas gali valdyti 5 V įtampą (kokia staigmena), o jūs galite maitinti „Arduino Nano“naudodami USB mini kabelį. Tačiau RGB LED juosta yra išrankesnė savo reikalavimams. Dauguma gamintojų nurodo 5V +/- 5% įvestį į savo RGB LED juostas (daugiau informacijos žr. Neopikselių maitinimas). Todėl naudosime 5 V maitinimo šaltinį.
Dabartinis vienas RGB šviesos diodas iš tikrųjų turi tris atskirus šviesos diodus (raudoną, žalią ir mėlyną), kurie kartu sudaro norimą spalvą. Vienas iš trijų šviesos diodų naudoja apie 20 mA. Taigi, RGB šviesos diodas, skleidžiantis baltą spalvą, vienu metu uždedamas raudoną, žalią ir mėlyną lemputes, naudoja 3*20 mA = 60 mA. Jei vienu metu uždegsite visus 169 RGB šviesos diodus balta spalva, jums reikia 169*60mA = 10140mA = 10A*. Dažniausiai naudojami maitinimo šaltiniai yra apie 2000 mA. Taigi, kitaip tariant, visų RGB lempučių apšvietimas vienu metu balta spalva nėra labai ryški idėja **.
Aš rekomenduoju naudoti 5 V, 2000 mA maitinimo šaltinį, nes jie yra įprasti ir gana pigūs.
* Atkreipkite dėmesį, kad didelės srovės (virš 5 mA) yra pavojingos! Taigi, būkite labai atsargūs, kai įjungiate „Word Clock“!
** Yra keletas gudrybių uždegti visus RGB lemputes vienu metu, pavyzdžiui, prijungti maitinimo šaltinį prie abiejų RGB LED juostos galų arba naudoti RGB šviesos diodus esant mažesniam ryškumui.
Maitinimo šaltinio prijungimas
Mes prijungsime maitinimo šaltinį prie komponentų. Mes prijungsime 1000 uF kondensatorių per teigiamą ir neigiamą maitinimo šaltinio laidą. Ryšiui apsaugoti galite naudoti protoboat (žr. Paveikslėlį). Kadangi turime nemažai komponentų, kuriems reikia energijos, mes prijungiame kiekvieną iš dviejų 5 V maitinimo šaltinio laidų prie vienos vielos veržlės: mes juos vadinsime teigiama viela (kuri yra prijungta prie teigiamo maitinimo šaltinio laido) ir neigiama vielos veržlė (kuri prijungta prie neigiamo maitinimo šaltinio laido). Dabar prijunkite 5 V laidus RGB LED juostelėje ir RTC DS3231 prie teigiamos vielos veržlės. Panašiai prijunkite RGB šviesos diodų juostos ir RTC DS3231 įžeminimo laidus (GND) prie neigiamos vielos veržlės. Mes maitinsime „Arduino Nano“per jo 5 V prievadą ir vieną iš antžeminių prievadų. Norėdami tai padaryti, prijunkite „Arduino“5 V prievadą prie teigiamos vielos veržlės ir vieną iš GND prievadų prie neigiamos vielos veržlės.
Maitinimo šaltinio tvirtinimas
Kad nesuardytumėte visos gražiai sujungtos elektronikos, rekomenduojama maitinimo laido laidą pritvirtinti prie RIBBA rėmo vidinės pusės. Tai galite padaryti tiesiog sukurdami mazgą į maitinimo laidą prieš jam išeinant per „Word Clock“nugarą. Tačiau elegantiškesnis būdas yra pritvirtinti laidą, prispaudžiant jį prie RIBBA rėmo vidinės pusės. Tai galite lengvai padaryti naudodami nedidelį medžio gabalėlį ir dviem varžtais prisukdami jį prie RIBBA rėmo vidinės pusės. Prijunkite maitinimo laidą tarp medžio gabalo ir RIBBA rėmo. Naujausioje „Word Clock“versijoje maitinimo laidui pritvirtinti naudojau nedidelį vyrį (apie 3 cm). Šio pranašumas yra tas, kad jums nereikia pjauti šiek tiek medžio gabalo.
8 žingsnis: sudėkite viską kartu
Dabar mes atspausdinome arba iškirpome „Word Clock“veidą, baigėme LED matricą ir prijungėme elektroninius komponentus, laikas sujungti visus „Word Clock“sluoksnius.
- Įdėkite „Word Clock“veidą į RIBBA rėmelį.
- Įdėkite (pusiau) nepermatomą popierių (įprastą spausdinimo popierių arba atsekamąjį popierių), kad šviesa gražiai paskirstytų raidę.
- Įdėkite tinklelį į RIBBA rėmą.
- Plokštę, kurios vienoje pusėje yra LED matrica, o kitoje - elektroniniai komponentai, galima atsargiai įdėti į RIBBA rėmą.
9 veiksmas: sukurkite „Word Clock“galinę dalį
Laikrodžio nugarėlė gali būti tiesiog pagaminta iš medinės lentos. Geriausias būdas tai padaryti yra pjauti lentos gabalą tokio paties dydžio (apie 22,5x22,5 cm), kaip ir RIBBA rėmo plokštė. Gręžkite dvi skyles „Word Clock“galinėje pusėje: vieną, skirtą tvirtinti prie sienos (jei norite), o kitą - maitinimo laidui, kad išeitumėte iš „Word Clock“.
Pjaukite dvi medinės juostelės dalis, kurių ilgis yra apie 20 cm. Šios dvi juostelės turi dvi funkcijas:
- Laikydami medinę lentą vienoje pusėje su RGB šviesos diodų juostele, o kitoje pusėje - elektroniniais komponentais
- Sukurti paviršių, ant kurio galima prisukti „Word Clock“nugarėlę.
Dabar prisukite šias juosteles prie RIBBA rėmo vidinės pusės ir įsitikinkite, kad jas stipriai prispaudžiate prie plokštės, kurioje yra elektriniai komponentai. Tada ant medinių juostelių galite uždėti ką tik nupjautą medinę lentą ir pritvirtinti varžtais.
Jei norite uždėti „Word Clock“ant sienos, įsitikinkite, kad „Word Clock“nugarėlė tvirtai pritvirtinta.
10 veiksmas: „Arduino Nano“programavimas
Jei pradedate programuoti „Arduino“, rekomenduočiau pirmiausia atlikti keletą pamokų (pvz., „Blink“), kurios yra labai informatyvios (ir smagios!).
Kadangi esu tik mechanikos inžinerijos studentas, programavimas nėra mano mėgstamiausia projekto dalis. Laimei, mano svainis yra informatikos magistras, todėl „Arduino“programavimas jam buvo pyragas. Taigi, visi kreditai už programavimą skirti jam (ačiū Laurensui)!
Pagrindinė idėja yra ta, kad nurodote, kurios lemputės yra žodžio dalis. Atkreipkite dėmesį, kad pirmasis šviesos diodas nurodomas kaip indikatoriaus numeris 0. Taigi turime 0–168 diodus. Tada pasakykite „Arduino“, kurie žodžiai turi užsidegti tam tikru laiku. Laiką nustatote „RTC DS3231“, kad „Arduino“žinotų, koks yra dabartinis laikas.
RGB šviesos diodų juostos šviesos diodų spalvos yra nustatomos pagal 0-255 reikšmę raudonai, žaliai ir mėlynai. Taigi raudona lemputė žymima (raudona, žalia, mėlyna) = (255, 0, 0), o violetinė - (reg, žalia, mėlyna) = (255, 0, 255). Nenaudojamas šviesos diodas turi spalvą (raudona, žalia, mėlyna) = (0, 0, 0).
Galite sugrupuoti žodžius pagal jų paskirtį:
- Grupė, kuri visada šviečia („Tai“, „yra“, jūsų vardas ir kt.)
- Žodžių, nurodančių minutes, grupė
- Sujungiančių žodžių grupė („praeitis“, „į“, „pusė“, „ketvirtis“ir kt.)
- Žodžių grupė, nurodanti valandas
- Grupė, apimanti visas raides, kurių šiuo metu nenaudojate
Kiekvienai žodžių grupei galite nustatyti spalvą (tai lengviau nei apibrėžti kiekvieno žodžio ar net raidės spalvą atskirai).
Galite įkelti savo programą prijungę „Arduino Nano“prie kompiuterio naudodami USB mini kabelį.
ATNAUJINIMAS (2019 m. Sausio mėn.):
Aš pridėjau „Arduino“failą prie „Instructable“. Failą parašė mano brolis, todėl visas nuopelnas priklauso jam! Failas yra pagrįstas „Word Clock“, naudojant mygtukus, kad būtų galima perjungti iš tam tikrų spalvų režimų į skaitmeninį režimą. Žinoma, mygtukus galite užprogramuoti taip, kaip jums patinka
11 žingsnis: Užbaikite
Jei viskas vyko pagal planą, jūs tiesiog sukūrėte savo „Word“laikrodį!
Prašau, jei turite kokių nors rekomendacijų, nedvejodami komentuokite! Bandysiu į jas atsakyti, bet kadangi mano laikas yra ribotas, tai gali šiek tiek užtrukti.