- Szükséges alkatrészek:
- A Raspberry Pi beállítása az ébresztőóra számára:
- Áramkör és kapcsolatok:
- A program és a munka magyarázata:
Ebben a munkamenetben a DS1307 interfész valós idejű óra modulra megyünk a Raspberry PI-vel, hogy ébresztőórát készítsünk. Bár a Raspberry Pi rendelkezik belső órával, de internetkapcsolat nélkül ez a belső óra minden újraindítás után visszaáll. Tehát ahhoz, hogy pontos időt kapjunk internetkapcsolat nélkül, csatlakoztatnunk kell egy DS1307 RTC modult a Raspberry Pi-hez. Az RTC modul rendelkezik gombos akkumulátorral a biztonsági mentéshez, így a TIME nem áll vissza. Az Arduino és az ATmega32 AVR mikrokontroller használatával építettünk ébresztőórát, ellenőrizze őket is.
Ebben a Raspberry Pi digitális órában egy 16 * 2 karakteres LCD kijelző mutatja a valós idejű, riasztási időt és a riasztás állapotát (BE / KI). Miután a program Pi-ben kezd futni, leválaszthatjuk a monitort, és ennek az LCD-nek és öt gomb segítségével beállíthatjuk a riasztást.
Mind a 17 GPIO érintkezõ maximum 15mA áramot képes leadni vagy felhívni. Tehát ne játsszon GPIO csapokkal, és kétszer ellenőrizze a csatlakozásokat, mielőtt bekapcsolná a Raspberry Pi-t. Tudjon meg többet a GPIO csapokról és a Raspberry Pi interfész gombjáról itt. Ellenőrizze a Raspberry Pi bemutató sorozatunkat és néhány jó IoT-projektet.
Szükséges alkatrészek:
Itt a Raspberry Pi 2 Model B-t használjuk Raspbian Jessie operációs rendszerrel. Az összes alapvető hardver- és szoftverkövetelményt korábban megbeszéltük. Megtekintheti a Raspberry Pi bevezetőjében és a Raspberry PI LED villog a kezdéshez, azon kívül, amire szükségünk van:
- Raspberry Pi előre telepített operációs rendszerrel
- RTC DS1307 modul akkumulátorral
- Tápegység
- 1KΩ ellenállás (6 db)
- 5 gomb
- 1000uF kondenzátor (2 db)
- 16 * 2 karakteres LCD
- 2N2222 tranzisztor
- Berregő
A Raspberry Pi beállítása az ébresztőóra számára:
Mielőtt tovább folytatnánk, konfigurálnunk kell egy kicsit a Raspberry Pi programot, és telepítenünk kell az RTC modul könyvtárfájlját, kövesse az alábbi lépéseket:
1. lépés: Először lépjen a Raspberry Pi konfigurációs menübe, és engedélyezze az I2C opciót az alábbiak szerint:
2. lépés: Hozzon létre egy új mappát a Raspberry Pi asztali képernyőn, és nevezze el „Ébresztőóra” néven
3. lépés: Töltse le a fejlécfájlt az RTC modulhoz az alábbi linkről:
codeload.github.com/switchdoclabs/RTC_SDL_DS1307/zip/master
4. lépés: Csomagolja ki a letöltött zip fájlt a DESKTOP-on létrehozott mappába (Ébresztőóra), az előző lépésben leírtak szerint.
5. lépés: Nyissa meg a terminálablakot a Raspberry Pi alkalmazásban, és írja be az alábbi parancsot, majd nyomja meg az Enter billentyűt:
sudo apt-get install i2c-tools
Ez a parancs telepíti az RTC modul interfészéhez szükséges I2C eszközöket. Ezután indítsa újra a Raspberry pi-t a ' sudo reboot' parancs kiadásával.
6. lépés: Most ellenőriznünk kell az RTC modul I2C címét. A cím ellenőrzése előtt először csatlakoztassa az RTC modult az alábbi áramköri ábra szerint.
Ezután írja be alul a terminál ablakába.
sudo i2cdetect -y 0 VAGY sudo i2cdetect -y 1
7. lépés: Ha a fenti parancsok bármelyike működik, valami ilyesmit fog látni:
8. lépés: Látni fogja az I2C címet 0x68, ha az RTC modul megfelelően van csatlakoztatva, rögzítse az értéket.
Ezzel az összes szükséges beállítást elvégzik a Raspberry Pi konfigurációval.
Áramkör és kapcsolatok:
A Raspberry Pi és az LCD közötti kapcsolatokat az alábbi táblázat mutatja:
A Raspberry Pi és az öt gomb közötti kapcsolatokat az alábbi táblázat is mutatja, az egyes gombok megfelelő funkcióival:
A program és a munka magyarázata:
Az RTC modul rendelkezik egy gombcellával az energiaellátás mentéséhez, amint azt már megbeszéltük, így az idő naprakész lesz, amíg a biztonsági másolat el nem fogy, és pontos időnk lesz az RTC-ben.
Most írunk egy Python programot, hogy megkapjuk a pontos időt az RTC DS1307 modultól. Ez az idő a 16x2 LCD-n lesz látható. Ezután az ébresztőórát a programba írjuk. A riasztás ideje az LCD második sorában is megjelenik, majd BE és KI állapot. A riasztás ideje a Raspberry Pi-hez csatlakoztatott 5 gombbal állítható be, amint azt a fenti táblázat tartalmazza, és nagyon könnyű beállítani a riasztást. A Raspberry Pi ébresztőóra működtetéséhez ellenőrizheti a bemutató videónkat is. Két gomb található a riasztás órájának növeléséhez és csökkentéséhez, 2 gomb a riasztás percének növeléséhez és csökkentéséhez, valamint egy riasztás be- és kikapcsolásához.
A Python program folyamatosan összehasonlítja az ébresztési időt az RTC idővel, és amint az ébresztési idő megegyezik az RTC idővel, a PI elindítja a hangjelzőt, amely a 2N2222 NPN tranzisztoron keresztül a Raspberry Pi 22. GPIO tűjéhez csatlakozik. Tehát a riasztási idő elérésekor a hangjelzés hallható.
A teljes program az alábbiakban található, és jól megmagyarázható a megjegyzésekben. Ha kétségei vannak, kérdezze meg az alábbi megjegyzések részben.