Sadržaj:
- Korak 1: Futrola za sat
- Korak 2: Neopikseli
- Korak 3: Podešavanje prednjeg teksta
- Korak 4: Potpuni efekat duge
- Korak 5: Različite komponente
- Korak 6: Kôd za sat
- Korak 7: Opis hardvera
- Korak 8: LDR za kontrolu svjetline neopiksela
- Korak 9: Smanjivanje potrošnje energije WS2812B
- Korak 10: Nasmijani na satu za riječi
- Korak 11: Koje se biblioteke koriste
- Korak 12: Jednostavno IC daljinsko upravljanje
- Korak 13: Koji Nexts?
Video: Dugin sat sa riječima sa punim efektom duge i više: 13 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Ciljevi
1) Jednostavno
2) Nije skupo
3) Što je moguće energetski efikasnije
Rainbow Word Clock sa punim efektom duge.
Smajlić na satu riječi.
Jednostavan IC daljinski upravljač
Ažurirajte LDR 03-nov-18 za kontrolu svjetline neopiksela
Ažuriranje 01-jan-19 Smanjuje potrošnju energije WS2812B.
Update 15-jan-19 Smiley.
Ažuriranje 23-jan-19 Kod 1.6
Ažurirajte veze biblioteka 10. marta
Ažuriranje 14. aprila 19. verzija 1.7 Izbor smajlija za uključivanje/isključivanje boje duge/popravljanje enz.
Zadnje ažuriranje 01. jun-19 verzija 2.0 IR daljinski upravljač i redizajn koda
Korak 1: Futrola za sat
Uz neke jednostavne alate i malo vještine, nije teško napraviti sat za slova. Koristio sam materijale koji su mi dostupni.
Za kućište sam upotrijebio grubu borovu šipku u koju sam izrezao nekoliko okvira. Tako bi nastale četiri strane kućišta, koje su zalijepljene zajedno i ojačane malim komadom drveta u uglovima. Tada drvo treba brusiti i bojati.
Slova štampačem izrezuju slova iz folije. Folija se nalazi na stražnjoj strani staklene ploče i prekrivena je dvoslojnim papirom za bolju raspodjelu svjetlosti. Staklo je učvršćeno silikonskim brtvilom.
Korak 2: Neopikseli
LED diode Neopiksela postavljene su na drvenu ploču. Ovdje prvo izbušite rupe od 3 mm. Na prednjoj strani su uvećane do veličine slova do 3/4 dubine. Nakon toga 3 mm straga se povećava na 10 mm, ovo je veličina neopiksela. Za neke znakove, između ostalih i W, rupu treba malo prilagoditi.
Koristio sam šperploču koja se brzo raspala, MDF bi mogao biti bolji.
Sa pojedinačnim LED diodama niste vezani na fiksnu udaljenost, što je slučaj sa LED trakama. LED diode moraju biti povezane jedna s drugom. To možete učiniti sa svim kratkim komadima žice. Ali dvije min (-) veze su isto kao dvije plus (+) veze interno povezane, dakle ista veza.
Možete uštedjeti mnogo posla lemljenjem komada žice na lijevu LED, a zatim na desnu LED. Zatim lemite srednje.
Podatkovna veza mora, naravno, biti kratka jer podaci izlaze na ulaz podataka.
Korak 3: Podešavanje prednjeg teksta
Prednja ploča sada je na holandskom, ali jednostavno za pretvaranje na bilo kojem jeziku.
LED diode NeoPixels se ovdje uzastopno mijenjaju od 0-167. Numeracija ide od prvog reda gore slijeva nadesno, a zatim do drugog reda zdesna nalijevo itd. Podešavanje se može izvršiti prema vašim potrebama. Broj NeoPixela određen je količinom znakova. Manje ili više Neopiksela može se podesiti u sljedećoj liniji
#define NUMPIXELS 168 // Koliko je NeoPixela priključeno na Arduino?
168 je veći broj od drugog. Numerisanje počinje sa 0. Možete napraviti bilo koji tekst. Ako promijenite tekst, morat ćete prilagoditi i odgovarajuće riječi. Numeracija ostaje ista.
Na primjer, DRIE minuta određuje se u kodu
void zetmDrie () {
Led_Aan [56] = 1, Led_Aan [57] = 1, Led_Aan [58] = 1, Led_Aan [59] = 1; // min-drie
}
Ako želite napraviti riječ Arduino, to ide ovako:
void zetArduino () {
Led_Aan [38] = 1, Led_Aan [50] = 1, Led_Aan [56] = 1, Led_Aan [93] = 1;
Led_Aan [120] = 1, Led_Aan [135] = 1, Led_Aan [147] = 1; // Riječ-arduino
}
Tako da možete stvarati riječi između.
Za satne riječi korisno je ako tvore susjednu riječ, ali to nije apsolutno potrebno. Neiskorištena slova ne trebaju neonpiksele. Sve sam ih napunio za korištenje budućih mogućnosti osim prikazanog vremena.
Ako promijenite početnu točku ili promijenite sukcesivni niz, numeracija bi se trebala promijeniti u skladu s tim.
Korak 4: Potpuni efekat duge
Sat je sada tako programiran da se broj puta u sekundi broji koliko je neopiksela uključeno.
Ukupni spektar je otprilike broj podijeljenih, a zatim malo pomaknutih. Kao rezultat toga, svaki Neopixel ima drugu boju koja se stalno mijenja. Neopixel br. 1 i br. 167 slijede jedan drugog na određenoj boji.
Ako istovremeno volite manje različitih boja, to je lako prilagoditi. Boja se i dalje mijenja po cijelom spektru, ali s manjim dijelom. Neopixel nr 1 i nr 167 više ne slijede jedan drugog u nekoj boji.
Osvjetljenje se može postaviti u sljedećoj liniji, pixels.setBrightness (150);
Manji broj je manji, a veći broj više svjetline.
Korak 5: Različite komponente
Sljedeće komponente sam koristio
Arduino Pro Mini ATMEGA328 5V/16MHz
Modul sata DS3231
168 komada LED dioda od neopiksela WS2812 LED čip i hladnjak 5V 5050 RGB WS2811 IC Ugrađeno
Šablona za slova u foliji
DCF77 prijemnik
Korak 6: Kôd za sat
Evo koda. Dodana je kontrola svjetline i isključivanje kada nema nikoga i noću.
Dodan radarski mikrotalasni senzor pokreta RCWL-0516 (potražite RADAR)
Nakon 10 minuta bez kretanja, NeoPixels se gasi.
O verziji 2.0
Upotreba memorije je bila prevelika, upozorenja o nedostatku memorije u kompajleru. Zato sam potpuno promijenio kôd, ali je operacija ostala ista i dodan je IR prijemnik.
Postoji dio koda koji EEPROM -u daje podatke. Pokrenite ovo jednom privremenim uklanjanjem / * i * /. Potražite => pokrenite ovo jednom kako biste EEPROM -u dali podatke
Na početku void petlje je kôd za čitanje koda sa vašeg daljinskog upravljača. Ovo možete pokrenuti privremenim uklanjanjem / * i * /, ne zaboravite ih nakon toga vratiti. Takođe možete definisati sopstvene tastere. Pročitani kôd se mora unijeti u => Ovdje definirajte vlastite tipke
Samsungov daljinski upravljač radi bolje od (vrlo jeftinog) jednostavnog.
Korak 7: Opis hardvera
Postoje različite verzije Arduino Pro Mini. Imajte na umu da se veze mogu razlikovati.
Dodan mikrotalasni senzor pokreta RCWL-0516.
Sve dok postoji pomak u blizini sata, NeoPixel ostaje uključen
i čim nema više pokreta NeoPixel se isključuje nakon nekoliko minuta.
U verziji 2.0, DCF77 prijemnik se napaja preko pina 13. Ovaj pin je definiran kao izlaz i postavlja se visoko kada se adresira DCF77 rutina. DCF77 prijemnik koristi 0,28 mA i potreban je samo nekoliko minuta dnevno.
Isključivanje sprema
5 volti * 0,28 mA / 1000 * 24 sata * 365 dana * 1 / 0,85 efikasno napajanje = 14,4 vata godišnje.
Ovo ne izgleda previše, ali svaki dio pomaže.
Korak 8: LDR za kontrolu svjetline neopiksela
Dodan LDR za kontrolu svjetline neopiksela.
LDR sam zalijepio u prostor neopiksela 103. Ovaj se ne koristi u prikazu vremena i stoga ne utječe na regulaciju. Papir prigušuje upadno svjetlo, ali to nije problem.
Razdjelnik napona LDR -a i otpornika od 20 koma ide na A0 Arduino Pro Mini. Napon je pokazatelj intenziteta svjetlosti, a time i pokazatelj količine svjetlosti koju neopikseli moraju dati.
Formula koju koristim daje mi dobru kontrolu svjetla, može se prilagoditi ovisno o okolnostima. Ovisno o količini svjetla, napon može varirati između 0 i 5 volti, što se pretvara u 0 do 1024 broja koji su u "LDRValue".
Ako je nova izmjerena vrijednost veća od posljednje izračunate vrijednosti, intenzitet se povećava za 1, ako je manji od smanjenog za 1 i ako je jednak, ništa se ne radi. Kako bi se vrijednost polako odvijala, kako ne bi došlo do treptanja, samo 1 se povećava ili smanjuje, a budući da je proračun u petlji, ponovno se izračunava nakon što je petlju prešao petlju.
Intenzitet je teoretski minimum 20, a maksimum 1024/7 + 45 = 191. Maksimalna vrijednost koju sam izmjerio je 902, što iznosi intenzitet 173. To se dobro uklapa sa 150 koje sam postavio kao zadanu vrijednost. (vidi piksele.setBrightness (150))
U verziji 2.0 možete postaviti kontrolu putem daljinskog upravljača. Dodani su sljedeći parametri: Brightness_min kao minimalna i Brightness_max kao maksimalna postavka i Brightness_Offset kao parametar postavke. Svjetlina_min i _max su vrijednosti koje mogu ovisiti o vašoj situaciji. Brightness_Offset je vrijednost koja se može postaviti daljinskim upravljačem i pomoću koje se može postaviti manje ili više svjetline.
Postoji također mrtva zona 3 između izmjerene LDRValue i izračunatih BerLDRValue vrijednosti.
Pomoću izjava za štampanje u void BrightnessControl provjerite postavku svjetline.
Korak 9: Smanjivanje potrošnje energije WS2812B
Upravljački programi na WS2812B adresabilnim neopikselima crpe struju čak i kada su neopikseli isključeni, postavljeni na boju 0 (elementi neopiksela nisu upaljeni).
Kad istekne svih 169 neopiksela, mjerim 69 mA na neopiksele. Pod pretpostavkom da je sat isključen 12 sati dnevno, ukupno isključivanje tada štedi: 5 (napajanje voltom) * 69/1000 (miliampere / 1000 = amperi) * 12 (broj sati dnevno) * 365 (broj dana u godina) = 1511 Watt hours. Dakle na godišnjoj osnovi 1,5 kWh. Slažem se, nije mnogo samo po sebi, ali mnoge male čine veliku.
Krug je jednostavan. Plus napajanja se uključuje pomoću P-kanalnog MosFet-a. Radarski senzor određuje jesu li neopikseli uključeni ili isključeni. Postavio sam dva MosFeta paralelno kako bi otpor ON bio što manji zbog gubitka MosFeta. U normalnoj upotrebi mjerim 4, 5 milivolta preko MosFeta. Kapijom se upravlja izlazom 4 iz Arduina preko otpornika od 470 Kohm. Ako izlaz digitalno padne na (0), neopikseli su uključeni, a na visokom (1) isključeni.
Korak 10: Nasmijani na satu za riječi
Smajlić na satu riječi.
Na satu se povremeno pojavi smiješak. Međutim, to vas čini sretnima.
Smiley se aktivira pomoću radarskog senzora. Broj kretanja (podesivo) mjera je izgleda Smileyja. Znakovi % ukazuju na to da je kretanje otkriveno. Sa svakim desetim (podesivim) pokretom, Smiley dolazi s Winky Faceom, a nakon tri puta Winky Face dolazi četvrti put Smiley Face izbacuje jezik.
Smiley je mala promjena u kodu.
Korak 11: Koje se biblioteke koriste
Koje se biblioteke koriste.
Koristim ih u sustavu Windows 7 s Arduino IDE 1.6, a testirani su i u sustavu Windows 10 s Adruino IDE 1.8.8
RTClib-master
Arduino-DS3231-master
Adafruit_NeoPixel-master
Arduino-DCF77-master
IRremote biblioteka Kena Shirriffa
Budući da uvijek postoji zabuna oko korištene biblioteke, dodajem onu koju koristim.
Biblioteka IRremote koristi puno memorije. U IRremote.h je naznačeno da možete onemogućiti sve neiskorištene protokole
// Svaki protokol koji uključite košta memoriju, a tokom dekodiranja troši vrijeme // Onemogućite (postavite na 0) sve protokole koji vam nisu potrebni/želite!
Sve mi je onemogućeno osim NEC i Samsung protokola. Ovo štedi memoriju od 10%. Trenutno više nema problema s količinom memorije, pa zasad onemogućavanje nije potrebno.
Korak 12: Jednostavno IC daljinsko upravljanje
Skupština
Kao što možete vidjeti na fotografijama, pokazalo se da je rupa za LED 132 malo prevelika. Ovo sam dobro iskoristio i dodao mu IR prijemnik. Spojite pin podataka IC prijemnika VS1838 na pin 7 Arduina. Nadalje priključite plus i minus napajanje. IC prijemnik koristi 0,21 mA i mogao bi se spojiti na plus napajanje nakon prekidača FET. Ovo rezultira uštedom, ako je sat uključen na 50% vremena, od 5 volti * 0,21 mA / 1000 * 12 sati * 365 dana * 1 / 0,85 efikasnog napajanja = 5,4 vata godišnje. Ovo ne izgleda previše, ali svaki dio pomaže.
Operacija je sledeća
Pritisnite bilo koji taster na daljinskom upravljaču, a zatim taster OK. Prvi put kada pritisnete, završit ćete u IC obradi, a drugi put ćete otkriti je li to bio opravdan zahtjev. Drugi put OK mora brzo slijediti prvi pritisak tipke jer se u suprotnom vraća natrag. Napravio sam ovu konstrukciju tako da jedva da sam ispravno dekodirao prvi kôd i stoga nisam završio u rukovanju IC -om.
Jednom u rukovanju infracrvenim zračenjem, zatim se uključuje niz LED dioda radi informacija, radi objašnjenja pročitajte dalje i pogledajte prvu sliku.
Opis je za jednostavan daljinski upravljač, ali možete koristiti bilo koji daljinski upravljač i definirati vlastite ključeve. Koristio sam i Samsung daljinski upravljač.
Prva četiri ključa odgovaraju četiri gornja reda LED -a. Četiri LED -a okreću se lijevo ili desno ovisno o postavci. Kada se pritisnu tipke 1 do 4, stanje se obrće i pohranjuje u memoriju.
1 efekt fiksne boje ili duga
2 sekunde isključen ili drugi uključen
3 smajli isključeni smiley on
4 DCF77 isključen ili DCF77 uključen
Broj ključa prikazan je na sljedećim tipkama
5 brojač smajlija
6 širina spektra duginih boja
7 popravi crvenu postavku
8 popravi zelenu postavku
9 popravi plavu postavku
Red 6, 7 i 8 LED dioda sada odgovaraju postavljenoj vrijednosti, red 6 označava jedinice, red 7 desetice, a red 8 stotinu. Svaki red počinje s vrijednošću nula. Dakle, prva led u redu je 0, druga je 1 itd.
0 podešavanje vremena
/\ postavka osvetljenosti
Kada pritisnete dugme 0, "deset" LED lampica zasvijetli kako bi pokazalo da želite postaviti vrijeme, a kada pritisnete 0 drugi put, na ekranu se prikazuje postavljeno vrijeme.
Sada se može podesiti vrijeme i prikazuje se na ekranu.
Podesite tačno vreme, a zatim, ako su minute iste na referentnom satu, pritisnite dugme OK.
Vreme je podešeno.
Ako ne pritisnete dugme za minute ili sate, neće se izvršiti promjena vremena. Ako ih pritisnete, vrijeme će se odmah postaviti.
Vrijednost tipki 5 do 9 može se promijeniti pomoću tipki
desno je plus 1
lijevo je minus 1
napred je plus 10
rikverc je minus 10.
i za podešavanje vremena
desno je plus 1 minuta
lijevo je minus 1 minuta
naprijed je plus 1 sat
rikverc je minus 1 sat
Ponekad se dogodi da pritisak na tipku nije prepoznat ili se izvede dva puta. Zato obratite pažnju ako postavka ide dobro. U suprotnom pokušajte ili ispravite ponovo. Samsungov daljinski upravljač koji sam takođe testirao radio je mnogo puta bolje od (vrlo jeftinog) jednostavnog daljinskog upravljača.
Prilikom postavljanja boje vidite promjenu direktno na cijelom ekranu. Za web lokaciju s pregledom boja pogledajte https://www.helderester.nl/kleurentabel.html. Naravno, možete postaviti bilo koju vrijednost.
Ako širina spektra duge ima vrijednost 0, spektar je vrlo uzak i zaslon ima jednu boju koja se stalno mijenja.
Nedostatak postavljanja vremena na ovaj način je što ne možete izračunati prijelaz ljeto / zima jer imamo pogrešan datum. Za sat nije važno jer ga sada ne koristimo.
Korak 13: Koji Nexts?
Slijedi zvuk ako je slobodne memorije još uvijek dovoljno.
Već imam kutije za zvučnike. Oni su sa starog laptopa.
Preporučuje se:
BrickPi - Dugin jednorog: 15 koraka (sa slikama)
BrickPi-Rainbow Unicorn: Unesite vrijeme podučavanja Covid-a i skloništa na mjestu bez ljetnog kampa (najbolji dio nastavne godine!) Imam petak Lego "klub" sa većinom dječaka od 8 do 10 godina. Budući da se ovaj klub javlja nakon nastave nakon što su ova djeca bila na sc
Povoljni Arduino RGB sat sa riječima!: 7 koraka (sa slikama)
Povoljni Arduino RGB sat za riječi!: Pozdrav svima, evo mog vodiča kako sami napraviti jednostavan & jeftin sat za riječi! Alati koji će vam trebati za ovaj projekt Lemilica & Lemljene žice (u idealnom slučaju najmanje 3 različite boje) 3D štampač (ili pristup jednoj, takođe možete
Sat riječi s efektom duge i pozadinskim svjetlom .: 6 koraka
Sat sa riječima sa efektom duge i pozadinskim svjetlom .: Početak je tu. Prednja ploča je 40 x 40 cm i spremna je
Napravite Dugin aparat: 11 koraka (sa slikama)
Napravite dugin aparat: dugi aparat (poznat i kao astralni hromaskop) je optička konstrukcija koja vam omogućava da vidite šarenu energiju iz običnih stvari! U ovom Instructable -u pokazat ću vam kako izgraditi vlastiti da istražite tehničkobojske vibracije stvari
Ribba sat sa riječima sa Wemos D1 Mini (Internet Time Server): 8 koraka (sa slikama)
Ribba sat sa Wemos D1 Mini (Internet Time Server): Pretpostavljam da svi dolaze do tačke u kojoj mu to golica u prstima i želi da izgradi Word Clock. Pa, ovo je moj pokušaj i moj ukupni zaključak da ga izgradim što efikasnije. Prije svega posjedujem 3D štampač i imam pristup