विषयसूची:

सफेद शोर रात की रोशनी: 11 कदम (चित्रों के साथ)
सफेद शोर रात की रोशनी: 11 कदम (चित्रों के साथ)

वीडियो: सफेद शोर रात की रोशनी: 11 कदम (चित्रों के साथ)

वीडियो: सफेद शोर रात की रोशनी: 11 कदम (चित्रों के साथ)
वीडियो: बेशर्मी की हाइट| पूरा वीडियो गाना | मैं तेरा हीरो | वरुण धवन, इलियाना डी'क्रूज़, नरगिस फाखरी 2024, नवंबर
Anonim
सफेद शोर रात की रोशनी
सफेद शोर रात की रोशनी
सफेद शोर रात की रोशनी
सफेद शोर रात की रोशनी

यह एक प्रोजेक्ट है जिसे मैंने क्रिसमस के लिए अपने 1 साल के बच्चे के लिए बनाया है। हालांकि ईमानदारी से कहूं तो यह मेरे और मेरी पत्नी के लिए एक पवित्रता थी। यह एक सफेद शोर मशीन है जो वेब इंटरफेस के माध्यम से चुनी गई कई अलग-अलग ध्वनियों को चला सकती है, और इसमें रोशनी भी शामिल होती है जो समय के आधार पर रंग बदलती है (लाल रोशनी का मतलब बिस्तर में होना, पीला मतलब आप अपने कमरे में खेल सकते हैं, और हरे रंग का मतलब ठीक है बाहर आने के लिए)। चूंकि मेरा बेटा समय बताने के लिए बहुत छोटा है, इसलिए रंग-आधारित रात की रोशनी वास्तव में एक अच्छे विचार की तरह लग रही थी।

यह वास्तव में एक आसान परियोजना है, और चूंकि मैंने पहले ही कोड लिखा है, यह शायद कठिनाई के पैमाने पर 5 में से 1 है। यदि आपके पास ऐसे बच्चे हैं जो सुबह बहुत जल्दी आपको परेशान करते हैं, तो आप एक बनाना चाहेंगे।

चरण 1: भागों की सूची

हिस्सों की सूची
हिस्सों की सूची
हिस्सों की सूची
हिस्सों की सूची
हिस्सों की सूची
हिस्सों की सूची

1. रास्पबेरी पाई जीरो डब्ल्यू

2. किसी तरह का मामला (मैंने इसे अमेज़ॅन से इस्तेमाल किया)

3. पिमोरोनी से ब्लिंक्ट

4. पिमोरोनी से स्पीकर फाट (आप सस्ते स्पीकर के साथ कुछ अन्य डीएसी भी इस्तेमाल कर सकते हैं)

स्पीकर फ़ैट को एक साथ रखने के लिए आपको कुछ बुनियादी सोल्डरिंग कौशल की आवश्यकता होगी, उत्पाद पृष्ठ से चरण-दर-चरण निर्देशों के साथ एक लिंक है, इसलिए आप इसे खराब नहीं कर सकते।

5. [वैकल्पिक] पैनल माउंट माइक्रो यूएसबी केबल - एडफ्रूट से

6. कुछ कनेक्टिंग वायर या जंपर्स

इतना ही!

चरण 2: रास्पियन को जलाएं और बोर्डों को हुक करें

रास्पियन को जलाएं और बोर्डों को हुक करें
रास्पियन को जलाएं और बोर्डों को हुक करें

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

pinout.xyz का उपयोग करके आप दोनों बोर्डों को खींच सकते हैं और इस साइट पर उनके पिनआउट प्राप्त कर सकते हैं। ब्लिंक्ट बोर्ड को केवल 4 कनेक्शन की आवश्यकता होती है, और स्पीकर फ़ैट को 9 की आवश्यकता होती है।

समाप्त होने पर यह फोटो जैसा दिखना चाहिए। अब हमें यह परीक्षण करने की आवश्यकता है कि सब कुछ काम कर रहा है।

चरण 3: आवश्यक सॉफ़्टवेयर स्थापित करना

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

कर्ल https://get.pimoroni.com/blinkt | दे घुमा के

और फिर एक बार यह पूरा हो जाने पर, यह:

कर्ल-एसएस https://get.pimoroni.com/speakerphat | दे घुमा के

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

चरण 4: कुछ कोड लिखना और उसका परीक्षण करना।

mkdir scripts टाइप करके "scripts" नाम की एक डायरेक्टरी बनाएं और उसमें चलाने के लिए हमें जो कुछ भी चाहिए, हम रखेंगे। तो सीडी स्क्रिप्ट खुद को उस फ़ोल्डर में लाने के लिए।

अब, हम जो चाहते हैं वह है रात के समय के लिए लाल मंद रोशनी, शांत खेलने के समय के लिए पीली मंद रोशनी, और जब बाहर आना ठीक हो तो थोड़ी तेज हरी रोशनी। मेरे लिए, मुझे शाम 7:30 बजे से सुबह 6:15 बजे तक लाल बत्ती चाहिए थी, और सुबह 6:15 बजे वे एक घंटे के लिए पीली हो जाती थीं, और फिर अंत में सुबह 7:15 बजे हरी हो जाती थीं। मैं यह भी चाहता था कि वे सुबह 8:30 बजे बंद कर दें, जब कमरे में किसी के होने की संभावना नहीं थी।

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

तो, चलिए शुरू करते हैं लाल लिपि से। टाइप करें red.py स्पर्श करें, फिर nano red.py टाइप करें। फिर निम्न कोड दर्ज करें।

#!/usr/bin/env python

आयात blinkt.set_clear_on_exit(False) blinkt.set_brightness(0.3) blinkt.set_pixel(3, 128, 0, 0) blinkt.set_pixel(4, 128, 0, 0) #सेट पिक्सल 3 और 4 को रेड ब्लिंक्ट.शो()

येलो.पी और ग्रीन.पी के लिए भी ऐसा ही करें।

पीला.py:

#!/usr/bin/env python

ब्लिंक्ट आयात करें। blinkt.set_pixel(5, 128, 128, 0) #सेट पिक्सल 2, 3, 4, और 5 से पीले ब्लिंक्ट.शो ()

हरा.py:

#!/usr/bin/env python

इंपोर्ट ब्लिंक्ट blinkt.set_clear_on_exit(False) blinkt.set_brightness(0.2) blinkt.set_all(0, 128, 0) # सभी पिक्सल को ग्रीन ब्लिंक्ट पर सेट करता है।

और अंत में, हम चाहते हैं कि एक स्क्रिप्ट ब्लिंक्ट को साफ़ करे जब इसकी आवश्यकता न हो (lightsout.py):

#!/usr/bin/env python

इंपोर्ट ब्लिंक्ट blinkt.set_clear_on_exit(True) blinkt.set_brightness(0.1) blinkt.set_all(0, 0, 0) # सभी पिक्सल को ऑफ ब्लिंक्ट पर सेट करता है।

बस, इतना ही। परीक्षण करने के लिए python red.py टाइप करें और देखें कि क्या दो मध्य पिक्सेल लाल रंग में प्रकाश करते हैं। फिर इसे खाली करने के लिए python lightout.py टाइप करें। इतना ही! आगे हमें उन्हें क्रॉन टैब में सेट करना होगा ताकि जब हम चाहें तो वे चल सकें।

चरण 5: उन लिपियों को क्रोन में जोड़ना

SSH टर्मिनल में crontab -e. टाइप करें

फ़ाइल के अंत तक स्क्रॉल करें और निम्न पंक्तियाँ जोड़ें:

१५ ६ * * *पायथन /होम/पीआई/स्क्रिप्ट्स/येलो.पीई15 7 * * *पायथन /होम/पीआई/स्क्रिप्ट्स/ग्रीन.पीई 30 8 * * *पायथन /होम/पीआई/स्क्रिप्ट्स/लाइट्सआउट.py 30 19 * * *पायथन /होम/पीआई/स्क्रिप्ट/रेड.पी

यह पिछले चरण में वर्णित समय पर चलने के लिए स्क्रिप्ट सेट करता है, आगे बढ़ें और अपनी आवश्यकताओं के अनुरूप इन्हें समायोजित करें।

रात के उजाले के लिए बस इतना ही! सुपर आसान। अब इस बिल्ड के व्हाइट नॉइज़ हिस्से को सेट करने के लिए आगे बढ़ते हैं।

चरण 6: अध्यक्ष का परीक्षण करना

स्पीकर फाट का परीक्षण करने का सबसे आसान तरीका (मेरी राय में) सॉक्स स्थापित करना और कमांड लाइन से कुछ स्थिर चलाना है।

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

एक बार यह स्थापित हो जाने के बाद, हम कुछ नमूना चलाने के आदेश आज़मा सकते हैं। यह लहरों की तरह आवाज करनी चाहिए।

प्ले-एन सिंथेस ब्राउननोइस सिंथ पिंकनोइस मिक्स सिंथ 0 0 0 10 10 40 ट्रेपेज़ियम एमोड 0.1 30

कितना आराम! Ctrl+c इसे रोक देगा। लेकिन, वह क्या है? स्पीकर फ़ैट के पूरे चेहरे पर एलईडी का एक गुच्छा है, और हम अपनी ब्लिंक्ट रोशनी में हस्तक्षेप नहीं कर सकते हैं। तो चलिए इन्हें बंद कर देते हैं।

ऐसा करने के लिए, हमें /etc/asound.conf फ़ाइल को संशोधित करने और VU मीटर प्लगइन को हटाने की आवश्यकता होगी, इसलिए यह पहली बार में LED को चलाने की कोशिश भी नहीं करेगा। मैंने बस इसका नाम बदलकर ऐसा किया। यह कमांड टाइप करें mv /etc/asound.conf /etc/asound.conf.bak मैंने इसे थोड़े से Googling के माध्यम से पाया, इसलिए एक बेहतर तरीका हो सकता है।

सॉक्स काम करता है, और यह बहुत अच्छा है, लेकिन मैंने इस मशीन के सफेद शोर वाले हिस्से के लिए कुछ लूप करने योग्य एमपी 3 का उपयोग करने की योजना बनाई है, इसलिए मुझे एक अलग खिलाड़ी की जरूरत है, अधिमानतः कुछ हल्का वजन। mpg123 वह है जिस पर मैंने समझौता किया है। इसे अभी स्थापित करें sudo apt-get install mpg123. के साथ

ठीक है, अब जब हम जानते हैं कि स्पीकर फाट अपेक्षित रूप से काम करता है, इंटरफ़ेस और संबंधित स्क्रिप्ट बनाने का समय।

चरण 7: एक छोटा वेबसर्वर और वेबएप सेट करना

फ्लास्क एक माइक्रो वेब फ्रेमवर्क है जिसे पायथन में लिखा गया है। यह वेबसर्वर के लिए आवश्यक सभी कार्यक्षमता प्रदान करता है (जो एक ऐप के रूप में कार्य करने जा रहा है)। इसे निम्न आदेश के साथ स्थापित करें:

pip3 फ्लास्क स्थापित करें

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

हमें अपने लूपेबल एमपी3 को लगाने के लिए भी जगह चाहिए। मैंने इसके लिए "ध्वनि" नामक होम निर्देशिका में एक निर्देशिका बनाई है। मैंने अपने एमपी3 को Google पर लूपेबल व्हाइटनॉइस एमपी3 की खोज करके पाया। खींचने के लिए बहुत सारी खाली जगहें। मैंने फ़ाइलों को अपलोड करने के लिए WinSCP का उपयोग किया।

आप अपने कमरे के लिए सही वॉल्यूम स्तर डायल करने के लिए --vol -### भाग के साथ खेलते हुए नीचे दिए गए omxplayer कमांड के साथ उनका परीक्षण करना चाह सकते हैं। फिर से एक Ctrl+C प्लेयर को रोक देगा।

अब जब हमारे पास वे सभी जगह हैं, तो पीआई शुरू होने पर वेबसर्वर को खड़ा करने के लिए कुछ पायथन लिखें। www निर्देशिका पर वापस जाएं और webapp.py (नैनो webapp.py) नामक एक नई फ़ाइल शुरू करें और निम्नलिखित कोड डालें

webapp.py:

#!/usr/बिन/पायथन

फ्लास्क आयात फ्लास्क से, रेंडर_टेम्पलेट, अनुरोध, रीडायरेक्ट आयात ओएस ऐप = फ्लास्क (_name_) @ ऐप. रूट ('/') डीईएफ़ इंडेक्स (): रिटर्न रेंडर_टेम्प्लेट ('इंडेक्स.एचटीएमएल') @ ऐप। रूट ('/ बारिश'), मेथड्स = ['पोस्ट']) डिफ रेन (): os.system("mpg123 -f 8000 --loop -1 ~/scripts/sounds/rain.mp3") रिटर्न रीडायरेक्ट ('/') @app.route ('/waves', मेथड्स = ['POST']) def wave(): os.system("mpg123 -f 20500 --loop -1 ~/scripts/sounds/waves.mp3") वापसी रीडायरेक्ट ('/')) @app.route('/whitenoise', Methods = ['POST']) def whitenoise(): os.system("mpg123 --loop -1 ~/scripts/sounds/whitenoise.mp3") वापसी रीडायरेक्ट (' /') @app.route('/stop', Methods = ['POST']) def stop(): os.system("killall mpg123") वापसी रीडायरेक्ट ('/') अगर _name_ == '_main_': app.run (डीबग = ट्रू, होस्ट = '0.0.0.0')

जैसा कि आप देख सकते हैं कि इस वेबएप में 5 पेज होंगे, एक इंडेक्स के लिए, 3 अलग-अलग ध्वनियों (लहर, बारिश और सफेदी) के लिए और 1 और रुकने के लिए। सभी 4 गैर-सूचकांक पृष्ठ omxplayer को भेजे गए आदेश को निष्पादित करने के बाद वापस अनुक्रमणिका ('/') पर पुनर्निर्देशित करते हैं, इसलिए हमें केवल एक index.html बनाने की आवश्यकता है, और कुछ नहीं। मैं यहां किलॉल को स्टॉप फंक्शन के रूप में उपयोग कर रहा हूं, क्योंकि मुझे omxplayer को "स्टॉप" कमांड भेजने का बेहतर तरीका नहीं मिला। यदि आप ऐसा करने का एक बेहतर तरीका जानते हैं, तो मुझे यह सुनना अच्छा लगेगा!

अब index.html को एक साथ रखते हैं।

चरण 8: वेबसाइट बनाना

वेबसाइट का निर्माण
वेबसाइट का निर्माण
वेबसाइट का निर्माण
वेबसाइट का निर्माण
वेबसाइट का निर्माण
वेबसाइट का निर्माण
वेबसाइट का निर्माण
वेबसाइट का निर्माण

ये वे छवियां हैं जिनका उपयोग मैंने अपने निर्माण के लिए किया था, लेकिन बेझिझक अपना बनाएं। उन सभी को हमारे द्वारा पहले बनाए गए स्थिर फ़ोल्डर में सहेजने की आवश्यकता है। हम यहां जो index.html फाइल बनाने जा रहे हैं, वह टेम्प्लेट फोल्डर में होनी चाहिए। यह बहुत महत्वपूर्ण है, अन्यथा, इसमें से कोई भी काम नहीं करेगा। यहाँ मेरे index.html के लिए कोड है (फिर से, यह सिर्फ साधारण html है, इसलिए इसे आपके लिए जो भी काम करता है उसे संशोधित करें)।

चूँकि इंस्ट्रक्शंस मुझे कच्चे HTML को पोस्ट नहीं करने देंगे, यहाँ फ़ाइल का लिंक है क्योंकि यह मेरे ड्रॉपबॉक्स पर मौजूद है:

www.dropbox.com/s/n5xf2btftk5sz9b/index.ht…

लेकिन अगर वह कभी भी मर जाता है, तो HTML फ़ाइल केवल कुछ फैंसी CSS है, और उन 4 आइकनों के साथ एक साधारण 2x2 तालिका जैसे पोस्ट वैल्यू वाले बटन हैं:

फॉर्म एक्शन = "/ व्हाइटनोइज़" विधि = "पोस्ट"

अपने आप को एक बनाना बहुत आसान होना चाहिए।

अंतिम चरण यह सुनिश्चित करना है कि webapp.py स्टार्टअप पर चलता है, फिर से, मैंने इसे क्रॉस्टैब में जोड़कर किया। तो एक बार फिर crontab -e टाइप करें और अंत में निम्नलिखित जोड़ें:

@reboot python3 /home/pi/www/webapp.py

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

एक एंड्रॉइड फोन पर आप अपनी होमस्क्रीन पर एक वेबसाइट को बुकमार्क कर सकते हैं, जो मैंने इसे ऐप की तरह दिखने और महसूस करने के लिए किया है। यदि आप वास्तव में इसे "समर्थक" दिखाना चाहते हैं तो एक उपयुक्त.ico फ़ाइल ढूंढें या बनाएं और वेबसाइट को अपना आइकन दें जो आपके फ़ोन की होम स्क्रीन पर दिखाई देगा और एक ऐप की तरह अधिक दिखाई देगा। किसी वेबसाइट पर आइकन (फ़ेविकॉन) कैसे जोड़ें, इस पर ऑनलाइन बहुत सारे ट्यूटोरियल।

चरण 9: एक मामले में सब कुछ जाम करें

जाम सब कुछ एक मामले में
जाम सब कुछ एक मामले में
जाम सब कुछ एक मामले में
जाम सब कुछ एक मामले में
जाम सब कुछ एक मामले में
जाम सब कुछ एक मामले में

अब जब सब कुछ परीक्षण किया गया है और काम कर रहा है, तो इसे एक मामले में भरने का समय आ गया है।

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

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

चरण 10: बस इतना ही

इतना ही!
इतना ही!

इसे प्लग इन करें और आपका काम हो गया। यहाँ मेरा बस 8 बजे के बाद चल रहा है। पाई पर हरे रंग की एलईडी उतनी चमकीली नहीं है जितनी कि यह तस्वीर दिखाई देती है।

कुछ बाद के संपादन मैंने किए:

मैंने webapp.py और index.html फाइलों में 4 और पेज जोड़े। वे 4 "लाल", "पीला", "हरा", और "बंद" हैं। सुंदर आत्म व्याख्यात्मक। मैं इसे हरे रंग से वापस पीले रंग में बदलने की क्षमता चाहता था अगर मैं और पत्नी अतिरिक्त थका हुआ महसूस कर रहे थे और परेशान नहीं होना चाहते थे।

@app.route('/red', Methods = ['POST']) def red(): os.system("python ~/scripts/red.py") वापसी रीडायरेक्ट ('/')

मूल रूप से 4 बार, 4 अलग-अलग स्क्रिप्ट चला रहे हैं, फिर इंडेक्स में कुछ और बटन जो उन पेजों को कॉल करते हैं।

दूसरा परिवर्तन जो मैंने पहले ही नोट कर लिया था, लेकिन मैंने कुछ और छेद ड्रिल किए और स्पीकर के चारों ओर मौजूदा उद्घाटन को चौड़ा कर दिया क्योंकि शोर पर्याप्त रूप से बाड़े से नहीं निकल रहा था।

अगर मैं कोई अतिरिक्त संशोधन करता हूं, तो मैं यहां वापस आना और उन्हें सूचीबद्ध करना सुनिश्चित करूंगा।

चरण 11: परिशिष्ट

इसे बनाने के बाद मैंने महसूस किया कि बच्चे को बिस्तर पर या झपकी लेते समय मैं और मेरी पत्नी अक्सर अपना फोन नीचे छोड़ देते हैं। इसलिए मैंने फिजिकल पिन 36 में एक क्षणिक पुश बटन जोड़ा, और rc.local में स्टार्टअप पर चलाने के लिए निम्नलिखित कोड (मैंने इसे button.py कहा) शामिल किया:

#!/usr/bin/env python

GPIO के रूप में RPi. GPIO आयात करें आयात समय आयात os आयात सबप्रोसेस आयात पुनः GPIO.setmode (GPIO. BOARD) # भौतिक पिन नंबरिंग योजना बटन का उपयोग करें = 36 # बटन भौतिक पिन से जुड़ा है 16 GPIO.setup(button, GPIO. IN, pull_up_down) = GPIO. PUD_UP) # बटन को एक इनपुट बनाएं, पुल अप रेसिस्टर को सक्रिय करें जबकि ट्रू: यदि GPIO.input(button)==0: # बटन प्रेस रिटर्नप्रोसेस की प्रतीक्षा करें = गलत # प्रारंभ में ध्वनि बंद होने के लिए सेट है s = सबप्रोसेस। Popen(["ps", "ax"], stdout=subprocess. PIPE) x के लिए s.stdout में: if re.search("mpg123", x): returnprocess = True if returnprocess == False: os.system("mpg123 --loop -1 /home/pi/scripts/sounds/whitenoise.mp3 &") os.system("python /home/pi/scripts/red.py") और: os.system("killall mpg123") os.system ("पायथन /home/pi/scripts/lightsout.py")

जैसा कि आप देख सकते हैं, मैंने omxplayer से mpg123 पर भी स्विच किया क्योंकि यह बहुत अधिक हल्का और उपयोग में आसान है।

हालांकि, किसी कारण से जब मैं इस स्क्रिप्ट को rc.local में डालता हूं तो यह वास्तव में बिना किसी समस्या के स्टार्टअप पर चलता है। लेकिन ऑडियो वास्तव में बहुत तड़क-भड़क वाला है। जब मैं स्क्रिप्ट को सामान्य रूप से चलाता हूं, तो पोटीन में, ऐसी कोई समस्या नहीं होती है। मुझे इसका निवारण करने में बहुत समय लग रहा है, इसलिए यदि किसी के पास कोई विचार है, तो कृपया मुझे बताएं! धन्यवाद।

सिफारिश की: