- Potrebne komponente:
- Postavljanje Raspberry Pi za budilicu:
- Kružni dijagram i veze:
- Objašnjenje programa i rada:
U ovoj ćemo sekciji povezati Modul sata sata u stvarnom vremenu DS1307 s Raspberry PI kako bismo napravili budilicu. Iako Raspberry Pi ima interni sat, ali bez internetske veze taj se interni sat resetira nakon svakog ponovnog pokretanja. Dakle, da bismo dobili točno VRIJEME bez internetske veze, moramo povezati RTC modul DS1307 s Raspberry Pi. RTC modul ima bateriju gumba za sigurnosnu kopiju, tako da se VRIJEME neće resetirati. Također smo izgradili budilnik koristeći Arduino i koristeći ATmega32 AVR mikrokontroler, provjerite i njih.
U ovom digitalnom satu Raspberry Pi LCD sa 16 * 2 znaka prikazuje realno vrijeme, vrijeme alarma i status alarma (ON / OFF). Jednom kada program počne raditi u Pi, možemo odspojiti monitor i postaviti alarm uz pomoć ovog LCD-a i pet gumba.
Svaka od 17 GPIO pinova može isporučiti ili izvući najviše 15 mA struje. Stoga se nemojte igrati s GPIO pinovima i dvaput provjerite veze prije napajanja Raspberry Pi. Ovdje saznajte više o GPIO pinovima i gumbu za povezivanje s Raspberry Pi. Također pogledajte našu seriju lekcija za Raspberry Pi zajedno s nekim dobrim IoT projektima.
Potrebne komponente:
Ovdje koristimo Raspberry Pi 2 Model B s Raspbian Jessie OS. Svi osnovni hardverski i softverski zahtjevi su prethodno raspravljeni, možete ih potražiti u Uvodu Raspberry Pi i Trepćući LED Raspberry PI za početak, osim onoga što nam treba:
- Raspberry Pi s unaprijed instaliranim OS-om
- RTC modul DS1307 s baterijom
- Napajanje
- Otpor 1KΩ (6 komada)
- 5 gumba
- Kondenzator 1000uF (2 komada)
- LCD s 16 * 2 znaka
- Tranzistor 2N2222
- Zujalica
Postavljanje Raspberry Pi za budilicu:
Prije nego što nastavimo dalje, moramo malo konfigurirati Raspberry Pi i instalirati datoteku knjižnice za RTC modul, slijedite korake u nastavku:
Korak 1: Prvo idite na konfiguracijski izbornik Raspberry Pi i omogućite I2C opciju kao što je prikazano dolje:

Korak 2: Stvorite novu mapu na zaslonu radne površine Raspberry Pi i nazovite je kao „Budilica“
Korak 3: Preuzmite datoteku zaglavlja za RTC modul s donje veze:
codeload.github.com/switchdoclabs/RTC_SDL_DS1307/zip/master
Korak 4: Otpakirajte preuzetu zip datoteku u mapu (Alarm Clock) stvorenu na DESKTOP-u, kao što je rečeno u prethodnom koraku.
Korak 5: Otvorite prozor terminala u Raspberry Pi i unesite naredbu ispod, a zatim pritisnite enter:
sudo apt-get instalirati i2c-alate
Ova naredba instalira I2C alate potrebne za povezivanje RTC modula. Zatim ponovno pokrenite Raspberry pi izdavanjem naredbe ' sudo reboot' .
Korak 6: Sada moramo provjeriti I2C adresu RTC modula. Prije provjere adrese, prvo spojite RTC modul kako je prikazano na donjem krugovnom dijagramu.
Zatim unesite dolje u prozor terminala.
sudo i2cdetect -y 0 ILI sudo i2cdetect -y 1
Korak 7: Ako bilo koja od gore navedenih naredbi uspije, vidjet ćete nešto poput ovoga:

Korak 8: Vidjet ćete I2C adresu 0x68 ako je RTC modul pravilno povezan, zabilježite vrijednost.
Ovim su izvršene sve potrebne prilagodbe s konfiguracijom Raspberry Pi.
Kružni dijagram i veze:

Poveznice između Raspberry Pi i LCD prikazane su u donjoj tablici:

Poveznice između Raspberry Pi i pet gumba također su prikazane u donjoj tablici s odgovarajućom funkcijom svake tipke:

Objašnjenje programa i rada:
RTC modul ima ćelijsku tipku za sigurnosno kopiranje kako je već rečeno, tako da će vrijeme biti ažurno dok se sigurnosna kopija ne potroši i imat ćemo točno vrijeme u RTC-u.
Sada ćemo napisati Python program kako bismo dobili točno vrijeme iz RTC modula DS1307. Ovo će vrijeme biti prikazano na LCD zaslonu 16x2. Nakon toga imat ćemo značajku budilice napisanu u programu. Vrijeme alarma također će biti prikazano na drugom retku LCD-a, nakon čega slijedi status ON i OFF. Vrijeme alarma može se podesiti pomoću 5 tipki povezanih s Raspberry Pi kako je spomenuto u gornjoj tablici i vrlo je jednostavno postaviti alarm. Također možete provjeriti naš Demo Video za upravljanje ovim budilnikom Raspberry Pi. Postoje 2 gumba za povećavanje i smanjivanje vremena alarma, 2 gumba za povećavanje i smanjivanje minuta alarma i 1 gumb za UKLJUČIVANJE / ISKLJUČIVANJE alarma.
Python program kontinuirano uspoređuje vrijeme alarma s vremenom RTC i kad se vrijeme alarma podudara s vremenom RTC, PI aktivira zujalicu koja je povezana s GPIO pinom 22 Raspberry Pi preko NPN tranzistora 2N2222. Tako nakon što je isteklo vrijeme alarma, zujalo oglašava zvuk.
Kompletni program je dan u nastavku i dobro objašnjen kroz komentare. Ako sumnjate, možete pitati u odjeljku za komentare u nastavku.
