- Būtini komponentai:
- „Raspberry Pi“ nustatymas žadintuvui:
- Grandinės schema ir jungtys:
- Programos ir darbo paaiškinimas:
Šioje sesijoje eisime prie „ Real Time Clock“ modulio DS1307 su „Raspberry PI“, kad sukurtume žadintuvą. Nors „Raspberry Pi“ turi vidinį laikrodį, tačiau be interneto ryšio šis vidinis laikrodis nustatomas iš naujo po kiekvieno perkrovimo. Taigi, norėdami gauti tikslų TIME be interneto ryšio, turime suderinti RTC modulį DS1307 su „Raspberry Pi“. RTC modulyje yra mygtuko baterija atsarginei kopijai, todėl TIME nebus atstatytas. Mes taip pat sukūrėme žadintuvą naudodami „Arduino“ ir naudodami „ATmega32 AVR“ mikrovaldiklį, taip pat patikrinkite juos.
Šiame „ Raspberry Pi“ skaitmeniniame laikrodyje 16 * 2 simbolių skystųjų kristalų ekranas turi rodyti realųjį laiką, aliarmo laiką ir žadintuvo būseną (ON / OFF). Kai programa pradeda veikti Pi, mes galime atjungti monitorių ir šio LCD ir penkių mygtukų pagalba galime nustatyti žadintuvą.
Kiekvienas iš 17 GPIO kaiščių gali tiekti arba ištraukti ne didesnę kaip 15mA srovę. Taigi, prieš maitindami „Raspberry Pi“, nežaiskite su GPIO kaiščiais ir du kartus patikrinkite jungtis. Sužinokite daugiau apie GPIO kaiščius ir sąsajos mygtuką su „Raspberry Pi“ čia. Taip pat patikrinkite mūsų „Raspberry Pi Tutorial“ seriją kartu su keletu gerų DI projektų.
Būtini komponentai:
Čia mes naudojame „ Raspberry Pi 2 Model B“ su „Raspbian Jessie OS“. Visi pagrindiniai aparatinės ir programinės įrangos reikalavimai buvo aptarti anksčiau, jų galite rasti „Raspberry Pi“ įvade ir mirksi „Raspberry PI“ šviesos diodas, išskyrus tai, ko mums reikia:
- „Raspberry Pi“ su iš anksto įdiegta OS
- RTC modulis DS1307 su akumuliatoriumi
- Maitinimo šaltinis
- 1KΩ rezistorius (6 vnt.)
- 5 mygtukai
- 1000uF kondensatorius (2 vnt.)
- 16 * 2 simbolių LCD ekranas
- 2N2222 tranzistorius
- Buzeris
„Raspberry Pi“ nustatymas žadintuvui:
Prieš eidami toliau, turime šiek tiek sukonfigūruoti „Raspberry Pi“ ir įdiegti RTC modulio bibliotekos failą, atlikite toliau nurodytus veiksmus:
1 žingsnis: Pirmiausia eikite į „Raspberry Pi“ konfigūravimo meniu ir įjunkite „I2C“ parinktį, kaip parodyta žemiau:
2 žingsnis: Sukurkite naują aplanką „Raspberry Pi“ darbalaukio ekrane ir pavadinkite jį kaip „Žadintuvas“
3 žingsnis: Atsisiųskite RTC modulio antraštės failą iš žemiau pateiktos nuorodos:
codeload.github.com/switchdoclabs/RTC_SDL_DS1307/zip/master
4 žingsnis: Nuimkite atsisiųstą ZIP failą į aplanką (Žadintuvas), sukurtą DESKTOP, kaip pasakyta ankstesniame žingsnyje.
5 žingsnis: Atidarykite terminalo langą „Raspberry Pi“ ir įveskite žemiau esančią komandą, tada paspauskite enter:
sudo apt-get install i2c-tools
Ši komanda įdiegia I2C įrankius, reikalingus sąsajai su RTC moduliu. Tada paleiskite „Raspberry pi“ iš naujo paleisdami komandą „ sudo reboot“ .
6 žingsnis: Dabar turime patikrinti RTC modulio I2C adresą. Prieš patikrindami adresą, pirmiausia prijunkite RTC modulį, kaip parodyta žemiau esančioje grandinės schemoje.
Tada įveskite žemiau terminalo lange.
sudo i2cdetect -y 0 ARBA sudo i2cdetect -y 1
7 žingsnis: Jei kuri nors iš aukščiau nurodytų komandų veikia, pamatysite kažką panašaus:
8 žingsnis: pamatysite I2C adresą 0x68, jei tinkamai prijungtas RTC modulis, įrašykite vertę.
Tai padarius, visi reikalingi koregavimai atliekami naudojant „Raspberry Pi“ konfigūraciją.
Grandinės schema ir jungtys:
Ryšys tarp „Raspberry Pi“ ir LCD yra parodytas žemiau esančioje lentelėje:
Ryšys tarp „Raspberry Pi“ ir penkių mygtukų taip pat parodytas žemiau esančioje lentelėje su atitinkama kiekvieno mygtuko funkcija:
Programos ir darbo paaiškinimas:
RTC modulis turi mygtuko elementą, skirtą atsarginėms kopijoms palaikyti, kaip aptarta, todėl laikas bus atnaujinamas, kol baigsis atsarginė kopija, ir mes turėsime tikslų laiką RTC.
Dabar parašysime „ Python“ programą, kad gautume tikslų laiką iš RTC modulio DS1307. Šis laikas bus rodomas 16x2 LCD ekrane. Po to turėsime programoje įrašytą žadintuvo funkciją. Žadintuvo laikas taip pat bus rodomas antroje LCD ekrane, po kurio bus įjungta ir išjungta būsena. Signalo laiką galima reguliuoti 5 mygtukais, prijungtais prie „Raspberry Pi“, kaip minėta aukščiau pateiktoje lentelėje, ir labai lengva nustatyti „Alarm“. Taip pat galite patikrinti mūsų demonstracinį vaizdo įrašą, kad valdytumėte šį „ Raspberry Pi“ žadintuvą. Yra 2 mygtukai, skirti padidinti ir sumažinti „Alarm Hour“ laiką, 2 mygtukai, skirti „Alarm Minute“ laiko didinimui ir mažinimui, ir 1 mygtukas, skirtas aliarmui ON / OFF.
„Python“ programa nuolat lygina aliarmo laiką su RTC laiku ir, kai aliarmo laikas sutampa su RTC laiku, PI suveikia „Buzzer“, kuris yra prijungtas prie „Raspberry Pi“ GPIO kaiščio 22 per NPN tranzistorių 2N2222. Taigi, pasiekus žadintuvo laiką, garsas skamba.
Visa programa pateikiama žemiau ir yra gerai paaiškinta komentaruose. Jei turite kokių nors abejonių, galite paklausti toliau pateiktame komentarų skyriuje.