Sadržaj:

Budilnik sa izlaskom sunca s Arduinom: 9 koraka (sa slikama)
Budilnik sa izlaskom sunca s Arduinom: 9 koraka (sa slikama)

Video: Budilnik sa izlaskom sunca s Arduinom: 9 koraka (sa slikama)

Video: Budilnik sa izlaskom sunca s Arduinom: 9 koraka (sa slikama)
Video: Я есть. Ты есть. Он есть_Рассказ_Слушать 2024, Studeni
Anonim
Image
Image
Budilnik sa izlaskom sunca s Arduinom
Budilnik sa izlaskom sunca s Arduinom

Zima može biti tužna. Probudiš se, mrak je i moraš ustati iz kreveta. Posljednje što želite čuti je bučan zvuk vašeg budilnika. Živim u Londonu i teško se ujutro budim. Također, nedostaje mi buđenje uz prirodno svjetlo.

U ovom ćemo vodiču izgraditi budilicu Sunrise. To je budilica kao i svaki drugi po tome što možete postaviti sat i minutu u kojoj se želite probuditi, ali s dodatnom prednošću korištenja svjetla za osvjetljavanje vaše spavaće sobe u određenom razdoblju poput izlaska sunca kako biste se prirodnije probudili.

Svjetiljke Sunrise postoje na tržištu, ali mogu biti skupe (brzo pretraživanje na Amazonu vraća proizvode u rasponu od 100 funti), krhke i prilično kliničkog izgleda. Učinit ćemo nešto puno jeftinije i puno ljepše.

Svi dijelovi bit će navedeni u sljedećem koraku. Kôd se može preuzeti s mog Github repo gold-sunrise-sata. Sve sheme i datoteke za izradu kućišta dostupne su za preuzimanje u ovom vodiču.

Idemo:)

Ako naiđete na probleme ili želite pozdraviti, pošaljite mi poruku na [email protected] ili me slijedite na Instagramu @celinechappert.

Korak 1: Skupljanje komponenti

Skupljanje komponenti
Skupljanje komponenti

Za početak ćemo koristiti sat kao ulaz i ultra-svijetlu LED diodu kao izlaz za simulaciju izlaska sunca.

Za izgradnju sklopa trebat će nam:

- sat. Koristit ćemo RTC DS3231 (£ 5)

- MOSFET za kontrolu jačine svjetla (£ 9)

- super svijetli LED (1 GBP)

- 9V baterija za napajanje LED diode (3 GBP)

- ploča za jednostavno sastavljanje (3 GBP)

- Arduino Uno (20 funti)

- gumb (opcionalno - samo u demo svrhe)

Ukupna cijena = 41 £

Ako već imate Arduino, matičnu ploču i 9V bateriju kod kuće, cijeli će vas projekt koštati manje od 15 funti.

Za izradu akrilnog kućišta trebat će vam:

- 2 lista 0,3 mm Perspex akrilnih listova, 1 list po boji za sunce i kućište.

- pristup laserskom rezaču.

Sretna sam što sam imala pristup radionici svoje škole pa su ti troškovi uglavnom pokriveni. Kupio sam dodatni list akrila jer je moj dizajn zahtijevao narančastu nijansu za sunce, koja je koštala 14 funti po listu (Perspex je skup!).

Korak 2: Sastavljanje kruga

Image
Image
Sastavljanje kruga
Sastavljanje kruga
Sastavljanje kruga
Sastavljanje kruga

Možete se pozvati na crno -bijelu skicu mog kruga (oprostite neuredno) i na dijagram s Arduinom (gotovo s Fritzingom).

Ovdje je u osnovi raščlamba onoga što je povezano s čim:

Sat:

(-) spaja se na GND

NC znači 'Not Connected' i ne povezuje se ni s čim

C/SCL se spaja na pin A5 na Arduinu

D/SDA se spaja na pin A4 na Arduinu

(+) spaja se na 5V na Arduinu

MOSFET

Gate pin ide na pin ~ 9 na Arduino Uno jer je PWM

Odvodni pin ide na negativnu stranu LED diode

Izvorni pin ide u GND na Arduinu

LED

Negativna strana spojena je na odvodni klin na MOSFET -u

Pozitivna strana je spojena na 5V na matičnoj ploči

9V baterija

(+) do (+) na ploči, isto kao (-).

Arduino Uno

Ne zaboravite spojiti 5V na (+) na ploči i GND na (-). Ne zaboravite spojiti (-) s jedne strane ploče na (-) s druge strane.

Sljedeće ćemo namjestiti sat pomoću biblioteke DS3231.

Korak 3: Instaliranje i postavljanje sata

Instaliranje i podešavanje sata
Instaliranje i podešavanje sata
Instaliranje i podešavanje sata
Instaliranje i podešavanje sata
Instaliranje i podešavanje sata
Instaliranje i podešavanje sata

Knjižnica koju koristim za pokretanje ovog sata nalazi se na stranici Rinky-Dink Electronics (snimke zaslona gore). Kliknite vezu i provjerite jeste li na stranici DS3231. Preuzmite zip datoteku, spremite je i postavite u mapu Arduino /biblioteke.

Sada za postavljanje točnog vremena na satu otvorite Arduino i idite na Primjeri/DS3231/Arduino/DS3231_Serial_Easy.

Dekomentirajte tri retka koda (na slici prikazano narančasto na snimci zaslona), provjerite vrijeme i postavite točno vrijeme u ta tri retka koda u vojnom formatu.

Pritisnite Upload.

Sada možete dekomentirati ta tri retka i ponovno pritisnuti Upload.

Otvorite serijski monitor i provjerite je li vaše vrijeme točno.

Naš sat je namješten! Imamo svoj krug, a sada počnimo kodirati. Ponovno, repo je dostupan na Githubu.

Korak 4: Kodiranje

Image
Image

Preuzmite kôd i provjerite je li knjižnica za DS3231 ispravno instalirana.

Prije svega želimo definirati naše postavke.

fadeTime je koliko će dugo svjetlost nestajati od 0 do najveće svjetline u nekoliko minuta. setHour/setMin odgovaraju vremenu do kojeg se želimo probuditi (napomena: ovo čita vojni format, pa je potrebno 24 -satno vrijeme). Također definiramo pin 9 na Arduinu kao naš IZLAZ.

U setup (), provjerite odgovara li SerialBegin broju (ovdje 96000 bauda) broju serijskog monitora.

U loop (), if naredba provjerava je li vrijeme za buđenje. Kôd radi u petlji, svaki put provjeravajući odgovaraju li vrijednosti sata i minuta koje vraća sat našim varijablama setHour/setMin. U tom slučaju naredba if vraća aktivnu () funkciju.

Funkcija active () sastoji se od dva dijela. Prvo počinjemo postupno gasiti svjetlo: funkcije kašnjenja su tu kako bi spriječile da LED diode postanu presvijetle prerano u 'ranim' fazama vremena fadeTimea. Zatim petlja for kontrolira brzinu kojom bi svjetlo trebalo postajati sve jače i jače, ovisno o vremenu fadeTimea. Konačno, ugasili smo svjetlo prosljeđivanjem vrijednosti 0 našoj LED u funkciji analogWrite ().

Gornji video prikazuje krug koji radi u jednom od prototipnih akrilnih kućišta.

Korak 5: Kartonski prototip (izborno)

Kartonski prototip (izborno)
Kartonski prototip (izborno)
Kartonski prototip (izborno)
Kartonski prototip (izborno)

Prije ovog projekta nikada nisam radio s laserskim rezačem. Izrada prototipa od kartona omogućila mi je da se upoznam sa strojem dok sam testirao koliko je objekt izgledao (veličina, izgled itd.) U stvarnom prostoru. Planovi slučajeva za preuzimanje.

Preporučeni: