विषयसूची:

रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म: 15 कदम (चित्रों के साथ)
रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म: 15 कदम (चित्रों के साथ)

वीडियो: रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म: 15 कदम (चित्रों के साथ)

वीडियो: रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म: 15 कदम (चित्रों के साथ)
वीडियो: मदरसे वाले लड़के का ये वीडियो खूब वायरल हो रहा है आप भी देखे 2024, नवंबर
Anonim
रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म
रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म
रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म
रास्पबेरीपी इस्लामी प्रार्थना घड़ी और अलार्म

दुनिया भर के मुसलमानों में हर दिन पाँच नमाज़ होती है, और प्रत्येक प्रार्थना दिन के एक निश्चित समय में होनी चाहिए। अण्डाकार तरीके से हमारा ग्रह सूर्य के चारों ओर घूमता है, जिससे सूर्य के उगने और गिरने का समय पूरे वर्ष अलग-अलग हो जाता है, जिससे प्रार्थना का समय भी अनिश्चित हो जाता है, यही कारण है कि हमें मुसलमानों को हमारे प्रार्थना समय पर याद दिलाने के लिए एक इस्लामी घड़ी की आवश्यकता होती है। दिन।

हर मुसलमान के पास इंटरनेट इस्लामिक वेबसाइटों, स्थानीय इस्लामिक कैलेंडर या यहां तक कि टीवी के माध्यम से दैनिक प्रार्थना के समय के मौसम तक पहुंचने का एक तरीका है, और हम में से अधिकांश के पास इस्लामी घड़ी के उपकरण हैं जिनमें हमें प्रार्थना के समय देने की विशेषताएं हैं, साथ ही साथ प्रार्थना अलार्म भी हैं।. लेकिन क्या होगा अगर हम अपनी खुद की प्रार्थना घड़ी और अलार्म डिवाइस बना लें!

परियोजना पर काम शुरू करने से पहले, कुछ विचार हैं जो इस निर्देश को पढ़ते समय आपके लिए उपयोगी हो सकते हैं। मैं सऊदी अरब में रह रहा हूं इसलिए मेरे कुछ कदम और मूल्य आपके से अलग होंगे, और मैं काम के दौरान उन्हें स्पष्ट रूप से इंगित करूंगा। ऐसे चरण और चित्र हैं जिनमें अरबी शब्द शामिल हो सकते हैं क्योंकि मैंने अरबी में इंटरफेसिंग की है, लेकिन मैं यह भी बताऊंगा कि इसे अंग्रेजी में कैसे बनाया जाए ताकि चित्रों में अरबी शब्दों को आप बिल्कुल भी चिंता न करें, यह परियोजना हो सकती है किसी भी भाषा में किया गया (जो बहुत बढ़िया है!:D) कृपया मेरी टाइपो को भी क्षमा करें क्योंकि अंग्रेजी मेरी पहली भाषा नहीं है।

हमारे प्रोजेक्ट पर! यह परियोजना एक्स प्रमुख चरणों में विभाजित होगी, जो कि दसवें चरण के अंत तक हम अपनी परियोजना को अच्छा और तैयार करेंगे! चरण इस प्रकार होंगे:

1-रास्पबेरीपी को कॉन्फ़िगर करना और तैयार करना

2-आरटीसी मॉड्यूल स्थापित करना

3-अज़ान अलार्म प्रोग्राम बनाना

4-घड़ी के चेहरों को लागू करना

5-यूजर इंटरफेस बनाना और…

प्रत्येक परियोजना के रूप में, हमें पहले उन भागों को तैयार करने की आवश्यकता है जिनकी हमें आवश्यकता है। इस परियोजना के लिए हमें जिन भागों की आवश्यकता है वे हैं:

1-RaspberryPi कंप्यूटर किट Amazon US || अमेज़न केएसए

आप किसी भी आरपीआई संस्करण का उपयोग कर सकते हैं, बस सुनिश्चित करें कि इसमें वाईफ़ाई है। मैंने Rpi3B+. का इस्तेमाल किया

2-RTC रीयल-टाइम क्लॉक मॉड्यूल Amazon US || अमेज़न केएसए

आप किसी भी आरटीसी मॉड्यूल मॉडल का उपयोग कर सकते हैं, बस सुनिश्चित करें कि इसमें I2C है

3-एलसीडी मॉनिटर

कोई भी LCD करेगा

4-माउस और कीबोर्ड

और बस!! आपको अपनी अज़ान घड़ी और अलार्म बनाने के लिए बस इतना ही चाहिए

चरण 1: अध्याय 1: रास्पबेरीपीआई की स्थापना और विन्यास

अध्याय 1: रास्पबेरीपीआई की स्थापना और विन्यास
अध्याय 1: रास्पबेरीपीआई की स्थापना और विन्यास

पहली चीजें पहले! इसके साथ काम करने के लिए हमें रास्पबेरी पाई तैयार करने की आवश्यकता है।

रास्पबेरी पाई एक कंप्यूटर के अलावा और कुछ नहीं है, इसमें रैम और रोम है, इसमें सीपीयू, जीपीयू, आई/ओ…….एक कंप्यूटर है! ठीक उसी तरह जैसे हम गेम खेलते हैं और वेब ब्राउज़ करते हैं, केवल बड़ी बात यह है कि यह बहुत छोटा है! जो परियोजनाओं को बनाने और कार्यान्वित करने के लिए रास्पबेरी को एक बहुत अच्छा विकल्प बनाता है। क्योंकि रास्पबेरी पाई छोटा है, इसमें बहुत सीमित विनिर्देश हैं कि यह विंडोज़ या मैकओएस जैसे बड़े मांग वाले ओएस को संचालित नहीं कर सकता है, इसके बजाय, हम डिवाइस का उपयोग करने के लिए लिनक्स को एक ऑपरेटिंग सिस्टम के रूप में उपयोग करने जा रहे हैं। हजारों नहीं तो हजारों लिनक्स डिस्ट्रो हैं जिनका हम उपयोग कर सकते हैं, लेकिन एक पूर्ण डिस्ट्रो विशेष रूप से रास्पबेरीपी के लिए पूरी तरह से अनुकूलित है जिसे हम उपयोग करने जा रहे हैं, जिसे रास्पियन कहा जाता है।

चरण 2: 1-1: आवश्यक फ़ाइलें डाउनलोड करें

1-1: आवश्यक फ़ाइलें डाउनलोड करें
1-1: आवश्यक फ़ाइलें डाउनलोड करें
1-1: आवश्यक फ़ाइलें डाउनलोड करें
1-1: आवश्यक फ़ाइलें डाउनलोड करें
1-1: आवश्यक फ़ाइलें डाउनलोड करें
1-1: आवश्यक फ़ाइलें डाउनलोड करें

- https://www.raspberrypi.org/software/operating-sy… पर आधिकारिक रसबियन डाउनलोड पृष्ठ पर जाएं और डेस्कटॉप फ़ाइल के साथ रास्पबेरी पाई ओएस डाउनलोड करें

-जब यह डाउनलोड हो रहा हो, https://win32diskimager.org/ पर जाएं और win32DiskImager डाउनलोड और इंस्टॉल करें, आप अपनी पसंद के किसी भी इमेज बर्निंग सॉफ़्टवेयर का उपयोग कर सकते हैं

एक बार डाउनलोड हो जाने के बाद, आपके पास एक.img फ़ाइल होगी जिसमें RaspberryPi OS होगा। इसके बाद, अपने SD मेमोरी कार्ड को कंप्यूटर में प्लग करें (आमतौर पर USB कार्ड रीडर के साथ) और win32diskimager सॉफ़्टवेयर लॉन्च करें। एसडी मेमोरी में इमेज को बर्न करने के लिए स्टेप्स बहुत आसान हैं, आपको बस 1- अपने मेमोरी लेटर को सेलेक्ट करना है 2-अपनी ओएस फाइल्स को सेलेक्ट करना है जिसे आपने डाउनलोड किया है और 3-क्लिक राइट! सुनिश्चित करें कि आपने सूची से सही डिवाइस अक्षर का चयन किया है और आपकी मेमोरी खाली है, क्योंकि राइट दबाने से आपको एक चेतावनी के साथ प्रचारित किया जाएगा जो आपको बताती है कि डिवाइस पर कुछ भी मिटा दिया जाएगा! लिखने की पुष्टि करने के लिए हाँ दबाएं और इसके समाप्त होने की प्रतीक्षा करें। इसमें 20 मिनट तक का समय लग सकता है.

एक बार यह हो जाने के बाद, आपके पास मेमोरी पर पूरा रैपियन ओएस होगा, आप आगे बढ़ सकते हैं और इसे रैपबेरी पाई में डाल सकते हैं, रास्पबेरी पाई को एचडीएमआई के माध्यम से मॉनिटर से कनेक्ट कर सकते हैं, यूएसबी के माध्यम से माउस और कीबोर्ड को कनेक्ट कर सकते हैं और अंत में, कनेक्ट कर सकते हैं शक्ति।

चरण 3: 1-2: रास्पियन सिस्टम को कॉन्फ़िगर करना

केबल्स और पावर को जोड़ने के बाद, आप देखेंगे कि ओएस चालू हो गया है, यह स्वचालित रूप से रीबूट हो जाएगा और फिर यह रास्पियन यूजर इंटरफेस (जो विंडोज़ के समान दिखता है) प्रदर्शित करेगा। पहली चीज़ जो आप देखेंगे वह एक स्वागत विंडो है, जो आपको पहली बार अपने रास्पबेरीपी को कॉन्फ़िगर करने के चरणों के माध्यम से ले जाएगी। खिड़कियां और कदम इस प्रकार होंगे:

1-पहले "वेलकम" विंडो पर अगला दबाएं

2-अगली विंडो आपके स्थान को कॉन्फ़िगर करने के लिए होगी। अपना देश, भाषा और समय क्षेत्र चुनें। उसके बाद, "अंग्रेजी भाषा का उपयोग करें" की जांच करने की अत्यधिक अनुशंसा की जाती है क्योंकि यह ऑपरेटिंग सिस्टम इंटरफ़ेस भाषा होगी। आपको "यूएस अंग्रेजी कीबोर्ड लेआउट बॉक्स" की जांच करनी चाहिए, हमें काम करने के लिए अंग्रेजी कीबोर्ड चाहिए!

3-अगला, आपको अपने रास्पबेरी के लिए एक पासवर्ड दर्ज करने के लिए कहा जाएगा, यह सुरक्षा के लिए महत्वपूर्ण है लेकिन हम इसे इस परियोजना के लिए अपरिवर्तित छोड़ देंगे। ध्यान दें कि डिफ़ॉल्ट उपयोगकर्ता नाम और पासवर्ड हैं:

उपयोगकर्ता नाम: पीआई

पासवर्ड: रास्पबेरी

4-अगली विंडो रास्पबेरी पाई को आपके वाईफाई नेटवर्क से जोड़ेगी। अपना वाईफाई नाम चुनें और अपना वाईफाई पासवर्ड दर्ज करें

5-अगला, आपको रास्पबेरी पाई पुस्तकालयों और सिस्टम फ़ाइलों को अपडेट करने के लिए कहा जाएगा। इस चरण में बहुत अधिक समय लगेगा (शायद घंटों में) लेकिन हर बार जब कोई नया रास्पबेरी पाई सेटअप किया जा रहा है तो यह एक बहुत ही महत्वपूर्ण कदम है।

6-एक बार अपडेट हो जाने के बाद, आपको सिस्टम को पुनरारंभ करने के लिए कहा जाएगा। अभी करो।

महान काम! अब हमारे पास एक अद्यतन प्रणाली है, सिस्टम को काम करने के लिए कॉन्फ़िगर करने के लिए हमें अभी भी कुछ और सामान करने की आवश्यकता है, लेकिन अब, LinuxCommand लाइन का उपयोग करना शुरू कर देंगे।

चरण 4: 1-3: आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना

1-3:आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना
1-3:आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना
1-3:आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना
1-3:आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना
1-3:आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना
1-3:आरपीआई सेटिंग्स सेट करने के लिए कमांड लाइन का उपयोग करना

एक बार जब आप सिस्टम अपडेट से रीबूट करना समाप्त कर लेते हैं, तो सिस्टम बूट होने के बाद उपयोगकर्ता डेस्कटॉप दिखाएगा। अब यदि आप स्क्रीन के ऊपर बाईं ओर देखते हैं, तो आपको कुछ बटन मिलेंगे, रास्पबेरीपी लोगो वाला एक बटन जो कि आरपीआई मेनू बटन है, एक ग्लोब-आकार जो इंटरनेट ब्राउज़र है, एक फ़ोल्डर बटन जो…..फ़ोल्डर है और अंत में, ब्लैक स्क्रीन विंडो वाला एक बटन, जो किसी भी लिनक्स सिस्टम में सबसे महत्वपूर्ण बटन है, कमांड लाइन। आगे बढ़ें और उस बटन को दबाएं, आपको एक काली खिड़की दिखाई देगी।

कमांड लाइन यह है कि कैसे हर कोई लाइनक्स सिस्टम से इंटरैक्ट करता है और उसका उपयोग करता है, जैसे विंडोज़ की अपनी कमांड लाइन केवल विधवाओं में होती है, हमें इसे बहुत बार उपयोग करने की आवश्यकता नहीं होती है। लिनक्स में, यह मूल चीज है जिसे प्रत्येक लिनक्स उपयोगकर्ता को सीखना और मास्टर करना है। कमांड लाइन का उपयोग …. COMMANDS द्वारा किया जा सकता है! ब्लैक विंडो में आप जो देखते हैं वह कमांड-प्रॉम्प्ट है जो उपयोगकर्ता द्वारा कमांड को लिखे जाने और निष्पादित होने की प्रतीक्षा करता है। इस गाइड में हम आपको इस प्रोजेक्ट को करने के लिए आवश्यक सभी कमांड देंगे, इसलिए चिंता न करें।

हम जिस पहले लिनक्स कमांड का उपयोग करने जा रहे हैं, वह एक और कॉन्फ़िगरेशन कमांड है, ध्यान दें कि अब से सभी कमांड एक कोड बॉक्स के अंदर रखे जाएंगे, ताकि आप इसे नियमित चरणों से अलग कर सकें। अपना कीबोर्ड लाओ और निम्नलिखित टाइप करें और एंटर दबाएं:

सुडो रास्पि-कॉन्फ़िगरेशन

यदि आप इसे सही तरीके से करते हैं, तो आप देखेंगे कि स्क्रीन नीली हो गई है, बीच में ग्रे छोटा बॉक्स है (चित्र देखें)। हम कोडिंग शुरू करने से पहले अपना अंतिम कॉन्फ़िगरेशन बनाने के लिए इसका उपयोग करेंगे।

अब, आपको इस मेनू को नेविगेट करने के लिए अपने कीबोर्ड तीर कुंजियों का उपयोग करना होगा।

1-इंटरफ़ेस विकल्प पर जाएँ >> I2C >> YES >> एंटर दबाएं। यह I2c संचार प्रोटोकॉल को सक्षम करता है ताकि हम RTC का उपयोग कर सकें

2-उन्नत विकल्पों पर जाएं >> फाइल सिस्टम का विस्तार करें।

और वह सभी कॉन्फ़िगरेशन है जो आपको इस विंडो से चाहिए। मुख्य पृष्ठ पर, नीचे जाएं और सिस्टम को रिबूट करने के लिए "फिनिश" और "यस" पर एंटर दबाएं।

एक बार सिस्टम रीबूट हो जाने के बाद, हम सभी कॉन्फ़िगर कर चुके हैं! डिवाइस बड़े कदमों के लिए तैयार है! अगला चरण आरटीसी मॉड्यूल स्थापित करना और सिस्टम के साथ इसका उपयोग करना होगा।

चरण 5: अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उसका उपयोग करना

अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना
अध्याय 2: आरटीसी मॉड्यूल को माउंट करना, कॉन्फ़िगर करना और उपयोग करना

आरटीसी (या रीयल-टाइम क्लॉक) मॉड्यूल एक छोटा उपकरण है जिस पर थोड़ी बैटरी होती है, यह वही करता है जो नाम का तात्पर्य है, क्लॉकिंग! इसलिए जब आप इसे बिजली से डिस्कनेक्ट करते हैं तो घड़ी काम करती रहती है और रुकती नहीं है। हमें यह क्यों चाहिये? ठीक है, रास्पबेरी पाई के पास वास्तव में घड़ी के डेटा को संग्रहीत करने का कोई तरीका नहीं है, यह एक बार बंद होने के बाद, यह अपनी तारीख और समय को अपडेट करने के लिए बूट करने पर इंटरनेट से कनेक्ट होने पर निर्भर करता है, लेकिन समस्या यह है कि हमारे पास हमेशा इंटरनेट का उपयोग नहीं होता है, और यह इसलिए हमें RTC मॉड्यूल की आवश्यकता है। आरटीसी रास्पबेरी पाई के लिए एक घड़ी के रूप में कार्य करेगा, इसलिए एक बार आरपीआई बूट हो जाने पर यह आरटीसी से दिनांक और समय लेगा, जो रास्पबेरीपी समय को हर समय अपडेट रखेगा।

RTC के लिए कई मॉडल और लुक हैं, DS1307 और DS3231 हैं। आप किसी भी आरटीसी मॉड्यूल का उपयोग कर सकते हैं जो आपको तब तक मिलता है जब तक उसमें I2C प्रोटोकॉल संचार होता है (आप यह इंगित कर सकते हैं कि आप मॉड्यूल पिन पर एसडीए और एससीएल पिन पा सकते हैं।

इस गाइड में किसी भी चीज़ की तरह, मैंने परियोजना में अपने लक्ष्य को प्राप्त करने के लिए अन्य गाइडों का उपयोग किया, यह निर्देश आपको मार्गदर्शन करेगा और आपको बताएगा कि इस परियोजना को बनाने के लिए क्या करना है, लेकिन अगर आपको संशोधित करने की आवश्यकता है या आपको किसी में अधिक गहराई की आवश्यकता है चरण, मैं प्रत्येक चरण के अंत में अधिक उपयोगी मार्गदर्शिका को लिंक करूंगा।

एक बार जब आप अपना आरटीसी मॉड्यूल तैयार कर लेते हैं (हेडर पिन को मिलाते हैं और बैटरी लगाते हैं), तो आप इसे निम्नानुसार रैपबेरीपी पिन से जोड़ सकते हैं:

आरटीसी पिन ---------------- आरपीआई पिन

जीएनडी ===========> पिन 6 (जीएनडी)

वीसीसी============> पिन 1 (3.3V)

एसडीए ===========> पिन 3 (एसडीए)

एससीएल===========> पिन 5 (एससीएल)

या आपको जो आरटीसी मॉड्यूल मिला है, उसके आधार पर आप इसे सीधे रास्पबेरीपी पर माउंट कर सकते हैं (सुनिश्चित करें कि पिन सही हैं !

एक बार जब आप आरटीसी कनेक्ट कर लेते हैं, तो रास्पबेरी को कॉन्फ़िगर करें।

चरण 6: 2-1: मॉड्यूल सेटअप

2-1: मॉड्यूल सेटअप
2-1: मॉड्यूल सेटअप
2-1: मॉड्यूल सेटअप
2-1: मॉड्यूल सेटअप

शुरू करने से पहले, कमांड लाइन पर जाएं और टाइप करें:

दिनांक

यह रास्पबेरी पर वर्तमान दिनांक और समय वापस देगा, उस बहुत उपयोगी कमांड पर ध्यान दें, और वर्तमान तिथि और समय को नोट करें ताकि हम जांच सकें कि मॉड्यूल कब काम कर रहा है या नहीं।

अब, चलो सेटअप शुरू करते हैं, आरपीआई पुस्तकालयों को अद्यतन करने के लिए निम्नलिखित टाइप करें, एक समय में एक पंक्ति:

सुडो एपीटी-अपडेट प्राप्त करें

sudo apt-get -y अपग्रेड

एक बार यह हो जाने के बाद, हमें i2c मॉड्यूल को सक्षम करने और RTC जोड़ने के लिए सिस्टम फ़ाइलों को संशोधित करने की आवश्यकता है, एक फ़ाइल सिस्टम को संशोधित करने के लिए जिसे हम नैनो नामक सॉफ़्टवेयर का उपयोग करने जा रहे हैं। नैनो एक लाइट बिल्ट-इन सॉफ्टवेयर है जो मूल रूप से विधवाओं की तरह ही एक टेक्स्ट एडिटर है। इसलिए कोई भी कमांड जो नैनो से शुरू होती है और उसके बाद फाइल का नाम, उस फाइल को नैनो टेक्स्ट एडिटर में खोलेगा। आपने देखा है कि हमने सूडो नाम की किसी चीज़ का भी इस्तेमाल किया है, संक्षेप में, सूडो लिनक्स सिस्टम के लिए एक आश्वासन की तरह काम करता है जो सिस्टम को बताता है कि जिस उपयोगकर्ता ने उस कमांड को बनाया है वह डिवाइस का मालिक है, कोई और नहीं, और संपादन / जैसे विशेषाधिकार देता है। उपयोगकर्ता को हटा रहा है। उदाहरण के लिए, अगर हमने बिना सूडो के नैनो फाइल खोली है, तो हम उस फाइल को देख पाएंगे, लेकिन हम इसे संपादित या हटा नहीं सकते।

अब, हमें मॉड्यूल फ़ाइल को संशोधित करने की आवश्यकता है, हम इसे टाइप करके कर सकते हैं:

सुडो नैनो / आदि / मॉड्यूल

एक बार जब आप ऐसा कर लेते हैं, तो आपको उस फ़ाइल की सामग्री मिल जाएगी (देखें तस्वीर)। पाठ के अंत में कर्सर रखने के लिए तीर कुंजियों का उपयोग करें और निम्नलिखित जोड़ें:

एसएनडी-बीसीएम2835

i2c-bcm2835 i2c-dev rtc-ds1307

सेव करने के लिए CTRL+S दबाएं, और बाहर निकलने के लिए CTRL+X दबाएं

चरण 7: 2-2: I2C इंटरफ़ेस

2-2: I2C इंटरफ़ेस
2-2: I2C इंटरफ़ेस

अब हमने RTC को कनेक्ट कर लिया है और i2c को सक्षम कर दिया है, आइए सब कुछ एक साथ कनेक्ट करें।

कमांड प्रॉम्प्ट में निम्न टाइप करें:

i2cdetect -y 1

आपको रिक्त स्थानों की एक सरणी दी जाएगी, लेकिन आप देखेंगे कि कहीं न कहीं एक संख्या है, वह संख्या आपका RTC मॉड्यूल पता है। मेरे मामले में यह 68 है। उस संख्या पर ध्यान दें। अगर आपको वह दो अंकों की संख्या दिखाई नहीं देती है, तो इसका मतलब है कि आप शायद आरटीसी गलत तरीके से जुड़े हुए हैं।

अब, हमें rc.local फ़ाइल को संशोधित करने की आवश्यकता है ताकि हम बूट पर RTC मॉड्यूल को सक्षम कर सकें और इसे सिस्टम में दिनांक और समय बचाने दें। सबसे पहले, rc.local फ़ाइल खोलें:

सुडो नैनो /etc/rc.local

Exit0 लाइन से पहले, निम्नलिखित जोड़ें:

इको ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

घंटा

जहां 0x68 आपका डिवाइस i2c पता है। एक बार जब आप CTRL+S CTRL+X हिट कर लें, तो अपने सिस्टम को इसके द्वारा रीबूट करें:

सुडो रिबूट

चरण 8: 2-3: आरटीसी का परीक्षण

2-3: आरटीसी का परीक्षण
2-3: आरटीसी का परीक्षण

एक बार सिस्टम रीबूट हो जाने के बाद, हम मौसम की जांच कर सकते हैं कि आरटीसी काम कर रहा है या नहीं। पहली दौड़:

सुडो हॉवक्लॉक -आर

आपको आरटीसी मॉड्यूल पर तारीख और समय वापस दिया जाएगा। यदि आपको कुछ और दिया गया है, तो सुनिश्चित करें कि आपने चरणों को सही ढंग से पूरा किया है।

अब, आरटीसी पर समय और तारीख को संशोधित करने के लिए, हमें पहले सिस्टम पर दिनांक और समय को संशोधित करना होगा, फिर आरटीसी में संशोधनों को लिखना होगा। ऐसा करने के लिए, दौड़ें:

सुडो डेट-एस "29 अगस्त 1997 13:00:00"

और निश्चित रूप से, एंटर दबाए जाने से पहले, अपने स्थानीय समय और तारीख के अनुसार दिनांक और समय बदलें। एक बार जब आप आरपीआई पर समय प्राप्त कर लेते हैं, तो आरटीसी पर दिनांक और समय बचाने के लिए निम्नलिखित चलाएँ:

सुडो हॉवक्लॉक -व

आआआंद बस इतना ही! आप जांच सकते हैं कि यह hwclock -r द्वारा काम कर रहा है या नहीं और देखें कि आरटीसी पर तारीख सही है या नहीं, फिर आरपीआई को इंटरनेट से डिस्कनेक्ट करें और फिर इसे कुछ समय के लिए बंद कर दें और फिर इसे फिर से चालू करें और देखें कि क्या यह सही है समय और दिनांक। हो गया!

आरटीसी मॉड्यूल को सेटअप करने के तरीके के बारे में पूरी गाइड यहां मिल सकती है

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

चरण ९: अध्याय ३: अज़ान अलार्म प्रोग्राम बनाना

अध्याय 3: अज़ान अलार्म प्रोग्राम बनाना
अध्याय 3: अज़ान अलार्म प्रोग्राम बनाना

घड़ी बनाना एक बात है, निश्चित रूप से, हम घड़ी और प्रार्थना के समय को देख सकते हैं और देख सकते हैं कि समय कब आता है, लेकिन यह और भी बेहतर नहीं होगा यदि हम प्रार्थना के समय के बारे में सूचित करने के लिए ध्वनि अलार्म जोड़ सकें? और भी बेहतर, हम उस अलार्म को अज़ान की आवाज़ के रूप में बनाते हैं! आइए देखें कि हम इसे कैसे पूरा कर सकते हैं।

हमारी प्रोग्रामिंग के लिए, हम अपनी पसंदीदा प्रोग्रामिंग भाषा के रूप में अजगर का उपयोग करने जा रहे हैं क्योंकि अजगर रास्पबेरीपी के साथ परिपूर्ण है। पायथन में कोड फ़ाइल बनाने के लिए, हम टेक्स्ट फ़ाइल खोलने के समान ही करते हैं, लेकिन अब हम इसे.py के रूप में सहेजते हैं। कार्यक्रम को चलाने के लिए, हमें रास्पबेरी से स्थापित अजगर पर्यावरण की आवश्यकता है, सौभाग्य से, रास्पियन अजगर के साथ आता है और अजगर 3 पहले से स्थापित है! इसलिए हमें केवल प्रोग्रामिंग करना है। इस गाइड में, हम भाषा के बारे में बात नहीं करेंगे और सिखाएंगे कि यह कैसे काम करता है और कार्य करता है, लेकिन मैं आपको आवश्यक कोड दूंगा ताकि आप प्रोजेक्ट बना सकें।

शुरू करने के लिए, हमें अपनी पसंदीदा अज़ान ध्वनि (. WAV में) की एक ध्वनि फ़ाइल की आवश्यकता है, हमें दो फाइलों की आवश्यकता है, एक अल-फज्र अज़ान के लिए और दूसरी नियमित अज़ान के लिए। एक बार जब आप इसे स्टिक ड्राइव पर रख दें और रास्पबेरीपी के डेस्कटॉप पर कॉपी कर लें।

अब हमारे पास फाइलें हैं, मैं रास्पबेरीपी पर ध्वनि ऑडियो चलाने का एक तरीका ढूंढ रहा था और मेरे आश्चर्य के लिए, हम ऐसा करने के बहुत से तरीके नहीं थे, लेकिन मुझे स्टैक ओवरफ्लो पर यह जवाब मिला जिसने मुझे वह दिया जो मुझे चाहिए

stackoverflow.com/questions/20021457/playi…

मैंने उस विधि का परीक्षण किया और यह काम किया! तो आइए देखें कि हम इस पद्धति को अपने प्रोजेक्ट में कैसे लागू कर सकते हैं…

चरण १०: ३-१: लेट्स प्ले ए साउंड

3-1: लेट्स प्ले ए साउंड!
3-1: लेट्स प्ले ए साउंड!

सबसे पहले, डेस्कटॉप पर नेविगेट करें:

सीडी डेस्कटॉप

फिर एक नई पायथन कोड फ़ाइल बनाएं:

सूडो नैनो AzanPlay.py

यह एक अजगर फ़ाइल.py पर एक्सटेंशन के साथ AzanPlay नामक एक नई फ़ाइल बनाएगा, हमारे पास अपना कोड लिखने की अनुमति देने के लिए एक खाली काली स्क्रीन होगी। बस इन पंक्तियों को लिख लें (सावधान रहें कि कोई इंडेंटेशन या रिक्त स्थान न बदलें, क्योंकि यह अजगर में बेहद महत्वपूर्ण है):

pygame आयात मिक्सर से

मिक्सर.इनिट () मिक्सर.म्यूजिक.लोड ('/ होम/पीआई/डेस्कटॉप/आधान-मक्का.वाव') मिक्सर.म्यूजिक.प्ले () जबकि मिक्सर.म्यूजिक.get_busy() == सच: जारी रखें

/डेस्कटॉप/ वह जगह है जहां आप अपनी ध्वनि फ़ाइलें डालते हैं, और 'अधान-मक्का.वाव' मेरी ऑडियो फ़ाइल है, जो मक्का में अज़ान ध्वनि रिकॉर्डिंग है।

अब हमारे कोड का परीक्षण करने के लिए, हम इसे टाइप करके अजगर के साथ चलाते हैं:

अजगर AzanPlay.py

और आपके पास अपने एचडीएमआई एलसीडी या रास्पबेरीपी पर आपके औक्स पोर्ट से ध्वनि बजने वाली आवाज होगी। यदि आप इसे LCD स्पीकर से नहीं सुनते हैं, तो AUX में एक हेडफ़ोन प्लग करें और जांचें।

चरण ११: ३-२: प्रार्थना का समय प्राप्त करें

3-2: प्रार्थना का समय पाएं
3-2: प्रार्थना का समय पाएं

जैसा कि हम जानते हैं, प्रार्थना का समय पृथ्वी पर एक स्थान से दूसरे स्थान पर भिन्न होता है, और यहां तक कि एक विशिष्ट स्थान के लिए, यह वर्षों से भिन्न होता है, इसका मतलब है कि हमें अपने प्रार्थना समय को हर समय अद्यतन रखने के लिए एक तरीका खोजने की आवश्यकता है, और इसके लिए हमें इसे ठीक करने के लिए विशिष्ट और बहुत जटिल कार्यों और गणनाओं की आवश्यकता है। सौभाग्य से, हमारे भाई हामिद जर्राबी-ज़ादेह ने हमारे लिए आवश्यक सभी कार्यों को एक समारोह में बनाया है जिसका उपयोग हम अपने स्थान और वर्तमान समय के आधार पर आसानी से समय प्राप्त करने के लिए कर सकते हैं, अद्भुत! आप पुस्तकालय और स्रोत फ़ाइलें यहां पा सकते हैं

praytimes.org/

इसलिए, हम इन भयानक फाइलों का उपयोग हमारे प्रार्थना समय प्राप्त करने और सिस्टम में इसे लागू करने के लिए करने जा रहे हैं। सबसे पहले, वेबसाइट से कोड डाउनलोड करें और इसे /adhan/ फ़ोल्डर में डालें, (हमें JS और Python दोनों कोड चाहिए)।

अब, उस फ़ोल्डर पर जाएं और पुस्तकालय का परीक्षण करें, और यह क्या कर सकता है:

सीडी अदना

वहां, हमें अजगर में एक नई परीक्षण फ़ाइल बनाने की आवश्यकता है ताकि हम फ़ंक्शन का परीक्षण कर सकें:

sudo nano testAd.py

अंदर, इस कोड को लिखें:

प्रार्थना के समय आयात करें

डेटाटाइम आयात तिथि से tmm = praytimes. PrayTimes().getTimes(date.today(), [LONGTITUDE, LATITUDE], GMT) प्रिंट (tmm)

फ़ाइल को सहेजने से पहले, आपको LATITUDE को अपने स्थान अक्षांश के साथ बदलना होगा, वही LONGTITUDE के साथ, और GMT को अपने समय क्षेत्र में बदलना होगा। मेरे मामले में, यह होगा:

tmm = प्रार्थना समय।

प्रिंट (टीएमएम)

अंत में, CTRL-S और CTRL-X और फिर कोड चलाएँ:

अजगर परीक्षणAd.py

अंत में, आपको आज के लिए, आपके स्थान के लिए आपकी प्रार्थना का समय वापस दिया जाएगा।

{'ईशा': '18:58', 'असर': '15:22', 'सूर्यास्त': '17:43', 'धुहर': '12:17', 'मग़रिब': '17:43', 'इमसाक': '05:23', 'आधी रात': '00:17', 'सूर्योदय': '06:52', 'फज्र': '05:33'}

महान! अब जबकि हमें प्रार्थना करने का समय मिल गया है और अब हम ध्वनि बजाना जानते हैं, आइए इन दो कोडों को एक साथ एक मुख्य कोड में मिला दें।

चरण १२: ३-३: अंतिम अज़ान अलार्म कोड बनाना

पिछले दो कोडों को समाप्त करके, हमने सीखा कि हमारे स्थान के अनुसार सटीक प्रार्थना समय कैसे प्राप्त करें और अज़ान ध्वनि कैसे बजाएं। अब, हम इन दो कोडों को एक कोड में मर्ज करने जा रहे हैं जिसे हम अपने अंतिम प्रोजेक्ट के रूप में उपयोग करने जा रहे हैं, और यह कोड पृष्ठभूमि पर काम करेगा, जैसे कि अज़ान का समय आने पर, यह अज़ान ध्वनि बजाएगा।

मैंने पूरा कोड लिख दिया है, आप इसे कॉपी और पेस्ट कर सकते हैं, और अपने हिसाब से बदलाव कर सकते हैं। कोड है:

आयात समय

पायगेम आयात मिक्सर से आयात स्ट्रिंग आयात प्रार्थना समय डेटाटाइम आयात तिथि से जबकि (1): tmm = प्रार्थना समय। प्रार्थना समय()। getTimes (दिनांक.आज (), [२१.३२३६, ३९.१०२२], ३) FAJR = tmm ['fajr'] DHUHR =tmm['dhuhr'] ASR=tmm['asr'] MAGHRIB=tmm['maghrib'] ISHA=tmm['isha'] tempT= time.strftime(str('%H')) currTime= tempT tempT= time.strftime(str('%M')) currTime= currTime +':'+ tempT अगर currTime == FAJR:mixer.init()mixer.music.load('/home/pi/Desktop/Adhan-fajr. wav') mix.music.play() जबकि mix.music.get_busy() == True: जारी रखें अगर currTime == DHUHR:mixer.init()mixer.music.load('/home/pi/Desktop/Adhan- मक्का.वाव') मिक्सर.म्यूजिक.प्ले() जबकि मिक्सर.म्यूजिक.गेट_ब्यूजी() == सच: जारी रखें अगर currTime == एएसआर: मिक्सर। Adhan-Makkah.wav') mix.music.play() जबकि mix.music.get_busy() == True: जारी रखें if currTime == MAGHRIB: mixer.init() mix.music.load('/home/pi/ Desktop/Adhan-Makkah.wav') mix.music.play() जबकि mix.music.get_busy() == True: जारी रखें अगर currTime == ISHA: Mixer.init () mix.music.load('/home/pi/Desktop/Adhan-Makkah.wav') mix.music.play() जबकि mix.music.get_busy() == True: जारी रखें

यदि आप कोड को देखते हैं और इसकी तुलना हमने पहले की तुलना में करते हैं, तो आप देखेंगे कि हमने कुछ भी नया नहीं किया है, सबसे पहले, हमने अपने आवश्यक पुस्तकालयों को शामिल किया और फिर हमने एक अनंत लूप खोला। लूप में, हम लगातार अपने स्थान और समय क्षेत्र के साथ प्रार्थना के समय की गणना करते हैं, और पूरे परिणाम को चर tmm में संग्रहीत करते हैं। फिर, हम प्रत्येक प्रार्थना समय को tmm से एक स्वतंत्र चर में संग्रहीत करते हैं। जो हमें समय की तुलना करने की अनुमति देगा। अगला, हम सिस्टम समय लेते हैं और इसे एक स्वतंत्र चर में संग्रहीत करते हैं। अंत में, हम सिस्टम समय की तुलना प्रार्थना के समय से करते रहते हैं, यदि सिस्टम का समय किसी भी प्रार्थना समय से मेल खाता है, तो यह अज़ान ध्वनि बजाएगा।

चरण १३: अध्याय ४: वॉच फ़ेस लागू करना

अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना
अध्याय 4: वॉच फ़ेस लागू करना

परियोजना को बेहतर बनाने के लिए, मेरे पास एलसीडी में घड़ी के चेहरे जोड़ने का विचार था, इसलिए यह उपयोगकर्ता को अच्छा लग रहा है (ठीक है, कम से कम कमांड लाइन से बेहतर) इसलिए, मैंने कई चेहरों को डिजाइन करने के लिए एक डिजाइनर को काम पर रखा है। घड़ी, यह बिना किसी डेटा के खाली होनी चाहिए, क्योंकि डेटा को HTML के माध्यम से जोड़ा जाना चाहिए, घड़ी की डिज़ाइन को पृष्ठभूमि के रूप में बनाना चाहिए, और अन्य डेटा जैसे प्रार्थना के समय को पृष्ठभूमि के शीर्ष पर HTML तत्वों के रूप में जोड़ा जा सकता है।

दुर्भाग्य से, इस निर्देश को लिखने के समय तक, HTML में मेरा ज्ञान और अनुभव बहुत सीमित है, इसलिए मैं अधिक विवरणों पर चर्चा नहीं करूंगा क्योंकि मैं इस तथ्य के लिए जानता हूं कि मैं चीजों को गलत तरीके से करूंगा, और मैं नहीं लोगों को भ्रमित करना चाहते हैं। लेकिन अगर आपके पास JS और HTML में थोड़ा सा भी अनुभव है, तो आपको पता होना चाहिए कि इस बिंदु से कैसे आगे बढ़ना है। अब तक मैंने एक ही चेहरा (नीला वाला) बनाया है। 14 वॉच फेस बनाने की है योजना! सप्ताह के प्रत्येक दिन के लिए 7 चेहरे, और अन्य 7 अन्य विषय के रूप में। जैसा कि पहली थीम को अज़कर रोलिंग के साथ माना जाता है, और दूसरी थीम को अज़कर के बजाय इस्लामिक GIFS माना जाता है। परवाह किए बिना, मैं इस निर्देश में सभी डिज़ाइनों को शामिल करूँगा ताकि आप इसे डाउनलोड कर सकें।

चरण 14: अध्याय 5: यूजर इंटरफेस को लागू करना

अध्याय 5: यूजर इंटरफेस को लागू करना
अध्याय 5: यूजर इंटरफेस को लागू करना

अपनी यात्रा के अंतिम अध्याय में, हम परियोजना को उपयोगकर्ता के अनुकूल बनाने के लिए कुछ वैकल्पिक संशोधन करेंगे, यदि हम किसी मस्जिद या किसी सार्वजनिक स्थान पर परियोजना को लागू करना चाहते हैं। जैसा कि हमने पहले कहा, प्रत्येक शहर में प्रार्थना के लिए अपना समय होता है, और इस परियोजना को लोगों की व्यापक सत्यता के लिए उपयोग करने के लिए, हम एक उपयोगकर्ता इंटरफ़ेस बनाएंगे ताकि हम परियोजना पर अधिकार करने के बाद अपने वांछित शहर और विषय का चयन कर सकें।

ऐसा करने के लिए, हम "TKinter" नामक एक अजगर GUI लाइब्रेरी का उपयोग करने जा रहे हैं।

यह वह कोड है जिसे मैंने मक्का सहित सऊदी अरब के पांच शहरों में से चुनने का विकल्प देने के लिए लागू किया है:

tk. के रूप में tkinter आयात करें

tkinter आयात से * tkinter आयात से ttk आयात कोडेक्स आयात ओएस क्लास कार्ल (फ़्रेम): def _init_(self): tk. Frame._init_(self) self.pack() self.master.title("Azan Time") self. बटन 1 = बटन (स्वयं, पाठ = "जेद्दा", ऊंचाई = 5, चौड़ाई = 80, कमांड = स्वयं। ओपन_जेद्दाह 1) स्वयं। बटन 2 = बटन (स्वयं, पाठ = "मक्का", ऊंचाई = 5, चौड़ाई = 80, कमांड = self.open_makkah1) self.button3 = Button(self, text = "रियाद", ऊंचाई = 5, चौड़ाई = 80, कमांड = self.open_riyadh1) self.button4 = Button(self, text = "मदीना", ऊंचाई = 5, चौड़ाई = 80, कमांड = सेल्फ.ओपन_मदीना 1) सेल्फ.बटन 5 = बटन (सेल्फ, टेक्स्ट = "कासिम", ऊंचाई = 5, चौड़ाई = 80, कमांड = सेल्फ। 1, कॉलमपैन = 2, स्टिकी = W+E+N+S) सेल्फ़.बटन2.ग्रिड (पंक्ति = 1, कॉलम = 1, कॉलमपैन = 2, स्टिकी = W+E+N+S) self.button3.grid(पंक्ति = २, कॉलम = १, कॉलमपैन = २, स्टिकी = डब्ल्यू+ई+एन+एस) सेल्फ.बटन४.ग्रिड (पंक्ति = ३, कॉलम = १, कॉलमपैन = २, स्टिकी = डब्ल्यू+ई+एन+एस) self.button5.grid(पंक्ति = 4, कॉलम = 1, कॉलमपैन = 2, स्टिकी = W+E+N+S) def open_jeddah1(self): ऑर्डर = "सुडो क्रोमियम-ब्राउज़र /home/pi/Desktop/Cities/jeddah/Sunday1.html --start-fullscreen --no-sandbox " os.system(order) def open_makkah1(self): order = "sudo chromium-browser /home/pi/Desktop/Cities/makkah/Sunday1.html --start-fullscreen --no-sandbox -test-type " os.system (आदेश) def open_riyadh1(self): आदेश = "सुडो क्रोमियम-ब्राउज़र /होम/पीआई/डेस्कटॉप/सिटीज/रियाध/रविवार1.एचटीएमएल --स्टार्ट-फुलस्क्रीन --नो-सैंडबॉक्स -टेस्ट-टाइप" ओएस सिस्टम (ऑर्डर) def open_madina1(self): order = "sudo chromium-browser /home/pi/Desktop/Cities/madina/Sunday1.html --start-fullscreen --no-sandbox -test-type " os.system(order) def open_qasaim1(self): ऑर्डर = "सुडो क्रोमियम-ब्राउज़र /होम/पीआई/डेस्कटॉप/सिटीज़/क़ैसिम/रविवार1.एचटीएमएल --स्टार्ट-फ़ुलस्क्रीन --नो-सैंडबॉक्स -टेस्ट-टाइप" ओएस सिस्टम (ऑर्डर) डीफ़ मेन (): karl().mainloop() अगर _name_ == '_main_': main()

कोड बड़ा लग सकता है, लेकिन इसे संपादित करना बहुत आसान है। हमने मूल रूप से एक नई विंडो बनाई, पांच नाम बटन लगाए और प्रत्येक बटन प्रेस पर पांच फ़ंक्शन को परिभाषित किया। एक बार जब आप बटन दबाते हैं, तो प्रोग्राम सिटीज फोल्डर में संबंधित HTML फाइल को खोल देगा, जिसे प्रत्येक शहर के HTML में सिटी कोऑर्डिनेट किया जाता है जब उसे प्रेयरटाइम्स () से समय मिलता है। एक बार जब आप बटन दबाते हैं, तो पायथन कोड एक लिनक्स कोड को उत्तेजित करेगा जिसमें यह क्रोमियम ब्राउज़र का उपयोग करके HTML फ़ाइल खोलेगा, और आपके पास पूर्ण स्क्रीन विकल्प के साथ, प्रदर्शित करने के लिए घड़ी का चेहरा तैयार होगा।

चरण 15: (वैकल्पिक): स्पीकर स्विच जोड़ना

(वैकल्पिक): स्पीकर स्विच जोड़ना
(वैकल्पिक): स्पीकर स्विच जोड़ना
(वैकल्पिक): स्पीकर स्विच जोड़ना
(वैकल्पिक): स्पीकर स्विच जोड़ना

जैसा कि हमने देखा, जब प्रार्थना का समय आता है तो अज़ान ध्वनि बजाता है, और ध्वनि डिफ़ॉल्ट ध्वनि आउटपुट (एचडीएमआई या एवी आउटपुट) से निकलती है और चूंकि हम इसे एचडीएमआई आउटपुट पर डाल रहे हैं, ध्वनि एलसीडी से आएगी। लेकिन, क्या होगा यदि हमारी LCD ध्वनि पर्याप्त नहीं है? उदाहरण के लिए, क्या होगा यदि हम इसे एक वास्तविक मस्जिद के अंदर लागू करना चाहते हैं? विस्तृत बाहरी वक्ताओं के साथ? तो हम इसे पूरा करने के लिए एक और बहुत आसान कदम जोड़ सकते हैं। पहले से निर्मित स्पीकर साउंड सिस्टम के लिए, हमें केवल इसे चालू और बंद करने की आवश्यकता है, और पहले से मौजूद माइक्रोफ़ोन को ले कर LCD स्पीकर के बगल में रख दें।

ऐसा करना आसान है। हम पहले से मौजूद मस्जिद माइक्रोफोन का उपयोग करेंगे जो लाउड स्पीकर से जुड़ा है, हमें केवल रास्पबेरीपी की आवश्यकता होगी जो पूरे साउंड सिस्टम को चालू और बंद करने वाली शक्ति को नियंत्रित करे। ऐसा करने के लिए, हमें एक SSR: सॉलिड स्टेट रिले का उपयोग करने की आवश्यकता होगी। इस प्रकार के रिले एक स्विच के रूप में कार्य कर सकते हैं, औसत ब्लू रिले की तरह, अंतर यह है कि एसएसआर इसके माध्यम से बड़ी मात्रा में एसी एम्परेज का सामना कर सकता है, जो नीले वाले (आमतौर पर अधिकतम 10 ए) में लागू नहीं होता है, और एसएसआर की जरूरत होती है 3 के बजाय केवल दो तार: DC+ और DC- और बस! एसएसआर के दूसरे छोर पर हम स्पीकर सिस्टम पावर केबल को कनेक्ट कर सकते हैं, इस तरह, जब हम एसएसआर को वोल्टेज देते हैं, तो यह स्पीकर सिस्टम के एसी सर्किट को बंद कर देगा, या हम ओपन सर्किट बनाने के लिए वोल्टेज बंद कर देंगे, वक्ताओं को बंद करना।

एक पकड़ है, रास्पबेरीपी पिन 3.3v आउटपुट करता है, न कि 5v जिसे हमें एसएसआर को नियंत्रित करने की आवश्यकता होती है। इसलिए हमें आरपीआई पिन से सिग्नल लेने के लिए एक ट्रांजिस्टर और आरपीआई 5वी पिन से 5वी की जरूरत है। ऐसा करने के लिए हमें चाहिए:

1-सॉलिड स्टेट रिले (25A से ऊपर कुछ भी अच्छा है)

2-2n2222 एनपीएन ट्रांजिस्टर

3-220ohm रोकनेवाला

कनेक्शन के लिए फ्रिटिंग सर्किट का पालन करें।

अब कोड में, हम कुछ सामान जोड़ेंगे जो यह काम करता है। सबसे पहले, लूप से पहले, हम GPIO पिन को इनिशियलाइज़ करने के लिए कुछ लाइनें जोड़ेंगे:

आयात अनुभाग में, जोड़ें:

RPI. GPIO को GPIO के रूप में आयात करें

लूप से पहले, जोड़ें:

GPIO.setmode(GPIO. BOARD)GPIO.setwarnings(गलत) रिले = 40 GPIO.setup(ledPin, GPIO. OUT)

अब, जबकि लूप में, प्रत्येक प्ले अज़ान कमांड के लिए, हमें रिले चालू करना होगा, 10 सेकंड तक प्रतीक्षा करनी होगी, अज़ान बजाना समाप्त करना होगा और फिर रिले को बंद करना होगा। हमें केवल दो पंक्तियाँ जोड़ने की आवश्यकता है, पहली है:

GPIO.output (ledPin, GPIO.high)

समय सो जाओ(१०)

यह प्रत्येक कथन के बाद जोड़ा जाना चाहिए (पहचान महत्वपूर्ण है!), दूसरी पंक्ति है:

GPIO.output (ledPin, GPIO. LOW)

इसे "जारी रखें" लाइन के बाद जोड़ा जाना चाहिए। यह हर अज़ान समय के लिए इस तरह दिखना चाहिए:

अगर currTime == FAJR:

GPIO.output(ledPin, GPIO.high) time.sleep(10)mixer.init()mixer.music.load('/home/pi/Desktop/Adhan-fajr.wav') mix.music.play() जबकि Mixer.music.get_busy() == सच: GPIO.output जारी रखें (ledPin, GPIO. LOW)

सिफारिश की: