Orodha ya maudhui:

Maombi ya Kiislam ya RaspberryPi & Alarm: Hatua 15 (na Picha)
Maombi ya Kiislam ya RaspberryPi & Alarm: Hatua 15 (na Picha)

Video: Maombi ya Kiislam ya RaspberryPi & Alarm: Hatua 15 (na Picha)

Video: Maombi ya Kiislam ya RaspberryPi & Alarm: Hatua 15 (na Picha)
Video: СООБРАЗИМ НА ТРОИХ! ► 1 Кооперативный стрим Warhammer: Vermintide 2 2024, Juni
Anonim
Maombi ya Kiislam ya RaspberryPi & Alarm
Maombi ya Kiislam ya RaspberryPi & Alarm
Maombi ya Kiislam ya RaspberryPi & Alarm
Maombi ya Kiislam ya RaspberryPi & Alarm

Waislamu ulimwenguni kote wana sala tano kila siku, na kila mmoja anasali lazima awe katika wakati fulani wa siku. kwa sababu ya njia ya duara sayari yetu inazunguka jua, ambayo inafanya jua kuchomoza na nyakati za kutofautina kwa mwaka mzima, hiyo pia hufanya wakati wa maombi kutokuwa sawa, ndiyo sababu tunahitaji saa ya Kiislam kutukumbusha Waislamu juu ya nyakati zetu za kuomba kila mmoja. siku.

Kila Muislamu ana njia ya kupata hali ya hewa ya nyakati za kuomba kila siku kupitia wavuti za Kiislam za mtandao, kalenda za Kiisilamu za mitaa au hata kwa Runinga, na wengi wetu tuna vifaa vya kutazama vya Kiislamu ambavyo vina sifa za kutupatia nyakati za maombi, na pia kengele za maombi.. Lakini vipi ikiwa tutatengeneza kifaa chetu cha Maombi ya Kutazama na Kengele!

Kabla ya kuanza kufanya kazi kwenye mradi, kuna maoni kadhaa ambayo unaweza kuwa na faida kwako wakati wa kusoma hii inayoweza kufundishwa. Ninaishi Saudi Arabia kwa hivyo hatua na maadili yangu yatatofautiana na yako, na nitawaonyesha wazi wakati wa kazi. Kuna hatua na picha ambazo zinaweza kujumuisha maneno ya Kiarabu tangu nilipofanya kuingiliana kwa Kiarabu, lakini pia nitaonyesha jinsi ya kuifanya kwa Kiingereza kwa hivyo usiruhusu maneno ya Kiarabu kwenye picha yakufadhaishe hata kidogo, mradi huu unaweza kuwa imefanywa kwa Lugha yoyote (ambayo ni ya kushangaza! D) Pia tafadhali samahani typos zangu kwani Kiingereza sio lugha yangu ya kwanza.

Endelea kwa mradi wetu! Mradi huu utagawanywa katika hatua kuu X, ambazo mwisho wa hatua ya Xth tutakuwa na mradi wetu mzuri na tayari! Hatua zitakuwa kama ifuatavyo:

1-Kusanidi na kuandaa RaspberryPi

2-Kufunga Moduli ya RTC

3-Kufanya mpango wa Kengele ya Azan

4-Utekelezaji wa saa za saa

5-Kutengeneza Kiolesura cha Mtumiaji na.

Kama kila mradi, tunahitaji kuandaa sehemu tunazohitaji kwanza. sehemu ambazo tunahitaji kwa mradi huu ni:

1-RaspberryPi Kifaa cha kompyuta Amazon US || KSA ya Amazon

Unaweza kutumia toleo lolote la Rpi, hakikisha tu ina Wifi. Nilitumia Rpi3B +

2-RTC Moduli ya saa halisi ya Amazon US || KSA ya Amazon

Unaweza kutumia moduli yoyote ya moduli ya RTC, hakikisha ina I2C

3-LCD Monitor

LCD yoyote itafanya

4-Panya na kibodi

na hiyo ni…. IT !! Hiyo ndio yote unahitaji kutengeneza saa yako ya Azan na kengele

Hatua ya 1: Sura ya 1: Kuweka na kusanidi RaspberryPI

Sura ya 1: Kuweka na Kusanidi RaspberryPI
Sura ya 1: Kuweka na Kusanidi RaspberryPI

Kwanza mambo ya kwanza! Tunahitaji kuandaa pi ya Raspberry ili kufanya kazi nayo.

Raspberry pi sio kitu isipokuwa kompyuta, ina RAM na ROM, ina CPU, GPU, I / O ……. Kompyuta! tu kama ile tunayocheza michezo na kuvinjari wavuti nayo, jambo kuu tu kwamba ni ndogo sana! ambayo inafanya rasipberry kuwa chaguo nzuri sana kwa kutengeneza na kutekeleza miradi. kwa sababu pi ya raspberry ni ndogo, ina viashiria vichache sana kwamba haiwezi kufanya OS kubwa inayodai kama windows au macOS, badala yake, tutatumia Linux kama mfumo wa uendeshaji ili kutumia kifaa. kuna maelfu ikiwa sio makumi ya maelfu ya distros za Linux ambazo tunaweza kutumia, lakini distro moja kamili imeboreshwa kabisa kwa raspberrypi ambayo tutatumia, iitwayo Raspbian.

Hatua ya 2: 1-1: Pakua faili za Neccessary

1-1: Pakua faili za Neccessary
1-1: Pakua faili za Neccessary
1-1: Pakua faili za Neccessary
1-1: Pakua faili za Neccessary
1-1: Pakua faili za Neccessary
1-1: Pakua faili za Neccessary

-Nenda kwa ukurasa rasmi wa Upakuaji wa Rasbian kwenye https://www.raspberrypi.org/software/operating-sy ……. na pakua Raspberry Pi OS na faili ya Desktop

-Wakati inapakua, nenda kwa https://win32diskimager.org/ na upakue na usakinishe win32DiskImager, unaweza kutumia programu yoyote inayowaka picha ambayo unapenda

mara tu upakuaji utakapofanyika, utakuwa na faili ya.img iliyo na RaspberryPi OS. ijayo, chomeka kadi yako ya kumbukumbu ya SD kwenye kompyuta (kawaida na kisomaji cha kadi ya USB) na uzindue programu ya win32diskimager. hatua za kuchoma picha kwenye kumbukumbu ya SD ni rahisi sana, unahitaji tu 1- Chagua barua yako ya kumbukumbu 2-chagua faili zako za OS ambazo umepakua na 3-Bonyeza andika! Hakikisha umechagua barua sahihi ya kifaa kutoka kwenye orodha na kumbukumbu yako haina kitu, kwani kwa kubonyeza andika utapandishwa hadhi na onyo ambalo linakuambia kuwa chochote kwenye kifaa kitafutwa! Bonyeza ndiyo kuthibitisha uandishi na subiri imalize. hii inaweza kuchukua hadi dakika 20.

Mara tu itakapomalizika, utakuwa na OS kamili ya WaRabibi kwenye kumbukumbu, unaweza kuendelea na kuiweka kwenye Rapberry Pi, unganisha Raspberry Pi kwa mfuatiliaji kupitia HDMI, unganisha panya na kibodi kupitia USB na mwishowe, unganisha nguvu.

Hatua ya 3: 1-2: Kusanidi Mfumo wa Raspbian

Baada ya Kuunganisha nyaya na nguvu, utaona kuwa OS imewasha, itawasha upya kiatomati na kisha itaonyesha Muunganisho wa Mtumiaji wa Raspbian (ambayo inaonekana sawa na windows). jambo la kwanza utaona ni dirisha la kukaribisha, ambalo litakuchukua kupitia hatua za kusanidi RaspberryPi yako kwa mara ya kwanza. madirisha na hatua zitakuwa kama ifuatavyo:

1-Bonyeza ijayo kwenye dirisha la kwanza la "Karibu"

2-Next dirisha itakuwa kusanidi eneo lako. chagua Nchi yako, lugha na eneo la wakati. baada ya hapo, inashauriwa sana kuangalia "Tumia lugha ya Kiingereza" kwani hii itakuwa lugha ya kiolesura cha mfumo wa Uendeshaji. LAZIMA UANGALIE "US ENGLISH KEYBOARD LAYOUT BOX" TUNAHITAJI KIINGEREZA Kinanda kufanya kazi!

3-Ifuatayo, utaulizwa kuweka nenosiri kwa rasipiberi yako, hii ni muhimu kwa usalama lakini tutaiacha bila kubadilika kwa mradi huu. kumbuka kuwa Jina la mtumiaji la msingi na nywila ni:

jina la mtumiaji: pi

nywila: rasipberry

Dirisha 4-Ijayo litaunganisha raspberryPi na mtandao wako wa WiFi. chagua jina lako la wifi na weka nywila yako ya wifi

5-ijayo, utaulizwa kusasisha maktaba ya rasipberry pi na faili za mfumo. hatua hii itachukua muda mwingi (labda kwa masaa) lakini ni hatua muhimu sana kwa kila wakati pi rasipberry mpya inapowekwa.

Mara moja sasisho limekamilika, utaulizwa kuanzisha tena mfumo. fanya hivyo sasa.

Kazi nzuri! Sasa tuna mfumo uliosasishwa, bado tunahitaji kufanya vitu vingine kusanidi mfumo ufanye kazi, lakini sasa, tutaanza kutumia LineCommand Line.

Hatua ya 4: 1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi

1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi
1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi
1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi
1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi
1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi
1-3: Kutumia Mstari wa Amri Kuweka Mipangilio ya Rpi

Mara tu ukimaliza kuwasha upya kutoka kwa sasisho la mfumo, mfumo utaonyesha desktop ya mtumiaji mara tu itakapokuwa imekwisha kuanza. sasa ukiangalia kushoto ya juu ya skrini, utapata vitufe, Kitufe kilicho na Rangi ya raspberryPi ambayo ni kitufe cha menyu ya Rpi, umbo la ulimwengu ambalo ni kivinjari cha wavuti, kitufe cha folda ambacho ni….. folda na mwishowe, kifungo kilicho na dirisha nyeusi la skrini, ambayo ni kitufe muhimu zaidi katika mfumo wowote wa linux, Mstari wa Amri. endelea na bonyeza kitufe hicho, utaona dirisha nyeusi ikiibuka.

Mstari wa amri ni jinsi kila mtu anaingiliana na kutumia mfumo wa linux, kama vile windows ina laini yake ya amri tu kwa wajane hatuhitaji kuitumia mara nyingi. katika linux, ni jambo la msingi kila mtumiaji wa linux anapaswa kujifunza na kujua. laini ya amri inaweza kutumiwa na…. MAKOMO! unachokiona kwenye dirisha nyeusi ni amri ya haraka inayosubiri amri kuandikwa na mtumiaji na kutekelezwa. katika mwongozo huu tutatoa amri yote ambayo unahitaji kutekeleza mradi huu, kwa hivyo usijali.

Amri ya kwanza kabisa ya Linux tutakayotumia ni amri nyingine ya usanidi, kumbuka kuwa amri zote kutoka sasa zitawekwa ndani ya kisanduku cha nambari, ili uweze kutofautisha na hatua za kawaida. Leta kibodi yako na andika zifuatazo na hit hit:

Sudo raspi-config

Ukifanya hivyo kwa usahihi, utaona kuwa skrini imegeuza skrini kuwa bluu, na sanduku dogo kijivu katikati (tazama picha). tutatumia hiyo kufanya usanidi wetu wa mwisho kabla ya kuanza kuweka alama.

sasa, utahitaji kutumia funguo zako za mshale wa kibodi kupitia menyu hii.

1-Nenda kwenye chaguzi za kiolesura >> I2C >> NDIYO >> hit enter. hii ni kuwezesha itifaki ya mawasiliano ya I2c ili tuweze kutumia RTC

2-Nenda kwa Chaguzi za hali ya juu >> Panua mfumo wa faili.

na hiyo ndiyo usanidi wote ambao unahitaji kutoka kwenye dirisha hili. kwenye ukurasa kuu, nenda chini na bonyeza kitufe cha "kumaliza" na "NDIYO" kuwasha tena mfumo.

Mara tu mfumo ukimaliza kuwasha upya, sote tumemaliza kusanidi! kifaa kiko tayari kwa hatua kubwa! Hatua inayofuata itakuwa kusanikisha moduli ya RTC na kuitumia na mfumo.

Hatua ya 5: Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC

Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC
Sura ya 2: Kuweka, Kusanidi na Kutumia Moduli ya RTC

Moduli ya RTC (au Saa ya Saa Saa) ni kifaa kidogo ambacho kina betri kidogo juu yake, inafanya kile jina linamaanisha, Kufunga! kwa hivyo unapoikata kwa umeme saa inaendelea kufanya kazi na haitoi. kwanini tunahitaji hii? vizuri, pi ya raspberry kweli haina njia ya kuhifadhi data ya saa mara tu itakapowashwa, inategemea kuungana na mtandao wakati wa kuwasha ili kusasisha tarehe na wakati, lakini shida ni kwamba hatuna ufikiaji wa mtandao kila wakati. ni kwa nini tunahitaji moduli ya RTC. RTC itafanya kama saa ya pi ya rasipiberi kwa hivyo mara tu Rpi itakapochukuliwa itachukua Tarehe na Wakati kutoka kwa RTC, ambayo itafanya wakati wa RaspberryPi usasishwe kila wakati.

kuna mifano anuwai na inatafuta RTC, kuna DS1307 na DS3231. unaweza kutumia moduli yoyote ya RTC ambayo unapata muda mrefu ikiwa ina mawasiliano ya itifaki ya I2C (unaweza kuonyesha kuwa hii unaweza kupata pini za SDA na SCL kwenye pini za moduli.

kama kitu chochote katika mwongozo huu, nilitumia miongozo mingine kufanikisha lengo langu katika mradi, hii inayoweza kufundishwa itakuongoza na kukuambia nini cha kufanya kufanya mradi huu, lakini ikiwa unahitaji kurekebisha au unahitaji kina zaidi katika yoyote ya hatua, nitaunganisha mwongozo wenye matunda zaidi mwishoni mwa kila hatua.

Mara tu unapokuwa na moduli yako ya RTC tayari (solder pini za kichwa na uweke betri), unaweza kuiunganisha kwenye pini za RapberryPi kama ifuatavyo:

PIN ya RTC ---------------- Rpi Pin

GND ===========> PIN 6 (GND)

Vcc ============> PIN 1 (3.3V)

SDA ===========> PIN 3 (SDA)

SCL ===========> PIN 5 (SCL)

au kulingana na moduli gani ya RTC unayo, unaweza kuipandisha moja kwa moja kwenye RaspberryPi (Hakikisha pini ni sahihi !!! kwani unaweza kuharibu Rpi / RTC ikiwa sivyo)

Mara tu ukiunganisha RTC, wacha tuisanidi Raspberry.

Hatua ya 6: 2-1: Usanidi wa Moduli

2-1: Usanidi wa Moduli
2-1: Usanidi wa Moduli
2-1: Usanidi wa Moduli
2-1: Usanidi wa Moduli

Kabla ya kuanza, nenda kwenye laini ya amri na andika:

tarehe

Hii itarudisha tarehe na wakati wa sasa kwenye Raspberry, kumbuka amri hiyo muhimu sana, na kumbuka tarehe na wakati wa sasa ili tuweze kuangalia wakati moduli inafanya kazi au la.

sasa, wacha tuanze usanidi, andika yafuatayo kusasisha maktaba za Rpi, mstari mmoja kwa wakati:

Sudo apt-pata sasisho

Sudo apt-get -y kuboresha

mara baada ya kumaliza, tunahitaji kurekebisha faili za mfumo kuwezesha moduli ya i2c na kuongeza RTC, kurekebisha mfumo wa faili tutatumia programu iitwayo Nano. nano ni programu nyepesi iliyojengwa ambayo kimsingi ni mhariri wa maandishi, kama ile ya wajane. kwa hivyo amri yoyote ambayo inaanza na nano ikifuatiwa na jina la faili, itafungua faili hiyo katika hariri ya maandishi ya nano. umeona kuwa pia tulitumia kitu kinachoitwa Sudo, kwa kifupi, Sudo hufanya kama uhakikisho kwa mfumo wa linux ambao unauambia mfumo kwamba mtumiaji ambaye ametoa amri hiyo ni mmiliki wa Kifaa, sio mtu mwingine, na anatoa haki kama uhariri / kufuta kwa mtumiaji. kwa mfano, ikiwa tutafungua faili ya nano bila sudo, tutaweza kuona faili hiyo, lakini hatuwezi kuihariri au kuifuta.

sasa, tunahitaji kurekebisha faili ya moduli, tunaweza kufanya hivyo kwa kuandika:

Sudo nano / nk / moduli

mara tu utakapofanya hivyo, utapata yaliyomo kwenye faili hiyo (angalia picha). tumia vitufe vya mshale kuweka kishale mwisho wa maandishi na ongeza yafuatayo:

snd-bcm2835

i2c-bcm2835 i2c-dev rtc-ds1307

bonyeza CTRL + S kuokoa, na CTRL + X ili kutoka

Hatua ya 7: 2-2: I2C Interface

2-2: Kiolesura cha I2C
2-2: Kiolesura cha I2C

Sasa tumeunganisha RTC na kuwezesha i2c, wacha tuunganishe kila kitu pamoja.

andika yafuatayo kwa haraka ya amri:

i2cdectect -y 1

utapewa safu tupu, lakini utagundua kuwa kuna nambari mahali pengine, hiyo nambari ni anwani yako ya moduli ya RTC. kwa upande wangu ni 68. zingatia nambari hiyo. ikiwa hauoni nambari hizo mbili, hiyo inamaanisha kuwa labda umeunganisha RTC vibaya.

sasa, tunahitaji kurekebisha faili ya rc.local ili tuweze kuwezesha moduli ya RTC kwenye buti na iiruhusu ihifadhi tarehe na wakati kwenye mfumo. kwanza, fungua faili ya rc.local:

Sudo nano /etc/rc.local

Kabla ya mstari wa exit0, ongeza yafuatayo:

echo ds1307 0x68> / sys / darasa / i2c-adapta / i2c-1 / kifaa kipya

hwclock -s

ambapo 0x68 ni anwani ya i2c ya kifaa chako. ukimaliza piga CTRL + S CTRL + X, kisha uwashe mfumo wako kwa:

Sudo reboot

Hatua ya 8: 2-3: Kupima RTC

2-3: Kupima RTC
2-3: Kupima RTC

Mara tu mfumo utakapofungwa upya, tunaweza kuangalia hali ya hewa RTC inafanya kazi au la. kwanza, kimbia:

sudo hwclock -r

utapewa tarehe na wakati kwenye moduli ya RTC. ikiwa umepewa kitu kingine, hakikisha umefanya hatua kwa usahihi.

sasa, kurekebisha wakati na tarehe kwenye RTC, tunahitaji kurekebisha Tarehe na Wakati kwenye mfumo kwanza, BASI tengeneza marekebisho kwa RTC. kufanya hivyo, kukimbia:

tarehe ya sudo "29 AUG 1997 13:00:00"

na ngono, badilisha tarehe na saa kulingana na wakati na tarehe yako ya ndani, kabla ya kuingia. mara tu utakapopata muda upande wa kulia wa Rpi, endesha yafuatayo ili kuokoa tarehe na wakati kwenye RTC:

Sudo hwclock -w

aaaaand ndio hivyo! unaweza kuangalia ikiwa inafanya kazi na hwclock -r na uone ikiwa tarehe kwenye RTC ni sahihi au la, kisha ondoa rpi kutoka kwa mtandao na kisha uizime kwa muda na kisha uiwasha tena na uone ikiwa ina sahihi muda na tarehe. umemaliza!

Mwongozo kamili wa jinsi ya kuanzisha moduli ya RTC inaweza kupatikana hapa

www.raspberrypi-spy.co.uk/2015/05/adding-a-ds3231-real-time-clock-to-the-raspberry-pi/

Hatua ya 9: Sura ya 3: Kufanya Programu ya Alan Alarm

Sura ya 3: Kufanya Programu ya Alarm Alan
Sura ya 3: Kufanya Programu ya Alarm Alan

kutengeneza saa ni jambo moja, hakika, tunaweza kuangalia saa na nyakati za maombi na kuona wakati unafika, lakini isingekuwa bora hata ikiwa tungeongeza kengele ya sauti kutuarifu kuhusu nyakati za maombi? HATA BORA, tunafanya kengele hiyo kama sauti ya AZAN! wacha tuone ni jinsi gani tunaweza kufanikisha hii.

kwa programu yetu, tutatumia chatu kama lugha yetu ya programu inayopendelewa kwani chatu huenda kamilifu na RaspberryPi. kutengeneza faili ya nambari katika chatu, tunafanya sawa na kufungua faili ya maandishi, lakini sasa tunaihifadhi kama.py. kuendesha programu, tunahitaji mazingira ya chatu iliyowekwa kwenye ujambazi, kwa bahati nzuri, Raspbian huja na chatu na chatu3 iliyowekwa tayari! kwa hivyo tunachohitaji kufanya ni programu. katika mwongozo huu, hatutazungumza juu ya lugha na kufundisha jinsi inavyofanya kazi na kazi, lakini nitakupa nambari zinazohitajika ili uweze kufanya mradi huo.

kuanza, tunahitaji faili ya sauti ya sauti yetu ya azan inayopendelewa (katika. WAV) tunahitaji faili mbili, moja ya al-fajr azan na nyingine ya azan ya kawaida. mara tu unapopata hiyo iweke kwenye gari la fimbo na unakili kwenye desktop ya raspberrypi.

sasa tuna faili, nilikuwa nikitafuta njia ya kucheza sauti za sauti kwenye raspberryPi na nilishangaa, hakukuwa na njia nyingi ambazo ningeweza kufanya hivyo, lakini nilipata jibu hili juu ya mtiririko mwingi ambao ulinipa kile nilichohitaji

stackoverflow.com/questions/20021457/playi…

nilijaribu njia hiyo na ilifanya kazi! kwa hivyo hebu tuone ni jinsi gani tunaweza kutekeleza njia hii katika mradi wetu…

Hatua ya 10: 3-1: Wacha Tucheze Sauti

3-1: Tucheze Sauti!
3-1: Tucheze Sauti!

kwanza, nenda kwa desktop na:

cd Desktop

kisha fanya faili mpya ya chatu ya chatu na:

Sudo nano AzanPlay.py

hii itafanya faili mpya inayoitwa AzanPlay na ugani kwenye faili ya chatu.py, tutakuwa na skrini nyeusi tupu kuturuhusu kuandika nambari yetu. andika tu mistari hii (kuwa mwangalifu usibadilishe ujazo wowote au nafasi, kwani hii ni muhimu sana katika chatu):

kutoka kwa mchanganyiko wa kuagiza pygame

mixer.init () mixer.music.load ('/ home / pi / Desktop / Adhan-Makkah.wav') mixer.music.play () wakati mixer.music.get_busy () == Kweli: endelea

Wapi / Desktop / ni wapi unaweka faili zako za sauti, na 'Adhan-Makkah.wav' ni faili yangu ya Sauti, ambayo ni rekodi ya sauti ya Azan huko makkah.

sasa kujaribu nambari yetu, tunaiendesha na chatu kwa kuandika:

chatu AzanPlay.py

na utasikia sauti ikicheza kutoka kwa LCD yako ya HDMI au bandari yako ya AUX iliyo kwenye Raspberrypi. ikiwa hausikii kutoka kwa wasemaji wa LCD, ingiza kichwa ndani ya AUX na uangalie.

Hatua ya 11: 3-2: Pata Nyakati za Maombi

3-2: Pata Nyakati za Maombi
3-2: Pata Nyakati za Maombi

Kama tunavyojua, nyakati za maombi zinatofautiana kutoka sehemu moja duniani hadi nyingine, na hata kwa eneo maalum, inatofautiana kwa miaka, hiyo inamaanisha tunahitaji kutafuta njia ya kuweka nyakati zetu za maombi katika mfumo zikisasishwa kila wakati, na kwa hilo tunahitaji kazi maalum na ngumu sana na mahesabu ili kuipata sawa. Kwa bahati nzuri, ndugu yetu Hamid Zarrabi-Zadeh ametengeneza kazi zote tunazohitaji kuwa kazi moja ambayo tunaweza kutumia kwa urahisi kupata wakati kulingana na eneo letu na wakati wa sasa, AMAZING! unaweza kupata maktaba na faili za chanzo kwenye

praytimes.org/

Kwa hivyo, tutatumia faili hizi nzuri kupata nyakati zetu za maombi na kutekeleza katika mfumo. kwanza, pakua nambari kutoka kwa wavuti na uweke ndani ya / adhan / folda, (Tunahitaji nambari zote za JS na Python).

sasa, acha kichwa kwenye folda hiyo na ujaribu maktaba, na inaweza kufanya nini:

cd adhan

hapo, tunahitaji kutengeneza faili mpya ya jaribio katika chatu ili tuweze kujaribu kazi:

mtihani wa nano ya Ad.py

ndani, andika nambari hii:

kuagiza nyakati za maombi

kutoka kwa tarehe ya kuagiza tarehe tmm = nyakati za kuomba. Maombi ya Maombi (). GetTimes (tarehe.today (), [LONGTITUDE, LATITUDE], GMT) chapa (tmm)

Kabla ya kuhifadhi faili, unahitaji kubadilisha LATITUDE na eneo lako Latitudo, sawa na LONGTITUDE, na ubadilishe GMT iwe saa yako ya saa. kwa upande wangu, itakuwa:

tmm = nyakati za kuomba. Nyakati za Maombi (). Wakati wa kupata (tarehe. leo (), [21.3236, 39.1022], 3)

chapisha (tmm)

Mwishowe, CTRL-S na CTRL-X na kisha endesha nambari:

chatu mtihaniAd.py

mwishowe, utarudishwa nyakati zako za maombi ya leo, kwa eneo lako.

{'isha': '18: 58 ',' asr ': '15: 22', 'machweo': '17: 43 ',' dhuhr ': '12: 17', 'maghrib': '17: 43 ', 'imsak': '05: 23 ',' usiku wa manane ': '00: 17', 'kuchomoza kwa jua': '06: 52 ',' fajr ': '05: 33'}

Kubwa! kwa kuwa sasa tumepata wakati wetu wa maombi na sasa tunajua kucheza sauti, wacha tuunganishe nambari hizi mbili kwa nambari moja kuu.

Hatua ya 12: 3-3: Kufanya Nambari ya Mwisho ya Kengele ya Azan

kwa kumaliza nambari mbili zilizopita, tulijifunza jinsi ya kupata nyakati sahihi za maombi kulingana na eneo letu na jinsi ya kucheza sauti ya Azan. sasa, tutaunganisha nambari hizi mbili kuwa nambari moja ambayo tutatumia kama mradi wetu wa mwisho, na nambari hii itakuwa ikifanya kazi nyuma, kwani wakati wa Azan ukifika, itapiga sauti ya Azan.

Nimeandika nambari yote, unaweza kuiiga na kuibandika, na ufanye mabadiliko yako mwenyewe kadiri unavyoona inafaa. Nambari ni:

muda wa kuagiza

kutoka kwa pygame kuagiza mchanganyiko wa kuingiza kamba wakati wa kuagiza kutoka kwa wakati wa kuingiza wakati wakati (1): tmm = nyakati za kuomba. TimesTimes (). GetTimes (date.today (), [21.3236, 39.1022], 3) FAJR = tmm ['fajr'] DHUHR = tmm ['dhuhr'] ASR = tmm ['asr'] MAGHRIB = tmm ['maghrib'] ISHA = tmm ['isha'] tempT = time.strftime (str ('% H')) wakati. wav ') mixer.music.play () wakati mixer.music.get_busy () == Kweli: endelea ikiwa currTime == DHUHR: mixer.init () mixer.music.load (' / home / pi / Desktop / Adhan- Makkah.wav ') mixer.music.play () wakati mixer.music.get_busy () == Kweli: endelea ikiwa currTime == ASR: mixer.init () mixer.music.load (' / home / pi / Desktop / Adhan-Makkah.wav ') mixer.music.play () wakati mixer.music.get_busy () == Kweli: endelea ikiwa currTime == MAGHRIB: mixer.init () mixer.music.load (' / home / pi / Desktop / Adhan-Makkah.wav ') mixer.music.play () wakati mixer.music.get_busy () == Kweli: endelea ikiwa currTime == ISHA:

Ukiangalia nambari hiyo na kuilinganisha na kile tulichotengeneza hapo awali, utaona kuwa hatukufanya kitu kipya sana, mwanzoni, tulijumuisha maktaba zetu zinazohitajika na kisha tukafungua kitanzi kisicho na mwisho. kitanzi, tunahesabu kila wakati wakati wa maombi na eneo letu na eneo la saa, na kuhifadhi matokeo yote kwa tmm inayobadilika. basi, tunahifadhi kila wakati wa maombi kutoka tmm hadi kutofautisha huru. hiyo itatuwezesha kulinganisha nyakati. ijayo, tunachukua wakati wa mfumo na kuuhifadhi kwa ubadilishaji huru. mwishowe, tunaendelea kulinganisha wakati wa mfumo na nyakati za maombi, ikiwa wakati wa mfumo unalingana na wakati wowote wa maombi, itacheza sauti ya Azan.

Hatua ya 13: Sura ya 4: Utekelezaji wa Nyuso za Kuangalia

Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa
Sura ya 4: Utekelezaji wa Nyuso za Saa

Ili kuufanya mradi uonekane bora, nilikuwa na wazo la kuongeza nyuso za saa kwenye LCD, kwa hivyo inaonekana nzuri kumtazama mtumiaji (vizuri, bora kuliko laini ya amri angalau) kwa hivyo, nimeajiri mbuni kubuni sura nyingi saa, inapaswa kuwa tupu bila data, kwani data inapaswa kuongezwa kupitia HTML, na kutengeneza muundo wa saa kama msingi, na data zingine kama nyakati za maombi zinaweza kuongezwa kama vitu vya HTML juu ya msingi.

Kwa bahati mbaya, kama wakati wa kuandika maagizo haya yaliyowezekana, maarifa na uzoefu wangu katika HTML ni mdogo sana kwa hivyo sitazungumza habari nyingi kwa sababu najua ukweli kwamba nitafanya mambo kwa njia isiyofaa, na sijui wanataka kuwachanganya watu. lakini ikiwa una uzoefu hata kidogo katika JS na HTML unapaswa kujua jinsi ya kuendelea kutoka wakati huu. hadi sasa nimetengeneza uso mmoja (ile ya samawati). mpango ni kutengeneza sura 14 za saa! Nyuso 7 kwa kila siku ya juma, na nyingine 7 kama mada nyingine. kama mandhari ya kwanza inapaswa kuwa na Azkar rolling, na mada nyingine inapaswa kuwa na GIFS za Kiislamu badala ya Azkar. bila kujali, nitajumuisha miundo yote katika hii inayoweza kufundishwa ili uweze kuipakua.

Hatua ya 14: Sura ya 5: Utekelezaji wa Kiolesura cha Mtumiaji

Sura ya 5: Utekelezaji wa Kiolesura cha Mtumiaji
Sura ya 5: Utekelezaji wa Kiolesura cha Mtumiaji

Katika sura ya mwisho ya safari yetu, tutafanya marekebisho ya hiari ili kuufanya mradi huo uwe wa kirafiki, ikiwa tutataka kutekeleza mradi huo msikitini au sehemu yoyote ya umma. kama tulivyosema hapo awali, kila jiji lina wakati wake wa sala, na kuufanya mradi huu ufikie ukweli wa watu, tutafanya kiolesura cha mtumiaji ili tuweze kuchagua jiji na mandhari yetu tunapotumia mradi huo.

Ili kufanya hivyo, tutatumia maktaba ya chatu ya GUI inayoitwa "TKinter".

Hii ndio kanuni ambayo nimetekeleza kunipa chaguo la kuchagua kati ya miji mitano nchini Saudi Arabia, pamoja na Makkah:

kuagiza tkinter kama tk

kutoka tkinter kuagiza * kutoka tkinter kuagiza ttk kuagiza kodec kuagiza os class karl (Frame): def _init _ (self): tk. Frame._ init _ (self) self.pack () self.master.title ("Azan Time") self. kifungo1 = kitufe (kibinafsi, maandishi = "Jeddah", urefu = 5, upana = 80, amri = self.open_jeddah1) self.button2 = Button (self, text = "Makkah", height = 5, width = 80, command = self.open_makkah1) self.button3 = Button (self, text = "Riyadh", urefu = 5, upana = 80, command = self.open_riyadh1) self.button4 = Button (self, text = "Madina", height = 5, upana = 80, amri = self.open_madina1) self.button5 = Button (self, text = "Qasim", height = 5, width = 80, command = self.open_qasaim1) self.button1.grid (safu = 0, safu = 1, safu = 2, nata = W + E + N + S) mwenyewe.button2.grid (safu = 1, safu = 1, safu = 2, nata = W + E + N + S) mwenyewe.button3.grid (safu = 2, safu = 1, safu ya nguzo = 2, nata = W + E + N + S) self.button4.grid (safu = 3, safu = 1, safu = 2, nata = W + E + N + S) gridi ya kibinafsi5.grid (safu = 4, safu = 1, safu ya safu = 2, nata = W + E + N + S) def open_jeddah1 (self): order = "sudo chromium-browser /home/pi/Desktop/Cities/jeddah/Sunday1.html - skrini ya kuanza -sio-sandbox" os Mfumo. (utaratibu) fungua open_makkah1 (ubinafsi): (utaratibu) def open_riyadh1 (self): order = "sudo chromium-browser /home/pi/Desktop/Cities/riyadh/Sunday1.html - start-screen -no-sandbox -test-type" os.system (order) def open_madina1 (self): order = "sudo chromium-browser /home/pi/Desktop/Cities/madina/Sunday1.html - skrini ya kuanza - skrini isiyo na mchanga-aina ya jaribio" os.system (order) def open_qasaim1 (self): order = "sudo chromium-browser /home/pi/Desktop/Cities/qasaim/Sunday1.html - skrini ya kuanza -siku-sandbox -jaribio-aina" os.system (order) def main (karl (). mainloop () ikiwa _name_ == '_main_': kuu ()

Nambari inaweza kuonekana kubwa, lakini kuhariri ni rahisi sana. kimsingi tulitengeneza dirisha jipya, tukaweka vifungo vitano vya majina na tukafafanua vituko vitano vitakavyoitwa kwenye kila kitufe cha kitufe. mara tu unapobonyeza kitufe, programu hiyo itafungua faili inayofanana ya HTML kwenye folda ya Miji, ambayo kila mji HTML ina jiji linaliratibu linapopata wakati kutoka kwa nyakati za maombi (). mara tu unapobonyeza kitufe, nambari ya chatu itashughulikia nambari ya linux ambayo itafungua faili ya HTML kwa kutumia kivinjari cha chromium, na utakuwa na uso wa saa tayari kuonyesha, na chaguo kamili la skrini limewashwa.

Hatua ya 15: (Hiari): Kuongeza Kitufe cha Spika

(Hiari): Kuongeza Kitufe cha Spika
(Hiari): Kuongeza Kitufe cha Spika
(Hiari): Kuongeza Kitufe cha Spika
(Hiari): Kuongeza Kitufe cha Spika

Kama tulivyoona, wakati wa maombi ukifika kucheza kwa sauti ya Azan, na sauti hutoka kwa sauti chaguomsingi (HDMI au pato la AV) na kwa kuwa tunaiweka kwenye pato la HDMI, sauti itatoka kwa LCD. lakini, vipi ikiwa sauti yetu ya LCD haitoshi? kwa mfano, vipi ikiwa tunataka kutekeleza hii ndani ya msikiti halisi? na spika za nje pana? basi tunaweza kuongeza hatua moja rahisi zaidi kufanikisha hilo. kwa mfumo wa sauti wa spika tayari, tunahitaji tu KUiwasha na KUZIMA, na kuchukua kipaza sauti tayari na kuiweka karibu na spika za LCD.

Kufanya hivyo ni rahisi. tutatumia maikrofoni ya msikiti iliyopo hapo awali ambayo imeunganishwa na spika kubwa, tutahitaji raspberryPi kudhibiti nguvu inayobadilisha mfumo mzima wa sauti NA KUZIMA. kufanya hivyo, tutahitaji kutumia SSR: MAMBO MAMBO RELAY. aina hizi za kupokezana zinaweza kutenda kama swichi, kama relay ya wastani ya bluu, tofauti ni SSRs zinaweza kuhimili idadi kubwa ya AC Amperage kupitia hiyo, ambayo haitumiki kwa zile za hudhurungi (kawaida max 10A), na SSR zinahitaji waya mbili tu badala ya 3: DC + na DC- na ndio hivyo! upande wa pili wa SSR tunaweza kuunganisha kebo ya nguvu ya mfumo wa spika, kwa njia hiyo, wakati tunatoa voltage kwa SSR, itafunga mzunguko wa AC wa mfumo wa spika, au tunazima voltage ili kufanya mzunguko wazi, kuzima spika.

kuna moja ya kukamata, RaspberryPi pini matokeo 3.3v, sio 5v ambayo tunahitaji kudhibiti SSR. kwa hivyo tunahitaji transistor kuchukua ishara kutoka kwa pini ya RPi, na 5V kutoka kwa pini ya RPi 5v. kufanya hivyo tunahitaji:

1-Solid State Relay (kitu chochote hapo juu 25A ni nzuri)

2-2n2222 npn transistor

Kinga ya 3-220ohm

fuata mzunguko wa fritzing kwa unganisho.

sasa kwenye nambari, tutaongeza vitu kadhaa ambavyo hufanya kazi hii. kwanza, kabla ya kitanzi cha wakati, tutaongeza mistari kadhaa ili kuanzisha pini za GPIO:

Katika sehemu ya kuagiza, ongeza:

kuagiza RPi. GPIO kama GPIO

Kabla ya kitanzi cha wakati, ongeza:

GPIO.

Sasa, katika kitanzi cha wakati, kwa kila amri ya kucheza ya Azan, tunahitaji kuwasha relay, subiri kwa sekunde 10, maliza kucheza Azan na kisha uzime relay. tunahitaji tu kuongeza mistari miwili, ya kwanza ni:

Pato la GPIO (ledPin, GPIO. HIGH)

saa. kulala (10)

hii inapaswa kuongezwa baada ya kila taarifa ikiwa (KUJITAMBUA NI MUHIMU!), laini nyingine ni:

Pato la GPIO (ledPin, GPIO. LOW)

Hii inapaswa kuongezwa baada ya laini ya "endelea". inapaswa kuonekana kama hii kwa kila wakati wa Azan:

ikiwa currTime == FAJR:

GPIO.output (ledPin, GPIO. HIGH) wakati. Lala (10) mixer.init () mixer.music.load ('/ home / pi / Desktop / Adhan-fajr.wav') mixer.music.play () wakati mixer.music.get_busy () == Kweli: endelea GPIO.output (ledPin, GPIO. LOW)

Ilipendekeza: