Sadržaj:
- Korak 1: Kućište za sat
- Korak 2: Neopikseli
- Korak 3: Podešavanje prednjeg teksta
- Korak 4: Potpuni efekt duge
- Korak 5: Razne komponente
- Korak 6: Kôd za sat
- Korak 7: Opis hardvera
- Korak 8: LDR za kontrolu svjetline neopiksela
- Korak 9: Smanjenje potrošnje energije WS2812B
- 10. korak: Smiley na satu Word
- Korak 11: Koje se knjižnice koriste
- Korak 12: Jednostavno IC daljinsko upravljanje
- Korak 13: Koji Nexts?
Video: Dugin sat sa riječima s punim efektom duge i više: 13 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Ciljevi
1) Jednostavno
2) Nije skupo
3) Što je energetski učinkovitije moguće
Rainbow Word Clock sa punim efektom duge.
Smajlić na satu riječi.
Jednostavno IC daljinsko upravljanje
Ažurirajte LDR 03-nov-18 za kontrolu svjetline neopiksela
Ažuriranje 01-jan-19 Smanjuje potrošnju energije WS2812B.
Ažurirajte Smiley 15-jan-19.
Ažuriranje 23-jan-19 Code 1.6
Ažurirajte veze knjižnica 10. ožujka 19
Ažuriranje 14. travnja 19. verzija 1.7 Izbor smajlija za uključivanje/isključivanje boje duge/popravljanje enz.
Zadnje ažuriranje 01. lipnja 19 verzija 2.0 IR daljinski upravljač i redizajn koda
Korak 1: Kućište za sat
Uz neke jednostavne alate i malo vještine, nije teško izraditi slovni sat, upotrijebio 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č izrezuje 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. Sprijeda su povećane do veličine slova do 3/4 dubine. Nakon toga se 3 mm straga povećava na 10 mm, ovo je veličina neopiksela. Za neke znakove, među ostalim i W, rupu je potrebno malo prilagoditi.
Koristio sam šperploču koja se brzo raspala, MDF bi mogao biti bolji.
Kod pojedinačnih LED dioda niste vezani na fiksnu udaljenost, što je slučaj s LED trakama. LED diode moraju biti međusobno povezane. To možete učiniti sa svim kratkim komadima žice. No dvije min (-) veze su isto kao dvije plus (+) veze interno povezane, dakle ista veza.
Možete si 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 nizozemskom, ali jednostavno za pretvaranje na bilo kojem jeziku.
LED diode NeoPixels ovdje se uzastopno mijenjaju od 0-167. Numeriranje ide od prvog reda gore slijeva nadesno, a zatim u drugi red 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 prilagoditi u sljedećem retku
#define NUMPIXELS 168 // Koliko je NeoPixela priključeno na Arduino?
168 je nego drugi broj. Numeriranje počinje s 0. Možete napraviti bilo koji tekst. Ako promijenite tekst, morat ćete prilagoditi i odgovarajuće riječi. Numeracija ostaje ista.
Kao primjer, DRIE zapisnika, 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 slijed uzastopca, numeriranje bi se moralo promijeniti u skladu s tim.
Korak 4: Potpuni efekt 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 nr 167 slijede jedan drugog na određenoj boji.
Ako više volite manje različitih boja u isto vrijeme, 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.
Svjetlina se može postaviti u sljedećem retku, piksela.setBrightness (150);
Manji broj je manji, a veći broj više svjetline.
Korak 5: Razne komponente
Sljedeće komponente sam koristio
Arduino Pro Mini ATMEGA328 5V/16MHz
Modul sata DS3231
168 komada LED dioda sa LED diodama WS2812 od neopiksela 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 kad nema nikoga i noću.
Dodan radarski mikrovalni senzor pokreta RCWL-0516 (potražite RADAR)
Nakon 10 minuta bez kretanja, NeoPixels se gasi.
O verziji 2.0
Upotreba memorije bila je prevelika, upozorenja o nedostatku memorije u prevoditelju. Zato sam potpuno promijenio kôd, no operacija je ostala ista te je dodan IC prijemnik.
Postoji dio koda za pružanje podataka EEPROM -u. 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 s vašeg daljinskog upravljača. To možete pokrenuti privremenim uklanjanjem / * i * /, ne zaboravite ih nakon toga vratiti. Također možete definirati vlastite gumbe. Pročitani kôd morate unijeti u => Ovdje definirajte vlastite gumbe
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 je mikrotalasni senzor pokreta RCWL-0516.
Sve dok postoji gibanje 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 postavljen je visoko kada se adresira DCF77 rutina. Prijemnik DCF77 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 učinkovito napajanje = 14,4 vata godišnje.
Ovo se ne čini puno, ali svaki djelić pomaže.
Korak 8: LDR za kontrolu svjetline neopiksela
Dodan je 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 poduzima. Kako bi se vrijednost polako odvijala, tako da nema trepćućeg učinka, samo 1 se povećava ili smanjuje, a budući da je izračun u petlji, ponovno se izračunava nakon što je petlju prešao petlju.
Intenzitet je teoretski minimalno 20, a maksimum 1024/7 + 45 = 191. Maksimalna vrijednost koju sam izmjerio bila je 902, što iznosi intenzitet 173. To se dobro uklapa u 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: Svjetlina_min kao minimalna i Brightness_max kao maksimalna postavka i Brightness_Offset kao parametar postavke. Svjetlina_min i _max vrijednosti su 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.
Također postoji mrtvi pojas od 3 između izmjerene LDRValue i izračunatih BerLDRValue vrijednosti.
Pomoću izjava o ispisu u void BrightnessControl provjerite postavku svjetline.
Korak 9: Smanjenje potrošnje energije WS2812B
Upravljački programi na adresabilnim neopikselima WS2812B crpe struju čak i kad su neopikseli isključeni, postavljeni na boju 0 (ne svijetle elementi neopiksela).
Kad je svih 169 neopiksela vani, mjerim 69 mA na neopiksele. Pod pretpostavkom da je sat isključen 12 sati dnevno, ukupno isključenje tada štedi: 5 (napajanje Voltima) * 69/1000 (Miliampere / 1000 = Amper) * 12 (Broj sati dnevno) * 365 (Broj dana u godine) = 1511 Watt sati. Dakle na godišnjoj razini 1,5 Kwh. Slažem se, nije puno samo po sebi, ali mnoge male čine veliku.
Krug je jednostavan. Plus napajanja se uključuje pomoću P-kanalnog MosFeta. 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 uporabi mjerim 4, 5 milivolta preko MosFetova. Vrata se upravljaju 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.
10. korak: Smiley na satu Word
Smajlić na satu riječi.
Povremeno se na satu pojavi smiješak. To vas, međutim, čini sretnima.
Smiley pokreće radarski senzor. Broj kretanja (podesivo) mjera je izgleda Smileyja. Znakovi % pokazuju 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 isplazi jezik.
Smiley je mala promjena u kodu.
Korak 11: Koje se knjižnice koriste
Koje se knjižnice koriste.
Koristim ih u sustavu Windows 7 s Arduino IDE 1.6, a također su testirani u sustavu Windows 10 s Adruino IDE 1.8.8
RTClib-master
Arduino-DS3231-master
Adafruit_NeoPixel-master
Arduino-DCF77-master
Biblioteka IRremote Kena Shirriffa
Budući da uvijek postoji zabuna oko knjižnice koja se koristi, dodajem onu koju koristim.
Knjižnica IRremote koristi puno memorije. U IRremote.h naznačeno je da možete onemogućiti sve neiskorištene protokole
// Svaki protokol koji uključite košta memoriju, a tijekom dekodiranja troši vrijeme // Onemogućite (postavite na 0) sve protokole koje ne trebate/ne želite!
Sve mi je onemogućeno osim protokola NEC i Samsung. To omogućuje uštedu memorije 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. Dobro sam to iskoristio i dodao mu IR prijemnik. Spojite podatkovni pin IC prijemnika VS1838 na pin 7 Arduina. Nadalje spojite plus i minus napajanje. IC prijemnik koristi 0,21 mA i mogao bi se spojiti na plus napajanje nakon prekidača FET. To rezultira uštedom, ako sat radi na 50% vremena, 5 V * 0,21 mA / 1000 * 12 sati * 365 dana * 1 / 0,85 učinkovito napajanje = 5,4 W godišnje. Ovo ne izgleda puno, ali svaki djelić pomaže.
Operacija je kako slijedi
Pritisnite bilo koju tipku na daljinskom upravljaču, a zatim tipku 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 kod, pa stoga nije završio u rukovanju IC -om.
Jednom u rukovanju IC -om, zatim se niz LED dioda uključuje za informacije, 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č.
Prve četiri tipke odgovaraju prva četiri reda LED dioda. Četiri LED diode okreću se ulijevo ili udesno, ovisno o postavci. Kada se pritisnu tipke 1 do 4, stanje se obrće i sprema u memoriju.
1 efekt fiksne boje ili duga
2 sekunde isključen ili drugi uključen
3 smiley off 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 zadanoj vrijednosti, red 6 označava jedinice, red 7 desetke, 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 svjetline
Kad pritisnete gumb 0, "deset" LED lampica zasvijetli kako bi pokazalo da želite postaviti vrijeme, a kada pritisnete 0 drugi put, na zaslonu se prikazuje namješteno vrijeme.
Sada se može postaviti vrijeme i prikazano je na zaslonu.
Postavite točno vrijeme, a zatim, ako su minute iste na referentnom satu, pritisnite gumb OK.
Vrijeme je prilagođeno.
Ako ne pritisnete gumb za minute ili sate, neće se promijeniti vrijeme. Ako ih pritisnete, vrijeme će se odmah postaviti.
Vrijednost tipki 5 do 9 može se promijeniti tipkama
desno je plus 1
lijevo je minus 1
naprijed je plus 10
rikverc je minus 10.
i za postavljanje 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 pozornost ako postavka ide dobro. U protivnom pokušajte ispraviti ponovo. Samsungov daljinski upravljač koji sam također testirao radio je mnogo puta bolje od (vrlo jeftinog) jednostavnog daljinskog upravljača.
Prilikom postavljanja boje vidite promjenu izravno na cijelom zaslonu. Za web mjesto s pregledom boja pogledajte https://www.helderester.nl/kleurentabel.html. Naravno, možete postaviti bilo koju vrijednost.
Ako širina spektra duginih boja 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 netočan datum. Za sam 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 prijenosnog računala.
Preporučeni:
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 ", s većinom dječaka od 8-10 godina. Budući da se ovaj klub javlja nakon škole nakon što su ova djeca bila na sc
Povoljni Arduino RGB sat sa riječima!: 7 koraka (sa slikama)
Povoljni Arduino RGB sat sa riječima!: Pozdrav svima, ovdje je moj vodič o tome 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 pisač (ili pristup jednoj, također možete
Sat riječi s efektom duge i pozadinskim svjetlom .: 6 koraka
Sat s riječima s efektom duge i pozadinskim svjetlom .: Početak je tu. Prednja ploča je 40 x 40 cm i spremna je
Nizozemski sat sa riječima 8x8: 7 koraka (sa slikama)
Nizozemski 8x8 sat sa riječima: Znam da nisam prvi koji je napravio sat s riječima, koristeći Arduino. Ipak, uvijek je bilo nešto na mojoj listi za napraviti za izradu nizozemskog. Za neki drugi projekt već sam davno kupio 'colorduino / rainbowduino / funduino' da nešto testiram
Programabilna stanica za petlje s efektom premosnice s efektom premosnice pomoću dip prekidača: 11 koraka
Programabilna stanica za petlje s gitarskim efektom True Bypass pomoću dip prekidača: Oduševljen sam gitarom i hobist. Većina mojih projekata odvija se oko alata za gitaru. Gradim vlastita pojačala i neke efektne pedale. U prošlosti sam svirao u malom bendu i uvjerio se da mi je potrebno samo pojačalo s ponovnim