विषयसूची:

टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।: 15 कदम (चित्रों के साथ)
टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।: 15 कदम (चित्रों के साथ)

वीडियो: टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।: 15 कदम (चित्रों के साथ)

वीडियो: टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।: 15 कदम (चित्रों के साथ)
वीडियो: खराब या पुराने DVD & CD Player में | Bluetooth लगाना सीखें | तरीका ऐसा कि हर कोई सीख जाए | Bt in dvd 2024, जुलाई
Anonim
टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।
टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।
टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।
टास्कर के साथ रास्पबेरी पाई का उपयोग करते हुए वाईफाई नियंत्रित 12 वी एलईडी पट्टी, इफ्टेट एकीकरण।

इस परियोजना में मैं आपको दिखाऊंगा कि रास्पबेरी पाई का उपयोग करके वाईफाई पर एक साधारण 12v एनालॉग एलईडी पट्टी को कैसे नियंत्रित किया जाए।

इस परियोजना के लिए आपको आवश्यकता होगी:

  • 1x रास्पबेरी पाई (मैं रास्पबेरी पाई 1 मॉडल बी + का उपयोग कर रहा हूं)
  • 1x आरजीबी 12 वी एलईडी पट्टी [ईबे ऑस्ट्रेलिया]
  • 3x IRFZ44N एन-चैनल मॉसफेट [ईबे ऑस्ट्रेलिया]
  • 1x महिला डीसी पावर जैक एडाप्टर [ईबे ऑस्ट्रेलिया]
  • कुछ तार
  • डिस्प्ले, कीबोर्ड (सिर्फ सेटअप के लिए)

चरण 1: विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें

विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें
विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें
विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें
विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें
विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें
विंडोज़ का उपयोग करके रास्पियन ओएस स्थापित करें

विंडोज़ के साथ रास्पियन स्थापित करने के लिए आपको आवश्यकता होगी:

  • Win32 डिस्क इमेजर: [डाउनलोड करें]
  • रास्पियन ओएस लाइट: [ज़िप], [टोरेंट]

**महत्वपूर्ण अगर गलत किया गया तो आप अपना सारा डेटा खो सकते हैं, कृपया जारी रखने से पहले अपने डेटा का बैकअप लें**

  1. अपने एसडी कार्ड को कार्ड रीडर में प्लग इन करें और मेरा कंप्यूटर खोलें
  2. ड्राइव लेटर की तलाश करें
  3. Win32DiskImager पर राइट क्लिक करें और "व्यवस्थापक के रूप में चलाएँ" पर क्लिक करें
  4. फिर छोटे नीले फ़ोल्डर पर क्लिक करें और रास्पियनओएस की अपनी छवि पर ब्राउज़ करें
  5. डिवाइस के अंतर्गत ड्रॉपडाउन बॉक्स पर भी क्लिक करें और इसे एसडी कार्ड के ड्राइव लेटर में बदलें
  6. फिर "लिखें" पर क्लिक करें
  7. हाँ दबाने से पहले एक डायलॉग बॉक्स खुलेगा, सत्यापित करें कि लक्ष्य डिवाइस सही है
  8. फिर एसडी कार्ड निकालें और इसे पीआई. में डालें

चरण 2: मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें

मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें
मैक ओएस एक्स का उपयोग करके रास्पियन ओएस स्थापित करें

मैक के साथ रास्पियन स्थापित करने के लिए आपको आवश्यकता होगी:

  • ApplePi-बेकर [डाउनलोड]
  • रास्पियन ओएस लाइट: [ज़िप], [टोरेंट]

**महत्वपूर्ण अगर गलत किया गया तो आप अपना सारा डेटा खो सकते हैं, कृपया जारी रखने से पहले अपने डेटा का बैकअप लें**

  1. डिस्क उपयोगिता खोलें और बाईं ओर अपना एसडी कार्ड देखें और फिर उस पर क्लिक करें
  2. विंडो के नीचे "डिवाइस" की तलाश करें, आपको डिस्कएक्सएक्सएक्स जैसा कुछ देखना चाहिए जहां एक्स एक संख्या है
  3. "डिवाइस" नंबर याद रखें और ApplePi-Baker खोलें
  4. यह आपके एसडी-कार्ड को प्रारूपित करने के कारण आपसे पासवर्ड मांगेगा
  5. "डिवाइस" नंबर पर क्लिक करें जो बाईं ओर /dev/ के बाद है
  6. "रिस्टोर-बैकअप" पर क्लिक करें रास्पियनओएस की अपनी छवि को ब्राउज़ करें।
  7. यह एसडी-कार्ड को मिटाना शुरू कर देगा और उस पर रास्पियन स्थापित करेगा
  8. जब यह किया जाता है तो एक अलर्ट बॉक्स पॉप अप होगा जो आपको बता रहा है कि आप एसडी-कार्ड को हटा सकते हैं, इसे हटा सकते हैं और इसे अपने पीआई में डाल सकते हैं।

चरण 3: पाई सेट करना

पाई को पावर देने से पहले आपको एक एचडीएमआई डिस्प्ले, कीबोर्ड और एक ईथरनेट केबल या यूएसबी वाईफाई में प्लग इन करना होगा (हम इसे अगले चरण में सेट करेंगे)।

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

रास्पबेरी लॉगिन:

आपका उपयोगकर्ता नाम pi है और पासवर्ड रास्पबेरी है (आप स्क्रीन पर कुछ भी टाइप करते हुए नहीं देखेंगे लेकिन यह अभी भी दर्ज किया जा रहा है)

फिर जब आप लॉग इन करेंगे तो आप देखेंगे:

फिर आपको दर्ज करना होगा:

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

फिर आपकी स्क्रीन एक नीली स्क्रीन से भर जाएगी जिसमें केंद्र में एक ग्रे बॉक्स में विकल्प होंगे,

  1. ऊपर और नीचे कुंजियों का उपयोग करके, हाइलाइट करें और "फाइल सिस्टम का विस्तार करें" विकल्प पर एंटर दबाएं, कुछ सेकंड के बाद आपको यह कहते हुए अलर्ट पर ले जाया जाएगा कि "रूट फाइल सिस्टम का आकार बदल दिया गया है", एंटर पर क्लिक करें
  2. फिर डाउन एरो दबाएं और बूट ऑप्शन पर जाएं और एंटर पर क्लिक करें, फिर 'डेस्कटॉप / सीएलआई' चुने जाने पर एंटर पर क्लिक करें, फिर 'कंसोल ऑटोलॉगिन' को हाइलाइट करें और एंटर पर क्लिक करें।
  3. फिर उन्नत विकल्प चुनें और एंटर पर क्लिक करें
  4. फिर ssh तक नीचे स्क्रॉल करें और एंटर पर क्लिक करें फिर हाँ चुनें
  5. फिर दायां तीर दबाएं जब तक कि बैक हाइलाइट न हो जाए और एंटर दबाएं
  6. फिर फिर से नीचे जाएं और फिनिश पर क्लिक करें और फिर रीबूट करने के लिए हां कहें

इसके रीबूट होने के बाद यदि आप ईथरनेट के माध्यम से जुड़े हुए हैं तो आपको अपना आईपी पता खोजने के लिए इस कमांड को दर्ज करना होगा ताकि हम पीआई में एसएसएच कर सकें

आईपी खोजें:

होस्टनाम -I

चरण 4: सेटअप वाईफ़ाई

पाई पर वाईफाई सेटअप करने के लिए हमें एक फाइल को एडिट करना होगा

1. कमांड लाइन में प्रवेश करें

सुडो नैनो /etc/wpa_supplicant/wpa_supplicant.conf

2. फाइल के अंत में जाएं और एंटर करें

नेटवर्क = {

ssid="Your_Wifi_Name" psk="Your_wifi_password" }

3. फिर अपने पीआई को रीबूट करें

सुडो रिबूट

आपके पीआई रीबूट के बाद टाइप करके इसका आईपी पता प्राप्त करें

होस्टनाम -I

आपको अपना आईपी पता प्राप्त करना चाहिए लेकिन यदि पाठ को फिर से ट्यून किया गया है तो इसका मतलब है कि पीआई आपके नेटवर्क से कनेक्ट नहीं हो सका। दोबारा जांचें कि क्या आपने वाईफाई नाम और पासवर्ड सही ढंग से दर्ज किया है क्योंकि यह केस संवेदनशील है।

चरण 5: विंडोज़ का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें

विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें
विंडोज़ का उपयोग करके अपने पाई से दूरस्थ रूप से कनेक्ट करें

अब जब हमारे पास इंटरनेट से जुड़ा हुआ पाई है तो हम कीबोर्ड माउस और डिस्प्ले को हटा सकते हैं, और "ssh" का उपयोग करके इसे दूर से कनेक्ट कर सकते हैं

विंडोज़ के साथ पाई में ssh करने के लिए आपको डाउनलोड करने की आवश्यकता है

पोटीन: [डाउनलोड]

  1. पोटीन खोलें, आईपी एड्रेस बॉक्स में रास्पबेरी पाई आईपी दर्ज करें और फिर ओपन दबाएं
  2. आपको एक डायलॉग बॉक्स मिलेगा जो चित्र 2 जैसा दिखता है हाँ दबाएं
  3. फिर आपको एक नया डायलॉग दिखाई देगा जो कहता है कि "लॉगिन एज़" एंटर "पीआई"
  4. फिर यह एक पासवर्ड मांगेगा "रास्पबेरी" दर्ज करें

अब आप ssh. पर pi से जुड़े हुए हैं

चरण 6: मैक का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें

Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें
Mac का उपयोग करके दूरस्थ रूप से अपने पाई से कनेक्ट करें

अब जब हमारे पास इंटरनेट से जुड़ा हुआ पाई है तो हम कीबोर्ड और माउस को हटा सकते हैं और "ssh" का उपयोग करके इसे दूर से कनेक्ट कर सकते हैं

1. "टर्मिनल" खोलें

2. टाइप करें

एसएसएच पीआई@आईपी_ADDRESS

3. तब आपको यह कहते हुए एक संदेश मिल सकता है कि होस्ट कुंजी सहेजी नहीं गई है, बस "हां" टाइप करें

4. फिर जब प्रचारित किया जाए तो रास्पबेरी पाई पासवर्ड दर्ज करें जो "रास्पबेरी" है

अब आप ssh. पर pi से जुड़े हुए हैं

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

चूंकि अब हमारे पास पीआई तक रिमोट एक्सेस है, इसलिए हमें एलईडी स्ट्रिप को नियंत्रित करने के लिए कुछ सॉफ़्टवेयर स्थापित करने की आवश्यकता है

हमें स्थापित करने की आवश्यकता होगी

  • पिगियो (यह सभी GPIO पिन को डिजिटल से PWM में बदल देता है)
  • फ्लास्क (सर्वर साइड स्क्रिप्ट जो पिगियो और वेबसर्वर से बात करती है)
  • apache2 (वेबसर्वर)

पिगियो स्थापित करें

1. सबसे पहले हमें एक ज़िप फ़ोल्डर डाउनलोड करने की आवश्यकता है जिसमें इस कमांड का उपयोग करके असम्पीडित पिगियो सॉफ़्टवेयर शामिल है

wget

2. फिर हमें अनज़िप करने और निर्देशिका में जाने की आवश्यकता है

पिगपियो.ज़िप और सीडी को अनज़िप करें PIGPIO

3.अब जब हम निर्देशिका में हैं तो हमें सॉफ़्टवेयर को संकलित और स्थापित करने की आवश्यकता है

मेक-जे४ && सुडो मेक इंस्टाल

4.अब आरसी.लोकल खोलें ताकि हम पीआई को स्टार्ट अप करते समय पिगपीओड चलाने के लिए कह सकें

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

फिर बाहर निकलने से ठीक पहले प्रवेश करें

सुडो पिगपियोड

आपने अब पिगियो सॉफ्टवेयर स्थापित कर लिया है

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

पहले हमें यह एंटर करने के लिए सॉफ्टवेयर की सूची को अपडेट करना होगा

sudo उपयुक्त अद्यतन && sudo उपयुक्त उन्नयन -y

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

sudo apt-पायथन-पाइप स्थापित करें

अब हम फ्लास्क स्थापित कर सकते हैं

सुडो पाइप स्थापित फ्लास्क

Apache2 स्थापित करें

sudo apt-apache2 -y. स्थापित करें

sudo apt-libapache2-mod-wsgi -y. स्थापित करें

गिट स्थापित करें

sudo apt git -y. स्थापित करें

सब कुछ समाप्त होने के बाद पीआई को शटडाउन स्थापित करना

सुडो शटडाउन अब

चरण 8: पावर अप वायरिंग

पावर अप वायरिंग
पावर अप वायरिंग
पावर अप वायरिंग
पावर अप वायरिंग
पावर अप वायरिंग
पावर अप वायरिंग

सबसे पहले हमें पावर कनेक्टर को ब्रेड बोर्ड से जोड़ना होगा

  1. पावर जैक पर ब्लैक वायर को नेगेटिव कनेक्टर से कनेक्ट करें
  2. पावर जैक पर लाल तार को सकारात्मक कनेक्टर से कनेक्ट करें
  3. लाल तार के दूसरे छोर को ब्रेडबोर्ड के सकारात्मक पक्ष से कनेक्ट करें
  4. ब्लैक वायर के दूसरे सिरे को ब्रेडबोर्ड के सकारात्मक पक्ष से कनेक्ट करें
  5. फिर ग्राउंड पिन को पाई से (जैसा कि इमेज में देखा गया है) ब्रेडबोर्ड पर नेगेटिव पिन से कनेक्ट करें

अब हमें मोस्टफेफ्ट को जोड़ना है।

चरण 9: मस्जिदों को तार-तार करना और पाई को जोड़ना

मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना
मस्जिदों को तार-तार करना और पाई को जोड़ना

एक मोसफेट आपको यह नियंत्रित करने की अनुमति देता है कि एलईडी रोशनी में कितनी शक्ति यात्रा कर सकती है, हमें तीन मस्जिदों की आवश्यकता होगी क्योंकि हमें लाल, हरी और नीली रोशनी को अलग-अलग नियंत्रित करने की आवश्यकता है।

मस्जिद में तीन पिन होते हैं, बाईं ओर इसमें "गेट" पिन होता है जो कि पाई से जुड़ा होगा ताकि यह नियंत्रित किया जा सके कि एलईडी लाइट में कितनी शक्ति प्रवाहित हो सकती है

सेंटर पिन को "ड्रेन" कहा जाता है जो एलईडी लाइट में जाएगा और वोल्टेज की आपूर्ति करेगा जिसे गेट पास करने की अनुमति देता है

और दाईं ओर का पिन "स्रोत" पिन है। यह पिन ब्रेडबोर्ड पर जमीन पर जाती है।

लाल एलईडी को जोड़ना

  1. ब्रेडबोर्ड में एक मस्फ़ेट डालें
  2. ब्रेडबोर्ड पर GND से एक ब्लैक वायर को सोर्स (राइट पिन) से कनेक्ट करें
  3. फिर मस्जिद पर केंद्र पिन से लाल तार को एलईडी पट्टी पर लाल पिन से कनेक्ट करें
  4. फिर बाएं पिन से एक लाल तार को pi. पर GPIO 17 से कनेक्ट करें

ग्रीन लेड को जोड़ना

  1. दूसरी मस्जिद को ब्रेडबोर्ड में डालें
  2. फिर पहले की तरह ब्रेडबोर्ड पर GND से एक ब्लैक वायर को सोर्स (राइट पिन) से कनेक्ट करें
  3. फिर मस्जिद पर केंद्र पिन से हरे रंग के तार को एलईडी पट्टी पर हरे रंग के पिन से कनेक्ट करें।
  4. फिर बाएं पिन से एक हरे रंग के तार को pi. पर GPIO 22 से कनेक्ट करें

ब्लू एलईडी को जोड़ना

  1. आखिरी मस्जिद को ब्रेडबोर्ड में डालें
  2. ब्रेडबोर्ड पर GND से एक और ब्लैक वायर को सोर्स (राइट पिन) से कनेक्ट करें
  3. फिर मस्जिद पर केंद्र पिन से नीले तार को एलईडी पट्टी पर नीले पिन से कनेक्ट करें।
  4. फिर बाएं पिन से एक नीले तार को pi. पर GPIO 24 से कनेक्ट करें

फिर आपके पास एलईडी पट्टी पर एक और पिन होगा जो ईडर सफेद या काला होगा, बस ब्रेडबोर्ड पर सकारात्मक पिन से एक तार को उस अतिरिक्त पिन से कनेक्ट करें जो एलईडी पट्टी पर है

अब जब हम कर चुके हैं तो हम इसका परीक्षण शुरू कर सकते हैं।

चरण 10: एलईडी पट्टी को डाउनलोड करना और उसका परीक्षण करना

एलईडी पट्टी को नियंत्रित करने के लिए स्रोत कोड डाउनलोड करने के लिए

गिट क्लोन https://github.com/DavidMontesin/Raspberry-PI-Wifi-Led-Strip.git && cd Raspberry-PI-Wifi-Led-Strip/

एलईडी पट्टी का परीक्षण करने के लिए test.py फ़ाइल चलाएँ।

अजगर Test.py

अगर किसी कारण से कुछ रंग नहीं जलते हैं, तो कृपया जांच लें कि क्या सब कुछ सही ढंग से जुड़ा हुआ है।

यह स्क्रिप्ट कैसे काम करती है?

यदि आप पाइथन लिपि खोलते हैं तो आपको आश्चर्य हो सकता है कि यह कैसे काम करता है, पहली पंक्ति में आप देखेंगे:

आयात समय

यह छोटा पुस्तकालय हमें स्क्रिप्ट को रोकने की अनुमति देता है ताकि हम रोशनी को तेज रख सकें

पिगियो आयात करें

यह पुस्तकालय हमें एलईडी पट्टी के साथ संवाद करने की अनुमति देता है

पीआई = पिगपियो.पीआई ()

एक वेरिएबल सेटअप करें ताकि हम pi.set_pw… का उपयोग कर सकें।

रेडपिन = 17

ग्रीनपिन = 22

ब्लूपिन = 24

ये केवल वेरिएबल हैं जो हमें स्क्रिप्ट को यह बताने की अनुमति देते हैं कि एलईडी किस पर जुड़े हुए हैं

प्रिंट ("लाल के लिए परीक्षण")

यह सिर्फ कमांड लाइन पर टेक्स्ट प्रिंट करेगा

pi.set_PWM_dutycycle(रेडपिन, २५५)

यह कमांड पिगियो लिबरी का हिस्सा है और "रेडपिन" सेट करने के लिए कह रहा है, जो कि हमारे द्वारा पहले सेट की गई संख्या की तलाश करता है और इसकी चमक को "255" पर सेट करता है जो कि अधिकतम है

समय सो जाओ(2)

यह समय पुस्तकालय का हिस्सा है और सिर्फ 2 सेकंड के लिए स्क्रिप्ट को रोक देगा

ये पूरक आदेश अन्य एल ई डी के लिए तब तक दोहराएगा जब तक

पीआई.स्टॉप ()

जो एलईडी पट्टी से बात करना बंद कर देगा और सभी रंगों को बंद कर देगा।

चरण 11: सर्वर साइड स्क्रिप्ट की प्रोग्रामिंग

**शुरू करने से पहले, मैं आपको अजगर और फ्लास्क के बारे में पढ़ने की सलाह देता हूं:

यहाँ कुछ गाइड हैं:

www.pythonforbeginners.com

docs.python-guide.org/hi/latest/intro/learn…

flask.pocoo.org

जैसा कि Main.py सीधे git में है, यह चरण केवल कोड की व्याख्या कर रहा है।

पहले हमारे पास पुस्तकालय हैं

कुप्पी आयात कुप्पी से, render_template, अनुरोध

थ्रेड से पिगियो आयात करें आयात start_new_thread

तो हमें कुछ चर सेट करने की जरूरत है

ऐप = फ्लास्क (_name_)

CurrentColour = "व्हाइट" RedColourCode = 0 BlueColourCode = 0 GreenColourCode = 0 RedBeforeEffect = 0 BlueBeforeEffect = 0 GreenBeforeEffect = 0 pi = pigpio.pi ()

पहला चर फ्लास्क के लिए है जो हमारा वेब सर्वर है हम इसे ऐप कहेंगे ताकि कॉल करना और चलाना आसान हो। फिर 6 चर हैं कि पहले तीन में दो को बदलने के लिए कौन सा रंग होगा और अन्य तीन में पिछला रंग होगा।

@app.route('/', तरीके=['GET'])

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

डीईएफ़ मेन ():

वैश्विक वर्तमान रंग

टेक्स्ट डिफ मेन () का अर्थ है कि यह मेन नामक एक फंक्शन बनाएगा जिसे स्क्रिप्ट में कहीं से भी कॉल किया जा सकता है। और ग्लोबल लाइन का मतलब है कि यह पूरी स्क्रिप्ट में वेरिएबल को अपडेट करेगा।

अगर request.args.get ('रंग'):

CurrentColour=request.args.get('Color') if CurrentColour == "White": FadeTORGB(255, 255,255) elif CurrentColour == "Red": FadeTORGB(255, 0, 0) elif CurrentColour == "ग्रीन" ": FadeTORGB(0, 255, 0) elif CurrentColour == "DarkBlue": FadeTORGB(0, 0, 255) elif CurrentColour == "LightBlue": FadeTORGB(0, 255, 255) elif CurrentColour == "ऑरेंज": FadeTORGB(255, 15, 0) elif CurrentColour == "Pink": FadeTORGB(255, 0, 192) elif CurrentColour == "Yellow": FadeTORGB(255, 157, 0) elif CurrentColour == "पर्पल": FadeTORGB(१२३, ०, २५५) elif CurrentColour == "ब्लैक": FadeTORGB(0, 0, 0) रिटर्न render_template('index.html')

इस स्क्रिप्ट को GET मेथड "कलर" के बाद कोई भी नाम मिलेगा और इसे सेव कर देगा। यह तब उस नाम की जांच करेगा और एक फ़ंक्शन को कॉल करेगा जो लाल, हरे और नीले रंग की रोशनी को एक साथ बदलने के लिए 3 तीन अन्य कार्य कर सकता है

def FadeTORGB (RedNum, BlueNum, GreenNum):

start_new_thread(FadeUpRed, (RedNum,)) start_new_thread(FadeUpBlue, (BlueNum,)) start_new_thread(FadeUpGreen, (GreenNum,))

यह तीन अन्य फ़ंक्शन को कॉल करेगा जो प्रत्येक को जाने वाली शक्ति की मात्रा को फीका प्रभाव के साथ बदल देगा।

def FadeUpRed (REDUpNum):

वैश्विक RedColourCode अगर RedColourCode <REDUpNum: जबकि RedColourCode REDUpNum: जबकि RedColourCode> REDUpNum: RedColourCode - = 1 pi.set_PWM_dutycycle (RedPin, RedColourCode)

डीईएफ़ फ़ेडअपब्लू (ब्लूअपनम):

वैश्विक BlueColourCode यदि BlueColourCode < BlueUpNum: जबकि BlueColourCode BlueUpNum: जबकि BlueColourCode> BlueUpNum: BlueColourCode - = 1 pi.set_PWM_dutycycle (BluePin, BlueColourCode)

डीईएफ़ फ़ेडअपग्रीन (ग्रीनअपनम):

वैश्विक GreenColourCode यदि GreenColourCode < GreenUpNum: जबकि GreenColourCode GreenUpNum: जबकि GreenColourCode > GreenUpNum: GreenColourCode - = 1 pi.set_PWM_dutycycle(GreenPin, GreenColourCode)

अगर _name_ == "_main_":

app.run (होस्ट = "0.0.0.0")

चरण 12: वेबसर्वर की प्रोग्रामिंग

अब जब हमारे पास सर्वर है तो हमें एक वेबसाइट डिजाइन करने की जरूरत है।

चूंकि सर्वर सीधे गिट में टेम्पलेट्स और स्थिर फ़ोल्डरों में है, इसलिए यह चरण केवल कोड की व्याख्या कर रहा है।

मैं आपको एचटीएमएल, सीएसएस, जावास्क्रिप्ट के बारे में पढ़ने की भी सलाह देता हूं

एचटीएमएल

सबसे पहले हमें html प्रोग्राम करने की आवश्यकता है, यह वह जगह है जहाँ सभी सामग्री जाती है जिसे फिर css. का उपयोग करके स्टाइल किया जा सकता है

1. हेड बनाना (शीर्षक, फाइलों को लिंक करना,)

वाईफ़ाई एलईडी पट्टी

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

आईओएस पर वेबपेज को फुलस्क्रीन बनाना

पृष्ठ को पूर्ण स्क्रीन बनाने के लिए इस कोड को टैग के अंतर्गत दर्ज करें

आगे हम उस सीएसएस फ़ाइल में संदर्भ जोड़ेंगे जिसे हम बाद में बनाएंगे यह एक अलग तरीका होगा फिर सामान्य रूप से फ्लास्क के कारण फ़ाइल प्रबंधन का तरीका है

फिर इसके बाद आपको टैग को बंद करना होगा और एक बॉडी टैग बनाना होगा

बॉडी टैग का मतलब है कि इसके अंदर कोई भी टैग वेब पेज पर दिखाई देगा

अब हम रंग बटन बनाने जा रहे हैं जो एलईडी पट्टी को बदल सकते हैं।

हम प्रत्येक रंग के लिए एक बनाएंगे और उसे एक टेबल में रखेंगे

यह तालिका का बाहरी फ्रेम बनाता है

यह तालिका के लिए एक पंक्ति बनाएगा

अब एक नारंगी बटन बनाते हैं

टैग टीडी एक सेल बनाता है, फिर "ऑनक्लिक" फ़ंक्शन एक जावास्क्रिप्ट फ़ंक्शन को कॉल करेगा जिसे हम बाद में बनाएंगे, उन्हें "क्लास" फ़ंक्शन का उपयोग बटन को स्टाइल करने के लिए किया जाता है और शैली केवल इसे रंगने के लिए होती है।

हमें बस एक दूसरे बटन के लिए सेंड कलर टेक्स्ट और स्टाइल को बदलना होगा लेकिन हर दूसरे बटन के बाद हम पंक्ति को बंद कर देंगे और एक नई पंक्ति बनाएंगे

आदि…

फिर जब आप सारा रंग डाल दें तो आपको टेबल को बंद करने की जरूरत है

जावास्क्रिप्ट

अब हमें "SendColor" फ़ंक्शन जोड़ने की आवश्यकता है जिसे हमने पहले संदर्भित किया था ऐसा करने के लिए हमें पहले वेब ब्राउज़र को यह बताने वाला एक टैग जोड़ने की आवश्यकता है कि कुछ जावास्क्रिप्ट है

फिर एक फ़ंक्शन बनाएं

समारोह भेजें रंग (क्लिक किया गया रंग) {

यह फ़ंक्शन रास्पबेरी पाई को एक अजाक्स अनुरोध भेजेगा जो इसे उस रंग में बदलने के लिए कहेगा जिस पर आपने क्लिक किया था

xhttp = नया XMLHttpRequest ();

xhttp.open("GET", "?Color=" + ClickedColor, false); xhttp.send (); }

अब हमें जावास्क्रिप्ट और एचटीएमएल को बंद करने की जरूरत है

सीएसएस

अब हम वेबसाइट डिजाइन करने जा रहे हैं

टेम्पलेट फ़ोल्डर से पहली सीडी बाहर और स्थिर फ़ोल्डर में जाएं

सीडी.. && सीडी स्थिर

अब Style.css फ़ाइल बनाएँ

नैनो Style.css

सबसे पहले तालिका को पूरी स्क्रीन भरने दें।

।रंग की {

चौड़ाई: 100%; }

बटन {

पैडिंग: 25px 35px; सीमा-त्रिज्या: 4px; }

सर्वर का परीक्षण

सर्वर का परीक्षण करने के लिए वेब सर्वर फ़ोल्डर में जाएं

सीडी..

फिर दर्ज करें

अजगर Main.py

यह सर्वर शुरू करेगा, फिर आपके कंप्यूटर पर वेब ब्राउज़र खोलें और नेविगेट करें

Your_PI_PI:5000the:5000 अंत में अभी के लिए महत्वपूर्ण है क्योंकि यह वह पोर्ट है जिस पर वेब सर्वर चल रहा है।

यदि आप वेबपेज पर हैं और "आंतरिक सर्वर त्रुटि" प्राप्त करते हैं, तो कंसोल (पोटीन या टर्मिनल) को देखें और आपको टेक्स्ट का एक गुच्छा दिखाई देगा, बस अंतिम पंक्ति को देखें और इसे करना चाहिए। आपको बताएं कि क्या चल रहा है, आप इसका उत्तर खोजने के लिए Google पर जा सकते हैं, लेकिन अगर स्क्रीन पर रंग देखते हैं तो आप एक पर क्लिक कर सकते हैं और आपको एलईडी पट्टी को उस रंग में देखना चाहिए, अगर यह नहीं है तो जांचें कि क्या पावर प्लग इन है और चालू है या एचटीएमएल कोड सही दर्ज किया गया है.

चरण 13: इसे Apache2 के साथ काम करना

अब जब हमने इसका परीक्षण कर लिया है तो हमें इसे अपाचे से बात करने के लिए प्राप्त करना होगा ताकि यह स्टार्टअप पर और पोर्ट 80 (मानक वेब पोर्ट) पर चल सके।

1. अपने वेबसर्वर फोल्डर के अंदर एक wsgi फाइल बनाएं

नैनो wifiled.wsgi

फिर फाइल में एंटर करें

आयात प्रणाली

sys.path.insert(0, '/home/pi/Webserver/') मुख्य आयात ऐप से एप्लिकेशन के रूप में

फिर उपयोगकर्ता पीआई को www-डेटा नामक समूह में जोड़ें, यह अपाचे को वेब सर्वर फ़ोल्डर में देखने की अनुमति देगा

sudo usermod -a -G www-data pi

फिर डिफ़ॉल्ट कॉन्फ़िगरेशन हटा दें

sudo a2dissite 000-डिफ़ॉल्ट

फिर Apache config फोल्डर में एक फाइल बनाएं

sudo nano /etc/apache2/sites-available/wifiled.conf

और दर्ज करें

ServerName WifiLed ServerAdmin [email protected] WSGIScriptAlias / /home/pi/Webserver/wifiled.wsgi आदेश अनुमति दें, अस्वीकार करें सभी से अनुमति दें सभी को ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel चेतावनी CustomLog ${APACHE_LOG_DIR}/access.log संयुक्त

फिर अपाचे को दर्ज करके कॉन्फ़िगरेशन पढ़ने के लिए कहें

sudo a2ensite wifiled.conf

अब पीआई को पुनरारंभ करें, जब यह रीबूट हो जाए तो अपने वेब ब्राउज़र में दर्ज करें

Your_PI_IP

चरण 14: टास्कर और इफ्टेट और अन्य सेवाओं की स्थापना

इससे पहले कि हम इन प्रोग्रामों को सेटअप करें, आपको अपने राउटर पर पोर्ट फोर्डिंग सेट करना होगा क्योंकि हर राउटर अलग होता है, आप यहां पढ़ सकते हैं कि कैसे

Tasker

अपने Android डिवाइस पर ओपन टेकर

फिर किसी ईवेंट पर आधारित एक नई प्रोफ़ाइल बनाएं, आप कोई भी ट्रिगर चुन सकते हैं। मैंने "फोन रिंगिंग" चुना है और किसी को भी "सी: कोई भी" रंग सेट किया है, फिर यह आपको एक कार्य का चयन करने के लिए कहेगा, "नया कार्य" पर क्लिक करें और इसे अपनी कार्रवाई के आधार पर नाम दें। मैं इसे "फ़ोन कॉल" कहूंगा, फिर ऐड एक्शन दबाएं और "HTTP हेड" देखें और सर्वर सेट करें: पोर्ट को your_raspberry_pi_IP पर सेट करें, फिर पथ के तहत आप या तो "/? रंग = हरा" के साथ एक ठोस रंग सेट कर सकते हैं या आप एक बना सकते हैं प्रभाव हम इसे अगले चरण में करेंगे। फिर वापस क्लिक करें और फिर से वापस आएं।

आईएफटीटीटी

पहले गोटो ifttt और एक नया एप्लेट बनाएं कोई भी ट्रिगर चुनें (मैंने बटन चुना) और फिर कार्रवाई के लिए मेकर चैनल चुनें और कहा कि हम अनुरोध करें फिर url के लिए Your_PUBLIC_PI/?Color=LightBlue दर्ज करें यदि आप अपनी जनता को नहीं जानते हैं आईपी बस गूगल पर "माई आईपी" दर्ज करें। फिर विधि के लिए HEAD दर्ज करें, फिर "कार्रवाई बनाएं" पर क्लिक करें जब आपकी कार्रवाई होती है तो रंग बदलने के लिए अपने पीआई से अनुरोध करें।

अन्य सेवाएं

आप अन्य सेवाओं को भी कनेक्ट कर सकते हैं जो HTTP HEAD या GET अनुरोध करती हैं।

चरण 15: कस्टम प्रभाव बनाना

Main.py में एक इम्पोर्ट स्टेटमेंट जोड़ें, इंपोर्ट ओएस एंटर के तहत

आयात समय

इससे पहले कि हम एक प्रभाव पैदा करें, हमें GreenBeforeEffect ऐड के तहत एक चर जोड़ने की जरूरत है

कैन चेंज कलर = ट्रू

फिर बदलें अगर request.args.get('Color'):

प्रति

अगर request.args.get('Color') और CanChangeColor:

केवल वापसी के तहत अनुभाग render_template('Main.html') add

@app.route('/Effect', Methods=['GET'])

डीईएफ़ प्रभाव ():

फिर वैरिएबल को ग्लोबल पर सेट करें

एक्स = 0

वैश्विक RedColourCode वैश्विक BlueColourCode वैश्विक GreenColourCode वैश्विक RedBeforeEffect वैश्विक BlueBeforeEffect वैश्विक GreenBeforeEffect

अब अपना पहला प्रभाव बनाते हैं

अगर request.args.get ('कॉल'):

RedBeforeEffect = RedColourCode BlueBeforeEffect = BlueColourCode GreenBeforeEffect = GreenColourCode FadeTORGB(0, 0, 0) time.sleep(2)

यह क्रिया तब चलेगी जब पीआई को "/? प्रभाव = कॉल" जैसा अनुरोध प्राप्त होगा और वर्तमान रंग को बचाएगा ताकि हम इसे वापस कॉल कर सकें, फिर हम नेतृत्व वाली पट्टी को काला कर देते हैं और ऐसा होने तक प्रतीक्षा करते हैं।

अब हम एलईडी को काले से हरे और फिर से काले रंग में फीका करने जा रहे हैं और मैं इसे पांच बार करना चाहता हूं

जबकि x <= 5: FadeTORGB(0, 255, 0) x +=1 time.sleep(1) FadeTORGB(0, 0, 0) time.sleep(1) CanChangeColour = True Time.sleep(2) FadeTORGB(RedBeforeEffect, BlueBeforeEffect, GreenBeforeEffect)

यह पांच तक गिना जाएगा लेकिन हर बार यह हरे रंग में फीका हो जाएगा और फिर एक सेकंड प्रतीक्षा करें और काला हो जाएगा। फिर जो खत्म होता है वह रंग बदल देगा जो आपके पास बदलने से पहले था।

अब हम सिर्फ एक प्रतिक्रिया बनाने के लिए।

वापसी ""

इसके अलावा आप रास्पबेरी पाई को रिबूट करें

सुडो रिबूट

सिफारिश की: